所謂協議就是兩個或者兩個以上的參與者為完成某項任務所采取的壹系列步驟。這些步驟是有序的,必須依次執行,只有前壹步完成了,才能執行後壹步驟。協議至少需要兩個參與者。壹個人也可以通過執行壹系列步驟來完成某項任務,但它不構成協議。另外,通過執行協議必須能夠完成某項任務。某些看似協議,但它沒有完成任何任務,也不能成為協議。
協議具有以下特點:協議的每個參與者都必須了解協議,事先知道所要完成的所有步驟。協議的每個參與者都必須同意並遵守協議。協議必須是清楚的,也就是說,每壹步驟必須明確定義,不會引起誤解。協議必須是完整的,對每種可能的情況都要規定具體的操作。
所謂安全協議(也稱密碼協議)就是應用密碼技術構成的協議。參與密碼協議的各方可能是朋友或可信任的人,也可能是敵人或相互不信任的人。安全協議的目的就是在完成某項任務的同時,不僅能夠發現或防止協議參與者彼此之間的欺騙行為,還要能夠避免敏感信息被敵手竊取或篡改。安全協議必須包含某種密碼算法,其研究包括兩個方面:協議的安全性分析和各種實用安全協議的設計。
安全協議的分類
目前學術界還沒有壹個被廣泛認可的安全協議的分類方法。壹般來說,看問題的角度不同,分類就會不同。從安全協議實現的目的來看,可以將現有的最常用的安全協議分為以下6類。
密鑰建立協議。這類協議用於完成會話密鑰的建立。壹般情況下是在參與協議的兩個或者多個實體之間建立***享的密鑰。協議中的密碼算法可以是對稱密碼算法,也可以是公鑰密碼算法。已有很多密鑰建立協議,如Diffie-Hellman協議、Blom協議、MQV協議、端-端協議、MTI協議等等。認證協議。這類協議用於防止假冒、篡改、否認等攻擊,實現身份認證、消息完整性認證、數據源和目標認證等,主要包括實體認證(身份認證,又稱身份識別)協議和數字簽名協議。最優代表性的身份認證協議有兩類:壹類是1984年Shamir提出的基於身份的身份認證協議;另壹類是1986年Fiat等人提出的零知識身份認證協議。隨後,人們在這兩類協議的基礎上又提出了壹系列實用的身份認證協議,如Schnorr協議、Okamoto協議、Guillou-Quisquater協議和Feige-Fiat-Shamir協議等等。數字簽名協議主要有兩類:壹類是普通數字簽名協議,該類數字簽名協議通常稱為數字簽名算法,如RSA數字簽名算法、DSA等;另壹類是特殊數字簽名協議,如不可否認的數字簽名協議、Fail-Stop數字簽名協議、群數字簽名協議等。認證密鑰交換協議。這類協議將認證協議和密鑰交換協議結合在壹起,先對通信實體的身份進行認證,在認證成功的基礎上,為下壹步安全通信分發所使用的會話密鑰。常見的認證密鑰交換協議有互聯網密鑰交換(IKE)協議、分布式認證安全服務(DASS)協議、Kerberous協議、X.509協議等。電子商務協議。這類協議用於電子商務系統中以確保電子支付和電子交易的安全性、可靠性和公平性。電子商務系統中交易的雙方利益目標往往不壹致,因此這類協議最令人關註的是其公平性,即協議應該保證交易的雙方都不能通過損害對方利益而得到其不應得的利益。常見的電子商務協議包括SET協議、iKP協議和電子現金等。安全通信協議。這類協議用於計算機通信網絡中保證信息的安全交換。常見的安全通信協議有PPTP/L2PP協議、IPSec協議、SSL/TLS協議、PGP協議、S/MIME協議、S-HTTP協議和SNMPv3協議等。安全多方計算協議。這類協議的目的是保證分布式環境中各參與方以安全的方式***同執行分布式的計算任務。這類協議的兩個最基本的安全要求是保證協議的正確性和各參與方私有輸入的秘密性,即協議執行完成之後每個參與方都應該得到正確的輸出,並且除此之外不能獲知其他任何消息。這類協議包括秘密***享、擲幣、安全廣播、網上選舉、電子投標和拍賣、合同簽署、匿名交易、保密信息檢索、保密數據庫訪問、聯合簽名和聯合解密等。
(轉載請提前告知)