压缩包密码破解示例分享(类似典破解)


Posted in Python onJanuary 17, 2014

昨天翻硬盘,找到一个好东西,可惜自己加了密码自己不记得了。试了几个常用的没试出来,于是写了这么个小脚本来替我尝试。。呵呵,还真给解出来了。
python脚本内容如下,跑跑自己加密的压缩包还不错

# -*- coding: utf-8 -*-import sys,os
def IsElementUniq(list):
    """
          判断list中的元素是否为唯一的
    """
    for word in list:
        if list.count(word)>1:
            return False
    return True
def GenPswList():
    """
          要求用户输入词,并根据单词组合密码,只尝试四个单词来组合,并限制密码长度为20。写的比较挫
    """
    psw=raw_input('input a word>')
    wordlist = []
    while psw:
        wordlist.append(psw)
        psw=raw_input('input a word>')
    print wordlist
    global g_pswlist
    g_pswlist = []
    for word in wordlist:
        g_pswlist.append(word)
    for word1 in wordlist:
        for word2 in wordlist:
            locallist = [word1, word2]
            if IsElementUniq(locallist):
                tmp = word1 + word2
                if len(tmp) < 20:
                    g_pswlist.append(tmp)
    for word1 in wordlist:
        for word2 in wordlist:
            for word3 in wordlist:
                locallist = [word1, word2, word3]
                if IsElementUniq(locallist):
                    tmp = word1 + word2 + word3
                    if len(tmp) < 20:
                        g_pswlist.append(tmp)
    for word1 in wordlist:
        for word2 in wordlist:
            for word3 in wordlist:
                for word4 in wordlist:
                    locallist = [word1, word2, word3, word4]
                    if IsElementUniq(locallist):
                        tmp = word1 + word2 + word3 + word4
                        if len(tmp) < 20:
                            g_pswlist.append(tmp)
    print 'gen psw is:', g_pswlist
def TestUnZipPack(filename):
    """
          尝试用密码来解压压缩包
    """
    command = ""
    for psw in g_pswlist:
        command = "7z e -p%s -y %s" %(psw,filename)
        print command
        ret = os.system(command)
        if ret == 0:
            print 'right psw is ', psw
            break
def main(filename):
    GenPswList()
    TestUnZipPack(filename)
if __name__ == '__main__':
    if len(sys.argv) != 2:
        print 'argv error'
        print 'example:test_7z_psw.py 1.7z'
        sys.exit(1)
    main(sys.argv[1])
Python 相关文章推荐
python网络爬虫采集联想词示例
Feb 11 Python
python创建进程fork用法
Jun 04 Python
Python两个内置函数 locals 和globals(学习笔记)
Aug 28 Python
Python爬取qq music中的音乐url及批量下载
Mar 23 Python
Pytorch入门之mnist分类实例
Apr 14 Python
python3+PyQt5重新实现QT事件处理程序
Apr 19 Python
将string类型的数据类型转换为spark rdd时报错的解决方法
Feb 18 Python
Django保护敏感信息的方法示例
May 09 Python
解决py2exe打包后,总是多显示一个DOS黑色窗口的问题
Jun 21 Python
Python3.7 读取 mp3 音频文件生成波形图效果
Nov 05 Python
Python实现计算长方形面积(带参数函数demo)
Jan 18 Python
Tensorflow 实现释放内存
Feb 03 Python
vc6编写python扩展的方法分享
Jan 17 #Python
python的urllib模块显示下载进度示例
Jan 17 #Python
Python中for循环详解
Jan 17 #Python
python在命令行下使用google翻译(带语音)
Jan 16 #Python
python支持断点续传的多线程下载示例
Jan 16 #Python
python获得图片base64编码示例
Jan 16 #Python
python练习程序批量修改文件名
Jan 16 #Python
You might like
PHP下几种删除目录的方法总结
2007/08/19 PHP
PHP strtr() 函数使用说明
2008/11/21 PHP
php数组键名技巧小结
2015/02/17 PHP
分享PHP函数实现数字与文字分页代码
2015/07/28 PHP
PHP将二维数组某一个字段相同的数组合并起来的方法
2016/02/26 PHP
Yii2 rbac权限控制之rule教程详解
2016/06/23 PHP
php简单截取字符串代码示例
2016/10/19 PHP
PHP实现根据密码长度显示安全条
2017/07/04 PHP
浅谈PHP实现大流量下抢购方案
2017/12/15 PHP
JQuery 常用操作代码
2010/03/14 Javascript
jquery 图片截取工具jquery.imagecropper.js
2010/04/09 Javascript
javascript获得服务器端控件的ID的实现代码
2011/12/28 Javascript
javascript自动改变文字大小和颜色的效果的小例子
2013/08/02 Javascript
jquery自动切换tabs选项卡的具体实现
2013/12/24 Javascript
javascript基本语法
2016/05/31 Javascript
JavaScript遍历求解数独问题的主要思路小结
2016/06/12 Javascript
vue watch监听对象及对应值的变化详解
2018/02/24 Javascript
javascript实现5秒倒计时并跳转功能
2019/06/20 Javascript
解决Vue keep-alive 调用 $destory() 页面不再被缓存的情况
2020/10/30 Javascript
Element-ui upload上传文件限制的解决方法
2021/01/22 Javascript
玩转python爬虫之cookie使用方法
2016/02/17 Python
Python利用IPython提高开发效率
2016/08/10 Python
Python图形绘制操作之正弦曲线实现方法分析
2017/12/25 Python
TensorFlow实现卷积神经网络CNN
2018/03/09 Python
python随机数分布random测试
2018/08/27 Python
python-tornado的接口用swagger进行包装的实例
2019/08/29 Python
Python解析json代码实例解析
2019/11/25 Python
python基于socket函数实现端口扫描
2020/05/28 Python
Nº21官方在线商店:numeroventuno.com
2019/09/26 全球购物
应届生求职推荐信
2013/10/28 职场文书
我的小天地教学反思
2014/04/30 职场文书
2014年小学生迎国庆65周年演讲稿
2014/09/27 职场文书
质量保证书格式模板
2015/02/27 职场文书
2015年采购工作总结
2015/04/10 职场文书
收入证明申请书
2015/06/12 职场文书
2015重阳节敬老活动总结
2015/07/29 职场文书