我想知道,如果我configuration我的openssl服务器显式使用TLSv1.2,我也不得不提到不使用3DES(通过添加“!3DES”的string),或TLSv1.2的明确使用删除支持3DES。
从这个链接我可以看到,TLS1.2在其可用的密码列表中没有3DES。 所以我猜这不支持?
我使用的string是"HIGH+TLSv1.2:!MD5:!SHA1"
TLS 1.2可以与任何为SSL 3.0及更高版本定义的密码一起使用。 这包括3DES(DES-CBC3)密码。 你所指的不是一个列表,哪些密码可用于SSL / TLS版本,但引入了SSL / TLS版本的密码。
certificate:
terminal_1 $ openssl s_server -cipher '3DES' -cert cert.pem -key key.pem ... terminal_2 $ openssl s_client -connect 127.0.0.1:4433 ... Protocol : TLSv1.2 Cipher : ECDHE-RSA-DES-CBC3-SHA ...
更多证据: TLS 1.2标准(RFC 5246)在附录A.5中列出了许多与TLS 1.2一起使用的密码,其中包括多个3DES密码。
我使用的string是“HIGH + TLSv1.2:!MD5:!SHA1”
使用这个密码string,您只允许使用TLS 1.2引入的密码。 由于没有使用TLS 1.2添加新的3DES密码,所以此string不会使用3DES密码。 但是,没有TLS 1.0或TLS 1.1客户端将能够连接到服务器,因为这些较旧的客户端不支持所提供的任何密码。 虽然现代浏览器都支持TLS 1.2,但一些应用程序仍然不支持。 尤其是对于较旧的Java应用程序或Mac OS X上的基于OpenSSL的应用程序,因为这是随旧版本的OpenSSL提供的。
你是对的,TLSv1.2没有DES支持:
$ openssl ciphers -tls1 -v | grep TLSv1.2 ECDHE-RSA-AES256-GCM-SHA384 TLSv1.2 Kx=ECDH Au=RSA Enc=AESGCM(256) Mac=AEAD ECDHE-ECDSA-AES256-GCM-SHA384 TLSv1.2 Kx=ECDH Au=ECDSA Enc=AESGCM(256) Mac=AEAD ECDHE-RSA-AES256-SHA384 TLSv1.2 Kx=ECDH Au=RSA Enc=AES(256) Mac=SHA384 ECDHE-ECDSA-AES256-SHA384 TLSv1.2 Kx=ECDH Au=ECDSA Enc=AES(256) Mac=SHA384 DHE-DSS-AES256-GCM-SHA384 TLSv1.2 Kx=DH Au=DSS Enc=AESGCM(256) Mac=AEAD DHE-RSA-AES256-GCM-SHA384 TLSv1.2 Kx=DH Au=RSA Enc=AESGCM(256) Mac=AEAD DHE-RSA-AES256-SHA256 TLSv1.2 Kx=DH Au=RSA Enc=AES(256) Mac=SHA256 DHE-DSS-AES256-SHA256 TLSv1.2 Kx=DH Au=DSS Enc=AES(256) Mac=SHA256 ECDH-RSA-AES256-GCM-SHA384 TLSv1.2 Kx=ECDH/RSA Au=ECDH Enc=AESGCM(256) Mac=AEAD ECDH-ECDSA-AES256-GCM-SHA384 TLSv1.2 Kx=ECDH/ECDSA Au=ECDH Enc=AESGCM(256) Mac=AEAD ECDH-RSA-AES256-SHA384 TLSv1.2 Kx=ECDH/RSA Au=ECDH Enc=AES(256) Mac=SHA384 ECDH-ECDSA-AES256-SHA384 TLSv1.2 Kx=ECDH/ECDSA Au=ECDH Enc=AES(256) Mac=SHA384 AES256-GCM-SHA384 TLSv1.2 Kx=RSA Au=RSA Enc=AESGCM(256) Mac=AEAD AES256-SHA256 TLSv1.2 Kx=RSA Au=RSA Enc=AES(256) Mac=SHA256 ECDHE-RSA-AES128-GCM-SHA256 TLSv1.2 Kx=ECDH Au=RSA Enc=AESGCM(128) Mac=AEAD ECDHE-ECDSA-AES128-GCM-SHA256 TLSv1.2 Kx=ECDH Au=ECDSA Enc=AESGCM(128) Mac=AEAD ECDHE-RSA-AES128-SHA256 TLSv1.2 Kx=ECDH Au=RSA Enc=AES(128) Mac=SHA256 ECDHE-ECDSA-AES128-SHA256 TLSv1.2 Kx=ECDH Au=ECDSA Enc=AES(128) Mac=SHA256 DHE-DSS-AES128-GCM-SHA256 TLSv1.2 Kx=DH Au=DSS Enc=AESGCM(128) Mac=AEAD DHE-RSA-AES128-GCM-SHA256 TLSv1.2 Kx=DH Au=RSA Enc=AESGCM(128) Mac=AEAD DHE-RSA-AES128-SHA256 TLSv1.2 Kx=DH Au=RSA Enc=AES(128) Mac=SHA256 DHE-DSS-AES128-SHA256 TLSv1.2 Kx=DH Au=DSS Enc=AES(128) Mac=SHA256 ECDH-RSA-AES128-GCM-SHA256 TLSv1.2 Kx=ECDH/RSA Au=ECDH Enc=AESGCM(128) Mac=AEAD ECDH-ECDSA-AES128-GCM-SHA256 TLSv1.2 Kx=ECDH/ECDSA Au=ECDH Enc=AESGCM(128) Mac=AEAD ECDH-RSA-AES128-SHA256 TLSv1.2 Kx=ECDH/RSA Au=ECDH Enc=AES(128) Mac=SHA256 ECDH-ECDSA-AES128-SHA256 TLSv1.2 Kx=ECDH/ECDSA Au=ECDH Enc=AES(128) Mac=SHA256 AES128-GCM-SHA256 TLSv1.2 Kx=RSA Au=RSA Enc=AESGCM(128) Mac=AEAD AES128-SHA256 TLSv1.2 Kx=RSA Au=RSA Enc=AES(128) Mac=SHA256
您不必明确拒绝DES,因为它不适用于禁用较旧的套件。