tomcat - TLS_RSA_WITH_AES_128_CBC_SHA 和 SSL_RSA_WITH_AES_128_CBC_SHA

标签 tomcat ssl certificate ssl-certificate catalina

这些密码套件之间有什么区别吗?它们看起来一样,但前三个字母不同。

我指的是 TLS_RSA_WITH_AES_128_CBC_SHA 和 SSL_RSA_WITH_AES_128_CBC_SHA。

最佳答案

IANA 在 TLS Parameters 维护 TLS 密码套件的注册表.在 SSL/TLS 中,密码套件由 2 个八位字节指定。

TLS_RSA_WITH_AES_128_CBC_SHA 使用 0x00,0x2F 并在 RFC 3268, AES Ciphersuites for TLS 中指定.它补充了原始的密码套件 The TLS Protocol Version 1.0 RFC 2246 的。RFC 5246, The Transport Layer Security (TLS) Protocol Version 1.2开箱即用。

根据 IANA,没有 SSL_RSA_WITH_AES_128_CBC_SHA。未列入草案The SSL Protocol Version 3.0 .并且其未在 RFC 6101, The Secure Sockets Layer (SSL) Protocol Version 3.0 中列出任何一个。我怀疑它是某些库在 RFC 3268 之后使用的同义词或别名。

相关:SSL 协议(protocol)在 IETF 控制之下。参见,例如,RFC 5746, Section 4.5 :

While SSLv3 is not a protocol under IETF change control (see [SSLv3]), it was the original basis for TLS and most TLS implementations also support SSLv3.

OpenSSL 确实提供TLS_RSA_WITH_AES_128_CBC_SHA - 它在密码套件列表中称为AES128-SHA。 OpenSSL 提供SSL_RSA_WITH_AES_128_CBC_SHA。查看ciphers(1)文档。

下面,TLSv1 和 SSLv3 连接都是使用 AES128-SHA 建立的。

$ openssl s_client -tls1 -connect google.com:443 -cipher "AES128-SHA"
CONNECTED(00000003)
depth=2 C = US, O = GeoTrust Inc., CN = GeoTrust Global CA
verify error:num=20:unable to get local issuer certificate
verify return:0
---
Certificate chain
 0 s:/C=US/ST=California/L=Mountain View/O=Google Inc/CN=*.google.com
   i:/C=US/O=Google Inc/CN=Google Internet Authority G2
 1 s:/C=US/O=Google Inc/CN=Google Internet Authority G2
   i:/C=US/O=GeoTrust Inc./CN=GeoTrust Global CA
 2 s:/C=US/O=GeoTrust Inc./CN=GeoTrust Global CA
   i:/C=US/O=Equifax/OU=Equifax Secure Certificate Authority
...
SSL-Session:
    Protocol  : TLSv1
    Cipher    : AES128-SHA
...

$ openssl s_client -ssl3 -connect google.com:443 -cipher "AES128-SHA"
CONNECTED(00000003)
depth=2 C = US, O = GeoTrust Inc., CN = GeoTrust Global CA
verify error:num=20:unable to get local issuer certificate
verify return:0
---
Certificate chain
 0 s:/C=US/ST=California/L=Mountain View/O=Google Inc/CN=*.google.com
   i:/C=US/O=Google Inc/CN=Google Internet Authority G2
 1 s:/C=US/O=Google Inc/CN=Google Internet Authority G2
   i:/C=US/O=GeoTrust Inc./CN=GeoTrust Global CA
 2 s:/C=US/O=GeoTrust Inc./CN=GeoTrust Global CA
   i:/C=US/O=Equifax/OU=Equifax Secure Certificate Authority
...
SSL-Session:
    Protocol  : SSLv3
    Cipher    : AES128-SHA
...

我的猜测是 SSL_RSA_WITH_AES_128_CBC_SHA 是在 RFC 3268 发布前后添加到 SSLv3 的。但我找不到涵盖它的文档。

无论哪种情况,原语都是相同的:RSA key 传输,AES 分组密码,CBC 模式,SHA HAMC 等。唯一的区别是协议(protocol)(SSLv3 与 TLS 1.0 和 friend )。

关于tomcat - TLS_RSA_WITH_AES_128_CBC_SHA 和 SSL_RSA_WITH_AES_128_CBC_SHA,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24306468/

相关文章:

java - 许多线程连接使系统不稳定

ruby-on-rails - Rails - SSL 不适用于裸域

PHP:404 header 在 HTTPS 站点上不起作用 - 返回空白页面而不是默认的未找到页面

ssl - 我需要创建一百个没有 PEM 密码短语的自签名证书

java - Spring MVC - 对Tomcat中应用程序的所有请求在war打包后导致错误404

Tomcat 管理器不要求登录

tomcat - 如何在 servlet web.xml 中设置 Tomcat 的版本?

c++ - OpenSSL 将消息拆分为两条记录

c# - 在哪里存储 Windows 服务的 X509 证书?

openssl - 如何使用 openssl 库将 ASN1_object 转换为可读格式。?