我目前正在使用Amazon S3 API,并且对服务器端完整性检查有一个一般的疑问,如果您在发布对象期间提供MD5哈希,该检查可以完成。
我不确定如果您通过SSL / TLS发送数据(我假设您也要发布的对象数据)是否需要进行完整性检查,它们会为传输中的数据完整性提供自己的支持。
无论通过SSL / TLS进行发布,都应发送摘要吗?这样做不是多余的吗?还是我想念的东西?
谢谢。
答案 0 :(得分:1)
TLS提供的完整性检查不能保证在发送者端进入TLS包装器,或者从接收者那里出来并写入磁盘时会发生什么情况。
所以,不,这并不是完全多余的,因为TLS并不是完全端对端的-在连接的两端以及未接触的任何硬件或软件上,仍会处理未加密的数据,尽管处理的很少,但很少未加密的位可能会发生故障并损坏它们。
S3为您提供了一个完整性检查机制-如果您同时使用Content-MD5
和x-amz-content-sha256
,则有两种检查机制-试图证明绕过它们是合理的。