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


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 Django模板的使用方法(图文)
Nov 04 Python
关于numpy中np.nonzero()函数用法的详解
Feb 07 Python
python中使用%与.format格式化文本方法解析
Dec 27 Python
Python中的Numpy矩阵操作
Aug 12 Python
python实现对输入的密文加密
Mar 20 Python
python3实现斐波那契数列(4种方法)
Jul 15 Python
Pandas 重塑(stack)和轴向旋转(pivot)的实现
Jul 22 Python
python-numpy-指数分布实例详解
Dec 07 Python
浅谈keras中的keras.utils.to_categorical用法
Jul 02 Python
关于python3.7安装matplotlib始终无法成功的问题的解决
Jul 28 Python
Python Tkinter实例——模拟掷骰子
Oct 24 Python
python如何写个俄罗斯方块
Nov 06 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安装memcached扩展笔记
2015/05/28 PHP
Zend Framework实现多文件上传功能实例
2016/03/21 PHP
php使用crypt()函数进行加密
2017/06/08 PHP
OAuth认证协议中的HMACSHA1加密算法(实例)
2017/10/25 PHP
js操作checkbox遇到的问题解决
2013/06/29 Javascript
jquery通过a标签删除table中的一行的代码
2013/12/02 Javascript
JavaScript实现动态创建CSS样式规则方案
2014/09/06 Javascript
jQuery无刷新分页完整实例代码
2015/10/27 Javascript
js数组去重的hash方法
2016/12/22 Javascript
JS异步文件上传(兼容IE8+)
2017/04/02 Javascript
jQuery实现简单的下拉菜单导航功能示例
2017/12/07 jQuery
Element-ui table中过滤条件变更表格内容的方法
2018/03/02 Javascript
Node.js Express安装与使用教程
2018/05/11 Javascript
nodejs实现获取本地文件夹下图片信息功能示例
2019/06/22 NodeJs
Vue中登录验证成功后保存token,并每次请求携带并验证token操作
2020/09/08 Javascript
vue 避免变量赋值后双向绑定的操作
2020/11/07 Javascript
Vue实现点击当前行变色
2020/12/14 Vue.js
跟老齐学Python之传说中的函数编写条规
2014/10/11 Python
python实现决策树分类(2)
2018/08/30 Python
Django REST framework视图的用法
2019/01/16 Python
Html5实现文件异步上传功能
2017/05/19 HTML / CSS
介绍一下SQL Server里面的索引视图
2016/07/31 面试题
史上最全面的Java面试题汇总!
2015/02/03 面试题
财务管理专业毕业生求职信范文
2013/09/21 职场文书
加拿大留学自荐信
2014/01/28 职场文书
技能比赛获奖感言
2014/02/14 职场文书
婚礼答谢宴主持词
2014/03/14 职场文书
一年级学生评语大全
2014/04/21 职场文书
好的旅游活动方案
2014/08/19 职场文书
2015年上半年计生工作总结
2015/03/30 职场文书
安全生产奖惩制度
2015/08/06 职场文书
2016年秋季运动会广播稿
2015/12/21 职场文书
加强党性修养心得体会
2016/01/21 职场文书
nginx 防盗链防爬虫配置详解
2021/03/31 Servers
分析SQL窗口函数之聚合窗口函数
2022/04/21 Oracle
如何利用python创作字符画
2022/06/25 Python