Разница между ECDH-ECDSA-AES128-SHA256 и ECDHE-ECDSA-AES128-SHA256? - PullRequest
0 голосов
/ 11 апреля 2020

Я использую сертификат E CC, чтобы наблюдать, как работает TLS. , Может кто-нибудь мне помочь с разницей между ECDH-ECDSA-AES128-SHA256 и ECDHE-ECDSA-AES128-SHA256.

При использовании ECDHE-ECDSA-AES128-SHA256 клиент и сервер работают нормально.

New, TLSv1/SSLv3, Cipher is ECDHE-ECDSA-AES128-SHA256
Server public key is 256 bit
Secure Renegotiation IS supported
Compression: NONE
Expansion: NONE
No ALPN negotiated
SSL-Session:
    Protocol  : TLSv1.2
    Cipher    : ECDHE-ECDSA-AES128-SHA256

При использовании ECDH-ECDSA-AES128-SHA256 сбой SERVER_HELLO:

140344027961248:error:14077410:SSL routines:SSL23_GET_SERVER_HELLO:sslv3 alert handshake failure:s23_clnt.c:769:

1 Ответ

1 голос
/ 12 апреля 2020

Разница заключается в алгоритме обмена ключами.

ECDH в режиме stati c используется долгосрочный ключ ECDH.

В эфемерном режиме пара ключей ECDH генерируется каждый раз, а затем выбрасывается, поэтому используется только с длиной обмена ключами ECDH.

Обновление:

Сервер отклоняет версию ECDH, поскольку он настроен для этого.

Все Реализации SSL позволяют пользователю устанавливать, какие шифры разрешены или нет. В openssl у нас есть API, такой как SSL_CTX_set_cipher_list , чтобы установить, какие шифры разрешены или нет. Обычно это проявляется через спецификацию приложения c.

Существует множество таких сайтов, как one , которые дают советы о том, как настроить список шифров, который дает лучший безопасность для этой текущей ситуации.

Информацию о строке шифра см. в команде openssl ciphers .

...