<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Dev@Free

    zJun's Tech Weblog

    [轉(zhuǎn)] 破解MySQL的MD5函數(shù)

    As per the documentation on MySQL I moved the storage of passwords from using Password() to using MD5(). I read a number of places that stated that this was a method that couldn't be reversed and it was far more secure than the previous method. I was feeling confident that life was about to get a little more secure. While going through my daily RSS feeds and mailing lists for SpikeSource , I happenned upon a thread about someone discussing how easy it was to break MD5 hashes. It was a simple matter of using a brute force algorithm to check all the different combinations.

    Eager to try this out for myself, I did a quick Google and found a Project RainbowCrack which was a Windows/Linux utility that would brute force crack MD5 hashes amongst other secure algorithms. Thinking it would be shrouded in mathematical terms and phrases unfamiliar to me I didn't hold out much hope that I could get it to do what I wanted; to take a sample of passwords that were stored in MySQL database tables using the MD5() function and crack them for me.

    The project builds a number of lookup tables to make the whole process a lot quicker. This in all fairness only took about 18hours to complete on my dual processor 3GHZ machine. After the tables where built it was a simple matter of running a simple command line utility to crack the MD5 hash. Time taken? 1.26seconds! That's how secure MySQL passwords encoded with MD5() are at this precise moment.

    Some sample output from RainbowCrack

    				e:\rainbowcrack-1.2-win>rcrack *.rt -h 7694f4a66316e53c8cdd9d9954bd611d
    md5_loweralpha#1-7_0_2100x8000000_all.rt:
    128000000 bytes read, disk access time: 6.23 s
    verifying the file...
    searching for 1 hash...
    plaintext of 7694f4a66316e53c8cdd9d9954bd611d is qlkjalkj
    cryptanalysis time: 1.52 s
    statistics
    -------------------------------------------------------
    plaintext found:          1 of 1 (100.00%)
    total disk access time:   6.23 s
    total cryptanalysis time: 1.52 s
    total chain walk step:    403651
    total false alarm:        388
    total chain walk step due to false alarm: 579374
    result
    -------------------------------------------------------
    7694f4a66316e53c8cdd9d9954bd611d  qlkjalkj  hex:71
    
    		

    So really, the only reason to store passwords using MD5() would be to discourage the casual hacker, but it is by no means a secure method as some sites would have you believe. It is fair to note that the RainbowCrack documentation states that salted MD5 hashes can't be broken, but MySQL doesn't salt their implementation so it makes no difference here.

    posted on 2007-01-17 16:22 zJun's帛羅閣 閱讀(2584) 評(píng)論(0)  編輯  收藏 所屬分類: 數(shù)據(jù)庫

    導(dǎo)航

    <2007年1月>
    31123456
    78910111213
    14151617181920
    21222324252627
    28293031123
    45678910

    統(tǒng)計(jì)

    常用鏈接

    留言簿(15)

    隨筆分類

    隨筆檔案

    相冊(cè)

    收藏夾

    博客

    文檔

    站點(diǎn)

    論壇

    搜索

    積分與排名

    最新評(píng)論

    閱讀排行榜

    評(píng)論排行榜

    主站蜘蛛池模板: 日本人成在线视频免费播放| 阿v视频免费在线观看| 国产视频精品免费视频| 免费的一级片网站| 亚洲蜜芽在线精品一区| 国产99视频精品免费专区| 亚洲欧洲∨国产一区二区三区| 国产精品九九久久免费视频 | 亚洲 国产 图片| 桃子视频在线观看高清免费完整| 亚洲美女又黄又爽在线观看| 国产JIZZ中国JIZZ免费看| 亚洲国产精品无码久久九九| 理论片在线观看免费| 亚洲国产一区视频| 久久er国产精品免费观看8| 亚洲一级Av无码毛片久久精品| 久久久久久毛片免费看| 国产亚洲色婷婷久久99精品91| 成人午夜影视全部免费看| 国产亚洲精品AA片在线观看不加载| 日韩精品无码永久免费网站| 亚洲中文字幕无码久久综合网| a在线免费观看视频| 亚洲精品人成在线观看| 在线看片v免费观看视频777| 亚洲人成7777| 四虎永久成人免费影院域名| 久久一区二区免费播放| 五月天网站亚洲小说| 国产福利在线免费| 国产精品久久久久久亚洲影视| 亚洲国产精品人人做人人爱| 精品国产免费一区二区三区香蕉| 美女被免费视频网站a国产| 国产精品日本亚洲777| 亚洲最大AV网站在线观看| 19禁啪啪无遮挡免费网站| 亚洲国产欧美国产综合一区 | 国拍在线精品视频免费观看| 亚洲精品国产av成拍色拍|