openssl簡介--證書

openssl簡介--證書

ID:34724836

大小:248.18 KB

頁數(shù):72頁

時間:2019-03-10

openssl簡介--證書_第1頁
openssl簡介--證書_第2頁
openssl簡介--證書_第3頁
openssl簡介--證書_第4頁
openssl簡介--證書_第5頁
資源描述:

《openssl簡介--證書》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在工程資料-天天文庫。

1、openssl簡介--證書二證書證書就是數(shù)字化的文件,里面有一個實體(網(wǎng)站,個人等)的公共密鑰和其他的屬性,如名稱等。該公共密鑰只屬于某一個特定的實體,它的作用是防止一個實體假裝成另外一個實體。證書用來保證不對稱加密算法的合理性。想想吧,如果沒有證書記錄,那么假設(shè)某倆人A與B的通話過程如下:這里假設(shè)A的publickey是K1,privatekey是K2,B的publickey是K3,privatekey是K4xxxxxx(kn)表示用kn加密過的一段文字xxxxxxA-----〉hello(plaintext)-------------〉BA〈---------hello(

2、plaintext)〈---------BA〈---------Bspublickey〈------------BA---------〉spublickey(K1)--------〉B......如果C想假裝成B,那么步驟就和上面一樣。A-----〉hello(plaintext)-------------〉CA〈---------hello(plaintext)〈---------C注意下一步,因為A沒有懷疑C的身份,所以他理所當然的接受了C的publickey,并且使用這個key來繼續(xù)下面的通信。A〈---------Cspublickey〈------------CA-

3、--------〉A(chǔ)spublickey(K1)--------〉C......這樣的情況下A是沒有辦法發(fā)覺C是假的。如果A在通話過程中要求取得B的證書,并且驗證證書里面記錄的名字,如果名字和B的名字不符合,就可以發(fā)現(xiàn)對方不是B.驗證B的名字通過再從證書里面提取B的公用密鑰,繼續(xù)通信過程。那么,如果證書是假的怎么辦?或者證書被修改過了怎么辦?慢慢看下來吧。證書最簡單的形式就是只包含有證書擁有者的名字和公用密鑰。當然現(xiàn)在用的證書沒這么簡單,里面至少還有證書過期的deadline,頒發(fā)證書的機構(gòu)名稱,證書系列號,和一些其他可選的信息。最重要的是,它包含了證書頒發(fā)機構(gòu)(certif

4、icationauthority簡稱CA)的簽名信息。我們現(xiàn)在常用的證書是采用X.509結(jié)構(gòu)的,這是一個國際標準證書結(jié)構(gòu)。任何遵循該標準的應用程序都可以讀,寫X509結(jié)構(gòu)的證書。通過檢查證書里面的CA的名字,和CA的簽名,就知道這個證書的確是由該CA簽發(fā)的然后,你就可以簡單證書里面的接收證書者的名字,然后提取公共密鑰。這樣做建立的基礎(chǔ)是,你信任該CA,認為該CA沒有頒發(fā)錯誤的證書。CA是第三方機構(gòu),被你信任,由它保證證書的確發(fā)給了應該得到該證書的人。CA自己有一個龐大的publickey數(shù)據(jù)庫,用來頒發(fā)給不同的實體。這里有必要解釋一下,CA也是一個實體,它也有自己的公共密鑰和

5、私有密鑰,否則怎么做數(shù)字簽名?它也有自己的證書,你可以去它的站點down它的證書得到它的公共密鑰。一般CA的證書都內(nèi)嵌在應用程序中間。不信你打開你的IE,在internet選項里面選中"內(nèi)容",點擊"證書",看看那個"中間證書發(fā)行機構(gòu)"和"委托根目錄發(fā)行機構(gòu)",是不是有一大堆CA的名稱?也有時CA的證書放在安全的數(shù)據(jù)庫里面。當你接受到對方的證書的時候,你首先會去看該證書的CA,然后去查找自己的CA證書數(shù)據(jù)庫,看看是否找的到,找不到就表示自己不信任該CA,那么就告吹本次連接。找到了的話就用該CA的證書里面的公用密鑰去檢查CA在證書上的簽名。這里又有個連環(huán)的問題,我怎么知道那個C

6、A的證書是屬于那個CA的?人家不能造假嗎?解釋一下吧。CA也是分級別的。最高級別的CA叫RootCAs,其他cheap一點的CA的證書由他們來頒發(fā)和簽名。這樣的話,最后的保證就是:我們信任RootCAs.那些有RootCAs簽名過的證書的CA就可以來頒發(fā)證書給實體或者其他CA了。你不信任RootCAs?人民幣由中國人民銀行發(fā)行,運到各個大銀行,再運到地方銀行,你從地方銀行取人民幣的時候不信任發(fā)行它的中國人民銀行嗎?RootCAs都是很權(quán)威的機構(gòu),沒有必要擔心他們的信用。那RootCAs誰給簽名?他們自己給自己簽名,叫自簽名.說了這么多,舉個certificate的例子吧,對一

7、些必要的item解釋一下。CertificateExampleCertificate:Data:Version:1(0x0)SerialNumber://系列號02:41:00:00:16SignatureAlgorithm:md2WithRSAEncryption//CA同志的數(shù)字簽名的算法Issuer:C=US,O=RSADataSecurity,Inc.,OU=Commercial//CA自報家門CertificationAuthorityValidityNotBefore:Nov418:58:3

當前文檔最多預覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當前文檔最多預覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學公式或PPT動畫的文件,查看預覽時可能會顯示錯亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負責整理代發(fā)布。如果您對本文檔版權(quán)有爭議請及時聯(lián)系客服。
3. 下載前請仔細閱讀文檔內(nèi)容,確認文檔內(nèi)容符合您的需求后進行下載,若出現(xiàn)內(nèi)容與標題不符可向本站投訴處理。
4. 下載文檔時可能由于網(wǎng)絡波動等原因無法下載或下載錯誤,付費完成后未能成功下載的用戶請聯(lián)系客服處理。