MD5原理
在密碼領域,美國一直在向全世界推廣MD5密碼,還多次聲稱:沒人能破解我們的MD5密碼,就連著名的密碼學家Biham,也把破解MD5密碼作為一生的夢想。(這是多年前的言論。不要過度解讀,做個簡單開場白~)
MD5目前應用比較多的就是文件校驗,當然作為一種“密碼”其也可以在密碼管理以及數字簽名領域使用。
其加密原理如下:
MD5剛出來的時候的確加密性很強,但是經過幾年的發展,在1996年左右被發現是可以被破解的,同時在2004年由中國王小云教授發現其也不可以防碰撞(所謂“碰撞“并不是正向破解,而是用其他方式生產一個一樣的HASH值)。
既然MD5可以被破解,那我們今天就看幾個用FPGA破解的項目~
fpga-md5-cracker
https://github.com/John-Leitch/fpga-md5-cracker
用verliog編寫的64級流水線實現MD5破解。在 DE0-Nano(Altera FPGA) 上以 100mhz 時鐘進行可靠的運行,每秒計算 1 億次HASH。
介紹
這個項目是一個硬件 MD5 破解器,它圍繞 MD5 哈希函數的高吞吐量、流水線特點而實現的。它由三個設備組成:
DE0-Nano FPGA
主力軍。設計相當大,消耗了 21,257/22,320 (95%) 個邏輯單元。
Netduino Plus 2
充當程序員,通過 SPI 與 FPGA 通信,同時使用以太網和計算機連接。選擇 NP2 是因為它是我手頭上唯一的 3.3v SPI 主設備。其他設備也可以工作,但如果使用 DE0-Nano,請記住 Cyclone IV 不能承受 5v。還值得注意的是,如果選擇另一種設備,可能不得不重寫程序員,因為當前的實現是用 C# 編寫的。
Arduino液晶屏
任何 Hitachi HD44780 兼容的 LCD 都應該可以工作。為了簡化接線,破解者使用 4 位模式的 LCD。
關于硬件連接,項目里都有詳細的設計。
ntlmv2-cracker
https://github.com/nimrods8/ntlmv2-cracker
使用Max10 FPGA作為并行計算平臺,128級流水線破解MD4/MD5
在上面項目基礎上,使用Max10 FPGA作為并行計算平臺,128級流水線破解MD4/MD5。
md5cracker
https://github.com/zhemao/md5cracker
基于Cyclone V SoC 的硬件 MD5 破解器
md5-hbf
https://github.com/fallen/md5-hbf
md5 硬件暴力破解 IP 核
使用 Swapnajit Mittra 制造的 pancham MD5 IP 核 < http://www.angelfire.com/ca/verilog >
該設計可以在 spartan 3E 500K 門上以 50MHz 運行。
它已成功綜合并用于 Spartan-3A XC3S400A 和 Spartan-3AN XC3S700AN
分別在 AVNET Spartan-3A fpga 開發板和 Xilinx Spartan-3AN 入門套件上。
當暴力破解顯示 md5 哈希沖突時,usart 輸出有效并顯示明文密碼。
其他
https://github.com/dnet/fpga-md5
https://github.com/ebrahimAlhaddad/MD5-Hardware-Accelerator
https://github.com/bhagyasr/MD5-Cracker
總結
今天介紹的MD5破解項目,只有前三個項目值得學習參考,后面項目挺亂的,并且有些還缺少文件,只適合參考。
今天的項目雖然相對簡單并且不“入流”,但是對于搞密碼學的人來說,這些都是他們曾經奮斗的方向~
最后,還是感謝各個大佬開源的項目,讓我們受益匪淺。后面有什么感興趣方面的項目,大家可以在后臺留言或者加微信留言,今天就到這,我是爆肝的碎碎思,期待下期文章與你相見。
審核編輯 :李倩
-
FPGA
+關注
關注
1629文章
21736瀏覽量
603421 -
破解器
+關注
關注
0文章
2瀏覽量
5572
原文標題:優秀的 Verilog/FPGA開源項目介紹(三十零)- 暴力破解MD5
文章出處:【微信號:Open_FPGA,微信公眾號:OpenFPGA】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論