破解md5的python代码,持续更新
来源:互联网 发布:mac 谷歌浏览器 utf 8 编辑:程序博客网 时间:2024/05/16 06:52
这个是穷举法:
# -*- coding: utf-8 -*-import stringimport hashlibfile=open("hello.txt","a")md5input=raw_input("请输入md5:\n")md5input=md5input.lower()apt=string.printable[:-6]def dfs(s,num): m=hashlib.md5() m.update(s) md5temp=m.hexdigest() if md5temp==md5input: file.write("md5是:"+md5input+" 明文是:"+s+"\n") file.close() exit(-1) if len(s)==num: return for i in apt: dfs(s+i,num)myinput=10 #生成字符的位数for j in range(1,myinput): dfs("",j)file.close()
下面是查询一些公开的网站的md5的结果:
# -*- coding: utf-8 -*-import urllib2import urllibimport jsonimport sysfrom HTMLParser import HTMLParserfrom htmlentitydefs import entitydefsreload(sys)sys.setdefaultencoding('utf-8')class titlehtml(HTMLParser): def __init__(self): self.title=[] self.readingtitle='' self.myfilter='' HTMLParser.__init__(self) def handle_starttag(self, tag, attrs): if tag==self.myfilter: self.readingtitle=1 def handle_data(self, data): if self.readingtitle: self.title.append(data) def handle_endtag(self, tag): if tag==self.myfilter: self.readingtitle=0 def gettile(self): return self.titleclass MyHTMLParser(HTMLParser): def __init__(self): HTMLParser.__init__(self) self.inputvalue = {} def handle_starttag(self, tag, attrs): #print "Encountered the beginning of a %s tag" % tag if tag == "input": if len(attrs) == 0: pass else: for (variable, value) in attrs: if variable=="name": self.inputvalue.setdefault(value,'') myname=value if variable == "value": self.inputvalue[myname]=valuedef httpget(geturl,getdata,Referer): urldata=urllib.quote(getdata) url=geturl+urldata headers={"User-Agent":"Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1","Referer":Referer} req = urllib2.Request(url,headers=headers) resul=urllib2.urlopen(req).read() return resuldef httppost(geturl,getdata,Refererdata): data=getdata url=geturl post_data=urllib.urlencode(data) headers={"User-Agent":"Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1","Referer":Refererdata} req=urllib2.Request(url,headers=headers,data=post_data) resul=urllib2.urlopen(req).read() return resuldef somd5(md5): url="http://www.somd5.com/somd5-index-md5.html" data={} data["isajax"]="2d6GbG7ktvGRzxJacdeI7pt" data["md5"]=md5 str=httppost(url,data,"") newsparser = titlehtml() newsparser.myfilter='h1' newsparser.feed(str) items = newsparser.gettile() if len(items)==0: print "somd5没有查到" else: print "somd5查到的:"+items[0]def cmd5(md5): data="" res=httpget("http://www.cmd5.com/",data,"") viewstaut=MyHTMLParser() viewstaut.feed(res) post_data=viewstaut.inputvalue post_data["ctl00$ContentPlaceHolder1$TextBoxInput"]=md5 post_data["__EVENTTARGET"]="" post_data["ctl00$ContentPlaceHolder1$InputHashType"]="md5" post_data["ctl00$ContentPlaceHolder1$HiddenField1"]="0" finres=httppost("http://www.cmd5.com/",post_data,"http://www.cmd5.com/") newsparser = titlehtml() newsparser.myfilter='span' newsparser.feed(finres) items = newsparser.gettile() if len(items)==0: print "cmd5没有查到" else: print "cmd5查到的:"+items[3]def hkc5(md5): url="http://md5.hkc5.com//index.asp?action=look" data={} data["look"]="查询" data["md5text"]=md5 str=httppost(url,data,"http://md5.hkc5.com/index.asp") finres=MyHTMLParser() finres.feed(str) mingwen=finres.inputvalue try: print "hkc5查到的:"+mingwen["rr2"] except: print "hkc5没有查到"def xx95(md5): data="" res=httpget("http://md5.xx95.net/default.html",data,"") viewstaut=MyHTMLParser() viewstaut.feed(res) post_data=viewstaut.inputvalue for key,value in post_data.items(): if post_data[key]=="\xe8\xaf\xb7\xe8\xbe\x93\xe5\x85\xa5MD5\xe6\x88\x96\xe8\xa6\x81\xe5\x8a\xa0\xe5\xaf\x86\xe7\x9a\x84\xe5\xad\x97\xe7\xac\xa6\xe4\xb8\xb2": post_data[key]=md5 finres=httppost("http://md5.tellyou.top/default.html",post_data,"http://md5.tellyou.top/default.html") newsparser = titlehtml() newsparser.myfilter='span' newsparser.feed(finres) items = newsparser.gettile() try: print "md5.tellyou的md5查询结果:"+items[0] except: print "md5.tellyou的md5查询结果:没找到,请尝试其他同类网站"def syue(md5): finstr=httpget("http://md5.syue.com/ShowMD5Info.asp?GetType=ShowInfo&md5_str=",md5,"http://md5.syue.com/") newsparser = titlehtml() newsparser.myfilter='span' newsparser.feed(finstr) items = newsparser.gettile() try: print "md5.syue的md5查询结果(乱码证明没有查到):"+items[0] except: print "md5.syue没有查到"def pmd5(md5): data="" res=httpget("http://pmd5.com/",data,"") viewstaut=MyHTMLParser() viewstaut.feed(res) post_data=viewstaut.inputvalue post_data["key"]=md5 finres=httppost("http://pmd5.com/",post_data,"http://pmd5.com/") newsparser = titlehtml() newsparser.myfilter='em' newsparser.feed(finres) items = newsparser.gettile() try: print "pmd5的md5查找结果:"+items[1] except: print "pmd5没有找到"def wmd5(md5): url="http://www.wmd5.com/ajax.php" data={} data["miwen"]=md5 data["action"]="md5show" finstr=httppost(url,data,"http://www.wmd5.com/") d1=json.JSONDecoder().decode(finstr) try: print "wmd5查询的结果是:"+d1['md5text'] except: print "wmd5没有查到"def heimd5(md5): url="http://121.42.198.24//php/md5.php" data={} data["key"]=md5 finstr=httppost(url,data,"http://121.42.198.24/php/md5.php") print "121.42.198.24的结果是:"+finstr#def xmd5(md5):if __name__=='__main__': md5=sys.argv[1] #print md5 #md5="d8b521d9c8591a897704b83d18ec988d" somd5(md5) hkc5(md5) xx95(md5) syue(md5) pmd5(md5) wmd5(md5) heimd5(md5) cmd5(md5)
0 0
- 破解md5的python代码,持续更新
- 各种软件的破解(持续更新)
- 有趣的代码,持续更新...
- python -- md5 破解
- python暴力破解MD5
- 我的代码库(持续更新...)
- 小心Python的“坑”(持续更新)
- python学习 持续更新
- Python Tips 持续更新
- Python学习--持续更新
- MD5暴力破解程序(python)
- 谈谈MD5的破解
- MD5的破解
- 破解电脑相关密码,持续更新
- 积累一些常用的功能的代码片段。持续更新
- md5到md5破解的一些科普
- MD5和MD5破解的一些事
- 工具包或者代码---持续更新
- iOS程序员面试要注意的几个问题~
- Android中getWidth()和getMeasureWidth()的区别探究
- bfc样式控制
- java并发编程:volatile关键字解析
- [IOS]如何在Storyboard中设置Round Rect Button的外边距?
- 破解md5的python代码,持续更新
- UITouch
- 4.Python进阶_函数参数的对应
- hdu 5451(矩阵 +Fibonacci )
- 源码分析Mms--AndroidManifest.xml分析
- Java IO
- git 简单命令
- 潘鹏整理WPF(7)文本控件TextBox&&PassWordBox
- android适配问题