4

正如我在函数调用中看到的那样set_contents_with_filenameset_contents_with_file我可以将加密设置为 true,而在 s3 中,它保持加密状态

我有一些疑问

  1. 如果可能的话,我想知道哪个是用于加密文件的密钥。

  2. 如果加密设置为 true,则加密发生在服务器端,对吗?

  3. 如果加密,在下载时,对象在s3中解密然后开始下载?还是在下载时发生解密?

4

1 回答 1

9

您可能指的两个函数是set_contents_from_filenameset_contents_from_file

如果可能的话,我想知道哪个是用于加密文件的密钥。

当前的服务器端加密方法是AES256 ( Source ),密钥是在服务器端生成的。

如果加密设置为真,加密发生在服务器端,对吗?

是的,数据被上传,然后在服务器端加密。如果您愿意,您还可以在上传之前在客户端上加密数据,但这意味着,为了阅读,您还必须在客户端上对其进行解密。如果您不想在 s3 服务器之间传输纯数据,则可以使用 SSL 端点

加密,下载时,对象在s3中解密,然后开始下载?还是在下载时发生解密?

上传设置了加密标头的文件后,s3 将加密您的文件以进行存储并在请求时对其进行解密。该文件以加密版本保存在物理存储中

AWS 博客中的工作流程插图

加密工作流程,来自亚马逊博客

于 2013-01-31T11:19:57.833 回答