自己动手制破解软件的方法

上传人:daj****de 文档编号:130968254 上传时间:2022-08-05 格式:DOCX 页数:4 大小:66.27KB
返回 下载 相关 举报
自己动手制破解软件的方法_第1页
第1页 / 共4页
自己动手制破解软件的方法_第2页
第2页 / 共4页
自己动手制破解软件的方法_第3页
第3页 / 共4页
点击查看更多>>
资源描述
自己动手破解软件一、 起因有一次在用啊D入侵网站时,管理入口、用户名和密码的MD5值都已经猜到了, 只是拿到MD5网站上一查,居然要收费,如图:密文;| 4d6014ecced47960密文1 口密类型:| md5v |解密查询结果:已查到这是_案付费记录”洁点击购买(扣除1条实时查谊费用)我可是穷光蛋一个,没什么钱,只好放弃这个网站了。思考我越想越不甘心,忽然想起MD5解密的意义:由于MD5是一种不可逆的编码算法,因此要“还原”出原始密码就只能用穷举法。所以只能说用穷举“还原”法,没有真正意义上的解密。这样思路就出来了:编一个程序,逐行读入字典里的明文,加密成密文,与已知密文比 较,相同的话就输出此行的明文。于是程序的界面就出来了:现在问题又来了这进度应该怎样显示? 现在有两个方案:1. 先读一遍文件,再用“已测试行数/总文件行数”计算出进度。这个方案的优点是: 显示准确,缺点是:速度减慢了近 1/3。2创建一个一行的文件,储存6个标准Ascii字符,再用“该文件大小/字典大小*已测 试条数”算出进度。这个方案的优点是:可以做到加速,缺点是:显示不一定准确。最后一个问题:在循环的时候数据不会被刷新,如图:这个问题可以用闲置循环DoEvents语句解决。三、 实践全部代码如下(配有注释):Dim jindu, m As Double 进度计算变量Dim zidian_md5 As St ring 存放一条字典明文的MD5值Dim zidian_s tr As St ring 存放一条字典明文Dim yizhi_md5 As St ring 存放已知 MD5 密文Private Sub Commandl_Click()Label6.Cap tion =破解结果:未知显示初始化 yizhi_md5 = Textl.Text 取已知 MD5 密文yizhi_md5 = LCase(yizhi_md5)有可能是大写的,为了统一格式及编程方便,将其一律转为 小写m = 0初始化进度计算变量On Error GoTo errl 异常处理Open App.Path & dictionary. txt For Input As #1 打开字典文件Do While Not (EOF(1)循环至文件尾Line Inp ut #1, zidian_s tr 读入一行m = m + 1 进度计算变量加1jindu = Round(FileLen(App.Path & howbig. txt) / LOF)* 100 * m, 0) 取现在进度的百分比zidian_md5 = LCase(Md5_String_Calc(zidian_str)将Md5_String_Calc函数 的返回结果转为小写并写入zidian_md5DoEvents 闲置循环,用以刷新数据Label5.Cap tion二状态:& 测试& zidian_s tr 给用户信息反馈,使用户不 焦急等待Label4.Caption = jindu & %显示进度百分比If (zidian_md5 = yizhi_md5) Or (LCase(zidian_md5) = yizhi_md5) Then 若 已知密文与字典里这一行的明文MD5吻合Label6.Cap tion二破解结果:& zidian_s tr 显示字典中这一行的明文GoTo finsh 跳出循环,并执行显示变量初始化End IfLoopClose #1 关闭文件 finsh:Close #1Label5.Cap tion =状态:闲置Label4.Caption 二0%功能:查找完成后的初始化Exit Suberrl:MsgBox 程序因为意外原因终止!可能是你没有将字典文件挂载到目录下! & Chr(13) & Chr(10) & 挂载字典文件的方法:将字典文件替换本文件夹下的“ dictionary. txt” 错误提示语End Sub四、拓展 关于这个字典文件的生成:1. 在本文件夹下新建文本文档,命名为dictionary. txt,然后在里面住行输入可能的MD5 明文。2. 通过网络上的字典生成器生成,存放在本文件夹下,命名为dietionary. txt。(注意: 该文件中存放明文) /*推荐使用此方法*3. 若密码只有5位,打开本文件夹下5位数英文字母字典生成器.exe(打开后单击便开始 生成, 需要耐心等待)“5位数英文字母字典生成器”源码如下:Dim a, b, c, d, e As Int egerDim str As StringOpen App.Path & dictionary.txt For Append As #1For a = 48 To 122For b = 48 To 122For c = 48 To 122For d = 48 To 122For e = 48 To 122str 二 Chr(a) &Chr(b) & Chr(c) & Chr(d) & Chr(e)Print #1, strNex t eNex t dNex t cNex t bNex t aClose #1
展开阅读全文
相关资源
相关搜索

最新文档


当前位置:首页 > 机械制造 > 机械制造


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!