国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

加密解密

missonce / 4213人閱讀

摘要:協(xié)議在應(yīng)用層協(xié)議通信之前就已經(jīng)完成加密算法通信密鑰的協(xié)商及服務(wù)器認證工作。數(shù)據(jù)加密之后,只有密鑰要用一個安全的方法傳送。

博文參考
http://sweetpotato.blog.51cto.com/533893/1662061
http://www.cnblogs.com/jasperhsu/p/5107533.html
http://www.178linux.com/77188

安全機制
>安全的目標(biāo):  

保密性:confidentiality

確保通信信息不被任何無關(guān)的人看到

完整性:integrity

實現(xiàn)通信雙方的報文不會產(chǎn)生信息丟失

數(shù)據(jù)完整性

系統(tǒng)完整性

可用性:availability

通信任何一方產(chǎn)生的信息應(yīng)當(dāng)對授權(quán)實體可用

>攻擊類型:  

威脅保密性的攻擊:竊聽、通信量分析

威脅完整性的攻擊:更改、偽裝、重放、否認

重放:攻擊者能截獲雙方通信的報文,并開始一遍遍發(fā)送

否認:通信的雙方的某一方發(fā)送的,下訂單說沒下

威脅可用性的攻擊:拒絕服務(wù)(DoS)

>解決方案  

技術(shù)(加密和解密)

加密和解密:     

傳統(tǒng)加密方法:替代加密方法、置換加密方法     

現(xiàn)代加密方法:現(xiàn)代塊加密方法         

現(xiàn)代塊加密:把發(fā)送的整個數(shù)據(jù)切割固定成塊,每塊多帶帶加密,前后兩個塊建立關(guān)聯(lián)關(guān)系

服務(wù)(用于抵御攻擊的服務(wù),也即是為了上述安全目標(biāo)而特地設(shè)計的安全服務(wù))

>服務(wù):     

認證機制     

訪問控制機制

密鑰算法和協(xié)議

對稱加密

公鑰加密

單向加密

認證協(xié)議

加密數(shù)據(jù)依賴與算法和密鑰,安全性依賴于密鑰。因為算法是公開的人人都可以得到,但是密鑰只有通信的主機才有

>Linux系統(tǒng)上述功能解決方案:

OpenSSL(ssl):OpenSSL是ssl協(xié)議和加密庫的實現(xiàn)

GPG(pgp):GPG是gpg協(xié)議的實現(xiàn)
對稱加密
對稱加密(私鑰加密):加密和解密使用同一個密鑰

       DES:Data Encryption Standard(數(shù)據(jù)加密標(biāo)準(zhǔn))  

IBM實驗室研發(fā);加密端64位明文產(chǎn)生64為密文,解密端64位密文還原64位明文,8個字節(jié)為一塊,加密和解密使用56位密鑰,DES使用16個迭代塊實現(xiàn),是現(xiàn)代加密算法

       3DES: Triple DES(三重數(shù)據(jù)加密標(biāo)準(zhǔn)) 

DES的增強版,比DES多3個數(shù)量級

       AES: Advanced Data Encryption Standard(高級數(shù)據(jù)加密標(biāo)準(zhǔn));(128bits, 192bits, 256bits, 384bits)     

AES算法欲取待3DES算法,支持128,192和256位密鑰長度,有效的密鑰長度可達上千位。AES算法采用了更為高效的編寫方法,對CPU的占用率較少,目前廣泛使用。

特性:

1.加密、解密使用同一個密鑰,效率高

2.將原始數(shù)據(jù)分割成固定大小的塊,逐個進行加密

缺陷:

1.密鑰過多

2.密鑰分發(fā)困難

3.數(shù)據(jù)來源無法確認

非對稱加密
公鑰加密:密鑰是成對出現(xiàn)

公鑰(public key):從私鑰中提取產(chǎn)生,公開給所有人

私鑰(secret key):通過工具創(chuàng)建,自己留存,必須保證其私密性

