• 网络中数字证书原理及应用


    1、信息安全的基础 - 机密性

    • **明文:**加密前的消息叫“明文”(plain text)

    • **密文:**加密后的文本叫“密文”(cipher text)

    • **密钥:**只有掌握特殊“钥匙”的人,才能对加密的文本进行解密,这里的“钥匙”就叫做“密钥”(key)

    “密钥”就是一个字符串,度量单位是“位”(bit),比如,密钥长度是 128,就是 16 字节的二\进制串

    • **加密:**实现机密性最常用的手段是“加密”(encrypt)

    ​ 按照密钥的使用方式,加密可以分为两大类:对称加密和非对称加密。

    • **解密:**使用密钥还原明文的过程叫“解密”(decrypt)

    • **加密算法:**加密解密的操作过程就是“加密算法”

      • 所有的加密算法都是公开的,而算法使用的“密钥”则必须保密

    2**、对称加密和非对称加密**

    2.对称加密和非对称加密

    2.1对称加密

    • 特点:只使用一个密钥,密钥必须保密,常用的有 AES算法

    • 优点:运算速度快

    • 缺点:秘钥需要信息交换的双方共享,一旦被窃取,消息会被破解,无法做到安全的密钥交

    2.2非对称加密

    特点:使用两个密钥:公钥和私钥,公钥可以任意分发而私钥保密,常用的有 RSA

    优点:黑客获取公钥无法破解密文,解决了密钥交换的问题

    缺点:运算速度非常慢

    2.3混合加密

    实际场景中把对称加密和非对称加密结合起来使用。

    3.身份认证

    公钥加密,私钥解密的作用就是加密信息
    
    私钥加密,公钥解密的作用就是身份认证
    
    • 1
    • 2
    • 3

    4.摘要算法

    摘要算法就是我们常时候的散列函数,哈希函数(Hash Function),他能把任意长度的数据"压缩"成固定长度,而且第一无二的"摘要"字符串,就好像是给这段数据生成一个一个数字指纹

    作用:保证信息完整性

    特性:

    • 不可逆,只有算法,没有秘钥,只能加密,不能解密
    • 难题友好性:想要破解,只能暴力枚举
    • 发散性:只要对原文发生了一点点的变动,摘要也会发生剧烈变化
    • 抗碰撞性:原文不同,计算后的摘要也不同

    常见摘要算法

    MD5、SHA1、SHA2(SHA224、SHA256、SHA384)

    5.数字签名

    数字签名是使用私钥对摘要加密生成签名,需要由公钥将签名解密后进行验证实现身份验证

    签名和验证签名的流程

    image-20220721143738371

    6.数字证书

    数字证书中包含的信息
    在这里插入图片描述

    数字证书使用哈希摘要算法,使用自身的私钥进行签名,将签名附加到数字证书信息当中,从而生成数字证书,提供给使用者
    
    • 1

    在这里插入图片描述

    Bob使用数字证书发送信件,接受放Pat取出证书,对证书进行验签操作(使用相同的算法对证书的信息进行摘要算法处理,比较摘要是否一致),如果验证摘要成功,取出Bob的公钥;
    
    取出Bob的公钥后进行验证信件,对信件进行摘要使用Bob的公钥进行加密,比较摘要是否一致,如果一致确定摘要没有修改并且是Bob发送
    
    • 1
    • 2
    • 3

    数字证书应用场景

    数字证书解决"公钥的信任问题",可以防止黑客伪造公钥

    不能直接分发公钥,公钥的分发必须使用数字证书,数字证书由CA机构颁发

    image-20220721151537310

    1.Https网站含有自己的证书,证书由权威的CA机构颁发,CA机构用私钥加密数字证书并签名数字证书中存有网站的公钥
    2.网站要发送加密请求时候,需要获取https网站公钥,公钥存在于https网站的数字证书当中,浏览器使用CA机构的公钥(存在于操作系统当中)对数字证书进行验签,验签通过后进行解密,获取到网站的公钥,与服务器交换加密
    
    • 1
    • 2

    站要发送加密请求时候,需要获取https网站公钥,公钥存在于https网站的数字证书当中,浏览器使用CA机构的公钥(存在于操作系统当中)对数字证书进行验签,验签通过后进行解密,获取到网站的公钥,与服务器交换加密

    
    
    • 1
  • 相关阅读:
    极致CMS翻译插件自动批量多语种翻译
    java和C#md5算法互通
    NPU架构分析与应用
    Maven相关常用操作——实用指南
    配置maven镜像仓库/本地仓库/运行编码
    美团yolov6初体验
    某金融机构身份国产化LDAP创新实践——国产自主可控 LDAP目录服务建设经验分享
    阿里大牛总结的Netty手册,面试再也不怕被问Netty了,奥利给
    JavaScript使用类-模态窗口
    学一点Ceph知识:初识Ceph
  • 原文地址:https://blog.csdn.net/weixin_51352309/article/details/126016435