资讯专栏INFORMATION COLUMN

JBCrypt:方便的密码管理工具类

ethernet / 871人阅读

摘要:介绍对管理密码非常方便,采用的方式,使用密码生成和,并将加入到里面去,从而使得不需要多带带保存,同时嫌计算速度太快,从而加入了反复执行的功能,降低暴力破解的风险。密码验证,传入密码候选值和密码,返回布尔值。又一个开箱即用的好工具。

介绍

JBCrypt对管理密码非常方便,采用hash+salt的方式,使用密码生成salt和hash,并将salt加入到hash里面去,从而使得salt不需要多带带保存,同时嫌“MD5”计算速度“太快”,从而加入了反复执行的功能,降低暴力破解的风险。

详细介绍

项目git地址:https://github.com/jeremyh/jB...
项目maven:



    org.mindrot
    jbcrypt
    0.4
重要方法

BCrypt.gensalt() : 生成salt的方法,一般不需要多带带调用,和下面的方法一起使用。

BCrypt.hashpw(password, BCrypt.gensalt(4)):生成hash密码,传入用户密码和salt。虽然是在生成salt的时候传入了一个整数,单该数字只是加在了盐的前缀上,用于在计算hash的时候使用。

BCrypt.checkpw(candidate, hashed):密码验证,传入密码候选值和hash密码,返回布尔值。

应用

在之前的一些web系统中,会使用MD5+SALT的方法,每个用户的salt不同,还要多带带保存。使用JBCrypt的话,salt就可以隐藏起来了,系统不需要保存salt,因为salt就保存在hash密码中了。又一个开箱即用的好工具。

其他

在JBCrypt中,使用了JDK8的SecureRandom类,关于随机数,请参考 Java中生成随机数Random、ThreadLocalRandom、SecureRandom 和 Random函数的安全性问题与SecureRandom

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/71975.html

相关文章

  • Jenkins系统搭建及常见操作

    摘要:转载请注明出处原文排版地址点击跳转搭建常见操作忘记管理员密码进入相应的文件夹修改为下面数值默认密码重启 转载请注明出处 http://www.paraller.com 原文排版地址 点击跳转 This document is not completed and will be updated anytime. 搭建 Dockerfile FROM ubuntu:14.04 RUN...

    darkbug 评论0 收藏0
  • Spring Security 使用总结

    摘要:暑假的时候在学习了并成功运用到了项目中。这是提供的一个安全权限控制框架,可以根据使用者的需要定制相关的角色身份和身份所具有的权限,完成黑名单操作拦截无权限的操作。用户通过登陆操作获得我们返回的并保存在本地。 暑假的时候在学习了 Spring Security 并成功运用到了项目中。 在实践中摸索出了一套结合 json + jwt(json web token) + Spring Boo...

    zoomdong 评论0 收藏0
  • Spring Security 使用总结

    摘要:暑假的时候在学习了并成功运用到了项目中。这是提供的一个安全权限控制框架,可以根据使用者的需要定制相关的角色身份和身份所具有的权限,完成黑名单操作拦截无权限的操作。用户通过登陆操作获得我们返回的并保存在本地。 暑假的时候在学习了 Spring Security 并成功运用到了项目中。 在实践中摸索出了一套结合 json + jwt(json web token) + Spring Boo...

    tianyu 评论0 收藏0
  • 大厂人分享办公软件盘点,哪一款是你常用

    摘要:一在线矢量设计软件支持在线设计团队协作强大中文生态,无需翻译插件说到在线设计,或许很多设计师会第一时间想到。但如果是给国内的设计师做推荐,笔者依然会选择,因为因为没有中文,且翻译插件很难用,再加之服务器在国内,网速更有保障。 如何提升工作效率一定是职场人长久以往需要解决的问题,很多人都有过这...

    jkyin 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<