Openssl加密解密及PKI,創建私有CA
一、什么是SSL?
SSL:Secure Socket Layer(安全套接字層)
TLS:Transport Layer Security(安全傳輸層)
1995:SSL 2.0, Netscape
1996: SSL 3.0
1999: TLS 1.0
2006: TLS 1.1
2008: TLS 1.2
2015: TLS 1.3
二、SSL協議出現的目的?
為http安全傳輸的的保密性,完整性,可用性而存在。
三、密碼算法
1、對稱加密:加密解密使用同一個密鑰
作用:數據加密
缺陷:密鑰分發,密鑰過多
算法:EDS 3DES AES (常用)
2、非對稱加密(公鑰加密):密鑰成對出現
公鑰(pubkey)公開所有人
私鑰(secret key)自己保存
作用:身份驗證,密鑰交換
特點:使用公鑰加密只能與之配對的私鑰解密,反之亦然。
算法:RSA(常用) DSA
3、單向加密:只能加密不能解密
作用:驗證數據的完整性
特點:定長輸出,雪崩效應
算法:md5 sha1 sha224 sha256 ……..
四、SSL握手通信
TCP/IP建立三次握手連接后,申請網站CA證書,網站把證書發給客戶,客戶校驗網站名稱與CA名稱是否一致。
客戶端自己內置的受信任的CA機構公鑰對其網站證書進行公鑰解密,確認身份。
然后通過解密的特征碼通過md5或sha1算法進行對比,完成數據的認證。
繼續驗證證書是否被吊銷
之后用IKE密鑰交換(HD算法或公鑰算法)發自己的對稱密鑰發過去,以后的傳輸就通過密鑰進行發送數據。通過
五、IKE是啥?
密鑰交換,可以根據DH或者非對稱密鑰來實現。
六、PKI是啥?
七、Openssl開源項目
openssl
多用途命令行工具libcrypto
公共加密庫,調用加密庫功能libssl
庫,實現ssl和tls依賴庫功能
八、創建私有CA
創建CA服務器,創建私有CA
httpd端
九、吊銷證書
附:Openssh基于密鑰認證
#ssh -keygen -t rsa #會在家目錄下.ssh/生成一個公鑰和私鑰。
#ssh-copy-id -i id_key.pub 192.168.31.254 #把公鑰傳到~/.ssh/authorized_keys注意必須是600權限。
這樣就可以實現基于密鑰認證。
原創文章,作者:Net18-糖糖,如若轉載,請注明出處:http://www.www58058.com/13707
18期小伙伴的文章簡直要逆天呀,贊 !已置頂