1.a和b通過ssl傳輸資料大概過程
私鑰加密的資料只能自己對應的公鑰才能解密,
ca 簽證機關先給自己發乙個證書,公共認可的機構,
a b之間通訊 資料都是通過自己生成的私鑰加密的後生成的資料
首先 a 將自己的 姓名 位址 公鑰 發給ca ,傳送的資料稱為aa,
ca自己生成的有一對公鑰和私鑰。ca先提取aa資料的特徵碼, 然後用自己的私鑰加密,生成一段 資料,加密的結果附加到aa資料的後面也就是簽名,稱為aaa。
b 拿到發證機構的證書,裡面包含有發證機構的公鑰,能夠解密aaa中的資料證明證書是發證機構發的。得到aa,然後拿到a的公鑰,驗證資料的完整性。然後用a的公鑰解密a的 資料。
2.ssl大概內容
pki public key infrastructure 公鑰基礎設施結構
核心是ca certificate authority 證書權威機構
crl 證書吊銷列表 certificate revocation list,使用證書之前需要檢測證書有效性。
證書儲存格式常見的x509格式
包含內容
公鑰有效期限
證書的合法擁有人
證書該如何使用
ca的資訊
ca簽名的校驗碼(簽名)
pki:tls/ssl 使用的x509格式
pki:opengpg
五層協議 : 物理層 資料鏈路層 網路層 傳輸層 應用層
ssl secure socket layer netscape公司
是在傳輸層和應用層的乙個庫,通過呼叫ssl實現加密
v1 v2 v3 版本
tls transport layer security 國際化標準組織
v1相當於sslv3
https 443埠
客戶端和服務端通訊
客戶端請求服務端
客戶端和服務端協商使用加密協議,加密演算法 sslv1 sslv2 tlsv1
服務端傳送證書給客戶端
客戶端生成隨機數,通過服務端公鑰加密後,傳輸資料(對稱密碼)給服務端
服務端勇對稱密碼加密資料給客戶端
3.常見的加密演算法
對稱加密
des
3des
aesaes192 aes 256 aes512
單向加密
md4md5
sha1
sha192 sha256 sha384
crc-32
公鑰加密
身份認證
資料加密
金鑰交換
rsa演算法 可以用來加密也可用來簽名
dsa演算法 只可以用來簽名
openssl ssl的實現,一種加密工具
元件libcrypto 通用加密庫各種加密演算法
libssl tls/ssl的實現,實現了資料機密性,會話完整性的tsl/ssl庫
openssl 多用途命令列工具,可以實現私有證書頒發機構
4.openssl命令
speed 測試本機對各種加密演算法的速度
openssl speed rsa 可以接演算法表示測試單個演算法的速度
enc -des 指定加密演算法,對稱加密演算法
-a 對檔案內容進行base64處理
-e 加密 預設選項
-d 解密
-salt 加鹽加密
-in 指定要加密的檔案
-out 加密後輸出檔案
dgst -md5 計算檔案特徵碼
genrsa 生成rsa金鑰
gendsa 生成dsa金鑰
加密 openssl enc -des3 -salt -a -in /etc/fstab -out fstab.des3
解密 openssl enc -des3 -d -salt -a in fstab.des3 -out fstab
md5sum sha1sum 計算檔案的md5,sha1特徵碼
openssl passwd -1 -salt ffgs
-1指定md5加密
openssl rand -base64 100 生成100位base64加密的隨機數
whatis passwd 獲取幫助
5.openssl製作私有ca
生成一對金鑰
生成自簽證書
(umask 077; openssl genrsa -out test.key 1024 ) ()中的命令只在子shell中生效,生成
許可權為600,長度為1024位的私鑰
openssl rsa -in test.key -pubout 表示從私鑰中提取公鑰
openssl req -new -x509 -key test.key -out server.crt -days 365 //生成私有證書
req 生成證書,和申請證書的命令
-new 代表生成乙個新的申請
-x509 生成自簽證書
-key 指定金鑰檔案
-out 指定輸出證書檔案
-days 指定過期時間
opsenssl x509 -text -in server.crt //檢視私有證書內容文字格式
/etc/pki/tls/openssl.cnf openssl配置檔案
dir 表示ca工作目錄 /etc/pki/ca
certs 客戶端證書儲存目錄
crl 證書吊銷列表目錄
database 證書儲存資料庫
new_certs_dir 新生成的證書儲存路徑
certificate 自有的證書檔案
serial 證書序列號檔案
crlnumber 證書吊銷列表的號碼
crl 吊銷證書檔案
private_key ca的私鑰檔案
在/etc/pki/ca 目錄下建立certs , newcerts,crl目錄,和index,serial檔案,
/ect/pki/ca/private/cakey.pem 存放自簽私有證書,必須命名為cakey.pem
給serial檔案乙個初始值為01(自定義) ,自簽證書cacrt.pem
6.**請求ca簽署請求
openssl req -new -key request.key -out request.csr //請求ca簽署證書
將證書傳送給ca
opensssl ca -in request.csr -out request.crt -days 3655 //ca簽署請求證書
ca將證書傳送給請求的主機
OpenSSL建立私有CA
ca default dir etc pki ca 工作目錄 certs dir certs 客戶端證書儲存位置 crl dir dir crl 證書吊銷列表 database dir index.txt 證書列表 new certs dir dir newcerts 新生成的證書儲存目錄 cert...
利用openssl建立私有CA
本次利用openssl建立私有ca,實現https加密通訊.openssl由三部分組成 加密演算法和協議 對稱加密演算法和協議 公鑰體系 分為公鑰和私鑰 des data encryption standard ibm研發 3des triple des aes advanced encryptio...
ssl協議,openssl,建立私有CA
ssl是security socket layer 安全的套接字層 他介於http和tcp協議層之間 ssl是netscape公司開發的,屬於個人 tls是標準委員會制定的 openssl是ssl的開源實現 ca 證書頒發機構 certification authority 兩台主機要通訊,他們需要...