标签:ref ble tar sequence 组成 publickey 版本 算法 view
下载ASN.1的查看工具Asn1View.exe
访问支付宝,获取站点证书
导出证书详细信息
-复制到文件
-DER编码二进制X.509(.CER)
,在Asn1View.exe中打开
标识符 | 分隔符 |
---|---|
Integer | 0x02 |
Bit String | 0x03 |
OCTET String | 0x04 |
Null | 0x05 |
Object Indentifier | 0x06 |
UTF8 String | 0x12 |
Printable String | 0x13 |
UTC Time | 0x17 |
Sequence | 0x30 |
Set | 0x31 |
Certificate ::= SEQUENCE {
tbsCertificate TBSCertificate, # 证书
signatureAlgorithm AlgorithmIdentifier, # 签名算法
signature BIT STRING # 签名
}
证书信息本身是一个 SEQUENCE,里面由两个 SEQUENCE和一个BIT STRING组成
SEQUENCE
待签的证书,tbsCertificate=TO BE Signed Certificate
;SEQUENCE
签名算法,就是CA准备采用什么签名算法对tbsCertificate
进行签名;BIT STRING
签名信息,CA对tbsCertificate
通过signatureAlgorithm
签名算法签出来的签名信息。RFC3280对TBSCertificate
的定义如下
TBSCertificate ::= SEQUENCE {
version [0] EXPLICIT Version DEFAULT v1, # 版本
serialNumber CertificateSerialNumber, # 序列号
signature AlgorithmIdentifier, # 签名算法
issuer Name, # 颁发者
validity Validity, # 有效期
subject Name, # 主题
subjectPublicKeyInfo SubjectPublicKeyInfo , # 主题公钥信息
issuerUniqueID[1] IMPLICIT UniqueIdentifier OPTIONAL, # 颁发者唯一ID
-- If present, version shall be v2 or v3
subjectUniqueID [2] IMPLICIT UniqueIdentifier OPTIONAL, # 主题唯一ID
-- If present, version shall be v2 or v3
extensions [3] EXPLICIT Extensions OPTIONAL # 扩展
-- If present, version shall be v3
}
Version
Context[0]
(第一个)里面就是证书版本信息(默认V1
)Version
的定义Version ::= INTEGER { v1(0),v2(1),v3(2)
ASN1View
右面的16进制显示serialNumber
serialNumber
的定义CertificateSerialNumber ::= INTEGER
标签:ref ble tar sequence 组成 publickey 版本 算法 view
原文地址:https://www.cnblogs.com/SANFENs/p/12687423.html