密钥的安全存储是对静态密钥的保护,保护方法有以下两种:
1.基于口令的软保护
基于口令的软保护就是基于用户口令,使用对称密钥算法来加密密钥。当然,使用对称密钥算法本身也需要密钥,这类密钥就是密钥加密密钥。KEK并不需要存储和保护,因为当需要一个KEK用于加密时,用户可以马上生成,使用完毕后就销毁它。当他需要解密数据时,可以再次生成同样的密钥,使用完毕后销毁它。用户用一个随机数发生器或伪随机数发生器生成一个会话密钥,用基于口令的方法来构造KEK。
2.基于硬件的物理保护
为了实现密钥的物理隔离保护,需要将密钥存储于与计算机相分离的某种物理设备中。这就是基于硬件的物理保护,用于存储密钥的硬件是一类成为标牌的微型计算。
标牌是一种小到可以放入钱夹或衬衫口袋的东西,例如一个塑料的智能卡、塑料钥匙、一个智能卡和阅读器小的USB盘,甚至可以制成戴在手指上的戒子。它里面有一个带处理器的芯片、操作系统、有限的输入输出端口、存储器和硬驱存储空间。当需要使用标牌中的密钥处理数据时,就可以将它从卡上传输到计算机,然后用它加、解密数据。
攻击者不能访问到它们是标牌的优点,因为它们并不与互联网相连,因此可以防止远程攻击,实现物理隔离。另外,标牌还可受到口令或PIN的保护,具有防抵御的功能,若有人企图物理地访问其存储空间,标牌将自我销毁。尽管标牌在使用时需与计算机相连接,并最终连接到网络,但这只是很短暂的,比一直存放于网络上更安全些。
标牌存在的主要问题是它们需要有某种方式与计算机通信,如串口、USB口,甚至软驱一些还使用相应的阅读器,这可能涉及系统资源的占用和更多的投资。