哈希加密算法是什么算法_加密算法有哪几种

(1) 2024-08-04 15:23

Hi,大家好,我是编程小6,很荣幸遇见你,我把这些年在开发过程中遇到的问题或想法写出来,今天说一说
哈希加密算法是什么算法_加密算法有哪几种,希望能够帮助你!!!。

  • 推荐阅读:漫谈非加密哈希算法

一、DES 对称加密

DES 双向对称加密:key 为加密秘钥,data 为加密数据,mode 为加解密模式

key共8个字节64位,其中有56位用于加密公钥

  • 加密时:用 key 对 data 加密,生成密码形式的 data 作为输出结果
  • 解密时:用 key 对 data 进行解密获得原文密码作为输出

特点

  • 对称加密算法,发送方接受方必须持有相同的秘钥才能加解密
  • 秘钥较短,加密速度快,加密处理简单,适用于加密大量数据的场合
  • 加密算法是公布的,但是秘钥是未知的
  • 虽有极高的安全性,加密公钥只有56位,随便技术发展,秘钥长度较短存在被激活成功教程的可能性

二、MD5 单向加密

MD5 单向加密:可以将输入的信息加密转换为 128 位固定长度的散列值,用于检验数据传输过程中的完整性

  • 填充:将输入信息进行512求余分组,若不等于448,那么进行填充 1 和0,一个1 N个0。最后的数据就为N*512+448
  • 记录信息长度:将得到的信息用64位存储填充之前的信息长度,这样448+64=512,总信息为N+1个512
  • 以四个常数ABCD与每组512位进行函数运算,最后输出的结果就是4组32位的常数。拼接得到MD5码

MD5 的优势

  • 防止被篡改,在传输过程中一旦被串改,那么计算出的MD5值一定不同
  • 计算速度快,加密速度快,不需要秘钥。
  • 防止看到明文,公司存放密码存放的是MD5值

MD5 的缺点

  • 存在两种不同数据发生碰撞的可能性
    MD5的安全性:将用户的密码直接MD5后存储在数据库是不安全的。第一,用户普遍习惯用容易记忆的密码,生日,手机号等,黑客容易破译此类密码。这也是加盐值的一个原因。第二,直接MD5存入数据库,若数据库被激活成功教程,通过MD5反查会查到密码,需要随机盐值的配合。
    考虑到多数人所使用的密码为常见的组合,攻击者可以将所有密码的常见组合进行单向哈希,得到一个摘要组合,然后与数据库中的摘要进行比对即可获得对应的密码。这个摘要组合也被称为rainbow table

一、murmurHash3 算法

  • 算法导图及伪代码:murmur3哈希算法

二、sipHash 算法

三、md5 与 hmacMd5 算法

四、sha 与 hmacSha 算法

五、ccr32 与 ccr32c 算法

六、adler32 算法

今天的分享到此就结束了,感谢您的阅读,如果确实帮到您,您可以动动手指转发给其他人。

上一篇

已是最后文章

下一篇

已是最新文章

发表回复