国产精品电影_久久视频免费_欧美日韩国产激情_成年人视频免费在线播放_日本久久亚洲电影_久久都是精品_66av99_九色精品美女在线_蜜臀a∨国产成人精品_冲田杏梨av在线_欧美精品在线一区二区三区_麻豆mv在线看

MD5加密算法在數據庫安全的應用與查表攻擊

安全 數據安全 算法
MD5為現在應用最廣泛的Hash算法之一,在1992年由MIT的RonaldL.Riverst提出,由MD4演化而來。該算法廣泛應用于互聯網網站的用戶數據加密,能夠將用戶密碼加密為128位的長整數。

MD5為現在應用最廣泛的Hash算法之一,在1992年由MIT的RonaldL.Riverst提出,由MD4演化而來。該算法廣泛應用于互聯網網站的用戶數據加密,能夠將用戶密碼加密為128位的長整數。數據庫并不明文存儲用戶密碼,而是在用戶登錄時將輸入密碼字符串進行MD5加密,與數據庫中所存儲的MD5值匹配,從而降低密碼數據庫被盜取后用戶損失的風險。

但由于Hash碰撞的存在,MD5加密的數據并不安全,可以由生成相同Hash值的字符串破解,所以提出了加入隨機數salt的MD5加密方法,一定程度上增大了字典攻擊的難度。

問題提出

前一陣在新浪微博上,有一個人發布了這樣一條微博:“出道互聯網安全常識數學題……假設你的網站所有用戶密碼都是md5加密(單向散列,非可逆)的,假設你網站有10萬會員,如果你的用戶庫丟了,會有多少會員密碼被破解?想想看。”當時我的一位朋友認為10萬個密碼全部都會被破解,我卻不這樣認為,因為根據我的先驗知識:

(1)MD5加密算法在互聯網應用中廣泛被使用,MD5不是簡單的古典加密算法,不能通過逆向Decrypt解密,只能通過Hash碰撞破解(Hack);

(2)我曾經看過對同一個字符串進行MD5加密的結果,產生結果是隨機的字符串(后來經過查找資料發現我所看到的不是簡單的MD5加密,而是加鹽后的結果);

(3)MD5用作密碼加密算法并不是絕對安全的,因為可能產生Hash碰撞,簡單密碼的MD5加密可以通過彩虹表查找到;

(4)我曾見過幾個破解MD5加密的網站http://www.cmd5.com/),大多數的做法是先免費為用戶暴力破解,積累起足夠的數據庫可以破解簡單密碼后,解密服務便開始收費,所以MD5密碼的破解不應該那么簡單。

在經過對這個問題激烈的討論過后,沒過多久便發生了CSDN的數據庫泄露事件,600萬條數據庫記錄被任意傳播。緊接著天涯論壇的數據庫也泄露了,2000萬條數據庫記錄被證實幾乎均可以登錄。而這兩個網站的數據庫中所保存的用戶密碼都沒有經過加密,即為明文存儲的。這種事情的發生更加證實了對網站數據庫中所保存的用戶密碼進行加密的重要性。

現今流行的對用戶密碼加密算法中,MD5加密是最為廣泛使用的算法之一。

背景知識

對于散列函數h(x),必須滿足下列特性[1]:

壓縮:對于給定輸入x,輸出長度y=h(x)很小;

效率:對于給定輸入x,計算y=h(x)很容易;

單向:該散列函數H是一個單向函數,即對于幾乎所有的x,已知H(x)的值y求x是不可行的;

弱無碰撞:已知x,求出x’使得H(x’)==H(x)在計算上是不可行的;

強無碰撞:對于任意x≠x’,H(x’)==H(x)在計算上是不可行的。

MD5的全稱是Message-DigestAlgorithm5,在1991年由MIT的RonaldL.Riverst提出,由MD4演化而來,最終生成128位(4個32位的16進制數)的信息摘要算法。[2]MD5算法是一個不可逆的字符串變換算法,即看到源程序和算法描述,也無法將一個MD5的值變換回原始的字符串。

1993年,DenBoer和Bosselaers給出了一個有限的“偽碰撞”結果;

1996年,MD5算法的設計被發現有缺陷,雖然當時并未被證明該缺陷是致命的,密碼學專家建議使用其它加密算法(如SHA-1)。

2004年,MD5算法被證明不安全,原因是會產生Hash碰撞。[3]

2007年,研究人員發現使用Chosen-prefixCollision方法,可以使包含惡意代碼的程序產生合法的MD5值。

2008年,研究人員發現了產生相同MD5Hash值的兩個可執行文件。

