Обмен ключами с использованием ECDH против ECIES

Я новичок в криптопрограммировании ECC. Кто-нибудь объясняет мне разницу между использованием ECDH для обмена общими ключами и использованием ECIES путем шифрования общего ключа открытым ключом получателя? Я чувствую, что ECIES также может предоставить мне безопасный обмен ключами, пока закрытый ключ хранится в секрете. Спасибо.


person hab    schedule 05.06.2015    source источник
comment
Я голосую за то, чтобы закрыть этот вопрос как не по теме, потому что он не имеет прямого отношения к программированию. Этот вопрос гораздо лучше подходит для криптографии.   -  person Artjom B.    schedule 05.06.2015


Ответы (1)


ECDH — это протокол вывода с общим секретом. Две стороны используют знание своего собственного «закрытого ключа» и «открытого ключа» своего партнера для создания общего секрета. Как правило, закрытые ключи представляют собой случайные числа, используемые для согласования ключей, а затем отбрасываемые.

ECIES использует ту же схему, что и ECDH, для создания «общего секрета», где один из «закрытых ключей» представляет собой случайное число, а соответствующий ему открытый ключ включается в само сообщение. Это означает, что общий секрет может быть получен только человеком с другим закрытым ключом. Затем само сообщение шифруется какой-либо другой схемой, такой как AES, с использованием общего секрета в качестве ключа.

Если вы ведете ключевые переговоры, вам подойдет ECDH. (Обязательное примечание: конечно, вы не должны создавать собственную криптографию для производственной системы, просто используйте TLS.)

person hjfreyer    schedule 31.08.2015