valentino

字符加密(cipher)

試著忘記壹切 提交于 2020-03-01 06:58:46
字符加密 Valentino 向往星空。。。某一天他脑洞大开地想要往太空中发送一串讯息,没准哪个外星文明接收到了呢?但是他突然想起一个问题,要是信息在传递过程中受到干扰,外星文明接收到错误的信息怎么办?如何校验信息的完整性?于是他找到了度娘:MD5 ( Message-Digest Algorithm ,信息-摘要算法 5)用于确保信息传输完整一致。它具有以下特点: 1、压缩性:任意长度的数据,算出的 MD5 值长度都是固定的。 2、容易计算:从原数据计算出 MD5 值很容易。 3、抗修改性:对原数据进行任何改动,哪怕只修改 1 个字节,所得到的 MD5 值都有很大区别。 4、弱抗碰撞:已知原数据和其 MD5 值,想找到一个具有相同 MD5 值的数据(即伪造数据)是非常困难的。 5、强抗碰撞:想找到两个不同的数据,使它们具有相同的 MD5 值,是非常困难的。 MD5 的作用是让大容量信息在用数字签名软件签署私人密钥前被“压缩”成一种保密的格式(就是把一个任意长度的字节串变换成一定长的十六进制数字串)。 例如: MD5(“g123g123d”) = ac75129df6ce688096da043ea0974c02。 除了 MD5 以外,比较有名的还有 SHA1 。 安全哈希算法( Secure Hash Algorithm )主要适用于数字签名标准 (