密钥,一般泛指生产、生活所应用到的各种加密技术,加密密钥的安全性对其保护的数据的机密性至关重要。有权访问密钥的危险参与者可以读取敏感数据,甚至可能为虚假或修改的记录生成有效签名。通常情况下,客户通常遵循阻力最小的路径,并不总是了解如何安全地创建、存储和访问密钥。当密码和密钥被重复使用时,或者当密钥存储不安全并且没有适当的访问规则来强制执行授权和身份验证时,这可能会导致危及客户数据安全的漏洞。
因此,密钥管理需要提供强大的冗余。密钥管理就是指对密钥进行管理的行为。密钥管理包括从密钥的产生到密钥的销毁的各个方面。主要有:
密钥生成
生成的密钥应该:长度足够长、随机性足够好、生成过程足够困难。密钥生成也可以通过在线或离线的交互协商方式实现,如密码协议等。
密钥分发
密钥分发应遵循一定的安全机制。采用对称加密算法进行保密通信,需要共享同一密钥。为增强保密性,也可以将密钥分成许多不同的部分然后用不同的信道发送出去。
密钥验证
发送方对密钥附着一些检错和纠错位来传输,当密钥在传输中发生错误时,能很容易地被检查出来,并且如果需要,密钥可被重传。接收端也可以验证接收的密钥是否正确。
密钥更新
当密钥需要频繁的改变时,进行新密钥分发的确是困难的事,一种更容易的解决办法是从旧的密钥中产生新的密钥,有时称为密钥更新。可以使用单向函数进行更新密钥。
密钥存储
密钥可以存储在电脑、磁条卡、智能卡中。也可以把密钥平分成两部分,一半存入终端一半存入服务器。还可采用类似于密钥加密密钥的方法对难以记忆的密钥进行加密保存。
密钥备份
密钥的备份可以采用密钥托管、秘密分割、秘密共享等方式。
最简单的方法,是使用密钥托管中心。密钥托管要求所有用户将自己的密钥交给密钥托管中心,一旦用户的密钥丢失,按照一定的规章制度,可从密钥托管中心索取该用户的密钥。另一个备份方案是用智能卡作为临时密钥托管。
秘密分割把秘密分割成许多碎片,每一片本身并不代表什么,但把这些碎片放到一块,秘密就会重现出来。
密钥有效期
加密密钥不能无限期使用,因为密钥使用时间越长,它泄露的机会就越大。不同密钥应有不同有效期。
密钥销毁
如果密钥必须替换,旧钥就必须物理地销毁。