我正在阅读有关 OpenVPN 2.6.6 配置的文档,我对 TLS 密码有疑问。
我运行这个命令:
openvpn --show-tls
我看到以下信息:
Available TLS Ciphers, listed in order of preference:
For TLS 1.3 and newer (--tls-ciphersuites):
TLS_AES_256_GCM_SHA384
TLS_CHACHA20_POLY1305_SHA256
TLS_AES_128_GCM_SHA256
For TLS 1.2 and older (--tls-cipher):
TLS-ECDHE-ECDSA-WITH-AES-256-GCM-SHA384
列出了 TLS 版本。我想使用 TLS 1.3,因此推荐的选项似乎是 TLS_AES_256_GCM_SHA384,因为它是按优先顺序列出的。
如果我没记错的话,椭圆密码比非椭圆密码更安全,但 TLS 1.3 不推荐任何椭圆密码,只推荐 AES。
所以我的问题是,我可以在 TLS 1.3 中使用椭圆密码吗?为什么它不推荐 TLS 1.3 使用椭圆密码?
我问这个是因为后来,对于其他选项,如 tls cert 配置文件,使用配置文件 suiteb,它似乎是最安全的,它仅与 SHA256/SHA384、ECDSA 与 P-256 或 P-384 兼容。
那么总的来说,使用椭圆密码是否比不使用它更好?为什么 OpenVPN 不推荐使用 TLS 1.3?
ECDHE 是TLSv1.3 中的唯一选项。这是新版本中主要变化的一部分;FFDHE 被删除,任何形式的静态 DH 或静态 RSA 密钥交换也被删除。
v1.3 有一个完整的单独列表的原因是因为密码套件命名也发生了变化 - 除其他外,不再提及密钥交换算法,因为只有一个选项,而不是因为它根本不再存在。
(ECDHE 不是密码,而是密钥交换算法。)
同样,证书类型也从密码套件命名中删除,因为无论如何,证书对临时 DH 没有影响 - 因此,ECDHE 是唯一的选择,根据您是否拥有 RSA 证书或 ECDSA 证书,拥有单独的密码套件是没有意义的。