4.Rar file without password

rar的压缩文档中是提供一个CRC32的值,这个值是文档在压缩之前的CRC32值,相信很多人都知道:每个不同的文件都有基本唯一的一个CRC32值。

CRC全称为循环冗余校验(Cyclic Redundancy Check, CRC),用来校验文件是否出错但并不能用于自动纠错。这种爆破方式只适用于文本文件较小的情况下,如果很大,不如去爆破密码。基本上不同文件都有唯一的CRC32值,那么在文件内容较小的情况下就更不可能重复了。
因为txt文本中的内容较短,所以我们可以用暴力穷举文本内容,只要找到相同的CRC码,即找到正确的文本内容。
源代码:CRC32.py

import binascii
#import string
#各种打印字符
#dic=string.printable
dic=range(0,128)
crc = 0x05665E74 # 记得要以0x开头
def CrackCrc(crc):for i in dic :for j in dic:for p in dic:s = str(chr(i)+chr(j)+chr(p)).encode("utf-8")#在 Python 2.x 的版本中,binascii.crc32 所计算出來的 CRC 值域为[-2^31, 2^31-1] 之间的有符号整数,为了要与一般CRC 结果作比对,需要将其转为无符号整数,所以加上& 0xffffffff来进行转换。# 如果是 Python 3.x 的版本,其计算结果为 [0, 2^32-1] 间的无符号整数,因此不需额外加上& 0xffffffff 。#if crc == (binascii.crc32(s) & 0xffffffff):if crc == binascii.crc32(s):#Python3中字符都为unicode编码,必须先转码utf-8print(str(s,'utf-8'))print("CRC冲撞攻击解密的明文为:"+str(s,'utf-8'))
CrackCrc(crc)

实验结果截图:

最后rate.rar中的rate.txt解密的明文为:77%。

不用密码解密压缩文件(CRC32算法)相关推荐

  1. Winrar命令行解压带密码的压缩文件

    1.先自行安装好winrar,这个不用多说 2.我们创建一个压缩文件 这是一个文件夹,里边就2个txt文件 3.我们使用winrar对其进行加密压缩  现在我们就有一个带密码的压缩文件了 3.找到wi ...

  2. Mac 使用创建带密码的压缩文件

    命令 无需安装软件,执行下面命令即可创建 zip -er backup.sql.zip backup.sql 会弹出提示,输入密码,输入之后就会自动创建带有密码的压缩文件.

  3. 关于使用zip4j实现解压与压缩文件,以及向压缩文件中添加文件 , 解压带密码的压缩文件 , 向压缩文件添加密码

    解压与压缩文件 1.Zip4j介绍 zip4j官网:http://www.lingala.net/zip4j/ 可以在"download"页面下载官方示例进行学习. 特征: 从Zi ...

  4. bugku-杂项-好多压缩包(压缩文件CRC32碰撞、rar文件头)

    下载文件,解压后是68个压缩文件,而且每个文件都是加密的,也没有提示密码,爆破?胡扯,这么多,还不想耗死.. 正确思路CRC32碰撞,介绍一下CRC32碰撞: CRC32:CRC本身是"冗余 ...

  5. java 使用7-zip解压缩带密码的压缩文件(非Proccess方法)

    参考: http://lxw82307.iteye.com/blog/1009306 所需要的包: 适用于所有平台(经测试并未对移动设备平台支持) sevenzipjbinding-4.65-1.04 ...

  6. 【Mac 教程系列第 10 篇】如何在 Mac 上破解带有密码的 ZIP 压缩文件

    这是[Mac 教程系列第 10 篇],如果觉得有用的话,欢迎关注专栏. 我们知道如果是一般的压缩文件,可以用系统自带的或者很好用的压缩工具 Keka 来解压,但如果要解压的压缩文件设置了密码,这个时候 ...

  7. 说说压缩文件“打开密码”的两种模式

    我们知道,如果对压缩文件有保密需求,可以给压缩文件设置"打开密码",通过密码才能查看压缩文件里的内容.那通过WinRAR设置的"打开密码"有两种模式,你知道吗? ...

  8. rar压缩文件暴力破解

    1. 简介 rar 压缩文件资源又不少是被加密的,密码通常也比较简单,我们可以通过暴力破解的方式来获取,通常耗时也比较小. 2. 使用说明 2.1 基本语法 rar-bruteforce-crack. ...

  9. 【原创】ASP.NET C# 压缩和解压缩文件、文件夹函数(测试通过)

    //注意:本文为博主原创,转载请注明出处,谢谢合作! #region 文件下载函数DownFile     /// <summary>     /// 下载文件方法     /// < ...

最新文章

  1. http header头设置反向代理不缓存
  2. 【转】窗口之间的主从关系与Z-Order
  3. python中数组的维度_Python数组维度问题
  4. Android 编译系统分析(三)
  5. error while loading shared libraries: libiconv....
  6. 实现flash的图片切换效果【可以切换多个网页或者图片】
  7. Java 并发编程必须知道的七种锁类型以及应用
  8. excel制作一个信息录入系统_制作Excel仓库入库单,一键完成数据录入、计算及保存操作...
  9. 美联储降息首日:资本市场反向操作 道指狂泻800点
  10. Spring : @EnableConfigurationProperties注解
  11. Delphi 的一些函数(Windows相关)
  12. Jquery 操作checkbox
  13. 在OSPF网络中,如何判断LSA的新旧?
  14. p12文件和mobileprovision文件导入到xcode如何使用
  15. 阿里云网站备案时变更备案的问题解决总结 满满干货
  16. 水星MW300R V6(MT7620)CPU引脚图
  17. 油价又双叒叕涨,司机教你如何开车更省油?
  18. Git回退和取消回退
  19. 为什么要购买阿里云服务器?云服务器用途有哪些?
  20. 外泌体相关研究最新进展(2022年6月)

热门文章

  1. 设计一个形状类(接口)Shape,方法:求周长和求面积形状类(接口)的子类(实现类): Rect(矩形) Circle(圆形)Rect类的子类: Square(正方形)不同的子类会有不同的计算周长和面
  2. 统计Java进程中的线程状态(jstack+linux)
  3. 虚数到底有什么意义?
  4. 赶紧收藏 : 从15000个Python开源项目中精选的Top30
  5. 引用赋值给变量的含义
  6. 图像去噪的原理及实现
  7. 小程序解析富文本编辑器中的内容
  8. Java日期格式与文本格式的互相转化
  9. STM32串口2初始化
  10. 目标检测网络指标mAP的测试的python实现