首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么对每个文件使用单独的密钥?

为什么对每个文件使用单独的密钥?
EN

Cryptography用户
提问于 2017-03-14 22:53:46
回答 1查看 202关注 0票数 4

我试图理解https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingClientSideEncryption.html#client-side-encryption-client-side-master-key-intro中的“选项2:使用客户端主键”。

基本上,似乎只有一次使用的加密密钥生成,并用于加密文件,然后密钥由主密钥加密并附加为元数据。

对于每个文件使用一个单独的密钥有什么好处,当拥有主密钥是对任何一种方式进行解密所需要的唯一东西,不管是一步一步还是两步?

EN

回答 1

Cryptography用户

回答已采纳

发布于 2017-03-15 06:31:02

引述的消息来源说:

您提供的客户端主密钥可以是对称密钥,也可以是公钥/私钥对。

在后一种情况下,使用单独的对称密钥的主要好处是,对文件进行加密只需要公钥(而不是事先知道的秘密信息)。然后,这个对称密钥就被遗忘了,因此需要为新文件单独创建一个密钥。此外,对称加密(由额外的密钥使之成为可能)比非对称加密快得多,体积扩展小得多。这是混合加密的最佳状态。

当主键是对称的时,还有其他好处仍然适用:

  • 假设所有加密的文件都是公开的,对每个文件使用一个单独的密钥可以选择释放允许对单个特定文件进行解密的密钥,而不是显示所有文件的主密钥。
  • 对每个文件使用一个单独的密钥可以减少使用相同对称密钥加密的数据量;这有助于保持每个密钥的安全限制,此后所使用的加密可能会变得更弱(例如,对于CTR模式下的3 3DES,如果使用相同密钥加密的16 16GByte加密最初为全部-零或压缩视频,包括在多个文件之间使用唯一的IV而没有密钥流重用,则我们可以更好地区分)。
  • 正如Ilmari在评论中指出的那样,有时可能希望更改主密钥,例如,如果主密钥是从用户提供的密码中派生出来的,用户希望更改该密码,而不对所有文件进行完全解密和重新加密。使用单独的文件键是启用此功能的一种方法。
票数 3
EN
页面原文内容由Cryptography提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://crypto.stackexchange.com/questions/44722

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档