TLS初探(2)证书简介

      证书可以理解为签发方信息、拥有者信息、公钥以及签名(由签发方私钥签名)的集合(当然还有额外信息)。校验证书是否可信,实际就是检验该证书是否是由合法的签发方签发,验证的方法就是首先通过签发方信息找到对应的签发方证书,利用签发方证书中的公钥去校验签名是否正确。

       从上述验证方法可以看出,实际上证书是否可信是由其签发方的证书来进行校验的,而签发方的证书的可信是由上一层签发方的证书来校验的,如此就形成一条证书链,而最顶层的就是常说的根证书。此外有也许会问如果浏览器中找不到签发方证书怎么办?而且签发方确认是可信的,此时在TLS协商的时候,可以下发证书链。       

       随便搜一下TLS证书,会出现一大堆关键字:X.509, p12, pfx, pkcs, pem, csr, cer, crt, jks, crl等,这么繁杂一下就让人想从入门到放弃了,不过还是耐心梳理一下。


(一)X.509

      X.509就是一个广泛应用的数字证书标准,简单来说就是定义了数字证书里面包含哪些字段,如何存储,可以参照一下RFC5280;协议中定义的参数都是采用DER编码(X.690),DER编码可以理解为一种TLV(Tag Length Value)格式编码。

       以一个实际的证书内容为例,如下所示:

Certificate:

    Data:

        Version: 3 (0x2)              //表示为X509 v3版本证书

        Serial Number: 1 (0x1)   //序列号,签发时需保证同一签发方所签发的每个证书都一个唯一的Serial Number

    Signature Algorithm: sha256WithRSAEncryption  //签名算法,先进行SHA256摘要后,使用签发方私钥进行RSA加密

        Issuer: C=CN, ST=JS, L=NJ, O=Dreamer, OU=Dreamer, CN=Dreamer  //签发方DN(Distingushed Name),见后续说明

        Validity  //证书有效期

            Not Before: Jul 29 14:02

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值