對稱加密,非對稱加密和簽名

1.對稱加密:加密和解密共用一套密鑰。密鑰是控制加密和解密過程的指令。速度快,但沒有非對稱加密安全性高。因爲需要對密鑰進行傳遞。

2.非對稱加密:加密和解密使用不同的密鑰。一般分爲公鑰和私鑰,如果用公鑰加密,則用私鑰解密;私鑰加密則公鑰解密。速度很慢,但安全性高。考慮到效率問題,一般使用對稱加密,可以通過非對稱加密把對稱加密密鑰傳遞出去。

3.數字簽名:在信息後面加上一個簽名,保證信息沒有被修改過。對信息做一個 hash 值計算,然後通過加密算法對這個 hash 值加密生成簽名,加入到信息中,隨信息一起發送,另一端得到信息和簽名後同樣對信息進行一個 hash 值計算,然後看是跟得到的簽名是否一樣,由此判斷信息是否被修改過。

4.數字證書:由信息加密者向 CA 機構(統一的證書管理機構)對他的公鑰進行證書認證和用CA 機構自己統一的私鑰進行加密,形成證書其裏面包含了很多信息,包括認證者的公鑰。解密者需要獲取 CA 機構的公鑰來對證書解密從而獲取加密者的公鑰,然後解密簽名,獲得發送來的信息和 hash 值,最後再對信息進行 hash 值計算,做對比,看內容有沒被修改。

(1)信息 + HASH = 摘要 摘要 + 私鑰 = 數字簽名(給收方做對比用的,驗證收發內容是否一致)

(2)公鑰 + 相關信息 + CA私鑰 = 數字證書(驗證發送者是否正確,是可信任的公鑰)

①對稱加密算法
常用的算法包括:
DES(Data Encryption Standard):數據加密標準,速度較快,適用於加密大量數據的場合。
3DES(Triple DES):是基於DES,對一塊數據用三個不同的密鑰進行三次加密,強度更高。
AES(Advanced Encryption Standard):高級加密標準,是下一代的加密算法標準,速度快,安全級別高;

②非對稱加密算法
RSA:由 RSA 公司發明,是一個支持變長密鑰的公共密鑰算法,需要加密的文件塊的長度也是可變的;
DSA(Digital Signature Algorithm):數字簽名算法,是一種標準的 DSS(數字簽名標準);
ECC(Elliptic Curves Cryptography):橢圓曲線密碼編碼學。
ECC和RSA相比,在許多方面都有對絕對的優勢,主要體現在以下方面:
抗攻擊性強。相同的密鑰長度,其抗攻擊性要強很多倍。
計算量小,處理速度快。ECC總的速度比RSA、DSA要快得多。
存儲空間佔用小。ECC的密鑰尺寸和系統參數與RSA、DSA相比要小得多,意味着它所佔的存貯空間要小得多。這對於加密算法在IC卡上的應用具有特別重要的意義。
帶寬要求低。當對長消息進行加解密時,三類密碼系統有相同的帶寬要求,但應用於短消息時ECC帶寬要求卻低得多。帶寬要求低使ECC在無線網絡領域具有廣泛的應用前景。

③單向加密(散列算法)
散列是信息的提煉,通常其長度要比信息小得多,且爲一個固定長度。加密性強的散列一定是不可逆的,這就意味着通過散列結果,無法推出任何部分的原始信息。任何輸入信息的變化,哪怕僅一位,都將導致散列結果的明顯變化,這稱之爲雪崩效應。散列還應該是防衝突的,即找不出具有相同散列結果的兩條信息。具有這些特性的散列結果就可以用於驗證信息是否被修改。
單向散列函數一般用於產生消息摘要,密鑰加密等,常見的有:
1、MD5(Message Digest Algorithm 5):是RSA數據安全公司開發的一種單向散列算法,非可逆,相同的明文產生相同的密文。
2、SHA(Secure Hash Algorithm):可以對任意長度的數據運算生成一個160位的數值;
SHA-1與MD5的比較
因爲二者均由MD4導出,SHA-1和MD5彼此很相似。相應的,他們的強度和其他特性也是相似,但還有以下幾點不同:
1、對強行供給的安全性:最顯著和最重要的區別是SHA-1摘要比MD5摘要長32 位。使用強行技術,產生任何一個報文使其摘要等於給定報摘要的難度對MD5是2128數量級的操作,而對SHA-1則是2160數量級的操作。這樣,SHA-1對強行攻擊有更大的強度。
2、對密碼分析的安全性:由於MD5的設計,易受密碼分析的攻擊,SHA-1顯得不易受這樣的攻擊。
3、速度:在相同的硬件上,SHA-1的運行速度比MD5慢。
參考鏈接
圖片詳解

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章