最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

基于python的MD5腳本開(kāi)發(fā)思路

 更新時(shí)間:2022年03月30日 15:52:04   作者:spmonkey  
這篇文章主要介紹了基于python的MD5腳本,通過(guò) string模塊自動(dòng)生成字典,使用permutations()函數(shù),對(duì)字典進(jìn)行全排列,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),需要的朋友可以參考下

開(kāi)發(fā)思路

1、通過(guò) string模塊 自動(dòng)生成字典;

2、使用permutations()函數(shù),對(duì)字典進(jìn)行全排列;

3、使用 md5模塊 對(duì)全排列的字典進(jìn)行轉(zhuǎn)換;

4、使用了多線程,分別對(duì)5~18位字符串進(jìn)行md5碰撞,以防止時(shí)間太長(zhǎng)(雖然現(xiàn)在也要很久)。

md5碰撞函數(shù)

def md5_poj(self, md5_value, k):
        if len(md5_value) != 32:
            print("error")
            return
        md5_value = md5_value.lower()
        # permutations() 全排列
        for item in permutations(all_letters, k):
            item = "".join(item)
            if item == "hongrisec@2019":
                print(item)
            if md5(item.encode()).hexdigest() == md5_value:
                print('\n success: ' + md5_value + ' ==> ' + item)
                self.__mdfive = 1

其中 if len(md5_value) != 32 判斷所輸入的md5是否為32位的

主函數(shù)

def main(self):
        NT_md5 = input("請(qǐng)?zhí)顚?xiě)MD5:")
        start_time = time()
        t_list = []
        print("正在查詢(xún)...")
        # 添加線程
        t_first = threading.Thread(target=self.md5_first, args=(NT_md5,))
        t_first.daemon = 1
        t_first.start()
        for k in range(5, 18):
            t = Process(target=self.md5_poj, args=(NT_md5, k))
            # t = threading.Thread(target=self.md5_poj, args=(NT_md5, k))
            t.daemon = 1    # 守護(hù)程序
            t_list.append(t)
        # 啟動(dòng)所有線程
        for i in t_list:
            i.start()
        # 當(dāng) __mdfive == 1 時(shí)結(jié)束所有線程
        while 1:
            if self.__mdfive:
                break
        print("\n查詢(xún)結(jié)束!")
        print('使用了 %f 秒'%(time() - start_time))

完整代碼腳本

import threading
from multiprocessing import Process
from hashlib import md5
from itertools import permutations
from string import ascii_letters, digits, ascii_lowercase, ascii_uppercase
from time import time
all_letters = ascii_lowercase + '.,;@' + digits
class MDfive:
    def __init__(self):
        self.__mdfive = 0

    def md5_poj(self, md5_value, k):
        if len(md5_value) != 32:
            print("error")
            return
        md5_value = md5_value.lower()
        # permutations() 全排列
        for item in permutations(all_letters, k):
            item = "".join(item)
            if item == "hongrisec@2019":
                print(item)
            if md5(item.encode()).hexdigest() == md5_value:
                print('\n success: ' + md5_value + ' ==> ' + item)
                self.__mdfive = 1
    # 判斷 md5 是否與空匹配
    def md5_first(self, md5_firstvalue):
        if len(md5_firstvalue) != 32:
        elif md5_firstvalue == "31d6cfe0d16ae931b73c59d7e0c089c0":
            print("\n密碼為空!")
            self.__mdfive = 1

    def main(self):
        NT_md5 = input("請(qǐng)輸入MD5:")
        start_time = time()
        t_list = []
        print("正在查詢(xún)...")
        # 添加線程
        t_first = threading.Thread(target=self.md5_first, args=(NT_md5,))
        t_first.daemon = 1
        t_first.start()
        for k in range(5, 18):
            t = Process(target=self.md5_poj, args=(NT_md5, k))
            # t = threading.Thread(target=self.md5_poj, args=(NT_md5, k))
            t.daemon = 1    # 守護(hù)程序
            t_list.append(t)
        # 啟動(dòng)所有線程
        for i in t_list:
            i.start()
        # 當(dāng) __mdfive == 1 時(shí)結(jié)束所有線程
        while 1:
            if self.__mdfive:
                break
        print("\n查詢(xún)結(jié)束!")
        print('使用了 %f 秒'%(time() - start_time))

if __name__ == '__main__':
    MDfive().main()

