導航:首頁 > 電腦系統 > 電腦系統後面md5什麼意思

電腦系統後面md5什麼意思

發布時間:2022-02-21 21:25:44

1. 電腦代碼MD5是啥意思

自己網路了解更多

2. MD5什麼意思

md5的全稱是message-digest algorithm 5(信息-摘要演算法),在90年代初由mit laboratory for computer science和rsa data security inc的ronald l. rivest開發出來,經md2、md3和md4發展而來。它的作用是讓大容量信息在用數字簽名軟體簽署私人密匙前被"壓縮"成一種保密的格式(就是把一個任意長度的位元組串變換成一定長的大整數)。不管是md2、md4還是md5,它們都需要獲得一個隨機長度的信息並產生一個128位的信息摘要。雖然這些演算法的結構或多或少有些相似,但md2的設計與md4和md5完全不同,那是因為md2是為8位機器做過設計優化的,而md4和md5卻是面向32位的電腦。這三個演算法的描述和c語言源代碼在internet rfcs 1321中有詳細的描述(h++p://www.ietf.org/rfc/rfc1321.txt),這是一份最權威的文檔,由ronald l. rivest在1992年8月向ieft提交。

rivest在1989年開發出md2演算法。在這個演算法中,首先對信息進行數據補位,使信息的位元組長度是16的倍數。然後,以一個16位的檢驗和追加到信息末尾。並且根據這個新產生的信息計算出散列值。後來,rogier和chauvaud發現如果忽略了檢驗和將產生md2沖突。md2演算法的加密後結果是唯一的--既沒有重復。

為了加強演算法的安全性,rivest在1990年又開發出md4演算法。md4演算法同樣需要填補信息以確保信息的位元組長度加上448後能被512整除(信息位元組長度mod 512 = 448)。然後,一個以64位二進製表示的信息的最初長度被添加進來。信息被處理成512位damg?rd/merkle迭代結構的區塊,而且每個區塊要通過三個不同步驟的處理。den boer和bosselaers以及其他人很快的發現了攻擊md4版本中第一步和第三步的漏洞。dobbertin向大家演示了如何利用一部普通的個人電腦在幾分鍾內找到md4完整版本中的沖突(這個沖突實際上是一種漏洞,它將導致對不同的內容進行加密卻可能得到相同的加密後結果)。毫無疑問,md4就此被淘汰掉了。

盡管md4演算法在安全上有個這么大的漏洞,但它對在其後才被開發出來的好幾種信息安全加密演算法的出現卻有著不可忽視的引導作用。除了md5以外,其中比較有名的還有sha-1、ripe-md以及haval等。

一年以後,即1991年,rivest開發出技術上更為趨近成熟的md5演算法。它在md4的基礎上增加了"安全-帶子"(safety-belts)的概念。雖然md5比md4稍微慢一些,但卻更為安全。這個演算法很明顯的由四個和md4設計有少許不同的步驟組成。在md5演算法中,信息-摘要的大小和填充的必要條件與md4完全相同。den boer和bosselaers曾發現md5演算法中的假沖突(pseudo-collisions),但除此之外就沒有其他被發現的加密後結果了。

van oorschot和wiener曾經考慮過一個在散列中暴力搜尋沖突的函數(brute-force hash function),而且他們猜測一個被設計專門用來搜索md5沖突的機器(這台機器在1994年的製造成本大約是一百萬美元)可以平均每24天就找到一個沖突。但單從1991年到2001年這10年間,竟沒有出現替代md5演算法的md6或被叫做其他什麼名字的新演算法這一點,我們就可以看出這個瑕疵並沒有太多的影響md5的安全性。上面所有這些都不足以成為md5的在實際應用中的問題。並且,由於md5演算法的使用不需要支付任何版權費用的,所以在一般的情況下(非絕密應用領域。但即便是應用在絕密領域內,md5也不失為一種非常優秀的中間技術),md5怎麼都應該算得上是非常安全的了。

演算法的應用

md5的典型應用是對一段信息(message)產生信息摘要(message-digest),以防止被篡改。比如,在unix下有很多軟體在下載的時候都有一個文件名相同,文件擴展名為.md5的文件,在這個文件中通常只有一行文本,大致結構如:

md5 (tanajiya.tar.gz) =

這就是tanajiya.tar.gz文件的數字簽名。md5將整個文件當作一個大文本信息,通過其不可逆的字元串變換演算法,產生了這個唯一的md5信息摘要。如果在以後傳播這個文件的過程中,無論文件的內容發生了任何形式的改變(包括人為修改或者下載過程中線路不穩定引起的傳輸錯誤等),只要你對這個文件重新計算md5時就會發現信息摘要不相同,由此可以確定你得到的只是一個不正確的文件。如果再有一個第三方的認證機構,用md5還可以防止文件作者的"抵賴",這就是所謂的數字簽名應用。

md5還廣泛用於加密和解密技術上。比如在unix系統中用戶的密碼就是以md5(或其它類似的演算法)經加密後存儲在文件系統中。當用戶登錄的時候,系統把用戶輸入的密碼計算成md5值,然後再去和保存在文件系統中的md5值進行比較,進而確定輸入的密碼是否正確。通過這樣的步驟,系統在並不知道用戶密碼的明碼的情況下就可以確定用戶登錄系統的合法性。這不但可以避免用戶的密碼被具有系統管理員許可權的用戶知道,而且還在一定程度上增加了密碼被破解的難度。

正是因為這個原因,現在被黑客使用最多的一種破譯密碼的方法就是一種被稱為"跑字典"的方法。有兩種方法得到字典,一種是日常搜集的用做密碼的字元串表,另一種是用排列組合方法生成的,先用md5程序計算出這些字典項的md5值,然後再用目標的md5值在這個字典中檢索。我們假設密碼的最大長度為8位位元組(8 bytes),同時密碼只能是字母和數字,共26+26+10=62個字元,排列組合出的字典的項數則是p(62,1)+p(62,2)….+p(62,8),那也已經是一個很天文的數字了,存儲這個字典就需要tb級的磁碟陣列,而且這種方法還有一個前提,就是能獲得目標賬戶的密碼md5值的情況下才可以。這種加密技術被廣泛的應用於unix系統中,這也是為什麼unix系統比一般操作系統更為堅固一個重要原因。

演算法描述

對md5演算法簡要的敘述可以為:md5以512位分組來處理輸入的信息,且每一分組又被劃分為16個32位子分組,經過了一系列的處理後,演算法的輸出由四個32位分組組成,將這四個32位分組級聯後將生成一個128位散列值。

在md5演算法中,首先需要對信息進行填充,使其位元組長度對512求余的結果等於448。因此,信息的位元組長度(bits length)將被擴展至n*512+448,即n*64+56個位元組(bytes),n為一個正整數。填充的方法如下,在信息的後面填充一個1和無數個0,直到滿足上面的條件時才停止用0對信息的填充。然後,在在這個結果後面附加一個以64位二進製表示的填充前信息長度。經過這兩步的處理,現在的信息位元組長度=n*512+448+64=(n+1)*512,即長度恰好是512的整數倍。這樣做的原因是為滿足後面處理中對信息長度的要求。

md5中有四個32位被稱作鏈接變數(chaining variable)的整數參數,他們分別為:a=0x01234567,b=0x89abcdef,c=0xfedcba98,d=0x76543210。

當設置好這四個鏈接變數後,就開始進入演算法的四輪循環運算。循環的次數是信息中512位信息分組的數目。

將上面四個鏈接變數復制到另外四個變數中:a到a,b到b,c到c,d到d。

主循環有四輪(md4隻有三輪),每輪循環都很相似。第一輪進行16次操作。每次操作對a、b、c和d中的其中三個作一次非線性函數運算,然後將所得結果加上第四個變數,文本的一個子分組和一個常數。再將所得結果向右環移一個不定的數,並加上a、b、c或d中之一。最後用該結果取代a、b、c或d中之一。
以一下是每次操作中用到的四個非線性函數(每輪一個)。

f(x,y,z) =(x&y)|((~x)&z)
g(x,y,z) =(x&z)|(y&(~z))
h(x,y,z) =x^y^z
i(x,y,z)=y^(x|(~z))
(&是與,|是或,~是非,^是異或)

這四個函數的說明:如果x、y和z的對應位是獨立和均勻的,那麼結果的每一位也應是獨立和均勻的。
f是一個逐位運算的函數。即,如果x,那麼y,否則z。函數h是逐位奇偶操作符。

假設mj表示消息的第j個子分組(從0到15),<<
ff(a,b,c,d,mj,s,ti)表示a=b+((a+(f(b,c,d)+mj+ti)<< gg(a,b,c,d,mj,s,ti)表示a=b+((a+(g(b,c,d)+mj+ti)<< hh(a,b,c,d,mj,s,ti)表示a=b+((a+(h(b,c,d)+mj+ti)<< ii(a,b,c,d,mj,s,ti)表示a=b+((a+(i(b,c,d)+mj+ti)<<
這四輪(64步)是:

第一輪

ff(a,b,c,d,m0,7,0xd76aa478)
ff(d,a,b,c,m1,12,0xe8c7b756)
ff(c,d,a,b,m2,17,0x242070db)
ff(b,c,d,a,m3,22,0xc1bdceee)
ff(a,b,c,d,m4,7,0xf57c0faf)
ff(d,a,b,c,m5,12,0x4787c62a)
ff(c,d,a,b,m6,17,0xa8304613)
ff(b,c,d,a,m7,22,0xfd469501)
ff(a,b,c,d,m8,7,0x698098d8)
ff(d,a,b,c,m9,12,0x8b44f7af)
ff(c,d,a,b,m10,17,0xffff5bb1)
ff(b,c,d,a,m11,22,0x895cd7be)
ff(a,b,c,d,m12,7,0x6b901122)
ff(d,a,b,c,m13,12,0xfd987193)
ff(c,d,a,b,m14,17,0xa679438e)
ff(b,c,d,a,m15,22,0x49b40821)

第二輪

gg(a,b,c,d,m1,5,0xf61e2562)
gg(d,a,b,c,m6,9,0xc040b340)
gg(c,d,a,b,m11,14,0x265e5a51)
gg(b,c,d,a,m0,20,0xe9b6c7aa)
gg(a,b,c,d,m5,5,0xd62f105d)
gg(d,a,b,c,m10,9,0x02441453)
gg(c,d,a,b,m15,14,0xd8a1e681)
gg(b,c,d,a,m4,20,0xe7d3fbc8)
gg(a,b,c,d,m9,5,0x21e1cde6)
gg(d,a,b,c,m14,9,0xc33707d6)
gg(c,d,a,b,m3,14,0xf4d50d87)
gg(b,c,d,a,m8,20,0x455a14ed)
gg(a,b,c,d,m13,5,0xa9e3e905)
gg(d,a,b,c,m2,9,0xfcefa3f8)
gg(c,d,a,b,m7,14,0x676f02d9)
gg(b,c,d,a,m12,20,0x8d2a4c8a)

第三輪

hh(a,b,c,d,m5,4,0xfffa3942)
hh(d,a,b,c,m8,11,0x8771f681)
hh(c,d,a,b,m11,16,0x6d9d6122)
hh(b,c,d,a,m14,23,0xfde5380c)
hh(a,b,c,d,m1,4,0xa4beea44)
hh(d,a,b,c,m4,11,0x4bdecfa9)
hh(c,d,a,b,m7,16,0xf6bb4b60)
hh(b,c,d,a,m10,23,0xbebfbc70)
hh(a,b,c,d,m13,4,0x289b7ec6)
hh(d,a,b,c,m0,11,0xeaa127fa)
hh(c,d,a,b,m3,16,0xd4ef3085)
hh(b,c,d,a,m6,23,0x04881d05)
hh(a,b,c,d,m9,4,0xd9d4d039)
hh(d,a,b,c,m12,11,0xe6db99e5)
hh(c,d,a,b,m15,16,0x1fa27cf8)
hh(b,c,d,a,m2,23,0xc4ac5665)

第四輪

ii(a,b,c,d,m0,6,0xf4292244)
ii(d,a,b,c,m7,10,0x432aff97)
ii(c,d,a,b,m14,15,0xab9423a7)
ii(b,c,d,a,m5,21,0xfc93a039)
ii(a,b,c,d,m12,6,0x655b59c3)
ii(d,a,b,c,m3,10,0x8f0ccc92)
ii(c,d,a,b,m10,15,0xffeff47d)
ii(b,c,d,a,m1,21,0x85845dd1)
ii(a,b,c,d,m8,6,0x6fa87e4f)
ii(d,a,b,c,m15,10,0xfe2ce6e0)
ii(c,d,a,b,m6,15,0xa3014314)
ii(b,c,d,a,m13,21,0x4e0811a1)
ii(a,b,c,d,m4,6,0xf7537e82)
ii(d,a,b,c,m11,10,0xbd3af235)
ii(c,d,a,b,m2,15,0x2ad7d2bb)
ii(b,c,d,a,m9,21,0xeb86d391)

常數ti可以如下選擇:

在第i步中,ti是4294967296*abs(sin(i))的整數部分,i的單位是弧度。(4294967296等於2的32次方)
所有這些完成之後,將a、b、c、d分別加上a、b、c、d。然後用下一分組數據繼續運行演算法,最後的輸出是a、b、c和d的級聯。

當你按照我上面所說的方法實現md5演算法以後,你可以用以下幾個信息對你做出來的程序作一個簡單的測試,看看程序有沒有錯誤。

md5 ("") =
md5 ("a") =
md5 ("abc") =
md5 ("message digest") =
md5 ("abcdefghijklmnopqrstuvwxyz") =
md5 ("") =

md5 ("
01234567890") =

如果你用上面的信息分別對你做的md5演算法實例做測試,最後得出的結論和標准答案完全一樣,那我就要在這里象你道一聲祝賀了。要知道,我的程序在第一次編譯成功的時候是沒有得出和上面相同的結果的。

md5的安全性

md5相對md4所作的改進:

1. 增加了第四輪;

2. 每一步均有唯一的加法常數;

3. 為減弱第二輪中函數g的對稱性從(x&y)|(x&z)|(y&z)變為(x&z)|(y&(~z));

4. 第一步加上了上一步的結果,這將引起更快的雪崩效應;

5. 改變了第二輪和第三輪中訪問消息子分組的次序,使其更不相似;

6. 近似優化了每一輪中的循環左移位移量以實現更快的雪崩效應。各輪的位移量互不相同。

[color=red]簡單的說:

MD5叫信息-摘要演算法,是一種密碼的演算法,它可以對任何文件產生一個唯一的MD5驗證碼,每個文件的MD5碼就如同每個人的指紋一樣,都是不同的,這樣,一旦這個文件在傳輸過程中,其內容被損壞或者被修改的話,那麼這個文件的MD5碼就會發生變化,通過對文件MD5的驗證,可以得知獲得的文件是否完整。

3. 安裝系統後對md5是啥意思我怎麼安裝不了任何軟體,跟md5嘛關系

你可以先試試:控制面板-選擇經典視圖-下面有個用戶賬戶-選擇打開或關閉用戶賬戶,把這個勾去了,確定,重啟。(記得安裝完了還打上勾,再重啟)
如果不行再追問我,我告訴你

4. 電腦安裝文件md5是什麼意思

MD5是一個驗證代碼,主要驗證安裝包的完整性和安全性,還有是否跟官方網站匹配的,這樣就會沒有攜帶任何垃圾插件和軟體

5. MD5是什麼意思

MD5,即消息摘要演算法(英語:MD5 Message-Digest Algorithm)。是一種被廣泛使用的密碼散列函數,將數據(如一段文字)運算變為另一固定長度值,是散列演算法的基礎原理,可以產生出一個128位(16位元組)的散列值(hash value),用於確保信息傳輸完整一致。

MD5由美國密碼學家羅納德·李維斯特(Ronald Linn Rivest)設計,於1992年公開,用以取代MD4演算法。這套演算法的程序在RFC 1321中被加以規范。

1996年後被證實存在弱點,可以被加以破解,對於需要高度安全性的數據,專家一般建議改用其他演算法,如SHA-2。2004年,證實MD5演算法無法防止碰撞(collision),因此不適用於安全性認證,如SSL公開密鑰認證或是數字簽名等用途。

(5)電腦系統後面md5什麼意思擴展閱讀

MD5在現實中的應用

MD5已經廣泛使用在為文件傳輸提供一定的可靠性方面。例如,伺服器預先提供一個MD5校驗和,用戶下載完文件以後,用MD5演算法計算下載文件的MD5校驗和,然後通過檢查這兩個校驗和是否一致,就能判斷下載的文件是否出錯。

MD5亦有應用於部分網上賭場以保證賭博的公平性,原理是系統先在玩家下注前已生成該局的結果,將該結果的字元串配合一組隨機字元串利用MD5 加密,將該加密字元串於玩家下注前便顯示給玩家,再在結果開出後將未加密的字元串顯示給玩家,玩家便可利用MD5工具加密驗證該字元串是否吻合。

6. windowsXP系統的MD5是什麼意思

MD5究竟是什麼

MD5是message-digest algorithm 5(信息-摘要演算法)的縮寫,被廣泛用於加密和解密技術上,它可以說是文件的「數字指紋」。任何一個文件,無論是可執行程序、圖像文件、臨時文件或者其他任何類型的文件,也不管它體積多大,都有且只有一個獨一無二的MD5信息值,並且如果這個文件被修改過,它的MD5值也將隨之改變。因此,我們可以通過對比同一文件的MD5值,來校驗這個文件是否被「篡改」過。

MD5到底有什麼用

當我們下載了如圖1所示之類的文件後,如果想知道下載的這個文件和網站的原始文件是否一模一樣,就可以給自己下載的文件做個MD5校驗。如果得到的MD5值和網站公布的相同,可確認所下載的文件是完整的。如有不同,說明你下載的文件是不完整的:要麼就是在網路下載的過程中出現錯誤,要麼就是此文件已被別人修改。為防止他人更改該文件時放入病毒,最好不要使用。

當我們用E-mail給好友發送文件時,可以將要發送文件的MD5值告訴對方,這樣好友收到該文件以後即可對其進行校驗,來確定文件是否安全。

再比如:在剛安裝好系統後可以給系統文件做個MD5校驗,過了一段時間後如果你懷疑某些文件被人換掉,那麼就可以給那些被懷疑的文件做個MD5校驗,若和從前得到的MD5校驗碼不一樣,那麼就可以肯定是有問題的。

如何讀取和校驗MD5信息

了解了MD5信息以後,下面我們來看一看如何讀取並校驗文件的MD5信息。這需要一款檢測MD5值的專門小軟體——Windows MD5 Check(下載地址:http://down.wglm.net/Software/Catalog17/264.html,版本為2.0 Build 0123)。這是一款綠色軟體,解壓縮後運行其中的MD5.EXE文件即可。軟體的使用非常簡單,點擊「Open」按鈕,選擇並打開想要進行校驗的文件,稍等片刻後,在MD5一欄中便會顯示該文件的MD5值,將該數值同網站公布的數值進行比較即可確定文件是否完整了。點擊「Save」按鈕可以將讀取的MD5保存為一個.MD5文件,用記事本打開該文件,可以將MD5值復制出來。

為了驗證文件修改後的MD5值是否發生變化,筆者用一個文本文件進行了測試。如圖2所示,第一個文件為進行測試的原始文件,第二個文件為進行修改後的文件(不過只是在打開原始文件的基礎上加入了一個空格),第三個文件為原始文件的復制文件。從圖中可以看出,盡管改動不大,但是兩個文件的MD5值卻大相徑庭,而復製得到的文件則不會發生變化。

7. 電腦系統的MD5值和SHA1值是什麼意思

MD5和SHA1是2種加密演算法,用於計算出一段不可逆向計算的數值,以此來驗證該文件是否被修改的。
這個不是激活碼。
序列號:(不保證全部有效)
DY8QR-678FB-T4XXH-DP93B-6D7C7
88WRV-VDYHX-22KH2-P9CJM-GW8YY
PVYFQ-2JTBV-9KXQ2-FQHDY-MTBVH
WBVG8-4JPQB-6HJ6H-XH7YY-D2GQY
R4HB8-QGQK4-79X38-QH3HK-Q3PJ6
GKFV7-F2D9H-QKYXY-777P3-4M73W
TGX39-HB48W-R29DH-6BVKB-3XFDW
WBVG8-4JPQB-6HJ6H-XH7YY-D2GQY
WBVG8-4JPQB-6HJ6H-XH7YY-D2GQY
R4HB8-QGQK4-79X38-QH3HK-Q3PJ6
PVYFQ-2JTBV-9KXQ2-FQHDY-MTBVH
83339-738RD-PDJJD-P8W66-C9396
BF276-V2Q8T-3TP8K-CVRMT-KYTFX
482D2-C4R3F-3V8QV-RRVVX-V8DRX
C2X3D-VDTKD-9KJVP-6VHTW-PDJKY
WBVGB-4JPQB-6HJ6H-XH7YY-D2GQY
我用粉紅色一個激活的....
GHMGD-CDP96-Q39TT-467PY-R3PDM
2J4JT-P34KF-YMGH8-FKDRQ-JP8M9
GHMGD-CDP96-Q39TT-467PY-R3PDM
(可電話激活)
2J4JT-P34KF-YMGH8-FKDRQ-JP8M9
(可電話激活)

閱讀全文

與電腦系統後面md5什麼意思相關的資料

熱點內容
電腦怎樣還原系統恢復 瀏覽:561
鎮江學電腦有哪些地方 瀏覽:563
蘋果筆記本怎麼快速打開剛游覽過的軟體 瀏覽:654
電腦無線外接網口 瀏覽:781
電腦怎麼找不兼容軟體 瀏覽:171
聯想平板電腦電信版 瀏覽:183
視免費視頻網站 瀏覽:532
win10筆記本電腦沒有乙太網 瀏覽:592
如何把手機上的視頻轉到電腦u盤 瀏覽:333
聯想電腦如何連接愛普生列印機 瀏覽:211
電腦刷新背景怎麼設置 瀏覽:421
怎麼在電腦上設置u盤需要密碼 瀏覽:888
電腦上如何刪除小樹pdf軟體 瀏覽:55
小米電腦怎麼設置延時關機 瀏覽:835
蘋果軟體怎麼降低版本 瀏覽:33
電腦啟動無法進入系統 瀏覽:962
電腦開機自動修復進不了系統 瀏覽:311
C電腦怎麼 瀏覽:172
蘋果電腦是一鍵打火嗎 瀏覽:645
我的電腦中文件夾如何上鎖 瀏覽:316