加密算法的理解

加密算法按类型分类:

对称加密、非对称加密、散列算法

对称加密:

加密双方都持有加密算法及密钥

非对称加密:

加密双方,一方使用公钥,一方使用私钥,公钥加密后的密文,只能用私钥解开,私钥加密后密文,只能用公钥解开,公钥公开,私钥不公开,公钥私钥成对使用,按照使用方式,公开的密钥叫做公钥

散列算法:

加密过程不可逆,一般用于签名目的,验证数据完整性,防止数据被篡改,因为其加密过程是不可逆的原因,不能算作加密算法

MD5

散列算法

Base64

为避免数据在传输过程中,涉及到特殊16进制控制码,例如16进制中,0x0C, 0x0D就是一个回车加换行的指令,举个例子,在可以插入图片的文本数据传输过程中,如果图片数据16进制中,带有一个0x0C, 0x0D, 则解析的一方就会认为这里是一个换行,而不是图片本身的数据。
为避免不同解析过程产生歧义,将数据统一转成ASCII码中的大写字母A开始(0x40到0x7F),将原有的数据,以6bit分隔,3个一组,换成8bit分隔,4个一组的连续转码数据,这样传输的字符就都是统一的ASCII码标准文本字符,不存在控制字符和ASCII码中0x80之后的未定义字符了。
参考文章:http://blog.xiayf.cn/2016/01/24/base64-encoding/

RSA

非对称加密,变长密钥的公共密钥算法

DES

Data Encryption Standard, 对称加密,速度较快,适用于加密大量数据的场合

AES

Advanced Encryption Standard, 对称加密算法,速度快,安全级别高

参考文章:https://www.cnblogs.com/sochishun/p/7028056.html

你可能感兴趣的:(加密算法的理解)