一、加密算法分类
1、对称加密:
在对称加密算法中,数据发信方将明文(原始数据)和加密密钥一起经过特殊加密算法处理后,使其变成复杂的加密密文发送出去。收信方收到密文后,若想解读原文,则需要使用加密用过的密钥及相同算法的逆算法对密文进行解密,才能使其恢复成可读明文。在对称加密算法中,使用的密钥只有一个,发收信双方都使用这个密钥对数据进行加密和解密,这就要求解密方事先必须知道加密密钥。
2、单向加密:
即提取数据特征码的加密方式,其主要特点有一下几个:
1、输入一样,输出必然相同
2、雪崩效应:输入的微小改变,将会引起结果的巨大改变
3、定长输出:无论原始数据是多少,结果大小都是相同的 4、不可逆:无法根据特征码还原原来的数据
单向加密算法:
MD4
MD5 128bit
SHA1 160bit
SHA192, SHA256, SHA384
CRC-32 循环冗余校验
3、公钥加密(非对称加密):
发送方用自己的私钥加密数据,可以实现身份验正
发送方用对方的公钥加密数据,可以保证数据机密性
公钥加密算法速度太慢,因此很少用来加密数据 一般用于身份验证
RSA: 加密、签名
DSA:签名
用公钥加密实现身份验证,单向加密实现数据完整性(提取特征码)
对称加密实现数据机密性 (公钥加密对密码进行加密,接收方用私钥解密)
二、PKI简介
PKI(Public Key Infrastructure ) 即"公钥基础设施",是一种遵循既定标准的密钥管理平台,它能够为所有网络应用提供加密和数字签名等密码服务及所必需的密钥和证书管理体系,简单来说,PKI就是利用公钥理论和技术建立的提供安全服务的基础设施。
x509: 证书格式
公钥及其有效期限
证书的合法拥有者
证书该如何被使用
CA的信息
CA签名的校验码
PKI: TLS/SSL:x509
通信过程加密机制:
A发送方:
1、计算数据的特征码(单向加密);
2、用自己的私钥加密特征码,并附加在数据后面;
3、生成一个临时对称密钥;
4、用此密钥结合某算法加密数据及加密后的特征码;
5、对接收方的公钥加密此对称密钥,并附加加密后的数据后面;
6、发送至接收方;
B接收方:
1、用自己的私钥解密加密的对称密钥;
2、用对称密钥解密数据;
3、用对方的公钥解密加密的特征码;
4、用同样的算法计算数据的特征码,并与解密而来的特征码进行比较。