x509证书格式

x509证书格式

X.509是国际电信联盟-电信(ITU-T)部分标准和国际标准化组织(ISO)的证书格式标准。
使用ASN.1描述,我们可以将其抽象为以下结构。

Certificate::=SEQUENCE{
    tbsCertificate      TBSCertificate,
    signatureAlgorithm  AlgorithmIdentifier,
    signatureValue      BIT STRING
}

TBSCertificate::=SEQUENCE{
    version           [0]   EXPLICIT Version DEFAULT v1,
    serialNumber            CertificateSerialNumber,
    signatureAlgorithm      AlgorithmIdentifier,
    issuer                  Name,
    validity                Validity,
    subject                 Name,
    subjectPublicKeyInfo    SubjectPublicKeyInfo,
    issuerUniqueID    [1]   IMPLICIT UniqueIdentifier OPTIONAL,
    subjectUniqueID   [2]   IMPLICIT UniqueIdentifier OPTIONAL,
    extensions        [3]   EXPLICIT Extensions OPTIONAL
}
字段 含义 备注
tbsCertificate.version 证书协议版本 当前一般使用v3
tbsCertificate.serialNumber 证书序列号 用于唯一标识证书,特别在吊销证书的时候有用
tbsCertificate.signatureAlgorithm id签名算法
tbsCertificate.issuer 颁发者信息 国家(C,Country),州/省(S,State),地域/城市(L,Location),组织/单位(O,Organization),通用名称(CN,Common Name)
tbsCertificate.validity 生效/失效时间
tbsCertificate.subject 证书所有人信息 国家(C,Country),州/省(S,State),地域/城市(L,Location),组织/单位(O,Organization),通用名称(CN,Common Name)
tbsCertificate.subjectPublicKeyInfo 证书所有人的公钥
tbsCertificate.issuerUniqueID 颁发者唯一标识符(可选)
tbsCertificate.subjectUniqueID 证书所有人唯一标识符(可选)
tbsCertificate.extensions 扩展信息(可选)
signatureAlgorithm 证书签名算法
signatureValue 签名数据

参考资料

posted @ 2022-03-11 18:15  HachikoT  阅读(139)  评论(0编辑  收藏  举报