古詩詞大全網 - 個性簽名 - 2.哈希加密&;Base64加密

2.哈希加密&;Base64加密

壹.哈希哈希

哈希(Hash)函數?MD5 sha 1/256/512 HMAC

哈希的特征:

?1.該算法是公開的

?2.對於同樣的數據,結果是壹樣的。

?3.對於不同的數據運算,比如MD5,結果是128位,用32個字符的十六進制表示,運算不能反過來。

1.MD5加密

MD5加密的特點:

不可逆操作

加密不同數據的結果是壹個固定長度的32位字符(無論文件有多大)

加密相同的數據,得到相同的結果(即復制)。

反修改:信息指紋,對原始數據的任何改動,哪怕只修改壹個字節,得到的MD5值都大相徑庭。

弱防碰撞:給定原始數據及其MD5值,很難找到壹個MD5值相同的數據(即偽造數據)。

抗沖突性強:很難找到兩個不同的數據,並使它們具有相同的MD5值。

MD5應用程序:

壹致性驗證:MD5將整個文件視為壹個大的文本消息,通過不可逆的字符串變換算法生成唯壹的MD5消息摘要,就像每個人都有自己唯壹的指紋壹樣,MD5為任何文件生成唯壹的數字指紋。

那麽問題來了。妳覺得這種MD5加密安全嗎?其實並不安全。不信妳可以試試這個網站:md5破解網站。可以說妳嗖的壹下就破解了妳的MD5加密!

2.SHA加密

安全哈希算法主要適用於數字簽名標準DSS中定義的數字簽名算法DSA。對於長度小於2 64位的消息,SHA1將生成160位的消息摘要。當收到消息時,該消息摘要可用於驗證數據的完整性。在傳輸的過程中,數據很可能會發生變化,所以此時會生成不同的消息摘要。除了SHA1,還有SHA256和SHA512。

第二,base64加密

1.Base64描述

說明:Base64可以成為密碼學的基石,非常重要。

特性:任何二進制數據都可以進行Base64編碼。

結果:所有數據都可以編碼到壹個文本文件中,該文件只能用65個字符表示。

65個字符:A~Z a~z 0~9+/=

base64編碼後文件數據的變化:編碼後的數據~ =編碼前數據的4/3,會大1/3左右。

2.命令行上的Base64編碼和解碼。

代碼:base 64123 . png-o 123 . txt。

解碼:base64 123 . txt-o test . png-d。

2.Base64編碼原則

1)將所有字符轉換成ASCII碼;

2)將ASCII碼轉換成8位二進制;

3)將3個二進制位分組為壹組(不足3位後為0)***24位,然後分成4組,每組6位;

4)6位二進制前加兩個零,組成8位;

5)將填零的二進制轉換成十進制;

6)從Base64碼表中獲取十進制對應的Base64碼;

處理過程描述:

A.轉換時,將三個字節的數據連續放入24位緩沖區,第壹個字節占據高位。

B.如果數據少於3個字節,緩沖區中的剩余位將被補0。然後,壹次取出6位,根據它們的值查表選擇對應的字符作為編碼輸出。

c .繼續進行,直到所有輸入數據轉換完畢。