2015-06-05 5 views
0

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

+1

Я голосую, чтобы закрыть этот вопрос как не по теме, потому что он напрямую не связан с программированием. Вопрос гораздо лучше подходит для [crypto.se]. –

ответ

1

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

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

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

Смежные вопросы