zoukankan      html  css  js  c++  java
  • PKI/CA与数字证书

    认识SSL

    SSL(Security Sockets Layer 安全套接层)是Netscape公司提出的安全协议,利用数据加密、身份验证和消息完整性验证机制,为网络上数据的传输提供安全性保证。SSL及其继任者传输层安全(Transport Layer Security,TLS)是为网络通信提供安全及数据完整性的一种安全协议。TLS与SSL在传输层对网络连接进行加密。

    SSL的能做什么:

    数据加密
    身份验证
    消息完整性验证
    解决的问题:
    1)认证用户和服务器,确保数据发送到正确的客户机和服务器;
    2)加密数据以防止数据中途被窃取;
    3)维护数据的完整性,确保数据在传输过程中不被改变。

    什么是SSL证书?为什么要买SSL证书?

    1. SSL数字证书(一)CA、根证书与数字证书
    2. SSL数字证书(二)使用makecert.exe签发证书
    3. SSL数字证书(三)使用 openssl 生成证书

    CA、根证书与数字证书

    网络安全无疑是现阶段互联网发展最大的问题,数字证书是解决这个问题的一个绕不开的办法,不管是ActiveX插件还是https都需要用到数字证书。

    基本概念

    • CA(Certificate Authority)被称为证书授权中心,是数字证书发放和管理的机构。
    • 根证书是CA认证中心给自己颁发的证书,是信任链的起始点。用户安装根证书意味着对这个CA认证中心的信任。
    • 数字证书颁发过程一般为:用户首先产生自己的密钥对,并将公共密钥及部分个人身份信息(CSR)传送给认证中心。认证中心在核实身份后,将执行一些必要的步骤,以确信请求确实由用户发送而来,然后,认证中心将发给用户一个数字证书,该证书内包含用户的个人信息和他的公钥信息,同时还附有认证中心的签名信息。

    CSR

    CSR是Certificate Signing Request的英文缩写,即证书签名请求文件,是证书申请者在申请数字证书时由CSP(加密服务提供者)在生成私钥的同时也生成证书请求文件,证书申请者只要把CSR文件提交给证书颁发机构后,证书颁发机构使用其根证书私钥签名就生成了证书公钥文件,也就是颁发给用户的证书。

    CSR是以-----BEGIN CERTIFICATE REQUEST-----开头,-----END CERTIFICATE REQUEST-----为结尾的base64格式的编码。将其保存为文本文件,就是所谓的CSR文件。

    参考:什么是CSR以及CSR的作用和生成

    认证流程
    https认证流程:

    1、服务器生成一对密钥,私钥自己留着,公钥交给数字证书认证机构(CA)
    2、CA进行审核,并用CA自己的私钥对服务器提供的公钥进行签名生成数字证书
    3、在https建立连接时,客户端(浏览器)从服务器获取数字证书,用CA的公钥(根证书)对数字证书进行验证,比对一致,说明该数字证书确实是CA颁发的(得此结论有一个前提就是:客户端的CA公钥确实是CA的公钥,即该CA的公钥与CA对服务器提供的公钥进行签名的私钥确实是一对。),而CA又作为权威机构保证该公钥的确是服务器端提供的,从而可以确认该证书中的公钥确实是合法服务器端提供的。
    注:为保证第3步中提到的前提条件,CA的公钥必须要安全地转交给客户端(CA根证书必须先安装在客户端),因此,CA的公钥一般来说由浏览器开发商内置在浏览器的内部。于是,该前提条件在各种信任机制上,基本保证成立。

    制作自己的根证书及数字证书
    通过CA生成数字证书比较很麻烦,而且要收费贵,在公司设备与公司的服务器通信时可以采用自己生成的数字证书,但是需要将数字证书导入到设备中。

    制作数字证书工具 makecert : makecert 制作数字证书
    数字签名工具SignTool下载【 链接: https://pan.baidu.com/s/1nROzB5qcmrY25E-PlW3mFw 密码: x5jj】

    《PKI/CA 与数字证书技术大全》

    CA系列之数字证书

    密码学知识-证书CA/PKI-8

    证书规范与格式:

    编码格式总结:

    • X.509 DER(Distinguished Encoding Rules)编码,后缀为:.der .cer .crt
    • X.509 BASE64编码(PEM格式),后缀为:.pem .cer .crt

    密码算法

    PKI

    数字信封

    对称密码优点是加解密运算非常快,适合处理大批量数据,但其密码的分发与管理比较复杂。而非对称密码算法的特点是公钥和私钥分离,非常适合密钥的分发和管理。
    如果将对称密码算法和非对称密码算法的优点结合起来,则既能处理大批量数据,又能简化密钥的分发与管理,于是数字信封机制应运而生。

     

    参考资料:

    从零学习CA系列

    密码学知识

  • 相关阅读:
    realsense SDK debug
    网络
    JVM基础系列第11讲:JVM参数之堆栈空间配置
    图片一句话木马简单制作方法
    RocketMQ(四):生产者消息数据写入实现细节
    RocketMQ(三):broker启动逻辑
    发现一个新的技术网站 https://dotnet9.com/
    【最新】解决Github网页上图片显示失败的问题
    c++入门
    Newtonsoft.Json json.net 可以丢弃了,微软发布了 System.Text.Json 适用于.net 4.6.1 +,后悔了,建议.net5+项目使用
  • 原文地址:https://www.cnblogs.com/peterYong/p/12987095.html
Copyright © 2011-2022 走看看