对称加密 非对称加密 AC认证 https原理

文章目录

对称加密及漏洞

对称加密是一种加密算法,使用相同的密钥(也称为对称密钥)用于加密和解密数据。在对称加密中,发送方使用密钥对要发送的数据进行加密,接收方使用相同的密钥对接收到的密文进行解密,从而还原成原始的明文数据。
对称加密的特点包括:

快速高效:对称加密算法通常计算速度快,适合处理大量数据。

加密解密使用相同密钥:对称加密使用相同的密钥进行加密和解密操作,因此在通信双方之间需要共享密钥。这也意味着密钥的安全性非常重要,任何人获取了密钥都可以解密密文。

安全性依赖于密钥管理:对称加密的安全性取决于密钥的保密性和安全管理。如果密钥泄露,加密的数据将无法保护。

常见的对称加密算法包括DES(数据加密标准)、3DES(三重数据加密算法)、AES(高级加密标准)等。这些算法在加密过程中使用相同的密钥进行加密和解密操作,提供了保护数据隐私和保密性的机制。

图解:

非对称加密及漏洞

非对称加密是一种加密算法,使用一对不同但相关的密钥,分别称为公钥和私钥。公钥用于加密数据,私钥用于解密数据。在非对称加密中,公钥可以公开给任何人使用,而私钥必须保密。


加密解密使用不同密钥:非对称加密使用不同的密钥进行加密和解密操作。公钥用于加密数据,私钥用于解密数据。这意味着任何人都可以使用公钥加密数据,但只有私钥的持有者才能解密数据。

数字签名:非对称加密还可以用于数字签名。发送方可以使用私钥对数据进行签名,接收方可以使用公钥验证签名的真实性,确保数据的完整性和身份认证。

密钥分发和管理:非对称加密可以解决对称加密中密钥分发和管理的问题。发送方只需要知道接收方的公钥,而不需要共享私钥。这样可以降低密钥管理的复杂性。

常见的非对称加密算法包括RSA(Rivest-Shamir-Adleman)、ECC(椭圆曲线加密)等。这些算法在加密和解密过程中使用不同的密钥,提供了更高的安全性和灵活性。

图解:

什么是数据摘要(也称数据指纹)

数据签名是一种用于验证数据完整性和身份认证的技术。它通过使用加密算法和私钥对数据进行加密,生成一个唯一的数字签名。这个数字签名可以用于验证数据的来源和完整性,确保数据在传输过程中没有被篡改或伪造。

数据签名的过程如下:

数据摘要:首先,对要签名的数据应用一个哈希函数,生成一个固定长度的摘要(也称为哈希值)。这个摘要是根据数据内容计算出来的,具有唯一性和不可逆性。

私钥加密:使用私钥对摘要进行加密,生成数字签名。私钥只有签名者拥有,用于对数据进行加密和生成签名。

数字签名验证:接收方可以使用公钥对数字签名进行解密,得到摘要。然后,接收方对接收到的数据应用相同的哈希函数,生成一个新的摘要。接收方可以比较这两个摘要,如果它们匹配,则说明数据没有被篡改或伪造。

数据签名的作用包括:

数据完整性:数据签名可以验证数据在传输过程中是否被篡改。如果数据被篡改,数字签名验证将失败,接收方可以知道数据已被修改。

身份认证:数据签名可以验证数据的来源。由于私钥只有签名者拥有,其他人无法生成有效的数字签名,因此可以确保数据的身份认证。

防止抵赖:由于数字签名是使用私钥生成的,签名者无法否认自己对数据的签名。这可以防止签名者在后期否认自己的行为。

什么是CA认证

CA认证是指由CA(Certificate Authority,证书颁发机构)进行的数字证书的认证过程。CA是一个可信任的第三方机构,负责验证和签发数字证书,用于验证网站、服务器或个人的身份和安全性。

CA证书签发过程

  1. 服务方 S 向第三方机构CA提交公钥、组织信息、个人信息(域名)等信息并申请认证;

  2. CA 通过线上、线下等多种手段验证申请者提供信息的真实性,如组织是否存在、企业是否合法,是否拥有域名的所有权等;

  3. 如信息审核通过,CA 会向申请者签发认证文件和证书。

    证书包含以下信息:申请者公钥、申请者的组织信息和个人信息、签发机构 CA 的信息、有效时间、证书序列号等信息的明文,同时包含一个签名;

    签名的产生算法:首先,使用散列函数计算公开的明文信息的信息摘要,然后,采用 CA 的私钥对信息摘要进行加密,密文即签名;

  4. 客户端 C 向服务器 S 发出请求时,S 返回证书文件;

  5. 客户端 C 读取证书中的相关的明文信息,采用相同的散列函数计算得到信息摘要,然后,利用对应 CA 的公钥解密签名数据,对比证书的信息摘要,如果一致,则可以确认证书的合法性,即公钥合法;

  6. 客户端然后验证证书相关的域名信息、有效时间等信息;

  7. 客户端会内置信任 CA 的证书信息(包含公钥),如果CA不被信任,则找不到对应 CA 的证书,证书也会被判定非法。

在这个过程注意几点:

1.申请证书不需要提供私钥,确保私钥永远只能服务器掌握;

2.证书的合法性仍然依赖于非对称加密算法,证书主要是增加了服务器信息以及签名;

3.内置 CA 对应的证书称为根证书,颁发者和使用者相同,自己为自己签名,即自签名证书;

4.证书=公钥+申请者与颁发者信息+签名;

https通信方案

图解:

  1. 中证书无法伪造。
    2.形成签名的方法不公开是签名不会被伪造的关键,也是对比数据摘要判断是否可信任 这一方法的保障。
相关推荐
Chef_Chen11 分钟前
从0开始学习机器学习--Day33--机器学习阶段总结
人工智能·学习·机器学习
hopetomorrow1 小时前
学习路之压力测试--jmeter安装教程
学习·jmeter·压力测试
hopetomorrow1 小时前
学习路之PHP--使用GROUP BY 发生错误 SELECT list is not in GROUP BY clause .......... 解决
开发语言·学习·php
/**书香门第*/1 小时前
Cocos creator 3.8 支持的动画 7
学习·游戏·游戏引擎·游戏程序·cocos2d
美式小田2 小时前
单片机学习笔记 9. 8×8LED点阵屏
笔记·单片机·嵌入式硬件·学习
猫爪笔记2 小时前
前端:HTML (学习笔记)【2】
前端·笔记·学习·html
Gworg3 小时前
创建HTTPS网站
安全·https·ssl
-一杯为品-3 小时前
【51单片机】程序实验5&6.独立按键-矩阵按键
c语言·笔记·学习·51单片机·硬件工程
风尚云网3 小时前
风尚云网前端学习:一个简易前端新手友好的HTML5页面布局与样式设计
前端·css·学习·html·html5·风尚云网
EterNity_TiMe_5 小时前
【论文复现】(CLIP)文本也能和图像配对
python·学习·算法·性能优化·数据分析·clip