【问题标题】:The difference between ECDH-ECDSA-AES128-SHA256 and ECDHE-ECDSA-AES128-SHA256?ECDH-ECDSA-AES128-SHA256和ECDHE-ECDSA-AES128-SHA256的区别?
【发布时间】:2020-07-24 02:05:00
【问题描述】:

我正在使用ECC证书来观察TLS是如何工作的,谁能帮我区分ECDH-ECDSA-AES128-SHA256ECDHE-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:

【问题讨论】:

    标签: ssl openssl ssl-certificate tls1.2


    【解决方案1】:

    区别在于密钥交换算法。

    静态模式下的 ECDH 使用长期 ECDH 密钥。

    在临时模式下,每次生成一个ECDH密钥对,然后丢弃,所以它只与ECDH密钥交换的长度一起使用。

    更新:

    服务器拒绝 ECDH 版本,因为它已被配置为这样做。

    所有 SSL 实现都允许用户设置允许或不允许的密码。 在 openssl 中,我们有一个类似 SSL_CTX_set_cipher_list 的 API 来设置允许或不允许使用的密码。这通常通过特定于应用程序的配置公开。

    有很多类似one 的网站也提供关于设置密码列表的建议,从而为当前情况提供最佳安全性。

    有关密码字符串的信息,请参阅 openssl ciphers 命令。

    【讨论】:

    • 但是为什么ECDHE-ECDSA-AES128-SHA256 工作正常,而另一个ECDH-ECDSA-AES128-SHA256 失败
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-06-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-11-12
    • 1970-01-01
    • 2014-10-05
    相关资源
    最近更新 更多