特點:

用公鑰加密的數(shù)據(jù),只有私鑰能解密,其保密性能到了保障;性能較差,用私鑰加密的數(shù)據(jù),只能用公鑰解密,任何人都何以獲得公鑰,可以確認發(fā)送方身份(身份認證)

功能:

數(shù)字簽名:主要在于讓接收方確認發(fā)送方身份,完成身份驗證

對稱密鑰交換:發(fā)送方用對方的公鑰加密一個對稱密鑰后發(fā)送給對方

數(shù)據(jù)加密:適合加密較小數(shù)據(jù)

缺點:

密鑰長,加密解密效率低下

算法:

RSA:只能實現(xiàn)簽名,加密和解密

DSA:只能加密,只能做數(shù)字簽名

ELGamal:商業(yè)算法

就算法本身的實現(xiàn)來講,公鑰加密技術(shù)比對稱加密技術(shù)的速度慢上差不多3個數(shù)量級,一個數(shù)量級就是10倍,所以3個數(shù)量級不是30倍,而是1000倍。因此,在加密數(shù)據(jù)時是很少用到公鑰去加密的。
非對稱加密:

基于一對公鑰/密鑰對

用密鑰對中的一個加密,另一個解密

實現(xiàn)加密:

接收者

生成公鑰/密鑰對:P和S

公開公鑰P,保密密鑰S

發(fā)送者

使用接收者的公鑰來加密消息M

將P(M)發(fā)送給接收者

接收者

使用密鑰S來解密:M=S(P(M)

實現(xiàn)數(shù)字簽名:

發(fā)送者

生成公鑰/密鑰對:P和S

公開公鑰P,保密密鑰S

使用密鑰S 來加密消息M

發(fā)送給接收者S(M)

接收者

使用發(fā)送者的公鑰來解密M=P(S(M))

結(jié)合簽名和加密

分離簽名

單向加密
即提出數(shù)據(jù)指紋;只能加密,不能解密

特性:

定長輸出:無論原來的數(shù)據(jù)是多大級別,其加密結(jié)果長度一樣

雪崩效應(yīng):只要數(shù)據(jù)有一點不同,結(jié)果就會有巨大的不同

不可逆:不能通過特征碼還原數(shù)據(jù)

算法:

md5:Message Digest 5, 128bits

sha1(Secure Hash Algorithm安全散列算法):160bits,sha224,sha256,sha384,sha512

功能:確保數(shù)據(jù)完整性

如在一個網(wǎng)站下載軟件,為了驗證軟件在下載過程中沒有被第三方修改,網(wǎng)站會提供一個MD5和軟件的特征碼,只要把MD5碼下載下來和我們下載的軟件進行運算就可以得到軟件的特征碼,只要這個特征碼和網(wǎng)站提供的一樣,說明軟件沒有被修改,如果不一樣,百分之百是被修改了。
秘鑰交換
密鑰交換:IKE(Internet Key Exchange)

公鑰加密:通過非對稱加密算法,加密對稱加密算法的密鑰,在用對稱加密算法實際要傳輸?shù)臄?shù)據(jù)

DH (Deffie-Hellman) :生成會話密鑰

前提發(fā)送方和接受方協(xié)商使用同一個大素數(shù)p和生成數(shù)g,各自產(chǎn)生的隨機數(shù)X和Y。發(fā)送方將g的X次方mod P產(chǎn)生的數(shù)值發(fā)送給接收方,接受方將g的Y次方mod P產(chǎn)生的數(shù)值發(fā)送給發(fā)送方,發(fā)送方再對接收的結(jié)果做X次方運算,接受方對接收的結(jié)果做Y次方運算,最終密碼形成,密鑰交換完成。

DH:

A: p,g        

B: p,g

A: 生成隱私數(shù)據(jù) ? (x

安全協(xié)議
SSL: Secure Socket Layer

功能:機密性,認證,完整性,重放保護

兩階段協(xié)議,分為握手階段和應(yīng)用階段

握手階段(協(xié)商階段): 客戶端和服務(wù)器端認證對方身份(依賴于PKI體系,利用數(shù)字證書進行身份認證),并協(xié)商通信中使用的安全參數(shù)、密碼套件以及主密鑰。 后續(xù)通信使用的所有密鑰都是通過MasterSecret 生成。

應(yīng)用階段:在握手階段完成后進入,在應(yīng)用階段通信雙方使用握手階段協(xié)商好的密鑰進行安全通信。

分層設(shè)計:

1、最底層:基礎(chǔ)算法原語的實現(xiàn),aes, rsa, md5

2、向上一層:各種算法的實現(xiàn)

3、再向上一層:組合算法實現(xiàn)的半成品

4、用各種組件拼裝而成的各種成品密碼學(xué)協(xié)議軟件
SSL/TLS
SSL:Secure sockets Layer

版本:V1.0,  V2.0,  V3.0

TLS:transport layer Security

版本:V1.0,  V1.1,  V1.2,  V1.3

SSL(Secure Sockets Layer,安全套接層),及其繼任者TLS(Transport Layer Security,傳輸層安全)是為網(wǎng)絡(luò)通信提供安全及數(shù)據(jù)完整性的一種安全協(xié)議。TLS與SSL在傳輸層對網(wǎng)絡(luò)連接進行加密。

Handshake協(xié)議:包括協(xié)商安全參數(shù)和密碼套件、服務(wù)器身份認證(客戶端身份認證可選)、密鑰交換

ChangeCipherSpec協(xié)議:一條消息表明握手協(xié)議已經(jīng)完成Alert協(xié)議:對握手協(xié)議中一些異常的錯誤提醒,分為fatal和warning 兩個級別,fatal 類型錯誤會直接中斷SSL 鏈接,而warning級別的錯誤SSL鏈接仍可繼續(xù),只是會給出錯誤警告

Record協(xié)議:包括對消息的分段、壓縮、消息認證和完整性保護、加密等

HTTPS協(xié)議:就是“HTTP  協(xié)議”和“SSL/TLS 協(xié)議”的組合。HTTP over SSL” 或“HTTP over TLS”,對http 協(xié)議的文本數(shù)據(jù)進行加密處理后,成為二進制形式傳輸
OpenSSL
OpenSSL由三部分組成:libencrypto庫,libssl庫,openssl多用途命令行工具。

OpenSSL是網(wǎng)絡(luò)通信提供安全及數(shù)據(jù)完整性的一種安全協(xié)議,囊括了主要的密碼算法、常用的密鑰和證書封裝管理功能以及SSL協(xié)議,并提供了豐富的應(yīng)用程序供測試或其它目的使用。

OpenSSL是一個強大的安全套接字層密碼庫,Apache使用它加密HTTPS,OpenSSH使用它加密SSH,它還是一個多用途的、跨平臺的密碼工具。

SSL是Secure Sockets Layer(安全套接層協(xié)議)的縮寫,可以在Internet上提供秘密性傳輸。Netscape公司在推出第一個Web瀏覽器的同時,提出了SSL協(xié)議標(biāo)準(zhǔn)。其目標(biāo)是保證兩個應(yīng)用間通信的保密性和可靠性,可在服務(wù)器端和用戶端同時實現(xiàn)支持。已成為Internet上保密通訊的工業(yè)標(biāo)準(zhǔn)。安全套接層協(xié)議能使用戶/服務(wù)器應(yīng)用之間的通信不被攻擊者竊聽,并且始終對服務(wù)器進行認證,還可選擇對用戶進行認證。

SSL協(xié)議要求建立在可靠的傳輸層協(xié)議(TCP)之上。SSL協(xié)議的優(yōu)勢在于它是與應(yīng)用層協(xié)議獨立無關(guān)的,高層的應(yīng)用層協(xié)議(例如:HTTP,F(xiàn)TP,TELNET等)能透明地建立于SSL協(xié)議之上。

SSL協(xié)議在應(yīng)用層協(xié)議通信之前就已經(jīng)完成加密算法、通信密鑰的協(xié)商及服務(wù)器認證工作。在此之后應(yīng)用層協(xié)議所傳送的數(shù)據(jù)都會被加密,從而保證通信的私密性。

通過以上敘述,SSL協(xié)議提供的安全信道有以下三個特性:

1、數(shù)據(jù)的保密性信息加密就是把明碼的輸入文件用加密算法轉(zhuǎn)換成加密的文件以實現(xiàn)數(shù)據(jù)的保密。加密的過程需要用到密鑰來加密數(shù)據(jù)然后再解密。沒有了密鑰,就無法解開加密的數(shù)據(jù)。數(shù)據(jù)加密之后,只有密鑰要用一個安全的方法傳送。加密過的數(shù)據(jù)可以公開地傳送。

2、數(shù)據(jù)的完整性加密也能保證數(shù)據(jù)的一致性。例如:消息驗證碼(MAC),能夠校驗用戶提供的加密信息,接收者可以用MAC來校驗加密數(shù)據(jù),保證數(shù)據(jù)在傳輸過程中沒有被篡改過。

3、安全驗證加密的另外一個用途是用來作為個人的標(biāo)識,用戶的密鑰可以作為他的安全驗證的標(biāo)識。SSL是利用公開密鑰的加密技術(shù)(RSA)來作為用戶端與服務(wù)器端在傳送機密資料時的加密通訊協(xié)定。

 

基本功能:  

OpenSSL整個軟件包大概可以分成三個主要的功能部分:密碼算法庫、SSL協(xié)議庫以及應(yīng)用程序。OpenSSL的目錄結(jié)構(gòu)自然也是圍繞這三個功能部分進行規(guī)劃的。  

作為一個基于密碼學(xué)的安全開發(fā)包,OpenSSL提供的功能相當(dāng)強大和全面,囊括了主要的密碼算法、常用的密鑰和證書封裝管理功能以及SSL協(xié)議,并提供了豐富的應(yīng)用程序供測試或其它目的使用。  

OpenSSL的應(yīng)用程序已經(jīng)成為了OpenSSL重要的一個組成部分。如OpenCA,就是完全使用OpenSSL的應(yīng)用程序?qū)崿F(xiàn)的。OpenSSL的應(yīng)用程序是基于OpenSSL的密碼算法庫和SSL協(xié)議庫寫成的。

OpenSSL的應(yīng)用程序主要包括密鑰生成、證書管理、格式轉(zhuǎn)換、數(shù)據(jù)加密和簽名、SSL測試以及其它輔助配置功能。

 

輔助功能:

BIO機制是OpenSSL提供的一種高層IO接口,該接口封裝了幾乎所有類型的IO接口,如內(nèi)存訪問、文件訪問以及Socket等。這使得代碼的重用性大幅度提高,OpenSSL提供API的復(fù)雜性也降低了很多。  

OpenSSL對于隨機數(shù)的生成和管理也提供了一整套的解決方法和支持API函數(shù)。隨機數(shù)的好壞是決定一個密鑰是否安全的重要前提。  

OpenSSL還提供了其它的一些輔助功能,如從口令生成密鑰的API,證書簽發(fā)和管理中的配置文件機制等等。

 

特點:

OpenSSL采用C語言作為開發(fā)語言,這使得OpenSSL具有優(yōu)秀的跨平臺性能,這對于廣大技術(shù)人員來說是一件非常美妙的事情,可以在不同的平臺使用同樣熟悉的東西。OpenSSL支持Linux、Windows、BSD、Mac、VMS等平臺,這使得OpenSSL具有廣泛的適用性。

(1)在通信之前,服務(wù)器端通過加密算法生成一對密鑰,并把其公鑰發(fā)給CA申請數(shù)字證書。

(2)CA審核后,結(jié)合服務(wù)端發(fā)來的相關(guān)信息生成數(shù)字證書,并把該數(shù)字證書發(fā)回給服務(wù)器端。  

(3)客戶端和服務(wù)器端經(jīng)tcp三次握手,建立初步連接。  

(4)客戶端發(fā)送http報文請求并協(xié)商使用哪種加密算法。  

(5)服務(wù)端響應(yīng)報文并把自身的數(shù)字簽名發(fā)給服務(wù)端。  

(6)客服端下載CA的公鑰,驗證其數(shù)字證書的擁有者是否是服務(wù)器端(這個過程可以得到服務(wù)器端的公鑰)。(一般是客戶端驗證服務(wù)端的身份,服務(wù)端不用驗證客戶端的身份。)  

(7)如果驗證通過,客戶端生成一個隨機對稱密鑰,用該密鑰加密要發(fā)送的URL鏈接申請,再用服務(wù)器端的公鑰加密該密鑰.

(8)把加密的密鑰和加密的URL鏈接一起發(fā)送到服務(wù)器。  

(9)服務(wù)器端使用自身的私鑰解密,獲得一個對稱密鑰,再用該對稱密鑰解密經(jīng)加密的URL鏈接,獲得URL鏈接申請。  

(10)服務(wù)器端根據(jù)獲得的URL鏈接取得該鏈接的網(wǎng)頁,并用客戶端發(fā)來的對稱密鑰把該網(wǎng)頁加密后發(fā)給客戶端。  

(11)客戶端收到加密的網(wǎng)頁,用自身的對稱密鑰解密,就能獲得網(wǎng)頁的內(nèi)容了。  

(12)TCP四次揮手,通信結(jié)束。

以上可概括為:

客戶端向服務(wù)器端索要并驗證證書

雙方協(xié)商生成“會話秘鑰”

雙方采用“會話秘鑰”并進行加密通信

第一階段:

支持的協(xié)議版本,如tls1.2

客戶端生成一個隨機數(shù),稍后用戶會生成“會話密匙”

支持的加密算法,如AES 3DES RSA

支持的壓縮算法

第二階段:

確認使用的加密通信協(xié)議版本,如tls1.2

服務(wù)器端生成一個隨機數(shù),稍后用于生成“會話密匙”

確認使用的加密算法

服務(wù)器證書

第三階段:

驗證服務(wù)器證書,在確認無誤后取其公鑰(發(fā)證機構(gòu) 證書完整性 證書持有者 證書有效期 吊銷列表)

發(fā)送以下信息給服務(wù)器端

一個隨機數(shù)

編碼變更通知,表示隨后的信息都將用雙方商定的加密方法和密鑰發(fā)送

客戶端握手結(jié)束通知

第四階段:

收到客戶端發(fā)來的第三個隨機數(shù)后,計算生成本次會話所有的“會話密匙”

向客戶端發(fā)送如下信息

編碼變更通知,表示隨后的信息都將用雙方商定的加密方法和密鑰發(fā)送

服務(wù)端握手結(jié)束通知
OpenSSLy開源項目
三個組件:

openssl:多用途的命令行工具,包openssl

libcrypto:加密算法庫,包openssl-libs

libssl:加密模塊應(yīng)用庫,實現(xiàn)了ssl及tls,包nss

openssl 命令:

兩種運行模式:交互模式和批處理模式

openssl version :程序版本號

標(biāo)準(zhǔn)命令、消息摘要命令、加密命令

標(biāo)準(zhǔn)命令:enc, ca, req, …

對稱加密:

工具:openssl enc, gpg

算法:3des, aes, blowfish, twofish
加密

加密:openssl enc -e -des3 -a -salt -in testfile -out testfile.cipher

-out the output filename, standard output by default. (默認輸出文件名)

解密

解密:openssl enc -d -des3 -a -salt -in testfile.cipher -out testfile

單向加密
工具:md5sum, sha1sum, sha224sum,sha256sum…

openssl dgst

dgst命令:

openssl  dgst  -md5  [-hex 默認] /PATH/SOMEFILE

openssl  dgst  -md5  testfile

md5sum /PATH/TO/SOMEFILE

生成用戶密碼
openssl  passwd  -1  -salt  SALT(最多8 位)

openssl  passwd  -1  -salt  centos

生成隨機數(shù)
openssl  rand  -base64  |  -hex  NUM

NUM: 表示字節(jié)數(shù);-hex 時,每個字符為十六進制,相當(dāng)于4位二進制,出現(xiàn)的字符數(shù)為NUM*2

-base64 Perform base64 encoding on the output. (進行base64編碼輸出)

-hex Show the output as a hex string. (將輸出顯示為十六進制字符串)

公鑰加密
算法:RSA, ELGamal

工具:gpg, openssl rsautl(man rsautl)

數(shù)字簽名:

算法:RSA, DSA, ELGamal

密鑰交換:

算法:dh

DSA: Digital  Signature  Algorithm (數(shù)字信號運算法則)

DSS:Digital  Signature  Standard (數(shù)字簽名標(biāo)準(zhǔn))

RSA:
生成私鑰

openssl genrsa -out /PATH/TO/PRIVATEKEY.FILE NUM_BITS(umask 077; openssl genrsa -out test.key -des 2048)

從私鑰中提取出公鑰

openssl rsa -in PRIVATEKEYFILE -pubout -out PUBLICKEYFILE

Openssl rsa -in test.key -pubout -out test.key.pub

隨機數(shù)生成器:偽隨機數(shù)字

/dev/random:僅從熵池返回隨機數(shù);隨機數(shù)用盡,阻塞

/dev/urandom:從熵池返回隨機數(shù);隨機數(shù)用盡,會利用軟件生成偽隨機數(shù),非阻塞

CA和證書

PKI: Public Key Infrastructure(公鑰基礎(chǔ)設(shè)施)

是一種遵循既定標(biāo)準(zhǔn)的秘鑰管理平臺,它能夠為所有網(wǎng)絡(luò)應(yīng)用提供加密和數(shù)字簽名等密碼服務(wù)及所必須的密鑰和證書管理體系,PKI就是利用公鑰理論和技術(shù)建立的提供安全服務(wù)的基礎(chǔ)設(shè)施。PKI技術(shù)是信息安全技術(shù)的核心,也是電子商務(wù)的關(guān)鍵和基礎(chǔ)技術(shù)。

完整的PKI系統(tǒng)必須具有權(quán)威認證機構(gòu)(CA)、數(shù)字證書庫、密鑰備份及恢復(fù)系統(tǒng)、證書作廢系統(tǒng)、應(yīng)用接口(API)等基本構(gòu)成部分,構(gòu)建PKI也將圍繞著這五大系統(tǒng)來著手構(gòu)建。

PKI的基礎(chǔ)技術(shù)包括加密,數(shù)字簽名,數(shù)據(jù)完整機制,數(shù)字信封,雙重數(shù)字簽名等。

簽證機構(gòu):CA (Certification Authority)   

用戶在注冊機構(gòu)注冊證書,CA就會簽發(fā)用戶的公鑰認證,并且和申請者的信息綁定在一起并且簽名后,以證書形式發(fā)給申請者,然后在本地的證書存取庫備份。

注冊機構(gòu):RA (Registration Authority)   

一般用戶都是在這里注冊證書。

證書吊銷列表:CRL (Certificate Revocation List)    

如果用戶私鑰丟失,必須要申請吊銷證書,否則可能會被別人冒名頂替。

證書存取庫:     

所有發(fā)出的證書都會在這里存一份,如果丟失證書可以在這里得到,如果丟失私鑰那么只能申請證書撤銷。
X.509 :定義了證書的結(jié)構(gòu)以及認證協(xié)議標(biāo)準(zhǔn)
版本號:標(biāo)識證書的版本

序列號:標(biāo)識證書的唯一證書,類似于身份證

簽名算法ID:證書的算法標(biāo)識

發(fā)行者名稱:證書頒發(fā)這的可識別名

有效期限:證書有效的時間段

主體名稱:證書擁有著的可識別名

主體公鑰:關(guān)鍵部分

發(fā)行者的唯一標(biāo)識:證書頒發(fā)者的唯一標(biāo)識符

主體的唯一標(biāo)識:證書擁有者的唯一標(biāo)識符

擴展信息

發(fā)行者的簽名:證書頒發(fā)者對證書的簽名,上述整個內(nèi)容做單向加密,得到的特征碼用自己私鑰加密,并附加到后面,用來生產(chǎn)發(fā)行者的簽名
證書獲取
證書類型:

證書授權(quán)機構(gòu)的證書

服務(wù)器

用戶證書

獲取證書兩種方法:

使用證書授權(quán)機構(gòu)

生成簽名請求(csr)

將csr 發(fā)送給CA

從CA 處接收簽名

自簽名的證書

自已簽發(fā)自己的公鑰

搭建CA和申請證書 1.創(chuàng)建私有CA:

在確定配置為CA的服務(wù)上生成一個自簽證書,并為CA提供所需要的目錄及文件即可

三種策略:

匹配:申請?zhí)顚懙男畔⒈仨毢虲A設(shè)置信息一致

支持:必須填寫這項申請信息

可選:可寫可不寫

自簽證書,生成私鑰

生成自簽名證書

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

-x509:生成自簽格式證書,專用于創(chuàng)建私有CA時

-key:生成請求時用到的私有文件路徑

-out:生成的請求文件路徑;如果自簽操作將直接生成簽署過的證書

