由于公钥所具有的两种不同用途,在实际应用中,需要分别配置用于数字签名/验证的
密钥对和用于数据加密/解密的密钥对,这里分别称为签名密钥对和加密密钥对。这两对密
钥由于用途不同,因此,对于密钥的管理也就有着不同的要求。
(1)签名密钥对的管理
签名密钥对由签名私钥和验证公钥组成。
签名私钥是发送方身份的证明,具有日常生活中公章、私章的效力。为保证其惟一性,
签名私钥绝对不能够做备份和存档,丢失后只需重新生成新的密钥对。验证公钥需要存档,
用于验证旧的数字签名。
用做数字签名的这一对密钥一般可以有较长的生命期。
(2)加密密钥对的管理
加密密钥对由加密公钥和解密私钥组成。
为防止密钥丢失时数据无法恢复,解密私钥应该进行备份,同时还可能需要进行存档,
以便能在任何时候解密历史密文数据。加密公钥则无需备份和存档,加密公钥丢失时,只需
重新生成密钥对即可。
这种密钥应该频繁更换,故加密密钥对的生命周期较短。
不难看出,这两对密钥的密钥管理要求存在互相冲突的地方,因此,必须针对不同的用
途使用不同的密钥对。尽管有的公钥体制算法如RSA,既可以用于加密,又可以用于签名,
但由于这两对密钥在管理上截然不同的要求,在使用中仍然必须为用户配置两对密钥:其一
用于数字签名,另一用于加密。而采用一对密钥,既用于加密,又用于签名,这种做法是不安
全的。