TCP/IP:安全
明文傳輸
機密性:明文傳輸(ftp,http,smtp,telnet)
完整性:10(100)
身份驗證
機密性:plaintext—>轉換規則—>ciphertext
ciphertext—>轉換規則—>plaintext
轉換算法:祕鑰
對稱加密:祕鑰相同,無法解決祕鑰管理問題
數據完整性
單向加密算法,提取數據特徵碼
輸入一樣:輸出必然相同
雪崩效應:輸入的微小改變,將會引起結果的巨大改變
定長輸出:無論原始數據是多少,結果大小都是相同的
不可逆,無法根據特徵碼還原原來的數據
A:plaintext:footprint àB
E:plaintext2:footprint2—>B
A:plaintext :(footprint)—> B
協商生成密碼:祕鑰交換(Internet Key Exchange, IKE)
Diffie-Hellman協議:
A:
本地選擇三個數字
P大素數
g 生成數
A: x
B: y ,
B發送給A: g^y%p->A ,A收到以後 (g^y%p)^x=g^xy%p
A 發送給B: g^x%p->B ,B收到以後(g^x%p)^y=g^xy%p
密鑰交換算法
解決了密鑰交換問題,但是身份認證的問題還是存在
公鑰加密算法:非對稱加密算法
密鑰對:
公鑰:P
私鑰:s
使用對方的公鑰加密後傳輸給對方。對方收到以後用自己的私鑰解密
!!發送方用自己的私鑰加密可以實現身份認證
!!發送方以對方的公鑰加密,可以保證數據機密性
公鑰加密算法很少用於數據加密,速度太慢
PKI:public key infrastructure
x509, pkcs12
x509:
公鑰及其有效期限
證書的合法擁有者
證書該如何被使用
CA的信息
CA前面的校驗碼
PKI: TLS/SSL: x509
PKI: OpenGPG
對稱加密:
DES:數據加密標準 Data Encrption Standard, 56bit
3DES:
AES: Advanced 高級加密默認標準 128位密鑰
AES192, AES256, AES512
Blowfish常見的對稱加密算法