--密码硬件:
对于各种密码的操作,生成,加密,解密,签名..用软件可以全部完成,
但是若是只用软件来完成,密钥(对称密钥、私钥)的存储是一个问题。
因为这些数据并不是有规律的,密钥不是口令,而是一段超级长的二进制数据。
若存在硬盘上,不安全。最好是保存在密码硬盘中。
密码硬件最大的特点是:
密钥在在密码硬件内生成,密钥不会导出,而且在正常使用的过程中,
不读出里面存储的密钥而是将数据输入密码硬件,由密码硬件加密/签名后 再输出结果。
这样即使在丢失或者被盗时,attacker也无法读出硬件里面的密钥。
常见的密码硬件:
智能卡、USB key 、加密卡、加密机。
很多网上银行都是用USB key 来保存用户的私钥,其安全性比在硬盘上保存高得多。