Java 加密框架 00 密碼學基礎

密碼學的分類
按時間劃分:古典密碼,以字符爲基本加密單元;現代密碼以信息塊爲基本加密單元。

按保密內容的算法劃分:
受限制算法:算法的保密性基於保持密碼的祕密。這是古典密碼學的主要特徵。
基於密鑰算法:算法的保密性基於對密鑰的保密。這是基於柯克霍夫原則設計的算法,這樣的好處是:算法的公開有助於算法安全性的驗證。這正是現代密碼學的主要特徵。

按密碼體制劃分
對稱密碼體制:也稱單鑰密碼體制。指加密密鑰與解密密鑰相同。
非對稱密碼體制:也稱雙鑰密碼體制。指加密密鑰與解密密鑰不同,密鑰分爲公鑰與私鑰。公鑰對外公開,私鑰對外保密。

古典密碼
古典加密算法最常用,最核心的兩種加密技巧是移位替換

對稱密碼體制
對稱密碼體制要求加密與解密使用同一個共享密鑰,解密是加密的逆運算。
流密碼:對明文的單個位(字節)進行運算。
分組密碼:把明文劃分爲不同的組,對每個組進行加密和解密。具有代表的分組加密算法是DESAES.

非對稱密碼體制
RSA 是著名的非對稱密碼

散列函數
散列函數提供信息的認證技術。用來驗證數據的完整性。可以爲數據創建信息指紋(散列值)。散列值通常是一個短的隨機字母和數字的字符串。常用算法有 MD--消息摘要算法 SHA--安全散列算法及 MAC 消息認證碼算法。



發佈了72 篇原創文章 · 獲贊 24 · 訪問量 10萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章