PKI(Public Key Infrastructure)公鑰基礎設施

PKI(Public Key Infrastructure)公鑰基礎設施

一個典型的PKI系統包括PKI策略、軟硬件系統、證書機構CA、註冊機構RA、證書發佈系統和PKI應用等
PKI的應用非常廣泛,其爲網上金融、網上銀行、網上證券、電子商務、電子政務等網絡中的數據交換提供了完備的安全服務功能。PKI作爲安全基礎設施,能夠提供身份認證、數據完整性、數據保密性、數據公正性、不可抵賴性和時間戳六種安全服務。

1、身份認證
由於網絡具有開放性和匿名性等特點,非法用戶通過一些技術手段假冒他人身份進行網上欺詐的門檻越來越低,從而對合法用戶和系統造成極大的危害。身份認證的實質就是證實被認證對象是否真實和是否有效的過程,被認爲是當今網上交易的基礎。在PKI體系中,認證中心(Certification Authority,CA)爲系統內每個合法用戶辦一個網上身份認證,即身份證。

2、數據完整性
數據的完整性就是防止非法篡改信息,如修改、複製、插入、刪除等。在交易過程中,要確保交易雙方接收到的數據與原數據完全一致,否則交易將存在安全問題。如果依靠觀察的方式來判斷數據是否發生過改變,在大多數情況下是不現實的。在網絡安全中,一般使用散列函數的方法(Hash函數,也稱密碼雜湊函數)來保證通信時數據的完整性。通過Hash算法我們將任意長度的數據通過變換爲長度固定的數字摘要(消息認證碼,MAC),並且原始數據中任何一位的改變都將會在相同的計算條件下產生截然不同的數字摘要。
這一特性使得人們很容易判斷原始數據是否發生非法篡改,從而很好地保證了數據的完整性和準確性。PKI系統主要採用的散列算法有SHA一1和MD一5。

3、數據保密性
數據的保密性就是對需要保護的數據進行加密,從而保證信息在傳輸和存儲過程中不被未授權人獲取。在PKl系統中,所有的保密性都是通過密碼技術實現的。密鑰對分爲兩種,一種稱作加密密鑰對,用作加解密;另一種稱作簽名密鑰對,用作簽名。一般情況下,用來加解密的密鑰對並不對實際的大量數據進行加解密,只是用於協商會話密鑰,而真正用於大量數據加解密的是會話密鑰。
在實際的數據通信中,首先發送方產生一個用於實際數據加密的對稱算法密鑰,此密鑰被稱爲會話密鑰,用此密鑰對所需處理的數據進行加密。然後,發送方使用接收方加密密鑰對應的公鑰對會話密鑰進行加密,連同經過加密處理的數據一起傳送給接收方。接收方收到這些信息後,首先用自己加密密鑰對中的私鑰解密會話密鑰,然後用會話密鑰對實際數據進行解密。

4、數據公正性
PKI中支持的公正性是指數據認證。也就是說,公證人要證明的是數據的正確性,這種公汪取決於數據驗證的方式,與公正服務和一般社會公證人提供的服務是有所不同的。在PKI中,被驗證的數據是基於對原數據Hash後數字摘要的數字簽名、公鑰在數學上的正確性和私鑰的合法性。

5、不可抵賴性
不可抵賴性保證參與雙方不能否認自己曾經做過的事情。在PKI系統中,不可抵賴性來源於數字簽名。由於用戶進行數字簽名的時候.簽名私鑰只能被簽名者自己掌握,系統中的其他實體不能做出這樣的簽名,因此,在私鑰安全的假設下簽名者就不能否認自己做出的簽名。保護簽名私鑰的安全性是不可抵賴問題的基礎。

6、時間戳服務
時間戳也叫安全時間戳,是一個可信的時間權威,使用一段可以認證的數據來表示。
PKl中權威時間源提供的時間並不需要正確,僅僅需要用戶作爲一個參照“時間”,以便完成基於PKI的事務處理,如時間A發生在時間B的前面等。一般的PKI系統中都設置一個時鐘統一PKI時間。當然也可以使用時間官方事件源所提供的時間,其實現方法是從網中這個時鐘位置獲得安全時間,要求實體在需要的時候向這些權威請求在數據上蓋上時間戳。一份文檔上的時間戳涉及對時間和文檔內容的哈希值的簽名,權威的簽名提供了數據的真實性和完整性。一個PKI系統中是否需要實現時間戳服務,完全依照應用的需求來決定

