基本信息
- 項(xiàng)目名稱:
- MD5高速密碼分析系統(tǒng)
- 來(lái)源:
- 第十二屆“挑戰(zhàn)杯”省賽作品
- 小類:
- 信息技術(shù)
- 大類:
- 科技發(fā)明制作B類
- 簡(jiǎn)介:
- 本系統(tǒng)是基于GPU通用并行計(jì)算技術(shù)和分布式計(jì)算技術(shù),采用窮舉法對(duì)MD5密碼進(jìn)行分析,用途十分廣泛的密碼分析工具。本軟件系統(tǒng)充分利用了GPU強(qiáng)大的并行計(jì)算能力,能夠聯(lián)合分布在Internet上的多臺(tái)機(jī)器同時(shí)對(duì)MD5密碼進(jìn)行大規(guī)模的并行密碼學(xué)分析,從而有效地提高對(duì)MD5密碼分析的效率,大大節(jié)省寶貴的時(shí)間,是個(gè)人、企業(yè)以及政府部門(mén)進(jìn)行密碼恢復(fù)的有效工具,更是司法部門(mén)和安全取證機(jī)構(gòu)進(jìn)行快速取證的強(qiáng)大利器。
- 詳細(xì)介紹:
- 為了對(duì)加密的數(shù)據(jù)信息或計(jì)算機(jī)系統(tǒng)進(jìn)行安全取證分析,取證調(diào)查人員往往需要進(jìn)行密碼破解操作。MD5算法作為一種常見(jiàn)的密碼加密方式,在過(guò)去的取證調(diào)查工作中主要利用計(jì)算工作站對(duì)其進(jìn)行密碼遍歷。這種計(jì)算工作站往往只是單純的利用CPU的串行計(jì)算模式來(lái)實(shí)現(xiàn)。CPU的主頻速度雖然在過(guò)去的二十年里得到了快速的增長(zhǎng),但是其運(yùn)算能力并沒(méi)有飛躍性的提高,特別是在處理大規(guī)模數(shù)據(jù)的情況時(shí),其運(yùn)算能力還遠(yuǎn)遠(yuǎn)不能滿足實(shí)際需求。 隨著現(xiàn)代網(wǎng)絡(luò)技術(shù)和GPU技術(shù)的快速發(fā)展,分布式計(jì)算和GPU并行計(jì)算以其在解決大規(guī)模復(fù)雜運(yùn)算問(wèn)題過(guò)程中表現(xiàn)出的強(qiáng)大性能優(yōu)勢(shì)引得了人們的廣泛關(guān)注。特別是近幾年GPU技術(shù)的飛速發(fā)展,其運(yùn)算能力已經(jīng)遠(yuǎn)遠(yuǎn)超過(guò)了CPU。為此,我們提出并實(shí)現(xiàn)了一個(gè)基于GPU的分布式并行MD5密碼分析系統(tǒng)。我們的系統(tǒng)能夠利用分布在Internet上的大量配置有GPU芯片的計(jì)算機(jī)同時(shí)對(duì)MD5散列值進(jìn)行密碼學(xué)分析工作,從而快速遍歷分析出經(jīng)過(guò)MD5算法加密的密碼。在我們系統(tǒng)的運(yùn)算客戶端,我們將主要的MD5密碼計(jì)算分析模塊寫(xiě)入到CUDA內(nèi)核程序中,安排在GPU上進(jìn)行并行執(zhí)行,從而使本系統(tǒng)對(duì)MD5密碼的分析效率得到顯著提高。最終的性能測(cè)試結(jié)果表明,我們的基于GPU的分布式并行MD5密碼分析系統(tǒng)能夠有效提高對(duì)MD5密碼的分析速度,與單純利用CPU計(jì)算能力實(shí)現(xiàn)的MD5密碼分析軟件相比在性能上有很大的優(yōu)勢(shì)。
作品專業(yè)信息
設(shè)計(jì)、發(fā)明的目的和基本思路、創(chuàng)新點(diǎn)、技術(shù)關(guān)鍵和主要技術(shù)指標(biāo)
- MD5算法是目前最常用的安全散列算法之一,它被廣泛地應(yīng)用于電子商務(wù)等信息安全領(lǐng)域,如何真正快速實(shí)現(xiàn)MD5密碼分析是密碼分析學(xué)中一個(gè)很熱門(mén)的研究課題。近年來(lái),隨著GPU(Graphic Processing Unit)技術(shù)的不斷發(fā)展,其強(qiáng)大的并行運(yùn)算能力除了運(yùn)用于圖形處理以外,已被廣泛的應(yīng)用于通用計(jì)算領(lǐng)域。此外,CUDA(Compute Unified Device Architecture)是目前針對(duì)GPU通用計(jì)算應(yīng)用開(kāi)發(fā)的編程環(huán)境之一,它為支持統(tǒng)一計(jì)算設(shè)備架構(gòu)技術(shù)的GPU帶來(lái)了無(wú)窮的高性能計(jì)算能力。另一方面,網(wǎng)絡(luò)分布式計(jì)算是近年來(lái)提出的一種新的計(jì)算方式,它研究如何把一個(gè)需要非常巨大的計(jì)算能力才能解決的問(wèn)題分成許多小的部分,然后把這些部分通過(guò)網(wǎng)絡(luò)通信分配給Internet上的許多計(jì)算機(jī)進(jìn)行處理,最后把這些計(jì)算結(jié)果綜合起來(lái)得到最終的結(jié)果。隨著個(gè)人計(jì)算機(jī)的日益普及和運(yùn)算能力的不斷提高,如何利用這種分布在Internet上的龐大個(gè)人計(jì)算機(jī)的運(yùn)算資源進(jìn)行分布式計(jì)算是當(dāng)今高性能計(jì)算領(lǐng)域的又一研究熱點(diǎn)。為此,在我們的參賽作品中,我們重點(diǎn)研究了GPU通用計(jì)算和分布式計(jì)算在密碼分析學(xué)中的應(yīng)用,并將二者相結(jié)合,提出了一種基于GPU的分布式并行MD5密碼分析系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)。我們的系統(tǒng)能夠充分利用GPU的并行計(jì)算能力和分布式計(jì)算的優(yōu)點(diǎn),對(duì)MD5散列值進(jìn)行大規(guī)模并行密碼學(xué)分析,從而快速分析破解出經(jīng)過(guò)MD5算法加密的密碼。
科學(xué)性、先進(jìn)性
- 對(duì)MD5單向散列密碼的直接分析方法是遍歷法或彩虹法,在我們的參賽作品中,我們采用了遍歷法對(duì)MD5密碼進(jìn)行分析。 目前,國(guó)內(nèi)外大部分密碼分析破解系統(tǒng)大都是單純依賴于傳統(tǒng)CPU的運(yùn)算能力來(lái)實(shí)現(xiàn)的,基于CPU的密碼遍歷是一個(gè)串行的循環(huán)計(jì)算過(guò)程因此它們所能達(dá)到的密碼分析破解速率十分有限,在實(shí)際的計(jì)算機(jī)安全取證過(guò)程中并不十分有效。在我們的系統(tǒng)中,對(duì)MD5密碼的分析運(yùn)算采用了GPU并行計(jì)算來(lái)實(shí)現(xiàn),能夠?qū)D5密碼進(jìn)行大規(guī)模的并行遍歷分析,我們的實(shí)現(xiàn)方案在效率上有很大的優(yōu)勢(shì)。此外,我們的參賽作品采用了基于Internet的分布式計(jì)算方案,能夠利用分布在Internet上的任意主機(jī)同時(shí)進(jìn)行MD5密碼分析工作。分布式計(jì)算是計(jì)算機(jī)領(lǐng)域中的一門(mén)高性能計(jì)算科學(xué),它研究如何把一個(gè)需要非常巨大的計(jì)算能力才能解決的問(wèn)題分成許多小的部分然后把這些部分分配給許多計(jì)算機(jī)進(jìn)行處理,最后把這些計(jì)算結(jié)果綜合起來(lái)得到最終的結(jié)果。因此,用戶不必投資于一臺(tái)功能強(qiáng)大的計(jì)算機(jī),而是使用多臺(tái)功能一般,價(jià)格便宜的計(jì)算機(jī)完成相同的任務(wù)。
獲獎(jiǎng)情況及鑒定結(jié)果
- 通過(guò)市公安局信息安全專家的技術(shù)鑒定。(證明見(jiàn)附加材料)
作品所處階段
- 系統(tǒng)試用階段
技術(shù)轉(zhuǎn)讓方式
- 無(wú)
作品可展示的形式
- 實(shí)物、現(xiàn)場(chǎng)演示、圖片、錄像
使用說(shuō)明,技術(shù)特點(diǎn)和優(yōu)勢(shì),適應(yīng)范圍,推廣前景的技術(shù)性說(shuō)明,市場(chǎng)分析,經(jīng)濟(jì)效益預(yù)測(cè)
- 近年來(lái),計(jì)算機(jī)越來(lái)越多地參與到人們的日常生活與工作之中,與計(jì)算機(jī)相關(guān)的違法犯罪案件也一直呈上升趨勢(shì),大量計(jì)算機(jī)犯罪案件的安全取證工作都需要電子證據(jù)。 為了防止電子證據(jù)被銷毀,計(jì)算機(jī)犯罪案件的安全取證工作需要在犯罪份子不知情的情況下進(jìn)行。在辦案人員的電子取證過(guò)程中,如果需要進(jìn)行密碼破解將耗費(fèi)相當(dāng)長(zhǎng)的時(shí)間,這嚴(yán)重阻礙了違法案件的偵破工作。因此,快速密碼破解在偵查辦案中具有特別重要的意義。 目前,在市場(chǎng)上已有的一些密碼分析系統(tǒng)多為國(guó)外產(chǎn)品,且大部分密碼分析系統(tǒng)都單純依賴于傳統(tǒng)CPU的運(yùn)算能力,它們所能達(dá)到的密碼破解速率十分有限,在實(shí)際的計(jì)算機(jī)安全取證過(guò)程中并不十分有效。 由于本作品的實(shí)現(xiàn)采用了分布式計(jì)算和GPU并行計(jì)算相結(jié)合的設(shè)計(jì)方案,能對(duì)MD5密碼進(jìn)行大規(guī)模的并行密碼學(xué)分析,其破解速率遠(yuǎn)遠(yuǎn)快于普通的密碼破解產(chǎn)品。另外,本作品通過(guò)Internet分布式計(jì)算方法,充分利用Internet上無(wú)窮的計(jì)算資源,大大降低了系統(tǒng)的成本。因此,我們的系統(tǒng)在計(jì)算機(jī)安全與取證領(lǐng)域中具有很強(qiáng)的實(shí)際應(yīng)用價(jià)值。
同類課題研究水平概述
- 2004年我國(guó)著名密碼學(xué)專家王小云教授宣布成功破譯MD5的消息引起了國(guó)際密碼學(xué)界的廣泛關(guān)注。然而,到目前為止,王教授等學(xué)者提出的這個(gè)方案并未在實(shí)際中得到應(yīng)用。因此,如何真正快速實(shí)現(xiàn)MD5密碼分析仍然是密碼分析學(xué)中一個(gè)很熱門(mén)的研究課題。 目前為止,對(duì)MD5單向散列密碼的直接分析方法是遍歷法或彩虹法。遍歷法是將可能出現(xiàn)的密碼明文,經(jīng)過(guò)MD5算法運(yùn)算后,把得到的散列值直接與需要破解的MD5散列值進(jìn)行對(duì)比,從而判斷該明文是否是已知MD5散列值所對(duì)應(yīng)的密碼明文。當(dāng)各種可能的密碼明文能夠確定時(shí),采用遍歷法的破解效率取決于計(jì)算機(jī)的運(yùn)算性能。彩虹法是在遍歷法的基礎(chǔ)上,首先將得到的MD5散列值和原始的明文數(shù)據(jù)構(gòu)成一對(duì)一的映射表,接著,通過(guò)搜索和匹配的方式從映射表中找出待破解密碼所對(duì)應(yīng)的原始明文。當(dāng)明文數(shù)據(jù)的隨機(jī)性很強(qiáng)時(shí),彩虹法要求高效的搜索引擎和海量的存儲(chǔ)設(shè)備來(lái)存儲(chǔ)映射表,因此其破解效率取決于搜索方式和計(jì)算機(jī)系統(tǒng)的存儲(chǔ)空間。 目前,國(guó)內(nèi)外大部分的MD5密碼分析破解系統(tǒng)單純依賴于傳統(tǒng)CPU的運(yùn)算能力來(lái)實(shí)現(xiàn)的,基于CPU的密碼遍歷是一個(gè)串行的循環(huán)計(jì)算過(guò)程,因此其效率和計(jì)算速度都非常的低,它們所能達(dá)到的密碼分析破解速率十分有限,在實(shí)際的計(jì)算機(jī)安全取證過(guò)程中并不十分有效。