Thomas 完全支持 TLS 和/或 AES。
如果您使用的是不太现代的算法或者您更加偏执,那么您提到的两种关键刷新方法都已在不同时间点尝试过,它们都有缺点:
数据作为新密钥的种子- 这是一些流密码的基础 - 例如,请参阅 DES 常用的密码反馈和输出反馈模式。诀窍是 - 接收者需要与发送者保持同步。如果传输中存在间隙,如果将错误的密钥应用于加密数据,则传输很快就会变成乱码。
将新密钥包装在旧密钥中- 这个很少使用,因为如果您假设攻击者(给定时间)已经获得了您的密钥,那么您必须假设他已经捕获了您的所有密文并且他不会有获取新密钥的问题。大多数情况下,在这一点上,你已经为他节省了找出新密钥的工作。
该问题的典型解决方案是使用辅助密钥来传输对称密钥。这正是 TLS 所做的——它使用非对称密钥来保护对称密钥的分发。这增加了额外的负担——为了获得这种传输,攻击者必须找出用于对称密钥传输的非对称对的私钥。这里不会有太多曝光,因为它们唯一可能被加密的是新的会话(对称)密钥对。
另一个无法处理非对称密钥的系统是使用仅用于密钥分发的辅助密钥分发密钥。这将有一个保质期,因为该密钥也会有暴露问题,但它在一定程度上降低了风险。
密钥分配是密码学中最棘手的问题之一。不管你怎么切,你至少要以一种有点痛苦的方式把第一把钥匙弄出来。然后,您需要一种方法来使密钥保持适当的新鲜度,并且如果密钥丢失或受损,您需要一种方法来恢复。所有这些技术的差异很大,具体取决于您是在谈论非对称密码还是对称密码,并且一些最好的系统将两者混合以获得最大效力。