7、數字簽名
由於單一的、獨一無二的私鑰創建了簽名,所以在被簽名數據與私鑰對應的實體之間可以建立一種聯繫,這種聯繫通過使用實體公鑰驗證簽名來實現。如果簽名驗證正確,並且從諸如可信實體簽名的公鑰證書中知道了用於驗證簽名的公鑰對應的實體,那麼就可以用數字簽名來證明被數字簽名數據確實來自證書中標識的實體。
因此,PK的數字簽名服務分爲兩部分:簽名生成服務和簽名驗證服務。簽名生成服務要求能夠訪問簽名者的私鑰,由於該私鑰代表了簽名者,所以是敏感信息,必須加以保護。如果被盜,別人就可以冒充簽名者用該密鑰簽名。因此,簽名服務通常是安全應用程序中能夠安全訪問簽名私鑰的那一部分。相反,簽名驗證服務要開放一些,公鑰一旦被可信簽名者簽名,通常就被認爲是公共信息。驗證服務接收簽名數據、簽名、公鑰或公鑰證書,然後檢查簽名對所提供的數據是否有效。它返回驗證成功與否的標識。

加密技術
1、對稱加密
加密和解密是同一個密鑰,不安全
維護麻煩,A、B、C、D、E、F、G相互之間加密通訊需要各自存放笛卡爾積的密鑰對
加密效率高
2、非對稱加密
公鑰加密 私鑰解密
A與B、C、D、E、F、G之間相互發送加密信息,只需要將A的公鑰公佈給B、C、D、E、F、G用戶,然後這些用戶用A的公鑰加密發送信息給A,A再用自己的私鑰解密
加密效率低

3、對稱加密與非對稱加密組合
1)假設B要給A發送加密信息,B先用隨機數產生一個對稱加密密鑰,假設爲123,然後用這個對稱加密密鑰123加密信息,接着B用A的公鑰把對稱加密密鑰123加密,最後B把用123加密的信息與A公鑰加密過的123密鑰一起發送給A
2)A收到用A公鑰加密的123密鑰和123密鑰加密的信息後,先用A的私鑰密鑰123密鑰,然後再用123密鑰解密信息

數字簽名
1、保證數據沒有被更改
2、不可抵賴性
1)A企業給B企業下訂單,先用散列函數將合同生成一個128bit的數字摘要(或者稱爲數字指紋,這個數字摘要與合同內容相對應的,如果合同內容被更改,則數字摘要也會相應更改。通過數字摘要無法反推回合同的內容),然後A企業的私鑰加密這個數字摘要,確認這個數字摘要來自A企業。最後A企業把合同(明文)、加密後的數字摘要、A的公鑰一起傳送給B
2)B收到A傳過來的合同(明文),加密後的數字摘要、A的公鑰,B先用相同的散列函數將合同也生成一個128bit的數字摘要,然後再A的公鑰解密A傳過來的數字摘要,兩個摘要一對比便可知道合同內容是否被篡改過

CA證書頒發機構
1、公鑰、私鑰是以數字證書的形式存在的
2、CA證書頒發機構是全球公認且中立的證書頒發機構,目的是爲了防止不法分子僞造證書
3、CA證書頒發機構本身也有公鑰和私鑰,一般公鑰隨着操作系統一起安裝到用戶電腦中
1)A企業向CA證書頒發機構申請證書,通過申請後,CA證書頒發機構給A企業頒發一個用CA私鑰數字簽名的數字證書(包含一對A企業的公鑰、私鑰密鑰對)
2)B企業也信任CA證書頒發機構(B企業也有CA證書頒發機構的公鑰)
3)A企業先將合同用散列函數生成一個128bit的數字摘要,再用A的公鑰加密這個數字摘要,同時A的公鑰帶有CA的數字簽名,最後A企業將合同(明文)、加密的數字摘要、A的公鑰(帶有CA的數字簽名)一起發送給B企業
4)B企業收到來自A企業的合同(明文)、加密的數字摘要、A企業的公鑰(帶有CA的數字簽名),先用CA的公鑰驗證A企業的公鑰(確認A企業的數字證書來源於CA證書頒發機構),證實A企業的合法性,再用A的公鑰解密數字摘要,接着B用同樣的散列函數將合同(明文)也生成一個數字摘要,兩個摘要一對比便可知道合同內容是否被篡改過

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章