加密算法
加密算法分为单项加密和双项加密算法
双项加密分为对称加密和非对称加密算法,单项加密一般为Hash算法
1.1 对称加密算法
对称加密算法是指加密和解密选用相同的密钥,是可逆的,即能够解密。
常见对称加密算法包含:AES,DES,3DES。
AES加密算法是暗码学中的高档加密规范,选用的是对称分组暗码体系,密钥长度的最少支撑为128。
DES加密算法是使用56+8奇偶效验位 = 64位的密钥对以64位为单位的块数据进行加解密。
长处:加密速度快
缺陷:密钥的传递和保存是个问题,参加加密和解密的密钥是相同的,所以安全性不能确保。
1.2非对称加密算法
非对称加密算法是指加密和解密选用不同的密钥(公钥和私钥),因而非对称加密也叫公钥加密,是可逆的(即可解密)。
RSA加密算法是根据一个非常简略的数论现实:将两个大素数相乘非常简略,可是想要对其乘积进行因式分解极端困难,因而能够将乘积揭露作为加密密钥。尽管RSA的安全性一向未能得到理论上的证明,但它阅历了各种进犯至今未被彻底攻破。
常见的非对称加密算法包含:RSA,DSA。
RSA加密算法能够用来做数据加密,也能够用来数字签名。
长处:密和解密的密钥不一致,公钥是能够揭露的,只需确保私钥不被走漏即可,这样就密钥的传递变的简略许多,然后降低了被破解的几率。
加密速度慢
数字签名进程:甲方用私钥加密,乙方用公钥解密(乙方解密成功阐明便是甲方加的密,甲方就不能够狡赖)
1.3 Hash加密算法
常见的Hash加密算法包含:MD4,MD5,SHA-1
MD5全称是Message-Digest Algorithm 5(信息摘要算法5),单向的算法不行逆(被MD5加密的数据不能被解密)。MD5加密后的数据长度要比加密数据小的多,且长度固定,且加密后的串是仅有的。
适用场景:常用在不行复原的暗码存储、信息完整性校验等。
信息完整性校验:典型的使用是对一段信息发生信息摘要,以避免被篡改。假如再有一个第三方的认证组织,用MD5还能够避免文件作者的“狡赖”,这便是所谓的数字签名使用。
1.4 Base64加密算法
Base64是网络上最常见的用于传输8Bit字节代码的编码办法之一,Base64编码可用于在HTTP环境下传递较长的标识信息。
Base64便是一种根据64个可打印字符来表明二进制数据的办法。
Base64加密算法归于对称加密算法。