到此這篇關(guān)于基于python的MD5腳本的文章就介紹到這了,更多相關(guān)python MD5腳本內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Python爬蟲(chóng)中如何使用xpath解析HTML

    Python爬蟲(chóng)中如何使用xpath解析HTML

    文章詳細(xì)介紹了如何使用Python的lxml庫(kù)中的xpath進(jìn)行網(wǎng)頁(yè)數(shù)據(jù)爬取,解釋了xpath與BeautifulSoup相比的優(yōu)勢(shì),介紹如何使用lxml庫(kù)加載HTML內(nèi)容,包括parse()、fromstring()和HTML()方法的使用,展示了如何使用xpath定位HTML節(jié)點(diǎn),包括使用絕對(duì)定位和相對(duì)定位
    2024-11-11
  • Python日志器使用方法及原理解析

    Python日志器使用方法及原理解析

    這篇文章主要介紹了Python日志器使用方法及原理解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-09-09
  • Python3中安裝后SSL問(wèn)題及解決

    Python3中安裝后SSL問(wèn)題及解決

    這篇文章主要介紹了Python3中安裝后SSL問(wèn)題及解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-12-12
  • python讀取word文檔的方法

    python讀取word文檔的方法

    這篇文章主要介紹了python讀取word文檔的方法,實(shí)例分析了Python基于win32com操作word文檔的相關(guān)技巧,需要的朋友可以參考下
    2015-05-05
  • python如何終止死循環(huán)和開(kāi)啟死循環(huán)

    python如何終止死循環(huán)和開(kāi)啟死循環(huán)

    這篇文章主要介紹了python如何終止死循環(huán)和開(kāi)啟死循環(huán)問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-05-05
  • 想學(xué)python 這5本書(shū)籍你必看!

    想學(xué)python 這5本書(shū)籍你必看!

    想學(xué)python,這5本書(shū)籍你必看!本文為大家推薦了學(xué)習(xí)python的5本書(shū)籍,5本經(jīng)典書(shū)籍,感興趣的小伙伴們可以參考一下
    2018-12-12
  • python?包之?APScheduler?定時(shí)任務(wù)

    python?包之?APScheduler?定時(shí)任務(wù)

    這篇文章主要介紹了python?包之?APScheduler?定時(shí)任務(wù),文章基于python的相關(guān)資料展開(kāi)主題內(nèi)容,具有一定的參考價(jià)值,需要的小伙伴可以參考一下
    2022-04-04
  • Sanic框架藍(lán)圖用法實(shí)例分析

    Sanic框架藍(lán)圖用法實(shí)例分析

    這篇文章主要介紹了Sanic框架藍(lán)圖用法,結(jié)合實(shí)例形式分析了Sanic框架中藍(lán)圖的功能以及路由控制中藍(lán)圖的定義、注冊(cè)、簡(jiǎn)單使用方法及相關(guān)操作注意事項(xiàng),需要的朋友可以參考下
    2018-07-07
  • Python2中的raw_input() 與 input()

    Python2中的raw_input() 與 input()

    這篇文章主要介紹了Python2中的raw_input() 與 input(),本文分析了它們的內(nèi)部實(shí)現(xiàn)和不同之處,并總結(jié)了什么情況下使用哪個(gè)函數(shù),需要的朋友可以參考下
    2015-06-06
  • Python掃描IP段查看指定端口是否開(kāi)放的方法

    Python掃描IP段查看指定端口是否開(kāi)放的方法

    這篇文章主要介紹了Python掃描IP段查看指定端口是否開(kāi)放的方法,涉及Python使用socket模塊實(shí)現(xiàn)端口掃描功能的相關(guān)技巧,需要的朋友可以參考下
    2015-06-06

最新評(píng)論

辽源市| 浙江省| 肥西县| 和平县| 视频| 岱山县| 通化市| 深圳市| 马山县| 赤水市| 茌平县| 修水县| 江都市| 江口县| 将乐县| 会宁县| 巴马| 达州市| 海安县| 合作市| 武陟县| 大洼县| 虞城县| 阳江市| 南投县| 淄博市| 鲁甸县| 福建省| 景德镇市| 噶尔县| 长海县| 台安县| 辽源市| 锦州市| 宽城| 青铜峡市| 汤原县| 探索| 特克斯县| 天津市| 常熟市|