当备份服务器不受信任时,双重加密有多强大?
信息安全
加密
密码学
磁盘加密
真加密
备份
2021-08-29 23:32:43
1个回答
从严格的密码学意义上讲,Duplicity 模型没有任何弱点。
Duplicity 专为目标服务器不受信任时的威胁模型设计。它极大地改进了增量备份,因为它不是传输已加密数据的差异,而是使用新密钥发送新的加密文件。没有办法说一个给定的增量快照和另一个来自以后的日期有任何相似之处。每个快照都是固定大小(默认为 25 MiB)。从攻击者的角度来看,一个新快照可以保存 25 MiB 的全新文件、25 MiB 的增量更改,甚至 25 MiB 的元数据(文件删除记录等)。这与使用 XTS 模式的块设备形成对比,后者在可以监控随时间的变化时往往会泄漏信息。
Duplicity 还使用提供完整性保证的 GnuPG 对文件进行签名。XTS 模式通常被认为是“穷人的延展性阻力”,但它确实很差,允许以 16 字节精度进行修改。Duplicity 的数字签名确保即使在使用 CBC 模式时也能检测到单个更改的位。
Duplicity 的备份分几个阶段完成:
- rsync 用于比较文件缓存记录和文件系统之间的差异
- tar 用于将 25 MiB 的增量更改归档到单个文件中
- gpg 用于对 tarball 进行加密和签名
- 加密的 tarball 一次性发送到目标服务器
虽然 XTS 模式在观察到随时间的变化时提供了大量信息,但目标服务器可以看到的所有重复性都是更改的数据量。假设您获取一个 50 MiB 的文件,将其备份,然后在再次增量备份之前修改其中的一半。如果这是使用 XTS 完成的,则已修改的精确区域是可见的。通过重复性,您看到的是 2 个加密的 25 MiB 文件,然后是另一个加密的 25 MiB 文件。您无法将第一个备份与第二个增量备份进行比较以查看更改了哪些数据。你所能看到的只是改变了多少。
不受信任的服务器可以通过重复观察到的精确信息非常有限:
- 存储的数据总量
- 每个备份中传输的数据量(大致对应于更改的数量)
- 总存储数据的大致大小(由于定期的非增量完整备份)
其它你可能感兴趣的问题