以上實例證明,MD5算法的安全性并不高,不能應用于對安全性要求很高的SSL加密及數字簽名之中。目前最被推薦的Hash加密算法應為SHA-2加密算法。

MD5算法描述

MD5算法針對不定長的輸入,可以輸出固定128位長度的加密信息。MD5以512位來分組輸入的信息,每一分組又被劃分為16個32位子分組,經過算法流程最終生成四個32位數據聯合成為128位的散列。算法的具體過程如下[4]:

(1)信息進行填充,使其位長對512求余的結果等于448。將信息的長度擴展至N*512+448,其中N為一個非負整數,N可以是零。填充的方法為在信息的后面填充一個1和無數個0,直到滿足條件。

(2)在這個結果后面附加一個以64位二進制表示的填充前信息長度。經過這兩步的處理,現在的信息的位長=N*512+448+64=(N+1)*512,即長度恰好是512的整數倍。這樣做的原因是為滿足后面處理中對信息長度的要求。MD5中有四個32位被稱作鏈接變量(ChainingVariable)的整數參數,他們的初始值分別為:A=0×67452301,B=0xefcdab89,C=0x98badcfe,D=0×10325476。

(3)進入算法的四輪主循環運算。循環的次數是信息中512位信息分組的數目。主循環有四輪,每輪循環都很相似。第一輪進行16次操作。每次操作對a、b、c和d中的其中三個作一次非線性函數運算,然后將所得結果加上第四個變量,文本的一個子分組和一個常數。再將所得結果向左環移一個不定的數,并加上a、b、c或d中之一。最后用該結果取代a、b、c或d中之一。

(4)經過四輪逐位運算完成之后,將A、B、C、D分別加上a、b、c、d。然后用下一分組數據繼續運行算法,最后的輸出是A、B、C和D的級聯。

存在問題

雖然MD5為單向Hash加密,是不可逆的,但根據鴿巢原理,MD5算法所產生的32位輸出所能夠表示的空間大小為1632,即當樣本大于1632≈3.4×1038時就會產生Hash碰撞。由這一結論可知,我們可以生成大量密碼樣本的哈希值,得到密碼和哈希值的一一對應關系,然后根據這個對應關系反查就可以得到哈希值所對應的密碼。但在破解密碼的MD5值之前,我們需要預先計算出大量數據所對應的MD5值。

而在互聯網應用方面,如果如文章開始所提出的問題一樣,只是對用戶密碼進行簡單MD5加密,是有可能通過查表入侵用戶賬戶的(盡管密碼可能不是用戶的原始密碼)。然而對于強密碼來說,通過暴力窮舉破解MD5值的代價也是相當大的。但根據統計結論[5],有相當多的用戶會使用弱密碼[6],因此可以根據統計規律建立簡單密碼所對應的MD5值表,從而入侵使用簡單密碼的用戶賬戶。

改進方法

由于對于密碼學Hash函數還需要的特性是具有雪崩效應,或者嚴格雪崩效應。其目標是對于輸入任何小的改動將使輸出變化很大。理想情況下改變任何輸入所得到的輸出結果都不相關,那么攻擊者尋找碰撞就必須進行窮舉搜索[1]。由于MD5算法的這一效應,我們可以在用戶密碼創建時生成一個隨機字符串(稱之為Salt,在另一個數據表或數據庫中存儲)與用戶口令連接在一起,然后再用散列函數對這個字符串進行MD5加密,之后將MD5加密結果結果存入數據庫中。如果Salt值的數目足夠大的話,它實際上就消除了對常用口令采用的字典式攻擊,因為黑客不可能在數據庫中存儲那么多Salt和用戶密碼組合后的MD5值。當然,如果黑客獲得了數據庫的所有信息(包括Salt表),他們仍可以對單個用戶的密碼進行暴力枚舉破解。但將每個密碼后加一隨機串,無疑增加了暴力枚舉的難度,且不存在弱口令的問題了。更加安全的做法是,我們可以給每個密碼設置一個隨機的Salt值,這樣即使使用暴力枚舉破解了一個用戶的密碼,也很難再破解其他用戶的密碼了。

除了給MD5算法加鹽,其它的增強用戶密碼安全性的主動措施有使用更加耗時的加密算法,這樣使破解的時間也大大增加了;或者更換更安全的加密算法如SHA-2算法;還可以像Twitter一樣強制用戶使用復雜密碼等等。

結論

