6

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

我指的是 TLS_RSA_WITH_AES_128_CBC_SHA 和 SSL_RSA_WITH_AES_128_CBC_SHA。

4

1 回答 1

14

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

TLS_RSA_WITH_AES_128_CBC_SHA使用0x00,0x2F及其在RFC 3268, AES Ciphersuites for TLS中指定。它补充了原始 RFC 2246 的 TLS 协议版本 1.0 的密码套件。RFC 5246 ,传输层安全性 (TLS) 协议版本 1.2开箱即用地包含了它。

SSL_RSA_WITH_AES_128_CBC_SHA每个 IANA都没有。它没有在SSL 协议版本 3.0草案中列出。并且它也没有列在RFC 6101 安全套接字层 (SSL) 协议版本 3.0中。我怀疑它是 RFC 3268 之后某些库使用的同义词或别名。

相关:SSL 协议不受IETF 控制。例如,参见RFC 5746,第 4.5 节

虽然 SSLv3 不是 IETF 变更控制下的协议(参见 [SSLv3]),但它是 TLS 的原始基础,并且大多数 TLS 实现也支持 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密钥传输、AES分组密码、CBC模式、SHAHAMC 等。唯一的区别是协议(SSLv3 与 TLS 1.0 和朋友)。

于 2014-06-19T23:40:12.543 回答