在一次授权测试中碰到一种密文,当时无法解出明文,当结束后对这种难缠的加密算法进行了学习,因此产生了这篇文章。

密文形式如下图所示:

经查询为Bcryp加密,而且同一明文密码经过加密后生成的密文不是相同的,比如我们尝试加密123456789两次加密的结果如下所示:

本次学习采用Spring Security crypto 项目实现的BCrypt加密,对该项目中生成密文的步骤进行一步一步的分析调试,发现BCrypt加密算法是先随机生成salt,然后使用随机生成的salt与明文密码进行计算得出hashed,hashed再与salt进行拼接形成新的密文。

经过对salt和密文的对比,发现salt就是最终密文的前半段。

而且经过实验得知当salt固定后生成的密文也将固定。当学习进行到这里也就对如何破解BCrypt密文就有思路了。先读取salt(也就是密文前半段)与密码本一同进行hashpw加密,算出的结果与密文进行对比,结果相同则输出明文。这样我们就将BCrypt密文破解转化成正向碰撞彩虹表的形式来进行破解。

为了方便大家,这里就写了一个简单的BCrypt破解工具,使用方法如下:

首在再命令行输入:java   -jar  java -jar  BCrypt-de.jar  启动程序

程序会提示输入将要解密的密文,输入后按回车

输入完将要解密的密文后,程序还会提示输入密码本的位置

按要求输入后,程序会自动进行密码本碰撞测试,期间会输出密码本的密码个数以及程序执行进度、破解成功则会输出明文密码以及破解所用的时间。

如果爆破失败也会输出失败信息,同时也将用时进行输出.

估算了一下破解速度约为12.5次/s,破解10000的密码本用时在13分钟左右,总体来说也能接受,如果爆破10000的密码本也没爆出来,劝你还是放弃吧,或者考虑密码覆盖等其他方式吧(要先进行备份,以及确定不影响业务的情况下进行)。

BCrypt密文生成工具使用方法如下:

首在再命令行输入:java   -jar  java -jar  BCrypt-en.jar  并回车启动程序

输入明文密码,输入明文密码后按回车则会输出密文

Bcrypt密文破解工具下载地址:登录 - Gitee.com

Bcrypt密文生成工具下载地址:登录 - Gitee.com

注:本文章为本人学习记录,请勿用于非法活动中,如有安全事件与本文无关。

Bcrypt密码生成及解密工具相关推荐

  1. BCrypt 密码加密和解密

    版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/phpfzh/article/details/64906543 </div><lin ...

  2. Linux下三个密码生成工具

    http://code.csdn.net/news/2820879 想出一个难破解且容易记的密码对不是一件简单的事情.在我为电脑设定一个新密码,或者在线注册了一个新的账号,需要输入密码的时候,脑袋就一 ...

  3. 复杂密码生成工具apg

    复杂密码生成工具apg 密码是身份认证的重要方式.由于密码爆破方式的存在,弱密码非常不安全.为了构建复杂密码,Kali Linux预置了一个复杂密码生成工具apg.该工具可以提供可读密码和随机字符密码 ...

  4. 很久之前写个密码生成工具,可定制。

    很久之前写个密码生成工具,可自己定制.地址:http://pan.baidu.com/s/1dE2fTEL 密码:xaz9 # guestpass.exe -h Usage of guestpass. ...

  5. 在线密码生成工具推荐

    读者提问: 免费好用的在线密码生成工具,有推荐的吗 ? 阿常回答: 有,这 3 款在线密码生成工具,推荐使用 ! 1.随机密码生成 包含功能:设置所用字符.排除字符.密码长度.密码数量.记录历史密码. ...

  6. 用go 语言 实现一个密码生成工具

    1.实现一个密码生成工具,具持以下功能: 1.1 用户可以通过-I指定生成密码的长度 1.2 用户可以通过-t指定生成密码的字符集,比如-t num生成全数字的密码 1.3 -t char生成包含全英 ...

  7. JavaScript实现在线MD5、SHA、AES、Rabit 、RC4、TripleDES Ripemd160 加密解密工具-toolfk程序员在线工具网...

    2019独角兽企业重金招聘Python工程师标准>>> 本文要推荐的[ToolFk]是一款程序员经常使用的线上免费测试工具箱,ToolFk 特色是专注于程序员日常的开发工具,不用安装 ...

  8. linux密文解密工具,Linux之加密解密工具openssl的用法以及自建CA

    在Linux下的安全工具openssl [安全特性] 1.保密性:数据保密性.隐私性 2.完整性:数据完整性.系统完整性 3.可用性 4.真实性:确保数据发送方不是被替换的 5.可追溯性 [安全*** ...

  9. MD5、SHA、AES、Rabit 、RC4、TripleDES Ripemd160 加密解密工具

    本文要推荐的[ToolFk]是一款程序员经常使用的线上免费测试工具箱,ToolFk 特色是专注于程序员日常的开发工具,不用安装任何软件,只要把内容贴上按一个执行按钮,就能获取到想要的内容结果.Tool ...

最新文章

  1. linux mint开启热点,Linux Mint 17 + 小米WIFI创建手机热点
  2. Java 常见的OOM类型总结
  3. Web开发中的用户角色权限设计总结
  4. ClientDataSet建立索引和排序
  5. 提现接口网站 php,API提现接口
  6. 管理员账号_MaxCompute项目子账号做超级管理员
  7. 整理搜集iOS不同版本间的介绍
  8. 面向太阳,不问春暖花开
  9. 百度地图坐标转换的异步回调事件
  10. 注册页面获取手机验证码
  11. 【渝粤教育】国家开放大学2018年秋季 0062-21T港台文学专题讲座 参考试题
  12. java实现文件下载功能
  13. Win10 设置系统还原点
  14. D语言(Dlang)在单片机(cortex-m)上应用方法
  15. Photoshop(ps) CC 2017中文版 3264位
  16. php格林威治时间,时间戳与格林威治时间互相转换
  17. 机器人方队解说词_运动会入场式方队解说词
  18. 自定义字体文件解析成人眼可识别文字
  19. 【转】Linux下定时删除指定目下n天前的文件
  20. Matlab绘制动态GIF图

热门文章

  1. 惠普ZBook 14u G5(3XG37PA)电脑 Hackintosh 黑苹果efi引导文件
  2. VS2017卡在登录界面问题
  3. 全网最通俗易懂的 Self-Attention自注意力机制 讲解
  4. 用python实现聚类分析
  5. 漂亮实用的jQuery倒计时插件特效代码
  6. 带上萌宠去上班 | IT办公室宠物报告
  7. 领航优配|货拉拉冲刺港交所:2022年首度盈利,闭环交易总额全球第一
  8. 浏览器如何在f12中查看接口地址_经过浏览器中的F12中来查看接口的入参、出参和网页响应时间(新手教程)...
  9. Warshall‘s algorithm 算法的实现及优化
  10. 3D Models (3D 模型)