码迷,mamicode.com
首页 > 其他好文 > 详细

[信安Presentation]一种基于GPU并行计算的MD5密码解密方法

时间:2016-04-14 14:17:49      阅读:236      评论:0      收藏:0      [点我收藏+]

标签:

[Code]

Section 0:introduction of MD5, and some of its application  [Ref]

STEP1:从plaintext末尾开始填充1000000.....,直到(数据长度)%512=448【单位:bit
STEP2:继续填充64bit,这64bit里存储的是填充前plaintext的长度
STEP3:将填充好的信息拆分成整数个512bit的blocks,一个一个block处理
STEP4:FOR EACH 512b_BLOCKS:
      Round(1..4)
      

Application:

Unix系统中的密码

 

Section 1:Cracking MD5

1.MD5理论上不可能恢复出原文(According to Information Theory)

但是存在暴力破解方法

常用爆破方法:彩虹表、暴力

  彩虹表:提前打好的一个大大大大大大Table,里面记录一大坨plaintext和对应的MD5

  暴力:穷举

破解密码?无需从MD5恢复出plaintext。只需枚举plaintext,然后找到MD5相同的即可

 

Section 2:usage of CUDA in parallel computing, and the parallel algorithm for cracking MD5

2.1 Introduction of CUDA

2.2 parallel cracking algorithm

将plaintext解空间(alphabet的排列组合)分解成若干组,交给不同的GPU SM并行计算出MD5,并与原MD5比对。

 

Section 3:Performance testing

好的很呐

技术分享

 

Section 4:Conclusion

虽然可以爆破,但是对于长密码,代价还是巨大的。MD5还能接着续几年

 

Section ?:Future Researching

[Ref] [Ref]

 

[信安Presentation]一种基于GPU并行计算的MD5密码解密方法

标签:

原文地址:http://www.cnblogs.com/pdev/p/5388996.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!