python:与aws s3 bucket匹配的签名

python:与aws s3 bucket匹配的签名,python,amazon-s3,Python,Amazon S3,我有一个s3存储桶,里面有一个文件,在从s3存储桶中检索文件时,我想检查它是否是从我期望的源代码中检索的,而不是从中间的某个人那里检索的。最好的方法是什么?带有身份验证标头的内容可能是密钥,也可能与密钥关联?您可以使用HTTPS SSL证书不仅用作加密的公钥,它们还由受信任的证书颁发机构签名,并确认您要联系的服务器拥有与您联系时使用的主机名匹配的证书(并且具有相关的私钥)。正确配置的客户端将拒绝通过HTTPS与提供主机名不匹配的证书或由不受信任/未知证书颁发机构签名的证书的服务器通信。HTTPS

我有一个s3存储桶,里面有一个文件,在从s3存储桶中检索文件时,我想检查它是否是从我期望的源代码中检索的,而不是从中间的某个人那里检索的。最好的方法是什么?带有身份验证标头的内容可能是密钥,也可能与密钥关联?

您可以使用HTTPS


SSL证书不仅用作加密的公钥,它们还由受信任的证书颁发机构签名,并确认您要联系的服务器拥有与您联系时使用的主机名匹配的证书(并且具有相关的私钥)。正确配置的客户端将拒绝通过HTTPS与提供主机名不匹配的证书或由不受信任/未知证书颁发机构签名的证书的服务器通信。

HTTPS可以,并表示它来自受信任的来源。我在考虑对AES256文件进行加密,然后在客户端对其进行解密,可能是java、python?只是为了确认它是来自同一个来源。是的,你可以,虽然从技术上来说,这只能证明它来自拥有对称密钥的来源。就这点而言,您可以使用S3(SSE-C)做同样的事情,所需的工作量可以忽略不计。S3在存储之前加密AES 256,在下载之前解密AES 256,并且上传程序和下载程序都必须随请求提交密钥(当然是通过https)。S3使用密钥,但不存储它。