導航:首頁 > 文檔加密 > md5加密變換高低位

md5加密變換高低位

發布時間:2023-03-08 06:03:06

❶ MD5的加密是什麼意思

MD5的全稱是Message-Digest Algorithm 5,在90年代初由MIT的計算機科學實驗室和RSA Data Security Inc發明,經MD2、MD3和MD4發展而來。

Message-Digest泛指位元組串(Message)的Hash變換,就是把一個任意長度的位元組串變換成一定長的大整數。請注意我使用了"位元組串"而不是"字元串"這個詞,是因為這種變換只與位元組的值有關,與字元集或編碼方式無關。

MD5將任意長度的"位元組串"變換成一個128bit的大整數,並且它是一個不可逆的字元串變換演算法,換句話說就是,即使你看到源程序和演算法描述,也無法將一個MD5的值變換回原始的字元串,從數學原理上說,是因為原始的字元串有無窮多個,這有點象不存在反函數的數學函數。

MD5的典型應用是對一段Message(位元組串)產生fingerprint(指紋),以防止被"篡改"。舉個例子,你將一段話寫在一個叫readme.txt文件中,並對這個readme.txt產生一個MD5的值並記錄在案,然後你可以傳播這個文件給別人,別人如果修改了文件中的任何內容,你對這個文件重新計算MD5時就會發現。如果再有一個第三方的認證機構,用MD5還可以防止文件作者的"抵賴",這就是所謂的數字簽名應用。

MD5還廣泛用於加密和解密技術上,在很多操作系統中,用戶的密碼是以MD5值(或類似的其它演算法)的方式保存的,用戶Login的時候,系統是把用戶輸入的密碼計算成MD5值,然後再去和系統中保存的MD5值進行比較,而系統並不"知道"用戶的密碼是什麼。

一些黑客破獲這種密碼的方法是一種被稱為"跑字典"的方法。有兩種方法得到字典,一種是日常搜集的用做密碼的字元串表,另一種是用排列組合方法生成的,先用MD5程序計算出這些字典項的MD5值,然後再用目標的MD5值在這個字典中檢索。

即使假設密碼的最大長度為8,同時密碼只能是字母和數字,共26+26+10=62個字元,排列組合出的字典的項數則是P(62,1)+P(62,2)....+P(62,8),那也已經是一個很天文的數字了,存儲這個字典就需要TB級的磁碟組,而且這種方法還有一個前提,就是能獲得目標賬戶的密碼MD5值的情況下才可以。

在很多電子商務和社區應用中,管理用戶的Account是一種最常用的基本功能,盡管很多Application Server提供了這些基本組件,但很多應用開發者為了管理的更大的靈活性還是喜歡採用關系資料庫來管理用戶,懶惰的做法是用戶的密碼往往使用明文或簡單的變換後直接保存在資料庫中,因此這些用戶的密碼對軟體開發者或系統管理員來說可以說毫無保密可言,本文的目的是介紹MD5的Java Bean的實現,同時給出用MD5來處理用戶的Account密碼的例子,這種方法使得管理員和程序設計者都無法看到用戶的密碼,盡管他們可以初始化它們。但重要的一點是對於用戶密碼設置習慣的保

❷ 16位的md5加密如何直接轉換為 32位md5加密

這里你混淆了「位」
md5的輸出只有128bit一種。
32個byte,或者32個ascii可顯示字元形式的是其hex碼的顯示形式
16個byte是其直接輸出形式。
16*8=128bit
這里只要把每4bit用一個char表示,就成了32個byte的可列印顯示形式。
4個bit表示從[0,1,2,3...14,15],其中[10,15]區間用[A,B,C,...F]表示即可

❸ MD5加密會產生16位跟32位的結果

兩個結果是一樣的,32位更加安全,hash碰撞幾率更低無論加密內容是什麼結果都是32位而16位不過是32位中間那部分仔細看呵呵

閱讀全文

與md5加密變換高低位相關的資料

熱點內容
在安卓怎麼玩國際服光遇 瀏覽:122
電腦緩存清理命令 瀏覽:241
匯編語言編寫單片機的程序 瀏覽:932
pdf經銷商 瀏覽:115
程序員跳槽工資漲薪被辭退 瀏覽:298
新u盤怎樣加文件夾 瀏覽:718
linux屏幕鎖定 瀏覽:502
rar高壓縮軟體 瀏覽:855
linuxshell編程的作用 瀏覽:568
傳奇世界單機gm命令 瀏覽:966
遺傳演算法tsppython 瀏覽:281
單片機數字溫度 瀏覽:138
工行發工資app是什麼 瀏覽:846
程序員技術牛 瀏覽:713
浪潮雲伺服器山東虛擬主機 瀏覽:17
使用孤行控制命令 瀏覽:256
javaawtimage 瀏覽:750
命令方塊物品 瀏覽:411
愛好者游戲解壓碼 瀏覽:595
伺服器網路的局限性有什麼 瀏覽:572