加密算法

Posted by tahano on January 10, 2024

常用函数

MD5

一种密码散列函数

可以产生出一个128位的散列值 用于确保信息传输完整一致

散列算法

  • 将数据(如一段文字)运算变为另一固定长度值,是散列算法的基础原理

MD5算法无法防止碰撞攻击,因此不适用于安全性认证,如SSL公开密钥认证或是数字签名等用途。

算法:

MD5是输入不定长度信息,输出固定长度128-bits的算法。经过程序流程,生成四个32位数据,最后联合起来成为一个128-bits散列。基本方式为,求余、取余、调整长度、与链接变量进行循环运算。得出结果。

安全性小于<18位 (已发现碰撞)

SHA-1

一种密码散列函数

SHA-1可以生成一个被称为消息摘要的160位(20字节)散列值,散列值通常的呈现形式为40个十六进制数。

已被破解

<63 (已发现碰撞)

SHA-2

分为六个不同的算法标准

未发现碰撞

SHA-3

Keccak算法函数

未发现碰撞

BLAKE/BLAKE2

基于流密码的密码散列函数

BLAKE2的安全性提供类似于SHA-3,优于SHA-2