1. 程式人生 > 實用技巧 >資料加密解密及openssl建立CA

資料加密解密及openssl建立CA

資料的安全性:

保密性:C

資料保密性

隱私性

完整性:I

資料完整性

系統完整性

可用性A

可被授權實體訪問並按需求是有的特性

NTST (national institute of standards and technology)美國國家標準與技術研究院所制定的網路資訊安 全性和保密性。簡稱CIA。當然CIA保證了網路資訊保安和保密,但是另外兩條標準也是不可忽視的。

真實性 確保資料傳送發是真正的傳送方

可追溯性 受到***,能追溯***者原位置


OSI組織定義的電腦保安通訊框架:x 800

安全***

被動***;竊聽

主動***:偽裝“冒名頂替”;重播 ;訊息修改;拒絕服務

安全機制

加密、數字簽名、訪問控制、資料完整性、認證交換、流量填充、路由控制、公證

安全服務

認證

訪問控制

資料保密性:

連線保密性

無連線保密性

選擇域保密性

流量保密性

資料完整性

資料傳輸沒有被非授權的修改,插入,刪除,重播

不可否認性:身份認證

加密型別:

一、對稱加密:加密解密使用同一金鑰。

對稱加密演算法

DES:56位

3DES:

AES:高階加密標準

特性:

1、加密,解密使用同一口令;

2、將明文分隔成固定大小的塊,逐個進行加密

缺陷:

1、金鑰過多;

2、金鑰傳輸;

3、分發困難

金鑰交換、身份驗證、資料完整性無法得到保證。


二、公鑰加密:加密和解密使用一對金鑰

public key公鑰;secret key私鑰

公鑰一般用於:

實現身份認證

金鑰交換

常用加密演算法:RSA,DSA,EIGamal



三、單向加密:

定長輸出

不可逆:(解密)

雪崩效應(蝴蝶效應)

常用加密演算法:MD5、sha1


PKI:公鑰基礎設施

簽證機構:CA

註冊機構:RA

證書吊銷列表:CRL

證書存取庫:

申請CA流程:存取庫-->RA-->CA-->CRL


CA:證書包含內容

證書版本號

證書序列號: 記錄當前CA發行了多少證書

證書演算法引數;

發行者的名稱:

證書有效期限

證書擁有者的主體名稱 (‘使用者’名字 或者‘主機名’)

公鑰資訊: (自己填寫 名字等相關資訊)

發行者的id: CA的編號

主體的編號--id

CA的簽名: 來源合法性

加密解密簡圖:

wKioL1PdmHbxEChwAAERzGiWW9o000.jpg

當接收者接到報文,使用自己的私鑰進行解密,其次使用對稱金鑰解密,獲得加密的報文和特徵碼;再次使用傳送者的公鑰進行解密,提取原報文。

Openssl建立私有CA

一、建立CA伺服器:

1、生成金鑰:

#cd/etc/pki/CA

#(umask077;opensslgenrsa-out/etc/pki/CA/private/cakey.pem2048)

wKiom1PdjVGSjbDDAAC8MA7I0Eo032.jpg

2、自簽證書:使用

#opensslreq-new-x509-key/etc/pki/CA/private/cakey.pem-out/etc/pki/CA/cacert.pem-days300

wKioL1PdjoiRwDw-AAGfKca9AYc104.jpgwKiom1PdjYHxDyyVAAGPkO1cC-A504.jpg

3、初始化工作環境

#touch/etc/pki/CA/{index.txt,serial}

#echo01>/etc/pki/CA/serialCA編號從01開始以此類推

wKioL1PdjsLT_BDFAAB63SGdE-4825.jpg

二、節點申請證書:

節點生成請求

1、生成金鑰對兒

#(umask077;opensslgenrsa-out/etc/httpd/ssl/httpd.key2048)

wKioL1Pdjv-TCI8LAACyoHw0W4k984.jpg

2、生成證書籤署請求

#opensslreq-new-key/etc/httpd/ssl/httpd.key-out/etc/httpd/ssl/httpd.csr

wKiom1PdjgfRtOziAADre-Q2Clw052.jpg

wKioL1Pdjzvgw-ZbAAGPkO1cC-A105.jpg

3、把簽署請求檔案傳送給CA服務

#scp/etc/pki/CA/httpd.crt172.16.244.22:/etc/httpd/ssl

收到節點請求CA驗證證書中的信心是否符合,

如果符合CA將簽署證書使用:#opensslca-in/path/to/somefile.csr-out/path/to/somefile.crt-days200

在將簽署證書傳送給申請者:

#Scp/etc/pki/CA/httpd.crt172.16.249.100:/etc/https/ssl/


轉載於:https://blog.51cto.com/hhxxb/1534370