目录
一、加密算法
1. 私钥密码
密码分为私钥和公钥密码,介于私钥和公钥之间的密码称为混合密码。
私钥密码又称对称密码,该体制的特点是加密和解密使用相同的密钥。 消息双方必须事先通过安全渠道交换密钥。
- 优点:加解密速度快、密文紧凑、使用长密钥时的难破解
- 缺点:密钥分配问题、密钥管理问题、无法认证源
2. 非对称加密(公钥)
公钥密码,对数据加密和解密的密钥是不同的。
- 优点: 密钥分发方便、密钥保管量少、支持数字签名
- 缺点: 加密速度慢、数据膨胀率高
每个实体有两个密钥:公钥公开、私钥自己保存。
公钥加密,私钥解密,可实现保密通信
私钥加密。公钥解密,可实现数字签名
RSA: 512位(或1024位)密钥,计算量极大,难破解。
Elgamal、ECC(椭圆曲线算法)、背包算法、Rabin、DH等
3. 混合密码
发送方用对称密钥加密需要发送的消息,再用接收方的公钥加密对称密钥,然后一起发送给接收方;接收方先用自己的私钥解密得到对称密钥,然后用对称密钥解密得到明文。
4.SM算法
二、HASH算法
hash函数,又称杂凑函数、散列函数,它能够将任意长度的信息转换成固定长度的哈希值,并且任意不同消息或文件所生成的哈希值是不一样的。
1.常见HASH算法
- MD5: 以512位数据块为单位来处理输入,产生128位的信息摘要。常文件校验。
- SHA: 以512位数据块为单位来处理输入,产生160位的哈希值,具有比MD5更强的安全性。
- SM3: 消息分组长度为512比特,输出256位摘要。
2.特性
不可逆、无碰撞性、雪崩效应。
3.应用场景
-
文件完整性校验
-
账号密码存储
-
用户身份认证
三、数字签名
1. 概述
签名方用自己的私钥进行签名,对方收到后,用签名的公钥进行验证。数字签名是用于确认发送者身份和消息完整性的一个加密消息摘要。特点:
- 可信的
- 不可伪造
- 不能重复使用
- 不能重新使用
- 不能改变
- 不能抵赖
- 接收者能够核实发送者身份
2. 验证过程
四、数字证书与CA
1.数字证书
2. PKI体系结构
3. 证书链