回到文章起始提出的問題,如果我的網站存有10萬MD5密碼的數據庫落入了黑客手中,根據最近對CSDN密碼泄露事件的統計規律:600萬賬號中有239萬個賬號和其它賬號的密碼相同[5],進行最樂觀的假設,假設這些賬號使用的都是弱密碼,且我們手中有所有這些弱密碼所對應的明文信息,則約有40%的密碼將被破解。對于文章起始處提出的問題來說,就是約4萬名用戶的密碼將被破解。而進行較保守的假設,以CSDN事件中排名前10的弱密碼為例,共有748350人使用了排名前10的弱密碼,比例為0.1%,假設真實使用排名前1000的弱密碼的人數為100*0.1%=10%,且我們手中有80%的弱密碼所對應的明文信息,則對于文章起始處提出的問題來說,就是約8千名用戶的密碼將被破解。由此可見,只對用戶密碼進行簡單的MD5加密并不能保證全部用戶的密碼安全,大約會有8000~40000名用戶的密碼將被查表破解。

(該估計方法存在一定問題:由于本人并未找到更好的基于真實情況的弱密碼使用統計結論,且沒有CSDN所泄露的數據庫,只能以果殼網的數據為基準,并且由于國殼網所提供的數據量很小,估計方法也并不準確,只是進行粗略估計,最終結果只是一個定性結論。該問題還可以進行定量的后續研究。)

編者按:本文作者為北師大的大三學生張俏,女Geek,在CSDN等各大網站的用戶數據被泄露之后,她就MD5加密問題寫下此文,發表了自己的看法,如果有讀者想要跟作者進一步探討,可以在新浪微博@阿豆拉

【編輯推薦】

  1. 數據庫安全專家指出數據庫取證仍然落后
  2. 企業數據庫安全政策該怎樣完善?
  3. 了解數據庫安全審計工具
  4. 四步教你如何完善企業數據庫安全政策
責任編輯:于爽 來源: www.cnbeta.com
相關推薦

2015-03-23 11:21:08

2022-10-18 22:21:51

2020-10-15 08:20:52

MD5算法加密的過程

2022-11-09 08:24:39

2016-12-15 09:26:53

MD5加密

2009-06-06 18:57:47

MD5加密類Java Bean

2021-12-06 18:16:14

SQLCRCMD5

2020-02-25 16:30:36

MD5是不是加密

2009-06-30 10:05:24

MD5加密JSP源碼

2010-08-17 09:55:29

2010-01-06 09:54:30

.NET Framew

2023-08-01 07:24:05

2017-06-28 14:38:44

2023-10-16 19:05:20

2021-06-07 10:00:41

MD5算法加密

2015-02-26 09:21:42

Jenkins數據庫加密

2022-01-11 12:12:10

加密漏洞攻擊

2024-12-31 08:00:00

SpringBoot開發加密

2009-08-21 15:02:31

C#加密算法

2009-08-13 18:12:11

C#數據加密
點贊
收藏

51CTO技術棧公眾號

