对于解密算法的学习

MD5即Message-Digest Algorithm 5(信息-摘要算法5),用于确保信息传输完整一致。

是计算机广泛使用的杂凑算法之一(又译摘要算法、哈希算法),主流编程语言普遍已有MD5实现。

将数据(如汉字)运算为另一固定长度值,是杂凑算法的基础原理,MD5的前身有MD2、MD3和MD4。

  MD5算法具有以下特点:  1、压缩性:任意长度的数据,算出的MD5值长度都是固定的。

 2、容易计算:从原数据计算出MD5值很容易。 

3、抗修改性:对原数据进行任何改动,哪怕只修改1个字节,所得到的MD5值都有很大区别。 

4、弱抗碰撞:已知原数据和其MD5值,想找到一个具有相同MD5值的数据(即伪造数据)是非常困难的。

  5、强抗碰撞:想找到两个不同的数据,使它们具有相同的MD5值,是非常困难的。

 MD5的作用是让大容量信息在用数字签名软件签署私人密钥前被"压缩"成一种保密的格式(就是把一个任意长度的字节串变换成一定长的十六进制数字串)。

除了MD5以外,其中比较有名的还有sha-1、RIPEMD以及Haval等。

 RSA公开密钥密码体制。所谓的公开密钥密码体制就是使用不同的加密密钥与解密密钥,是一种“由已知加密密钥推导出解密密钥在计算上是不可行的”密码体制。  

RC4加密算法是大名鼎鼎的RSA三人组中的头号人物Ronald Rivest在1987年设计的密钥长度可变的流加密算法簇。之所以称其为簇,是由于其核心部分的S-box长度可为任意,但一般为256字节。该算法的速度可以达到 DES 加密的10倍左右,且具有很高级别的非线性。  

DES 全称为Data Encryption Standard,即数据加密标准,是一种使用密钥加密的块算法

猜你喜欢

转载自blog.csdn.net/qq_36474990/article/details/80707638