PKI:数字证书的内容

举报
黄生 发表于 2022/07/14 15:22:54 2022/07/14
【摘要】 RSA算法密钥的产生,这里有一个简明的例子。X.509数字证书由3个域组成:证书内容(待签名) tbsCertificate、签名算法 signatureAlgorithm、签名值 signatureValue。其中,证书内容细节如下表:找了一个网站开通HTTPS使用的证书作为例子,对照看一下证书内容,基本对的上。然后来看一些证书内容里面的标准扩展项的内容细节表:同样的,使用HTTPS的证书...

RSA算法密钥的产生,这里有一个简明的例子。
image.png

X.509数字证书由3个域组成:证书内容(待签名) tbsCertificate、签名算法 signatureAlgorithm、签名值 signatureValue。
其中,证书内容细节如下表:
image.png

找了一个网站开通HTTPS使用的证书作为例子,对照看一下证书内容,基本对的上。
image.png

然后来看一些证书内容里面的标准扩展项的内容细节表:
image.png

同样的,使用HTTPS的证书作为例子,对照着看一下:
image.png

这里说一下KeyUsage 密钥用法。它是定义密钥的用途,限制、约束其只能用于部分操作。这里是Digital Signature, Key Encipherment (a0)。
Digital Signature 是可以用于数字签名,用于实体身份认证和数据完整性认证,但不可用于签发证书和CRL。
Key Encipherment 是用于密钥加密,用于密钥管理。
而 data Encipherment 是用于数据加密,但不可以用于密钥加密。

按照不同的标准,可以对证书进行分类。

  1. 按持有者来分
    有CA证书,非CA证书
    非CA证书又有:个人的、单位的、系统的。
    系统的是代表软件系统或设备系统的身份。系统信息就是比如IP地址、域名。可以分为:WEB服务器证书、域控制器证书、VPN设备证书、OCSP服务器证书、时间戳服务器证书等。那这里举的证书例子,就是WEB服务器证书。
  2. 按密钥对产生方式和使用方式来分
    可分为签名证书和加密证书。
    可以通过证书内容里的扩展项 KeyUsage ExtKeyUsage 来识别。这里的例子,应该是签名证书,加密只能对密钥加密,没说可以对数据加密。
  3. 按证书用途来分
    有SSL服务器证书、SSL客户端证书、代码签名证书、EMAIL证书等。ExtKeyUsage可以用来识别。例子里的是id-kp-serveAuth, id-kp-clientAuth。即用于SSL/TLS WEB的
    服务器身份验证 (1.3.6.1.5.5.7.3.1)
    客户端身份验证 (1.3.6.1.5.5.7.3.2)

证书的保存形式,可以按照Certificate类型进行DER编码,保存为二进制形式的文件。也可以采用Base64编码后保存为可打印字符文件。文件后缀为cer或crt,在windows下双击文件可以查看证书内容,如本文中的证书内容截图。
image.png

要保存证书链(证书路径或认证路径)上的所有证书,将多个证书保存到一个文件,可以采用 PKCS#7 文件形式。
另外,导出个人证书时,可以选择是否将私钥和证书一起导出,如果一起的化,只能导出为 PKCS#12 格式文件。
私钥的保存形式,可以以文件形式(包含 PKCS#8 ,PKCS#12 文件形式;JAVA从1.4开始支持的密钥库文件形式,后缀是.keystore。可以通过keytool工具或java类访问,私钥文件后缀是jks)、密码设备形式(IC卡、USB Key、密码卡、密码机等)、软件系统管理形式(如windows的CSP Cryptographic Service Provider、WEB服务器软件IIS,Apache,Tomcat, Nginx等)。
私钥的访问方式有很多,CryptoAPI, PKCS#11, JCA/JCE, CNG, PC/SC,还有国密接口,即《智能IC卡及智能密码钥匙密码应用接口规范》。

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。