HTTPS和数据完整性

时间:2011-03-01 00:22:50

标签: https integrity

我还没有对HTTPS做过很多研究,所以我对此有疑问。

使用HTTPS保护数据完整性还是仅保密?例如,在文件上传时,HTTPS是否保证没有人可以在上传时更改数据,或者只保证没有人可以读取它?

2 个答案:

答案 0 :(得分:1)

在大多数情况下是的,但为了最大限度地提高安全性,我建议除了使用HTTPS之外,我还建议您配置服务器的SSL配置以使用签名证书并使用以下SSL配置:

SSLProtocol -ALL +SSLv3 +TLSv1
SSLCipherSuite ALL:!ADH:RC4+RSA:+HIGH:+MEDIUM:!LOW:!SSLv2:!EXPORT

此外,如果可能,请使用SSL版本3.

答案 1 :(得分:1)

简短回答:

要求:

  • 密码套件使用摘要算法,如SHA,SHA-2(256或394)或MD5(请避免使用!)来计算基于哈希的消息验证码(HMAC)。然后,此消息用于检查每条记录的数据完整性。

示例:TLS_RSA_WITH_AES_128_CBC_ SHA256

  • 密码套件支持带有附加数据的身份验证加密AEAD),如AES-GCM(AES-CCM,存在AES-EAX但不常见)或CHACHA20-POLY1305(推荐使用) )。

示例:TLS_ECDHE_RSA_WITH_ CHACHA20_POLY1305 _SHA256

关于第二个例子,重要的是要注意SHA256不是HMAC算法,而是用作PRF(检查this answer以获取更多细节)。