中文天堂在线观看| 亚洲xxxx视频| 欧美精品成人一区二区在线观看 | 日韩三级av高清片| 亚洲久久久久久久久久久| 男女污污视频在线观看| 亚洲午夜久久久| 超碰97免费观看| 美国三级日本三级久久99| 日本一不卡视频| 成人黄色免费看| 日韩精品一区二区三区中文| www国产精品视频| 国产区在线视频| 在线观看亚洲精品| 男人的天堂在线视频| 色综合欧美在线| 国产精品久久久久久免费观看 | 久久精品系列| 糖心vlog在线免费观看| 国产偷国产偷精品高清尤物| 黄网站色大毛片| 91精品国产日韩91久久久久久| 日产福利视频在线观看| 欧美裸体男粗大视频在线观看| 精品美女视频| 欧美日韩一区二区视频在线 | 久久免费国产视频| 欧美精品一卡| 国产传媒久久久| 亚洲一区二区黄色| 国产美女精品写真福利视频| 97精品国产91久久久久久| 亚洲美女黄网| 久草福利视频在线| 欧美色大人视频| а天堂中文最新一区二区三区| 国产精品视频成人| 国产毛片精品一区| 国产香蕉视频在线观看| 亚洲国产欧美一区| 沈樵精品国产成av片| 在线看视频不卡| 婷婷久久综合九色综合伊人色| 成人片免费看| 亚洲一区二区三区毛片| 99视频精品在线| av基地在线| 欧洲美女免费图片一区| 国产精品综合视频| 大片免费播放在线视频| 国产69精品99久久久久久宅男| 日韩成人伦理电影在线观看| 黄页网站视频在线观看| 久久久成人精品视频| 羞羞答答国产精品www一本| 成人狠狠色综合| 欧美亚视频在线中文字幕免费| 麻豆久久久av免费| 一区二区三区视频在线观看| 99精品在线直播| 91麻豆蜜桃一区二区三区| 菠萝蜜视频国产在线播放| 日本不卡高字幕在线2019| 国产高清不卡二三区| 91高清在线视频| 欧美一级免费视频| a亚洲天堂av| 黄色漫画在线免费看| 国产伦精品一区二区三区高清版 | 免费无码不卡视频在线观看| 欧美日韩www| 999久久久91| 丰满少妇在线观看| 亚洲性生活视频| 18video性欧美19sex高清| 国产在线拍偷自揄拍精品| 国产午夜精品久久久久久久| 在线观看三级视频| 99在线高清视频在线播放| 亚洲精品一二三区| 超碰在线成人| 日本成人中文字幕在线| 中文字幕亚洲天堂| 国产麻豆精品一区二区| 国产激情视频一区二区在线观看| www.51av欧美视频| 亚洲欧美99| 精品国产凹凸成av人网站| 免费在线观看日韩欧美| 九九久久久久久久久激情| 午夜在线一区| 黄毛片在线观看| 爱久久·www| 欧美一区二区三区免费在线看| 永久91嫩草亚洲精品人人| 久草免费在线播放| 78色国产精品| 亚洲女与黑人做爰| 国产精品最新| 国产对白在线正在播放| 国产精品黄色影片导航在线观看| 亚洲精品福利视频网站| 伊人影院综合在线| 国产精品v日韩精品v在线观看| 国产三级在线看| 国产精品亚洲四区在线观看| 日韩在线卡一卡二| 精品一区二区免费在线观看| 99国产精品国产精品久久| ...av二区三区久久精品| 日韩一区二区三区视频| 日韩一区二区三区精品| 好吊色欧美一区二区三区视频| 999国产视频| 欧美日韩精品不卡| 亚洲欧美国产精品桃花| 国产经典久久久| 亚洲看片网站| 91亚洲精品国产| 北条麻妃av高潮尖叫在线观看| 国产高清自拍视频在线观看| √天堂8在线网| 久久综合社区| 一本一道久久a久久精品蜜桃| 中国女人久久久| 26uuu国产一区二区三区| 亚洲午夜精品网| 亚洲人亚洲人成电影网站色| 一区二区激情视频| 一本到不卡精品视频在线观看| 色国产精品一区在线观看| 日韩精品在线影院| 日韩一级精品| 国产乱码精品一品二品| 亚洲成人综合视频| 精品亚洲一区二区三区在线观看 | 国产精品久久波多野结衣| 黄页视频在线91| 国产尤物视频在线| 亚洲国产一二三精品无码| 日韩av片免费在线观看| 日韩午夜在线观看| 欧美va亚洲va香蕉在线| 欧美成人性色生活仑片| av一区二区三区免费| 亚洲一区 在线播放| 亚洲7777| 精品www久久久久奶水| 第九色区av在线| 高清av一区| 91精品国产高清久久久久久久久| 91av在线看| 无遮挡亚洲一区| 在线观看国产视频一二三| 国产传媒av在线| 欧美国产三级| 国产三级一区二区三区| 欧美精品一区二区不卡| 91av中文字幕| 国产精品-区区久久久狼 | 亚洲天堂精品在线观看| 欧美日本乱大交xxxxx| 久久久亚洲精品视频| 久久国产欧美精品| 一二三区在线视频| 日韩三级影视| 亚洲激情国产| 一区二区三区日韩欧美| 最近2019中文字幕mv免费看 | 黄色网在线看| 99久久夜色精品国产亚洲96| 久久这里只有精品6| 中文字幕亚洲综合久久筱田步美| 久久偷窥视频| 成年人羞羞的网站| 深夜激情久久| 91美女视频网站| 日韩在线视频免费观看高清中文| 热re91久久精品国99热蜜臀| 一级在线免费视频| 国产原创一区| 26uuu亚洲| 久久精品小视频| 成人中文字幕av| 97视频中文字幕| 五月天电影免费在线观看一区| 蜜桃成人精品| 麻豆成人久久精品二区三区红 | 国产一区亚洲二区三区| 亚洲七七久久综合桃花剧情介绍| 亚洲日本成人| 午夜精品久久久久久久99水蜜桃| 久久久久久高潮国产精品视| 黄色网址三级| 色777狠狠狠综合伊人| 午夜电影一区二区三区| 日本不卡在线观看| 久久69av| 欧美日韩国产丝袜另类|