哈希算法加密与解密,哈希算法可以破解吗

  哈希算法加密与解密,哈希算法可以破解吗

  bcrypt

  Hash是单向加密(1234=abcd),在加密的密码中加入随机字符串可以增加密码破解的难度;Bcrypt依赖于其他环境。

  1 . python 2 . x;

  2.node-gyp (npm安装节点-gyp -g)

  3.Windows-构建-工具(NPM安装-全局-生产Windows-构建-工具)(Windows环境安装)

  在配置好环境之后,开始编写测试代码来观察使用情况。

  1.代码块://introduce bcrypt(测试密码加密)const bcrypt=require( bcrypt );//定义异步函数async function run() {//cwen生成随机字符串//genSalt方法接收数值作为参数。//数值越大,生成随机字符串的复杂度越高。//数值越小,生成随机字符串的复杂度越低。//默认值为10 //返回生成的随机字符串const salt=awaitbcrypt . gen salt(10);//加密密码//1要加密的明文,2随机字符串//返回值是加密后的密码const result=awaitbcrypt . hash( 123456 ,salt);console . log(salt);console.log(结果);} run();2.实施结果:

  第一个输出是生成的字符串,第二个输出是字符串123456(机密文本)。

  插入数据时与数据库一起使用。

  (1)代码块//!创建传入加密密码异步函数create user(){ const salt=awaitbcrypt . gen salt(10)的方法;const pass=await bcrypt . hash( 123456 ,salt);const user=await User.create({用户名: cwen ,邮箱: cwen@it.com ,密码:pass,角色: admin ,状态:0 });}//调用createUser()方法;(2)实施结果

  将密码从明文改为密文。

  服务器验证密码时(调用module对象下的compare()方法)//比较密码(将用户传递的密码与用户信息中的密码进行比较)//cwen compare(明文密码,加密密码)内部做三件事(获取加密密码中的随机字符串,加密明文密码,比较两个密码)let is value=await bcrypt。//返回一个布尔值(true。比较成功。True如果比较false),比较成功后可以继续代码~ ~

  超过

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: