中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

數據加密和OpenSSL

發布時間:2020-05-04 07:10:11 來源:網絡 閱讀:634 作者:xxlixin1993 欄目:安全技術

數據加密:

 

SSL: Secure Socket Layer安全的套接字層

Openssl:sslLinux上實現的一個軟件,開源的

例:使用了ssl協議就不在是原來的協議了

http(80) --> ssl --> https (443)

數據加密和OpenSSL

NIST定義數據安全性的基本法則:

保密性:

數據保密性

隱私性

完整性:

數據完整性

系統完整性

可用性:

 

 

安全***:

被動***:監聽

主動***:偽裝、重放、消息篡改、拒絕服務

安全機制:

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

安全服務:

認證

訪問控制

數據保密性

連接保密性

無連接保密性

選擇域保密性

流量保密性

數據完整性

不可否認性

 

密碼算法和協議:

對稱加密

公鑰加密[非對稱加密 ]

單向加密

認證協議

 

對稱加密:加密和解密使用同一個密鑰;將一種數據流結合加密秘鑰輸出成另一種數據流;

 

常見算法:

DESData EncryptionStandard, 56bits

3DES:

AES:Advanced Encrpytion Standard, (128bits, 192, 256, 384, 512bits)

Blowfish

Twofish

IDEA

RC6

CAST5

 

特性:

1、加密、解密使用同一密鑰;

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

3、依賴于:算法和密鑰;

       安全性依賴于密鑰,而非算法;

 

缺陷:

1、密鑰過多;

2、密鑰分發不便;

 

非對稱加密:公鑰加密

分為私鑰和公鑰,私鑰僅給個人使用,公鑰是給所有人公開獲取的。常用算法:RSA、DSA(只能實現數據簽名)

 

私鑰:secret key,僅允許個人使用;

公鑰:public key,公開給所有獲取;

 

公鑰從私鑰中提取而來;使用公鑰加密的數據,只能使用與此公鑰配對兒的私鑰解密;反之亦然

 

用處:

1.身份認證:私鑰擁有者用自己的私鑰加密的數據,只要用其公鑰能解密,即可認證其身份;

2. 密鑰交換:與被通信方通信之前,首先獲取到對方的公鑰,自己生成一個加密密碼,用對方的公鑰加密,并發送給對方;

3. 數據加密:但加密時間長,一般不用于數據加密

 

特性:

1、密鑰長度較大,例如512bits, 2048bits,4096bits

2、加密解密分別使用密鑰對兒中的密鑰相對進行;

3、常用于數據簽名和密鑰交換;

 

單向加密:提出數據的特征碼;

 

用于數據完整性校驗

 

特性:

1、定長輸出:無論原來的數據是多大級別,其加密結果長度一樣;

2、雪崩效應:原始數據微小改變,將會導致結果巨大變化;

3、不可逆:

 

算法:

MD5128bits定長輸出;

SHA1160bits定長輸出;

SHA256

SHA384

SHA512

 

 

 

一次加密通信過程

發送者:

1、使用單向加密算法提取生成數據的特征碼;

2、使用自己的私鑰加密特征碼附加在數據后面;

3、生成一個用于對稱加密的臨時密鑰;

4、用此臨時密鑰加密數據和已經使用私鑰加密后的特征碼;

5、使用接收方的公鑰加密此臨時密鑰,附加在對稱加密后的數據后方;

 

接收方:

1、使用自己的私鑰解密加密的臨時密鑰;從而獲得對稱密鑰;

2、使用對稱密鑰解密對稱加密的數據和私鑰加密的特征碼密文;從而獲得數據和特征碼密文;

3、使用發送方的公鑰解密特征碼密文,從而獲得從計算生成的特征碼;

4、使用與對方同樣的單向加密算法計算數據的特征碼,并與解密而來的進行比較;

 


 

數字證書:

CA:簽證機構

功用:保證通信方公鑰信息安全分發;

 

數字證書的格式(x.509 v3)

