Apache描述了SSLCipherSuite指令:
密码套件可用于SSL握手协商
假设我将这个指令configuration为HIGH ,只使用Triple DESencryption。
只有 SSL握手使用Triple DES,否则所有的stream量都会使用这种scheme?
在TLS握手过程中,传输过程中要使用的节点之间的密码套件是一致的,尽pipe“在任何时候,由于内部或外部刺激(自动或用户干预),任何一方都可能重新协商连接” 。
如您参考的文档中所述:
_cipher-spec_中的SSL密码规范由4个主要属性和一些额外的次要属性组成: - 密钥交换algorithm:RSA或Diffie-Hellman变体。 - authenticationalgorithm:RSA,Diffie-Hellman,DSS或无。 - 密码/encryptionalgorithm:DES,Triple-DES,RC4,RC2,IDEA或无。 MAC摘要algorithm:MD5,SHA或SHA1。
请注意,将SSLCipherSuite设置为HIGH不会将列表限制为三倍DES。 比较这些命令的输出:
# openssl ciphers 'HIGH' # openssl ciphers '3DES'
您可能需要考虑使用AES 。
密码套件的评估顺序非常重要,安全性强。 有关详细说明,请参阅BEAST攻击缓解文章。 这篇文章的一个例子:
SSLHonorCipherOrder On SSLCipherSuite ECDHE-RSA-AES128-SHA256:AES128-GCM-SHA256:RC4:HIGH:!MD5:!aNULL:!EDH
该协议的详细分析可以在这篇博客文章中find。