今日要闻

密码加密的方式有哪些

来源: 作者:达人百科 2024-05-03

问达人,WenDaRen最后更新 2024年05月03日,问达人 www.wendaren.com以用户为例,密码加密的方式如下:1、直接明文保存,比如用户设置的密码是"123456",直接将"123456"保存在数据库中,这种是最简单的保存方式,也是最不安

问达人 www.wendaren.com

以用户为例,密码加密的方式如下:

  

  1、直接明文保存,比如用户设置的密码是"123456",直接将"123456"保存在数据库中,这种是最简单的保存方式,也是最不安全的方式。但实际上不少互联网公司,都可能采取的是这种方式。

  

  2、使用对称加密算法来保存,比如3DES、AES等算法,使用这种方式加密是可以通过解密来还原出原始密码的,当然前提条件是需要获取到密钥。不过既然大量的用户信息已经泄露了,密钥很可能也会泄露,当然可以将一般数据和密钥分开存储、分开管理,但要完全保护好密钥也是一件非常复杂的事情,所以这种方式并不是很好的方式。

  

  3、使用MD5、SHA1等单向HASH算法保护密码,使用这些算法后,无法通过计算还原出原始密码,而且实现比较简单,因此很多互联网公司都采用这种方式保存用户密码,曾经这种方式也是比较安全的方式,但随着彩虹表技术的兴起,可以建立彩虹表进行查表,目前这种方式已经很不安全了。

  

  4、特殊的单向HASH算法,由于单向HASH算法在保护密码方面不再安全,于是有些公司在单向HASH算法基础上进行了加盐、多次HASH等扩展,这些方式可以在一定程度上增加难度,对于加了"固定盐"的HASH算法,需要保护"盐"不能泄露,这就会遇到"保护对称密钥"一样的问题。

  

  5、PBKDF2算法,该算法原理大致相当于在HASH算法基础上增加随机盐,并进行多次HASH运算,随机盐使得彩虹表的建表难度大幅增加,而多次HASH也使得建表的难度都大幅增加。使用PBKDF2算法时,HASH算法一般选用sha1或者sha256,随机盐的长度一般不能少于8字节,HASH次数至少也要1000次,这样安全性才足够高,该算法也是美国国家标准与技术研究院推荐使用的算法。

  

  6、bcrypt、scrypt等算法,这两种算法也可以有效抵御彩虹表,使用这两种算法时也需要指定相应的参数。

2022-05-21 13:14:17
文章标签:

声明: 凡注明为其他媒体来源的信息,均为转载自其他媒体,转载并不代表本网赞同其观点,也不代表本网对其真实性负责。如系原创文章,转载请注明出处; 您若对该稿件内容有任何疑问或质疑,请即联系,本网将迅速给您回应并做处理。邮箱:mail@laishu.com

为您推荐

今日要闻

健康知识

母婴知识

咖啡资讯

美食资讯

美容护肤

星座解读

命理运势

本地资讯

热点资讯