8.10 密钥有效期

    没有哪个8.10 密钥有效期能无限期使用,它应当和护照、许可证一样能够自动失效。以下有几个原因:

    ——密钥使用时间越长,它泄露的机会就越大。人们会写下密钥,也会丢失,偶然事件也会发生的。如果你使用一年,那泄露的可能性比你使用一天要大得多。

    ——如果密钥已泄露,那么密钥使用越久,损失就越大。如果密钥仅用于加密一个文件服务器上的单个预算文件,它的丢失仅意味着该文件的丢失。如果密钥用来加密文件服务器上所有预算信息,那损失就大得多。

    ——密钥使用越久,人们花费精力破译它的诱惑力就越大

    ——甚至采用穷举攻击法。破译了两个军事单位使用一天的共享密钥,就会使某人能阅读当天两个单位之间的通信信息。破译所有军事机构使用一年的共享密钥,就会使同样的人获取和伪造通行全球一年的信息。在我们的意识里,冷战后的世界里,哪个密钥会受到攻击呢?

    ——对用同一密钥加密的多个密文进行密码分析一般比较容易。

    对任何密码应用,必须有一个策略能够检测密钥的有效期。不同密钥应有不同有效期,基于连接的系统,如电话就是把通话时间作为密钥有效期,当再次通话时就启用新的密钥。

    专用通信信道就不这么明显了。密钥应当有相对较短的有效期,这主要依赖数据的价值和给定时间里加密数据的数量。每秒千兆位的通信链路所用的密钥自然应该比只有9600波特的Modem所用的密钥更换得频繁。假定存在一种有效方法传送新密钥,那么会话密钥至少每天就得更换。

    密钥加密密钥无需频繁更换,因为它们只是偶尔地(一天很难用到一次)用作密钥交换。这只给密钥破译者提供很少的密文分析,且相应的明文也没有特殊的形式。然而,如果密钥加密密钥泄露,那么其潜在损失将是巨大的:所有的通信密钥都经其加密。在某些应用中,密钥加密密钥仅一月或一年更换一次。你必须在保存密钥的潜在危险和分发新密钥的潜在危险之间权衡一下。

    用来加密保存数据文件的加密密钥不能经常地变换。在人们重新使用文件前,文件可以加密贮藏在磁盘上数月或数年,每天将它们解密,再用新的密钥进行加密,这无论如何都不能加强其安全性,这只是给破译者带来了更多的方便。一种解决方法是每个文件用唯一的密钥加密,然后再用密钥加密密钥把所有密钥加密,密钥加密密钥要么被记忆下来,要么保存在一个安全地点,或某个地方的保险柜中。当然,丢失该密钥意味着丢失所有的文件加密密钥。

    公开密钥密码应用中的私钥的有效期是根据应用的不同而变化的。用作数字签名和身份识别的私钥必须持续数年(甚至终身),用作抛掷硬币协议的私钥在协议完成之后就应该立即销毁。即使期望密钥的安全性持续终身,两年更换一次密钥也是要考虑的。许多网络中的私钥仅使用两年,此后用户必须采用新的私钥。旧密钥仍需保密,以防用户需要验证从前的签名。但是新密钥将用作新文件签名,以减少密码分析者所能攻击的签名文件数目。