Java安全之證書與PKI

2021-07-08 11:21:42 字數 2252 閱讀 7513

一、證書的作用

證書作用之一就是儲存公鑰和用於公鑰交換。公鑰作為乙個字段儲存在數字證書中,因此證書的交換和傳輸就可以完成公鑰的傳輸和交換。

數字證書有各種格式,不同的格式儲存的內容以及儲存的格式也是不同的,常用的就是x.509格式的數字證書,這是國際標準。

所謂的證書格式就是儲存著不同內容格式的檔案。

證書的另外乙個作用是作為信任的基石。證書中儲存了所有者的一些認證資訊,並且該證書需要通過受信任的ca機構進行簽名,

然後該證書就可以代表所有者的合法身份了。此時數字證書中的任何內容都將無法修改,否則證書的簽名將會變化,就變成了不再受信任的證書。

其中數字簽名就是用來保護數字證書本身的安全性和可信任性的。

對於證書的簽名一般先使用所有者的私鑰進行簽名,這樣之後就可以對其進行完整性和一致性的校驗,之後為了能讓其他人信任這個證書,

那麼就需要ca機構對其進行簽名以認證證書的所有者和證書的從屬關係。

二、證書鏈

所謂的證書鏈就是乙個證書a由另乙個受信任的證書b進行簽名,那麼這個證書a也就成為了受信任的證書。也就是子證書可以由所有受信任的父級證書進行簽名,

而不一定非要使用ca簽名。也就是說,乙個證書只要是由本地的受信任的證書列表所簽名的,那麼這個證書就是受信任的,並且這個證書還可以簽名其他的證書,

那麼其他的證書也將稱為受信任的證書。此時驗證的時候會採用回溯的方式進行驗證,先驗證證書的簽名者是否在受信任列表,如果不再那麼就查詢這個頒發者的

頒發者是否在信任列表,如果在那麼就信任該證書,如果不在則繼續這個步驟。

可以在瀏覽器檢視證書時通過「證書路徑」這個選項卡看到的就是證書鏈的關係,也就是當前證書由哪個證書簽名,簽名者由是由哪個證書或機構簽名,

這個列表中最頂級的哪個證書就是本地信任列表中的乙個證書。

例如:

這就說明了一般數字證書的簽名是由其他受信任的證書或機構進行簽名的,而根證書(信任列表的那些證書)是使用自己的私鑰簽名的,

因此根證書的頒發者和頒發給的是同乙個,例如:

非根證書就不能使用自己的私鑰進行簽名了,否則就不是受信任的證書,而是需要使用乙個其他受信任的證書的私鑰進行簽名,這樣才能保證一

個信任的證書鏈。因此當驗證非根證書的時候就需使用頒發者的公鑰去驗證,而不能使用證書本身的公鑰進行驗證,因為簽名是使用頒發者的私鑰簽名的,

所以只有頒發者的公鑰才可以解密這個簽名。

三、證書的約束

證書的約束主要包括證書的使用約束(用途)、有效期。例如根證書頒發的二級證書就需要限制這個證書的一些約束,例如顯示證書的用途和有效期,

甚至包括這個二級證書是否可以再對其他證書進行簽名。

例如:

這個證書的subjecttype就是ca,那麼這個證書就可以再對其他證書進行簽名,那麼被簽名的證書就將成為受信任的證書。如果這裡是endentity

則表示這個證書不能再對其他證書進行簽名,否則被簽名的證書也是不受信任的證書,當進行回溯驗證時發現證書的簽名者的約束是endentity則表示

這個頒發者所頒發的證書是不受信任的。

再比如證書有「金鑰用法」這個字段,該字段就定義這個證書只能用來做哪些事情,例如只能做資料的加密解密或者只能做身份的認證等。

如果使用證書進行了非允許的用途,那麼如果客戶端比較嚴格那麼就不會通過驗證,也就是認為這個證書在此時是不受信任的。

就好像工商局頒發的營業執照中定義了經營範圍和品類,如果用於其他的範圍和品類那麼就是不合法的,也就是不受信任的。

四、pki

pki的含義就是「公鑰基礎設施」,它不是乙個單獨的概念,而是乙個體系的概念。整個非對稱加密系統、公鑰體系、數字證書、證書鏈等

所有的內容組合起來形成了乙個安全認證體系,使用這個體系來實現現代安全系統的乙個基石,這個基石就稱為pki。所以pki是一套系統或稱為體系,

而不是乙個單獨的概念。

證書的應用範圍例如https和wifi都是需要進行安全認證的,使用的就是服務提供者的數字證書進行安全和身份的認證。

PKI(公鑰基礎設施)之證書的信任鏈(數字證書鏈)

前面的 證書之什麼是數字簽名?簡單科普了一下為什麼要使用證書。其實這些以及後面要科普的都是整個公鑰基礎設施pki public key infrastructure 體系中一部分。下面介紹什麼是數字證書的信任鏈。證書鏈是乙個有序的證書列表,包含ssl證書和證書頒發機構 ca 證書,使接收方能夠驗證傳...

網路安全概論 數字證書與公鑰基礎設施PKI

pki是一種遵循標準的利用公鑰理論和技術建立的提供安全服務的基礎設施。證書機構ca 序號產生器構ra 證書發布庫 金鑰備份與恢復 證書撤銷 pki應用介面 證書發布庫 ca頒發證書 證書撤銷列表 金鑰備份與恢復 只能針對加 解密金鑰,而無法對簽名金鑰進行備份 認證服務 先驗證證書的真偽,在驗證身份的...

資訊保安學習筆記(八) PKI原理與應用

前言 pki是public key infrastructure的縮寫,意為 公鑰基礎設施 是乙個用非對稱金鑰演算法原理和技術實現,具有通用性的安全的基礎設施。pki利用證書標識金鑰持有人的身份,通過對金鑰的規範化管理,為組織機構建立和維護乙個可信賴的系統環境,透明地為應用系統提供身份認證 資料保密...