版本號(version

序列號(serial number)CA用于惟一標識此證書;

簽名算法標志(Signature algorithm identifier)

發行者的名稱:即CA自己的名稱;

有效期:兩個日期,起始日期和終止日期;

證書主體名稱:證書擁有者自己的名字

證書主體公鑰信息:證書擁有者自己的公鑰;

發行商的惟一標識:

證書主體的惟一標識:

擴展信息:

簽名:CA對此證書的數字簽名;

 

證書通常有兩類用途:

用戶證書

主機證書(httpd

 

撤消證書:當私鑰丟失時

 

PKI: Public KeyInfrastructure  公鑰基礎設施

簽證機構:CA

注冊機構:RA

證書吊銷列表:CRL

證書存取庫:

 

 

openssl的組成部分:

libcrypto:加密、解密庫文件;

libssl: ssl協議實現

openssl:多用途命令行工具,每種功能都使用專用的子命令來實現

 

openssl:

子命令分類:

標準命令

消息摘要命令

加密、解密相關的命令

數據加密和OpenSSL

 

 

加密文件(對稱加密):

工具:openssl enc, gpg

算法:des, 3des, aes, blowfish, twofish, idea, cast5

 

enc工具:

加密:

# openssl enc -e -加密算法 -a -salt -in 要加密的文件 -out 加密后輸出的文件

例:   -e  -des3 表示指定加密方法為des3    -a表示要用ASCII格式輸出你的內容  -salt 加雜質  -in 加密哪個文件  -out 加密后輸出成哪個文件

數據加密和OpenSSL

解密:

# openssl enc -d -解密算法 -a -salt -in要解密的文件 -out 解密后輸出的文件

例:opensslenc -d -des3 -a -salt -in fstab.drs3 -out fstab2

-d  -des3 表示用什么算法解密    -a 表示要用ASCII格式輸出你的內容  -salt 加雜質  -in 解密哪個文件  -out 解密后輸出成哪個文件

 

單向加密

算法:md5, sha1

工具:openssl dgst, md5sum, sha1sum, sha224sum, sha256sum, sha384sum,sha512sum

 

# openssl dgst  -加密算法 文件名

例:提取fstab文件的特征碼,會輸出到屏幕

數據加密和OpenSSL

 

生成用戶密碼:

# openssl passwd -1 -salt 8位隨機數[做為雜質]

例:-1 指定MD5算法

數據加密和OpenSSL

 

生成隨機數:

# openssl rand -hex[16進制]|-base64[文本格式] NUM

例:openssl rand -hex 4

 

隨機數生成器:

任何隨機數都是從這兩個中取得  

random,urandom

 

熵池:保存硬件中斷產生的隨機數

 

/dev/random:僅從熵池中返回隨機數,當熵池中的隨機數耗盡時,取隨機數的進程將會被阻塞;

/dev/urandom:先從熵池中取隨機數,當熵池中的隨機耗盡時,就通過偽隨機數生成器生成隨機數;

 

生成密鑰對兒:

操作過程:生成私鑰,從私鑰中提取公鑰;

# openssl genrsa -out   生成的私鑰文件  密鑰長度[1024 20484096]

例:

數據加密和OpenSSL

注意:在bash命令行上放在小括號中執行的命令,其實是通過打開一個子shell進程進行的;

因為私鑰應該僅屬主可以查看,所以權限應為400600

#(umask277; openssl genrsa -out 生成的私鑰文件密鑰長度[10242048 4096])

例:

    數據加密和OpenSSL 

從私鑰中手動提取公鑰:

# openssl rsa -in  生成的私鑰文件 -pubout

數據加密和OpenSSL

 

X.509 v3數字證書的格式:

數據加密和OpenSSL

證書撤銷鏈:

數據加密和OpenSSL

 

 

獲取證書的方法:

RA注冊申請

建立私有CA

OpenSSL

OpenCA

 

使用OpenSSL構建私有CA

 

1、生成私鑰:私鑰用于簽發證書時,向證書添加數字簽名使用

2、生成自簽署證書:每個通信方都導入此證書至“受信任的證書頒發機構”

 

 

配置文件:/etc/pki/tls/openssl.cnf

數據加密和OpenSSL

數據加密和OpenSSL

工作目錄:/etc/pki/CA/

 

 

建立私有CA

1、生成私鑰文件:/etc/pki/CA/private/cakey.pem

 

#(umask 077; openssl genrsa -out /etc/pki/CA/private/cakey.pem 2048)

 

2、生成自簽證書

 

#openssl req -new -x509 -key /etc/pki/CA/private/cakey.pem -out/etc/pki/CA/cacert.pem -days #

 

-new: 生成新的證書簽署請求;

-key:私鑰文件路徑,用于提取公鑰;

-days N: 證書有效時長,單位為“天”;

-out:輸出文件保存位置;

-x509:直接輸出自簽署的證書文件,通常只有構建CA時才這么用;

數據加密和OpenSSL

 

3、提供輔助文件

# touch /etc/pki/CA/index.txt [即索引文件]

#echo 01 > /etc/pki/CA/serial

 

給節點發證書:

1、節點申請證書

在證書申請的主機上進行如下步驟:

(1) 生成私鑰;

# (umask 077; openssl genrsa -out 私鑰位數[1024])

(2) 生成證書簽署請求;openssl req -new key 私鑰 -out 請求.csr

# openssl req -new -key httpd.key -out httpd.csr-days #

 

數據加密和OpenSSL

注意:

(a) 其中的subject信息部分,要與CA的保持一致;

(b) Common Name要使用此主機在通信真實使用名字;

 

(3) 把請求發送給CA

2CA簽發證書

(1) 驗正請求者信息

(2) 簽署證書

# openssl ca -in 請求.csr -out 證書.crt -days N

數據加密和OpenSSL

(3) 把簽署好的證書發還給請求者

 

吊銷證書:

1、獲取吊銷證書的序列號;

# openssl x509 -in 證書.crt -noout-serial -subject

 

2、實現證書吊銷

(0) 確保與index.txt中的序列號一致

 

(1) 吊銷證書

# openssl ca -revoke 證書.crt

 

(2) 生成吊銷證書的編號

echo 數字[原有吊銷+1] >/etc/pkie/CA/crlnumber

echo 01 >/etc/pkie/CA/crlnumber

 

(3) 更新證書吊銷列表

# openssl crl -gencrl -out 正在使用的吊銷鏈文件.crl









向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

玉林市| 韩城市| 平阴县| 阿克| 平塘县| 鄂托克前旗| 周宁县| 桦南县| 和林格尔县| 新兴县| 阿拉善右旗| 文昌市| 彭阳县| 沈丘县| 阿合奇县| 株洲市| 象州县| 和政县| 康乐县| 广南县| 安岳县| 筠连县| 益阳市| 固始县| 济宁市| 余干县| 蕲春县| 东乌珠穆沁旗| 沛县| 杭锦旗| 阿勒泰市| 合江县| 阜城县| 金秀| 班戈县| 宁都县| 华池县| 平潭县| 白河县| 阜新市| 岳阳县|