-days:證書的有效時長,單位是天 (不寫默認為365天)
[root@www ~]# openssl req -new -x509 -key /etc/pki/CA/private/cakey.pem -out /etc/pki/CA/cacert.pem -days 365
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter ".", the field will be left blank.
-----
Country Name (2 letter code) [XX]:CN #國家
State or Province Name (full name) []:HeNan #省份 
Locality Name (eg, city) [Default City]:ZZ #城市
Organization Name (eg, company) [Default Company Ltd]:dalong.com #公司
Organizational Unit Name (eg, section) []:Ops #部門
Common Name (eg, your name or your server"s hostname) []:CA.dalong.com #個人或主機名
Email Address []: #郵箱地址

[root@www ~]# ll /etc/pki/CA/cacert.pem #生成的自簽證書
-rw-r--r--. 1 root root 964 Jul 16 17:57 /etc/pki/CA/cacert.pem

為CA提供所需的文件

[root@localhost /etc/pki/CA]#touch index.txt
生成證書索引數(shù)據(jù)庫文件
[root@localhost /etc/pki/CA]#echo 01 > /etc/pki/CA/serial
制定第一個頒發(fā)證書的序列號

要用到證書進行安全通信的服務(wù)器,需要向CA請求簽署證書

(以httpd為例)
[root@localhost /etc/pki/CA]#yum  install  httpd  -y
[root@localhost ~]#vim /var/www/html/index.html
Test Page
[root@localhost ~]#systemctl  start  httpd.service
[root@localhost ~]#ss -tnl
LISTEN     0      128                  :::80                               :::*   
[root@localhost ~]#mkdir /web/ssl -pv   (用來保存證書和私鑰)
生成私鑰
[root@localhost /web/ssl]#(umask  0077;openssl  genrsa  -out  httpd_ key.pem)
Generating RSA private key, 1024 bit long modulus
..........................++++++
......................++++++
e is 65537 (0x10001)
生成證書簽署請求
[root@localhost /web/ssl]#openssl req -new -key httpd_key.pem -out httpd.csr
Country Name (2 letter code) [XX]:CN
State or Province Name (full name) []:BeiJing
Locality Name (eg, city) [Default City]:BeiJing
Organization Name (eg, company) [Default Company Ltd]:Tencent
Organizational Unit Name (eg, section) []:Ops
Common Name (eg, your name or your server"s hostname) []:www.tencent.com
Email Address []:www.admin@Rookie.com                      
注意:默認國家,省,公司名稱三項必須和CA一致
Please enter the following "extra" attributes   可輸入以下額外屬性(可省略)
to be sent with your certificate request
A challenge password []:
An optional company name []:
將請求通過可靠方式發(fā)送給CA主機 在CA主機上簽署證書
[root@localhost /web/ssl]#openssl ca -in httpd.csr -out httpd.crt
Certificate is to be certified until May 29 14:04:18 2018 GMT (365 days)
Sign the certificate? [y/n]:y
 
1 out of 1 certificate requests certified, commit? [y/n]y
Write out database with 1 new entries
Data Base Updated
[root@localhost ~]#yum -y install mod_ssl
[root@localhost ~]#vim /etc/httpd/conf.d/ssl.conf
吊銷證書

客戶端獲取要吊銷的證書的serial(在使用證書的主機執(zhí)行)
[root@localhost ~]#openssl x509 -in /etc/pki/CA/certs/httpd.crt -noout -serial -subject

CA主機吊銷證書
先根據(jù)客戶提交的serial和subject信息,對比其與本機數(shù)據(jù)庫index.txt中存儲的是否一致
吊銷
[root@localhost ~]#openssl ca -revoke /etc/pki/CA/newcerts/SERIAL.pem其中的SERIAL要換成證書真正的序列號;

生成吊銷證書的吊銷編號(第一次吊銷證書時執(zhí)行)
[root@localhost ~]#echo 01 > /etc/pki/CA/crlnumber

更新證書吊銷列表
[root@localhost ~]## openssl ca -gencrl -out thisca.crl

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/35837.html

相關(guān)文章

  • 聊聊加密那點事——PHP加密最佳實踐

    摘要:所謂對稱加密,就是加密和解密使用同一秘鑰,這也是這種加密算法最顯著的缺點之一。非對稱加密算法由于對稱加密在通信加密領(lǐng)域的缺陷,年和提出了非對稱加密的概念。非對稱加密,其主要缺點之一就是慢,適合加密少量數(shù)據(jù)。 1. 加密的目的 加密不同于密碼,加密是一個動作或者過程,其目的就是將一段明文信息(人類或機器可以直接讀懂的信息)變?yōu)橐欢慰瓷先]有任何意義的字符,必須通過事先約定的解密規(guī)則才能將...

    lcodecorex 評論0 收藏0
  • 聊聊加密那點事——PHP加密最佳實踐

    摘要:所謂對稱加密,就是加密和解密使用同一秘鑰,這也是這種加密算法最顯著的缺點之一。非對稱加密算法由于對稱加密在通信加密領(lǐng)域的缺陷,年和提出了非對稱加密的概念。非對稱加密,其主要缺點之一就是慢,適合加密少量數(shù)據(jù)。 1. 加密的目的 加密不同于密碼,加密是一個動作或者過程,其目的就是將一段明文信息(人類或機器可以直接讀懂的信息)變?yōu)橐欢慰瓷先]有任何意義的字符,必須通過事先約定的解密規(guī)則才能將...

    Mr_zhang 評論0 收藏0
  • 加密解密

    摘要:協(xié)議在應(yīng)用層協(xié)議通信之前就已經(jīng)完成加密算法通信密鑰的協(xié)商及服務(wù)器認證工作。數(shù)據(jù)加密之后,只有密鑰要用一個安全的方法傳送。 博文參考 http://sweetpotato.blog.51cto.com/533893/1662061 http://www.cnblogs.com/jasperhsu/p/5107533.html http://www.178linux.com/77188 s...

    zero 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<