哈希函數(shù)之MD5

算法分析

  1. MD5算法是輸入長度小于2^64比特的消息,輸出為128比特的消息摘要。
  2. 輸入消息以512比特的分組為單位處理溃卡。
  3. 具體過程如下:


  • 附加填充位:保證消息長度L=448(mod512)然后將原始消息長度以64比特附在填充結(jié)果后面。從而使消息長度恰好為512比特的整數(shù)倍。
  • 初始化鏈接變量:使用4個32位的寄存器A参滴,B,C锻弓,D砾赔,最開始存放4個固定的32位的整數(shù)參數(shù),即初始鏈接變量青灼,這些參數(shù)用于第一輪的迭代暴心。
  • 分組處理(迭代壓縮): 由4輪組成,512比特按32比特分為16組杂拨,參與每輪16步函數(shù)運算专普。每步的輸入是4個32比特的鏈接變量和一個32比特的消息子分組。凈果輪共64步后弹沽,得到4個寄存器的值分別與輸入鏈接變量進(jìn)行模加檀夹,即的此次分組處理的輸出鏈接變量筋粗。
  • 步函數(shù)的具體過程為:



算法實現(xiàn)

# 直接使用Python中的hashlib模塊,并將加密結(jié)果以16進(jìn)制形式顯示
import hashlib
# 生成md5數(shù)字指紋击胜。
s = b'abc'  # 定義字節(jié)型字符串
md = hashlib.md5()  # 導(dǎo)入md5算法
md.update(s)  # 把值傳給md5算法
print('消息摘要:',  md.hexdigest())
print('長度: ', len(md.hexdigest())*4)


生成消息摘要

當(dāng)消息s = “abc”時亏狰,生成的消息摘要為:


安全性分析

  1. MD5算法中,輸出的每一位都是輸入的每一位的函數(shù)偶摔,邏輯函數(shù)F暇唾、G、H辰斋、I的復(fù)雜迭代使得輸出對輸入的依賴非常小策州。
  2. 對單輪的MD5算法,利用差分分析宫仗,可以在合理時間內(nèi)找出碰撞的兩條消息够挂。到2004年,便只需1小時就可找出MD5的碰撞藕夫。
  3. MD5算法抗密碼分析的能力較弱孽糖,生日攻擊所需代價是試驗2^64個消息。
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末毅贮,一起剝皮案震驚了整個濱河市办悟,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌滩褥,老刑警劉巖病蛉,帶你破解...
    沈念sama閱讀 206,482評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異瑰煎,居然都是意外死亡铺然,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,377評論 2 382
  • 文/潘曉璐 我一進(jìn)店門酒甸,熙熙樓的掌柜王于貴愁眉苦臉地迎上來魄健,“玉大人,你說我怎么就攤上這事插勤【骷瑁” “怎么了?”我有些...
    開封第一講書人閱讀 152,762評論 0 342
  • 文/不壞的土叔 我叫張陵饮六,是天一觀的道長其垄。 經(jīng)常有香客問我,道長卤橄,這世上最難降的妖魔是什么绿满? 我笑而不...
    開封第一講書人閱讀 55,273評論 1 279
  • 正文 為了忘掉前任,我火速辦了婚禮窟扑,結(jié)果婚禮上喇颁,老公的妹妹穿的比我還像新娘漏健。我一直安慰自己,他們只是感情好橘霎,可當(dāng)我...
    茶點故事閱讀 64,289評論 5 373
  • 文/花漫 我一把揭開白布蔫浆。 她就那樣靜靜地躺著,像睡著了一般姐叁。 火紅的嫁衣襯著肌膚如雪瓦盛。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,046評論 1 285
  • 那天外潜,我揣著相機與錄音原环,去河邊找鬼。 笑死处窥,一個胖子當(dāng)著我的面吹牛嘱吗,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播滔驾,決...
    沈念sama閱讀 38,351評論 3 400
  • 文/蒼蘭香墨 我猛地睜開眼谒麦,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了哆致?” 一聲冷哼從身側(cè)響起绕德,我...
    開封第一講書人閱讀 36,988評論 0 259
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎沽瞭,沒想到半個月后迁匠,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體剩瓶,經(jīng)...
    沈念sama閱讀 43,476評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡驹溃,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 35,948評論 2 324
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了延曙。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片豌鹤。...
    茶點故事閱讀 38,064評論 1 333
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖枝缔,靈堂內(nèi)的尸體忽然破棺而出布疙,到底是詐尸還是另有隱情,我是刑警寧澤愿卸,帶...
    沈念sama閱讀 33,712評論 4 323
  • 正文 年R本政府宣布灵临,位于F島的核電站,受9級特大地震影響趴荸,放射性物質(zhì)發(fā)生泄漏儒溉。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 39,261評論 3 307
  • 文/蒙蒙 一发钝、第九天 我趴在偏房一處隱蔽的房頂上張望顿涣。 院中可真熱鬧波闹,春花似錦、人聲如沸涛碑。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,264評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽蒲障。三九已至歹篓,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間晌涕,已是汗流浹背滋捶。 一陣腳步聲響...
    開封第一講書人閱讀 31,486評論 1 262
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留余黎,地道東北人重窟。 一個月前我還...
    沈念sama閱讀 45,511評論 2 354
  • 正文 我出身青樓,卻偏偏與公主長得像惧财,于是被迫代替她去往敵國和親巡扇。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 42,802評論 2 345

推薦閱讀更多精彩內(nèi)容

  • 這篇文章主要講述在Mobile BI(移動商務(wù)智能)開發(fā)過程中垮衷,在網(wǎng)絡(luò)通信厅翔、數(shù)據(jù)存儲、登錄驗證這幾個方面涉及的加密...
    雨_樹閱讀 2,335評論 0 6
  • 加密算法的分類 對稱加密采用對稱秘鑰的加密系統(tǒng)搀突,加密刀闷、解密過程均采用同一把秘鑰,通信雙方必須同時獲得這把鑰匙進(jìn)行加...
    靜香頭很痛閱讀 3,860評論 0 6
  • 版本記錄 前言 在這個信息爆炸的年代仰迁,特別是一些敏感的行業(yè)甸昏,比如金融業(yè)和銀行卡相關(guān)等等,這都對app的安全機制有更...
    刀客傳奇閱讀 3,115評論 0 11
  • 加密 RSA MD5 SHA-1 DES 3DES RSA RSA是一種非對稱加密算法(公鑰加密徐许,私鑰解密)施蜜。對極...
    lazy_boy_coder閱讀 608評論 0 0
  • 今天泊雯放學(xué)剛出大門口,又和同學(xué)手腕住手雌隅,好像和我說翻默,看你怎么分開!這幾天一直睡覺很晚恰起,同學(xué)來了修械,就不好好學(xué)習(xí),...
    悅辰4134閱讀 182評論 0 0