文章目錄
NISP-密碼學
1.密碼學發展歷程
19世紀末——古典密碼
20世紀初-1949——近代密碼
1949-1976-香農——現代密碼
1976-至今-W.Diffie和M.Hellman——公鑰密碼
2.古典密碼
概述:保持了算法本身的保密,受算法限制
缺點:
- 不適合大規模的生產
- 不適合較大或者人員變動較大的組織
- 用戶無法瞭解算法的安全性—(即用戶不知道該密碼是否已經泄露)
3.近代密碼學
概述:即在古典密碼學的基礎上採用機電代替手工
4.現代密碼學
概述:數據的安全基於密鑰而不是算法的保密
5.公鑰密碼
概述:使得發送端和接收端無密鑰的傳輸的保密通信
明文:未加密的消息
密文:加密後的消息
加密員:對明文進行加密操作的人員
截獲:非授權方(可以是人或者程序)介入系統,竊聽傳輸信息,導致信息泄露,破壞了信息的保密性。
手段:
加密:
解密:
密碼算法從密鑰的使用角度分爲:
- 對稱密碼算法
- 非對稱密碼算法
(1).對稱密碼算法
概述:
- 加密密鑰和解密密鑰相同或實質上相同,即從一個易於推出另一個
- 例如:DES,AES,3DES,IDEA
- 密鑰相對較短,一般採用128,192或者256比特
對稱加密過程:
K=K1
對稱加密優點:
- 效率高,算法簡單,開銷小
- 適合加密大量數據
- 明文長度與密文長度相等
對稱加密缺點:
- 需以安全方式交換
- 密鑰管理複雜
- 無法解決消息篡改和否認
(2).非對稱算法
概述:
- 和對稱算法相反(又叫“公鑰密碼算法”)
- 公鑰:對方公開的密鑰
- 私鑰:必須保密的密鑰
- 例如:RSA,ECC(橢圓曲線公鑰密碼算法),ELGamal
- 公鑰加密,私鑰解密;私鑰加密,公鑰解密。
- 密鑰長度:512-2048位
非對稱加密過程:
非對稱加密優點:
- 密鑰分發數目與參與者數目相同
- 安全
- 在有大量參與者的情況下,易於密鑰的管理
- 支持數字簽名和不可否認性
- 無需事先與對方建立聯繫,交換密鑰
非對稱加密的缺點:
- 速度慢,比同等強度的對稱密碼慢10倍甚至100倍
- 加密後,密文邊長
(3).混合加密過程
6.哈希函數
概述:
- 接受一個消息輸入,經過處理輸出一個固定長度的哈希值
- 又叫(雜湊函數或者單向散列函數)
- 哈希值(散列值或者消息摘要)
- 防篡改
- 例子:MD5加密
- 哈希函數是將任意有限長度的比特串映射爲固定長度的比特串
哈希函數應用過程:
- 如果哈希值Y和Y1匹配,則說明數據有效
- 如果哈希值Y和Y1不匹配,則說明數據無效,被篡改
(1).MD5算法
- 輸入:任意長度消息
- 處理:以512位數據塊爲單位處理
- 輸出:128位消息摘要
(2).SHA-1算法(安全哈希算法)
- 輸入:最大長度爲264位消息
- 處理:以512位數據塊爲單位處理
- 輸出:160位消息摘要
(3).MD5算法和SHA-1算法比較
name | MD5 | SHA-1 |
---|---|---|
散列值長度 | 128bits | 160bits |
安全性 | 較低 | 高 |
速度 | 快 | 慢 |
7.數字簽名
數字簽名的過程:
- 如果哈希值匹配,說明該數據由私鑰簽名
- 否則,則說明數據被篡改或者僞造
概述:
- 數字簽名指的是:附加在數據源上的數據,或者是對數據單元所做的密碼變換,這種數據變換能使數據單元的接收者確認數據單元來源和完整性,從而防止抵賴
- 數字簽名的應用可以保證可信性,不可重用性,數據完整性,不可僞造性,不可否認性
傳統簽名:
- 能與被籤文件在物理上不可分割
- 簽名者不能否認自己的簽名
- 簽名不能被僞造
- 容易被驗證
數字簽名:
- 能與所籤文件綁定
- 簽名者不能否認自己的簽名
- 簽名不能被僞造
- 容易被驗證