公共金鑰密碼技術

2021-04-13 21:32:36 字數 2537 閱讀 7507

公鑰密碼技術為使用者提供安全的資訊交換方式。另外,它還能使主機具有其他有用的安全技術,包括身份驗證(不需要交換敏感資訊的遠端連線)、數字簽名(用於提供文件完整性)和不可否認(即某人無法否認已經傳送了某訊息)。

按照密碼學的kerckhoff原則:「所有演算法都是公開的,只有金鑰是保密的」。即安全系統的設計者不能指望使用某種秘密的無人知道的演算法來保密,而應當使用一種公開的被驗證過的演算法——只要金鑰是安全的,已知演算法的攻擊者實際上無法破解秘文的演算法才是好的演算法。

假設甲和乙希望在不可靠系統(例如網際網路)上交換私人的加密訊息。他們選擇的加密方法將使偶然捕獲了該傳輸的任何人都無法閱讀該訊息。甲使用加密金鑰對訊息進行加密。乙必須也具備該金鑰來對訊息進行解密。現在的基本問題是:甲怎樣才能將金鑰交給乙,讓她可以解密訊息?甲可以用**呼叫乙,但是如果**線被分接了呢?甲可以通過信使進行傳送,但金鑰還是可能被盜取。這似乎有點太誇張了,但請想象一下每時每刻都可能受到攻擊者和外國國防機構監視的軍事通訊。不僅如此,在競爭激烈的公司領域和金融領域,面臨著同樣的威脅。

傳統上,傳送者和接收者已經就金鑰達成一致意見。在離開港口之前,交給潛水艇的艦長乙個解碼本,他將用它對來自基地港的加密無線電報文進行解碼。這是對稱密碼技術(雙方都知道同乙個秘密金鑰),而且通常稱為秘密金鑰密碼技術。des(資料加密標準)是一種常見的秘密金鑰加密。 des是一種分組加密演算法,它所使用的金鑰長度為64位,由佔56位長度的實際金鑰和每個位元組的第8位的奇偶校驗碼這兩部份組成。它以64位為一組,將明文分成若干個分組,每次利用56位金鑰對64位的二進位制明文分組進行資料加密,產生64位的密文。des演算法的金鑰可以是任意的乙個56位的數,且可在任意的時候改變。

但對需要交換訊息的各方而言,並非總能夠知道和/或信任對方,或者此前彼此交換過金鑰。在2023年,whitfield diffie和martin hellman提出了一種非對稱公鑰加密的概念。在這種方案中,某個人使用程式生成兩個金鑰。這兩個金鑰通過一種極其難以反演的特殊函式在數學上相互關聯。將其中乙個金鑰秘密儲存,而將另乙個放在乙個公共位置;後者很類似於**簿中列出的**號碼。為向某人傳送乙個私人訊息,您查詢他的公鑰,將訊息進行加密,然後傳送到金鑰的所有者。金鑰所有者用他們的私有金鑰將訊息解密。只有私有金鑰可以解密用該公鑰加密的訊息。因此,私有金鑰必須保證安全,不對外洩漏。

非對稱公鑰密碼技術的概念由diffie和hellman於2023年提出,但將它變成一種實用性和商業性系統的卻是rsa( rivest、shamir和adleman)資料系統。diffie和hellman最初認為,這些金鑰應當儲存在大型公共檔案中,然後通過金鑰所有者的名字進行引用。該檔案其實是乙個包含名字和金鑰的白頁目錄,與**簿相似。但該檔案可能會變得極其龐大,因此需要儲存在可以對其進行管理的位置。在rfc 2693中,loren kohnfelder提出一種想法,將每個名稱/金鑰組合從大型檔案中分離出來,然後輸入單獨的記錄中。這些個別的記錄可以進行數字「簽名」,方法是用可信賴的第三方的公鑰對它們進行加密或雜湊處理。kohnfelder將這種簽名的記錄稱為證書,而管理和簽發這些證書的可信賴的第三方則稱為認證機構(ca)。

