密码学原理

密码学原理

备注:VPN 技术中的密码学原理。

加密算法

概述

用于对用户数据进行加密,常用算法有 DES、3DES、AES、RSA、DH 算法。
根据密钥特征,分为对称和非对称算法。

对称算法

用户 A 通过互联网向用户 B 发送消息,数据如果不经过加密可能遭到窃取、篡改。采用对称算法对数据进行加密,所谓的对称是指通信双方用来加、解密的密钥是相同的,假设密钥为 key,用户 A 使用 key 对数据加密后将密文通过互联网发送给用户 B,用户 B 收到密文后再使用相同的 key 进行解密得到对应的明文数据。
此时存在一个技术难点,即双方第一次通信时如何安全且准确的协商密钥信息。

常规对称算法具有以下特征:
安全性
紧凑性(加密前后的数据大小变化不大)
速度快

常见对称算法:
DES、3DES、AES

非对称算法

通信双方各自持有两个密钥,即私钥和公钥,非对称算法不要求通信双方事先协商密钥信息。用户 A 向用户 B 发送数据,用户 A 将明文使用用户 B 的公钥进行加密,用户 B 收到密文后使用自己的私钥进行解密以得到对应的明文。
密钥对:公钥+私钥;公钥公开,私钥保密;加解密双方各有一对密钥对。发给谁就用谁的公钥对数据进行加密。

常见非对称算法:
RSA、DH

常规对称算法具有以下特征:
速度慢
安全性
密钥管理方便
支持数字签名
支持不可否认性

对称、非对称算法结合

取各自的优点相结合。
对称算法用来对数据加密,非对称算法用来实现密钥分发。

哈希算法

分类

MD5、SHA,用于实现数据完整性校验。

原理

用户 A 向用户 B 发送数据,数据传输中途可能因为某些原因被修改,但是通信双方互不知道,导致用户 B 收到一份错误的信息。为了方便通信双方确认传输数据的完整性,提出哈希算法,发送方发送数据时,会用哈希算法计算数据的哈希值,并连同消息一起发送给接收方,收到数据后用户再次计算数据的哈希值并与原哈希值对比,若相同则证明数据是完整的未被篡改的。

特征

1、雪崩效应:明文有任何的修改,hash全局改变;
2、不可逆向:无法根据哈希值得到明文;
3、固定输出:128bit、160bit

功能

1、完整性校验
2、安全性校验

下载文件时可根据哈希值判断文件的完整性。
网盘秒传,上传前计算哈希值。

密钥化散列

原理

应用场景:PPP CHAP
两个路由器直接进行密钥交换不安全,用户 A 把随意一段明文数据和密钥一起哈希后,将明文数据和哈希值发送给用户 B,用户 B 收到数据后提取出明文,再将本地的密钥与这段明文进行哈希,对比两次的哈希值,若相同则说明密钥相同完成协商。

功能

身份认证
数据完整性校验

数字签名

数字签名组件

哈希算法
非对称加密算法

原理

用户 A 向用户 B 发送消息,消息发送前先对其使用哈希算法计算哈希值 MAC1,使用私钥对哈希值加密得到的数据即数字签名,将数字签名值和明文一起发送给用户 B,用户 B 收到消息后,使用用户 A 的公钥解密数字签名,再计算明文哈希值 MAC2,若 MAC1 = MAC2,则说明文件内容没有被修改且确定是用户 A 本人发送的。

功能

1、不可抵赖性
用签名者的公钥可以解开 HMAC 证明数据是签名者发送的
2、数据完整性
HASH 值相同证明明文没有被篡改

数字证书

原理

用户 A 和用户 B 通信时,用户 A 的电脑被黑客劫持利用,非主动向用户 B 发送一条消息并带有 A 的数字签名,用户 B 经过计算后认定该消息就是用户 A 的电脑发出的,如何解决该问题呢?

数字证书相当于网络上的身份证。
例如登录百度网站时,可以查看百度的数字证书,浏览器会自动检测证书的有效性,并给予用户适当的提示。
在这里插入图片描述

组成

对等体公钥
对等体姓名、组织、地址
证书有效期
CA 的数字签名

PKI架构

公钥基础设施:
CA
RA
数字证书
对等体
分发机制
用来实现基于公钥密码体制的密钥和证书的产生、管理、存储、分发和撤销等功能。

以上所有结合起来,才能生成一条 VPN。

发布了34 篇原创文章 · 获赞 61 · 访问量 1014

猜你喜欢

转载自blog.csdn.net/qq_40644809/article/details/105375791