散列算法

散列算法,也叫做哈希函数,有时候也叫做摘要算法,常用的算法有:MD5 SHA1

MD5

MD5 不是一种加密算法,是一种摘要算法,无论多长的输入,MD5 都会输出长度为 128bits 的一个串

SHA1

SHA1 算法也是一个摘要算法, SHA1 比 MD5 更加安全,对于长度小于 2^64 位的消息,SHA1 会产生一个 160 位的消息摘要

摘要算法有摘要特性和不可逆特性,一般用于检查文件的完整性和数据签名的场景

加密算法

对称加密

加、解密使用的是同一串秘钥,只有一个秘钥作为私钥

常用算法:DES、3DES、Blowfish、IDEA、RC4、RC5、RC6和AES

非对称加密

加、解密使用不同秘钥,通常一对私钥与公钥,公钥加密,私钥解密,亦可私钥加密公钥解密),通常加密指代前者,后者叫做“签名”

常用算法:RSA、ECC(移动设备用)、Diffie-Hellman、El Gamal、DSA(数字签名用)

ssh

编码算法

Base64

编码算法,将任意二进制编码成文本