公開金鑰密碼技術就是使用兩個不同的金鑰,其中公開發布的那把金鑰稱為公共金鑰,僅由擁有者保管的那把金鑰稱為私有金鑰(或專用金鑰)。如果某一資訊採用公用金鑰加密,那麼必須使用私有金鑰進行解密,由此實現資訊保密。如果某一資訊採用私有金鑰加密,那麼必須用公有金鑰進行解密,由此實現身份驗證。這種加密技術以rsa為典型代表。圖p-10顯示公鑰密碼技術的工作過程。甲和乙希望交換可靠訊息。甲和乙在同乙個公司網路上,因此訪問管理公鑰(在公共網路上,由認證機構管理)的公司證書伺服器非常方便。

1.乙和甲使用在web瀏覽器和電子郵件應用程式中常見的軟體來生成一組金鑰。

2.將公鑰傳送到公鑰伺服器(證書伺服器),後者將金鑰隨同人員資訊**入證書中,並使用分配給證書伺服器的可信金鑰為它簽名。

3.當甲希望向乙傳送可靠訊息時,他從公鑰伺服器獲得乙的證書。該證書包含乙的公鑰,甲用它來加密訊息。然後,他將訊息發給乙。

4.乙接收該訊息並用她的私有金鑰對訊息進行解密。 

圖p-10 公共金鑰密碼技術

公鑰方案解決了向其他需要解密訊息的接收方傳送金鑰的問題。事實上,它允許任何人加密訊息,然後傳送給其他的人,而不用預先交換金鑰。傳送和接收的各方甚至不必彼此了解,不必在同一機構,也不必連線到同一網路。

公鑰基礎結構(pki)是管理公鑰的完整系統。它可在企業網路內部實現,但通常是指公共環境中的ca層次體系。它還定義ca如何註冊使用者,建立和管理證書,而且定義它們的業務執行過程。ietf pkix (公鑰基礎結構x.509)工作組已定義了用於網際網路的pki。x.509是由國際電信聯盟(itu-t)制定的一種定義證書格式和分布的國際標準。為了提供公用網路使用者目錄資訊服務, itu 於 1988 年制定了 x.500 系列標準。其中 x.500 和 x.509 是安全認證系統的核心, x.500 定義了一種區別命名規則,以命名樹來確保使用者名稱的唯一性; x.509 則為 x.500 使用者名稱提供了通訊實體鑑別機制,並規定了實體鑑別過程中廣泛適用的證書語法和資料介面, x.509 稱之為證書。

來自" http://baike.eccn.com/eewiki/index.php/%e5%85%ac%e5%85%b1%e5%af%86%e9%92%a5%e5%af%86%e7%a0%81%e6%8a%80%e6%9c%af"

對稱金鑰密碼體制和公開金鑰密碼體制

一 對稱金鑰密碼體制 資料加密標準 des 是對稱分組密碼體制,它的金鑰長度為64位,實際金鑰長度即主金鑰為56位,用於生成每輪加密迴圈體制的金鑰,將64位明文加密為64位暗文。加密迴圈體制位數為16位,從k1,k2.k16,解密過程與之相反,從k16.k1,des的加密金鑰與解密金鑰相同,屬於對稱...

PKI 公共金鑰體系 原理

pki原理 pki 即公共金鑰體系。它利用公共金鑰演算法的特點,建立一套證書發放 管理和使用的體系,來支援和完成網路系統中的身份認證 資訊加密 保證資料完整性和抗抵賴性。pki 體系可以有多種不同的體系結構 實現方法和通訊協議。公共金鑰方法還提供了進行數字簽名的辦法 簽字方對要傳送的資料提取摘要並用...

金鑰 密碼學相關

簡單介紹一下密碼學 知識。金鑰 是一種引數,它是在明文 轉換為密文或將密文轉換為明文的演算法中輸入的資料.金鑰分為兩種 對稱金鑰 與非對稱金鑰 對於普通的對稱密碼學,加密運算與解密運算使用同樣的金鑰。通常,使用的加密演算法 比較簡便高效,金鑰簡短,破譯極其困難,由於系統的保密性 主要取決於金鑰的安全...