• 为了防止私钥丢失时无法解密数据,解密私钥应该在CA进 行备份和存档.
Network and Information Security
用户的密钥对可有两种产生方式
• (1)CA替用户生成密钥对,将公钥制作进证书,然后将私钥 以秘密的方式传送给用户。 • 该方式下由于用户的私钥为CA所产生,故对CA的可信性有很 高的要求。 • CA必须在事后销毁用户的私钥,或做密钥备份。 • 这种方法称为密钥托管,适用于加密密钥对,对签名密钥对不 适合。 • 多数情况下,签名私钥比加密私钥重要得多 。 • (2)用户自己生成密钥对,然后自己保存私钥,将公钥以安全 的方式传给CA,CA将这个公钥制作进证书里。 • 这种方法适用于签名密钥对,CA不会知道用户的签名私钥。 • CA如何确定公钥与用户私钥是对应的? • 公钥在网络中传送,恶意的攻击者可能会替换用户的公钥。
第7章 PKI技术
7.3.2
X.509证书
X.509证书基本结构
Certificate ::= SEQUENCE { tbsCertificate TBSCertificate, signatureAlgorithm AlgorithmIdentifier, signature BIT STRING } TBSCertificate ::= SEQUENCE { version [0] Version DEFAULT v1(0), serialNumber CertificateSerialNumber, signature AlgorithmIdentifier, issuer Name, validity Validity, subject Name, subjectPublicKeyInfo SubjectPublicKeyInfo, issuerUniqueID [1] IMPLICIT UniqueIdentifier OPTIONAL, subjectUniqueID [2] IMPLICIT UniqueIdentifier OPTIONAL, extensions [3] Extensions OPTIONAL } Version ::= INTEGER { v1(0), v2(1), v3(2) }