如何手动核实 TLS 证书的有效性?
- 内容介绍
- 文章标签
- 相关推荐
本文共计4461个文字,预计阅读时间需要18分钟。
证书结构+我们目前使用的+TLS+证书的标准是+X.509,版本号为+V3。版本号可从证书的+Version+字段查看。+根据RFC 3280+定义的证书结构,证书由三个部分组成:+证书主体(TBSCertificate,To B)。
证书结构我们现在使用的 TLS 证书的标准是 X.509,版本号为 V3。版本号可从证书的 Version 字段看到。
根据 RFC 3280 定义的证书结构,证书由三个部分组成:
- 证书主体(TBSCertificate,To Be Signed Certificate,待签名证书)
- 签名算法
- 签名值
证书主体包括版本、序列号、公钥等内容。签名值是对证书主体使用签名算法计算并经过证书签名机构私钥加密后的值。
证书的数据组织格式为 ASN.1 DER 格式(distinguished encoding rules)。这是一种 TLV 编码,其中的每个元素都包含 Tag、Length、Value。通常我们获得的证书是经由 Base64 编码后的 PEM 文件,为了节省不必要的麻烦,后续内容会提前将证书转回 DER 格式。
PEM 文件的格式是这样的:
-----BEGIN CERTIFICATE-----
这里是 Base64 编码后的内容
-----END CERTIFICATE-----
证书验证
为了验证证书,我们需要获取以下内容:
- 证书主体。用于通过签名算法得到其 hash 值
- 证书签名值。
- CA 的公钥。
本文共计4461个文字,预计阅读时间需要18分钟。
证书结构+我们目前使用的+TLS+证书的标准是+X.509,版本号为+V3。版本号可从证书的+Version+字段查看。+根据RFC 3280+定义的证书结构,证书由三个部分组成:+证书主体(TBSCertificate,To B)。
证书结构我们现在使用的 TLS 证书的标准是 X.509,版本号为 V3。版本号可从证书的 Version 字段看到。
根据 RFC 3280 定义的证书结构,证书由三个部分组成:
- 证书主体(TBSCertificate,To Be Signed Certificate,待签名证书)
- 签名算法
- 签名值
证书主体包括版本、序列号、公钥等内容。签名值是对证书主体使用签名算法计算并经过证书签名机构私钥加密后的值。
证书的数据组织格式为 ASN.1 DER 格式(distinguished encoding rules)。这是一种 TLV 编码,其中的每个元素都包含 Tag、Length、Value。通常我们获得的证书是经由 Base64 编码后的 PEM 文件,为了节省不必要的麻烦,后续内容会提前将证书转回 DER 格式。
PEM 文件的格式是这样的:
-----BEGIN CERTIFICATE-----
这里是 Base64 编码后的内容
-----END CERTIFICATE-----
证书验证
为了验证证书,我们需要获取以下内容:
- 证书主体。用于通过签名算法得到其 hash 值
- 证书签名值。
- CA 的公钥。

