SHA --信息摘要算法
大版本有 :SHA-1(被破解了) 与 SHA-2,
SHA-2又包含很多子版本,有SHA-224(256的阉割版),SHA-256,SHA-384(512的阉割版),SHA-512
长度越长不同明文的碰撞几率越低,但性能也会低
想要追求安全性,可以多个摘要算法一起用,例如md5摘要和SHA-256一起用,除非知道拼接规则,否则不可能破解
MD5 --信息摘要算法
可以把任意长度的明文字符串生成128位的哈希值,也就是32位十六进制数
MD5算法的过程分为四步:
处理原文:原文对512求余,如果不等于448就填充,第一位填1,后面填0,填完信息长度就为512N+448,
之后,用剩余的64位(512-448)记录真正的原文长度,这样处理之后就是512(N+1)
设置初始值:MD5哈希结果长度为128位,每32位分为一组,共4租,初始值ABCD
A=0x01234567
B=0x89ABCDEF
C=0xFEDCBA98
D=0x76543210
循环加工
拼接结果