① 老師你好,在ssl證書中,cer是公鑰證書,key是私鑰證書,crt是證書鏈對嗎
一、SSL證書文件
如圖所示,就是一些SSL證書文件。上圖帶有root CA 字樣的證書文件就是根證書, 然後帶intermediate ca 字樣的就是中間證書文件, 最後一個 ssl servercertificate 字樣的證書即為證書文件。
了解認識SSL證書文件,才能更好的去安裝SSL證書。雖然大部分時候直接安裝證書文件,瀏覽器也會顯示安全,但是由於一些瀏覽器會自動補齊證書鏈,但是證書鏈缺失的話,一些手機端或者部分瀏覽器可能會報不安全的提醒,所以在安裝的時候建議安裝完整的證書文件,補齊證書鏈。
二、SSL證書格式
在SSL證書源文件中你會發現有很多格式。不同的web伺服器對於證書的格式是有要求的,接下來也帶大家了解下不同格式的證書文件。
PEM:- Privacy Enhanced Mail,打開看文本格式,以」—–BEGIN…」開頭, 「—–END…」結尾,內容是BASE64編碼.上述一般證書文件 ,中間證書和根證書,證書文件很多都是pem格式的。Apache和NIgnix伺服器偏向於使用這種編碼格式.
DER:這種格式也是常見的證書格式,跟pem類似,中間證書和根證書,證書文件很多都是DER的,Java和Windows伺服器偏向於使用這種編碼格式。
JKS :jks是Java密鑰庫(KeyStore)比較常見的一種格式。一般可用通過cer 或者pem 格式的證書以及私鑰的進行轉化為jks格式,有密碼保護。所以它是帶有私鑰的證書文件,一般用戶tomcat環境的安裝
PFX:pfx格式的證書 也是由cer 或者pem格式的證書文件以及私鑰轉化而來,所以該證書文件也是帶有私鑰的證書文件,一般用於iis 環境的證書安裝。
② 公鑰與私鑰
rsa可以用來加密
這時候用公鑰加密
私鑰解密
(公鑰公開
如果私鑰加密的話
豈不是誰都可以用公鑰都要解開
有何秘密可言
你的私鑰要通過diniffer-hellman演算法秘密的傳給對方)
rsa可以用來也用來簽名
這時候用私鑰簽名
公鑰認證
(如果不是你用你自己的私鑰簽的
怎麼用你的公鑰可以解開的)
所以我想說
這題答案問題
正確的答案
要麼是
簽名和認證
要麼
解密和加密
結果所有的答案
都是把數據加密和簽名扯到一起
這讓人情何以堪
就像刀可以殺豬
也可以用來做西紅柿炒雞蛋
結果題目是
用刀殺豬的時候
應該怎麼切西紅柿
這讓我情何以堪
有木有
③ 私鑰、公鑰、證書的區別和關系
私鑰是要求你輸入個人密碼才可訪問的,一般網上銀行之類可用到。
公鑰不要求設專置密碼,是已屬經默認了的,一般上一些安全性要求不高的網站或共享資源,如區域網。
證書是一種網站加密瀏覽方式,只有允許了才可訪問,一般為安全性較高的網站,如網上銀行;可以訪止黑客盜取客戶資料。
④ 數字證書,公鑰和私鑰這三者之間的關系是什麼
公私鑰又稱非對稱密鑰,成對出現,只有相互可逆,一對公私鑰可集成為一張數字證書
⑤ ssl證書的公鑰私鑰需要設置嗎
需要設置的,具體設置方法可以咨詢SSL證書提供商。
SSL證書的公鑰內密碼體制分為三個容部分,即公鑰、私鑰和加密解密演算法,顧名思義,加密是通過加密演算法和公鑰對明文傳輸數據進行加密,得到密文,加密過程是需要用到公鑰的。
解密是反過來,通過解密演算法和私鑰對密文進行解密,得到明文。解密過程需要用到解密演算法和私鑰。所以上文提到由公鑰加密的內容,只能由對應的私鑰進行解密,如果是公鑰加密的內容,不知道私鑰那是無法解密的,公鑰和私鑰保證了數據傳輸的安全性。
公鑰和演算法都是公開的,私鑰是保密的,是需要自己手動設置的。大家都用公鑰進行加密,但是只有私鑰的持有者才能解密。在實際的使用中,有需要的人會生成一對公鑰和私鑰,把公鑰發布出去給別人使用,自己保留私鑰。
數字證書是一個經證書授權中心數字簽名的包含公開密鑰擁有者信息以及公開密鑰的文件。最簡單的證書包含一個公開密鑰、名稱以及證書授權中心的數字簽名。所以ssl證書中肯定包含唯一匹配的公鑰和私鑰。網站擁有者向CA機構申請ssl證書時,證書請求文件中只包含公鑰,不包含私鑰。證書私鑰由網站保存,證書請求文件提交給CA機構進行認證和簽名後對外公開。
⑥ 數字證書是什麼,公鑰加密和私鑰簽名
數字證書就是互聯網通訊中標志通訊各方身份信息的一串數字,提供了一種在Internet上驗證通信實體身份的方式,數字證書不是數字身份證,而是身份認證機構蓋在數字身份證上的一個章或印(或者說加在數字身份證上的一個簽名)。它是由權威機構——CA機構,又稱為證書授權(Certificate Authority)中心發行的,人們可以在網上用它來識別對方的身份。
非對稱加密演算法需要兩個密鑰:公開密鑰(publickey)和私有密鑰(privatekey)。公開密鑰與私有密鑰是一對,如果用公開密鑰對數據進行加密,只有用對應的私有密鑰才能解密;如果用私有密鑰對數據進行加密,那麼只有用對應的公開密鑰才能解密。因為加密和解密使用的是兩個不同的密鑰,所以這種演算法叫作非對稱加密演算法。 非對稱加密演算法實現機密信息交換的基本過程是:甲方生成一對密鑰並將其中的一把作為公用密鑰向其它方公開;得到該公用密鑰的乙方使用該密鑰對機密信息進行加密後再發送給甲方;甲方再用自己保存的另一把專用密鑰對加密後的信息進行解密。
另一方面,甲方可以使用乙方的公鑰對機密信息進行簽名後再發送給乙方;乙方再用自己的私匙對數據進行驗簽。
甲方只能用其專用密鑰解密由其公用密鑰加密後的任何信息。 非對稱加密演算法的保密性比較好,它消除了最終用戶交換密鑰的需要。
非對稱密碼體制的特點:演算法強度復雜、安全性依賴於演算法與密鑰但是由於其演算法復雜,而使得加密解密速度沒有對稱加密解密的速度快。對稱密碼體制中只有一種密鑰,並且是非公開的,如果要解密就得讓對方知道密鑰。所以保證其安全性就是保證密鑰的安全,而非對稱密鑰體制有兩種密鑰,其中一個是公開的,這樣就可以不需要像對稱密碼那樣傳輸對方的密鑰了。這樣安全性就大了很多。
⑦ 公鑰和私鑰的關系
這是為了保障網路傳輸安全的一套加密體系。每個人都有一套公鑰和私鑰,公鑰可以通過證書下載、傳輸而告知多人;私鑰則由使用者自己保管。當進行傳輸時,發送者使用接收者的公鑰對資料進行加密以保證傳輸資料的機密性,同時使用自己的私鑰進行加密以保證所傳資料的真實性--確定是自己傳出的。接收者接到資料後使用自己的私鑰對資料進行解密、查看--因為是用他的公鑰加密的,所以只有他的私鑰可以解密,同時使用發送者的公鑰解密從而確定該資料確實由該私鑰持有者所發出,從而保證資料的正確性。這樣傳輸的資料在法律上也是有效力的!
⑧ 什麼是公鑰證書
所謂的公鑰認證,實際上是使用一對加密字元串,一個稱為公鑰(public key),任何人都可以看到其內容,用於加密;另一個稱為密鑰(private key),只有擁有者才能看到,用於解密。通過公鑰加密過的密文使用密鑰可以輕松解密,但根據公鑰來猜測密鑰卻十分困難。
ssh 的公鑰認證就是使用了這一特性。伺服器和客戶端都各自擁有自己的公鑰和密鑰。為了說明方便,以下將使用這些符號。
Ac 客戶端公鑰
Bc 客戶端密鑰
As 伺服器公鑰
Bs 伺服器密鑰
在認證之前,客戶端需要通過某種方法將公鑰 Ac 登錄到伺服器上。
認證過程分為兩個步驟。
會話密鑰(session key)生成
客戶端請求連接伺服器,伺服器將 As 發送給客戶端。
伺服器生成會話ID(session id),設為 p,發送給客戶端。
客戶端生成會話密鑰(session key),設為 q,並計算 r = p xor q。
客戶端將 r 用 As 進行加密,結果發送給伺服器。
伺服器用 Bs 進行解密,獲得 r。
伺服器進行 r xor p 的運算,獲得 q。
至此伺服器和客戶端都知道了會話密鑰q,以後的傳輸都將被 q 加密。
認證
伺服器生成隨機數 x,並用 Ac 加密後生成結果 S(x),發送給客戶端
客戶端使用 Bc 解密 S(x) 得到 x
客戶端計算 q + x 的 md5 值 n(q+x),q為上一步得到的會話密鑰
伺服器計算 q + x 的 md5 值 m(q+x)
客戶端將 n(q+x) 發送給伺服器
伺服器比較 m(q+x) 和 n(q+x),兩者相同則認證成功
⑨ SSL中,公鑰,私鑰,證書的後綴名都是些啥
Linux 下的工具們通常使用 base64 編碼的文本格式,相關常用後綴如下:
* 證書:.crt, .pem
* 私鑰:.key
* 證書請求:.csr
.cer 好像是回二進制的證書。當然你也答可以把證書和 key 放到同一個文件里邊。這時候擴展名通常叫 .pem。Java 的 keystore 什麼的都是二進制的,好像是自有格式。
其實在類 UNIX 系統上,關注文件名後綴的程序並不多的。而證書、密鑰都是有明顯的標識的,所以相關軟體(如 openssl)可以處理,而不管你用的什麼擴展名。當然亂用擴展名自己識別不便,桌面環境也不能將擴展名與默認操作、圖標關聯起來。
如果不知道一個文件是個啥,可以使用 file 命令識別試試。有經驗的也可以直接拿文本編輯器打開看看。
⑩ 數字證書,公鑰、私鑰,數字簽名的關系
公鑰、私鑰是一對,公鑰是給別人用來解密的,私鑰是自己用來加密的
數字證書是用你的公鑰生成的,包含你的公鑰和其他的一些個人和組織信息。
數字簽名是你用你的私鑰加密後的一組數據,可以讓別人用你的公鑰解開。表明是你簽名認可的數據