古往今來,通信中的安全保密問題一直受到廣泛關注。歷史上,交戰雙方在通信安全、保密和密碼破譯方面的優勢均被認為是取得戰爭勝利的關鍵因素之一。而今,人類已進入信息化時代,現代通信涉及各行各業,信息安全已成為人人都關心的事情,這就促使密碼學揭去了神秘的面紗,為更廣泛的領域和大眾服務。
算法的一般原理----密碼體制從原理上可分為兩大類,即單鑰密碼體制和雙鑰密碼體制。
----單鑰密碼體制是指信息的發送方和接收方共享一把密鑰。在現代網絡通信條件下,該體制的一個關鍵問題是如何將密鑰安全可靠地分配給通信的對方,并進行密鑰管理。如圖1所示。
----由圖1可知,單鑰密碼體制在實際應用中除了要設計出滿足安全性要求的加密算法外,還必須解決好密碼的產生、分配、傳輸、存儲和銷毀等多方面問題。因為通信對象的多元性導致了一個用戶必須擁有多個不同對象的密鑰,方可安全可靠地進行通信。
----雙鑰密碼體制,又稱公鑰密碼體制,其最大特點是采用兩個密鑰將加密、解密分開。在雙鑰體制下,每個用戶都擁有兩把密鑰,一個公開,一個自己專用。當使用用戶專用密鑰加密,而用該用戶公開密鑰解密時,則可實現一個被加密的消息可被多個用戶解讀;當使用用戶公開密鑰加密,而由該用戶專用密鑰解密時,則可實現傳輸的信息只被一個用戶解讀。前者常被用于數字簽名,后者則常用于保密通信。如圖2所示。
----在圖2中,EA和EB分別是A和B的加密鑰(或公開鑰), DA和DB分別是A和B的解密鑰(或專用鑰)。一個明文若要從A傳輸到B,先要用A 的專用密鑰加密(又稱簽名),再用B的公開鑰加密,然后傳送到接收方B;B在接收后,首先用專用密鑰解密,再用A的公開密鑰認證。這一信息傳遞過程,不僅保護了信息的安全,又使接收方對信息的發送方為A確信無疑。
----雙鑰體制的上述特征,完全是建立在加密算法的函數單向性即求逆的困難性上。
算法的分類----信息密碼體制的兩大類別基本涵蓋了常用的加密算法,如下表所示。
----在現代加密算法中,完全吸收了一些古典密碼算法的優點。流密碼作為一個十分誘人的加密機制,一直被人們所廣泛關注,混沌理論在密碼學上的應用,目前只是由于其在數學上難以突破,一時還未有十分成功的應用推出;量子密碼還處于實驗階段。分組加密算法是近20年來最為活躍的加密手段之一,其算法有很多,最為著名的當推DES(Data Encryption Standard),該算法于1977年正式投入使用,一直用到1998年,20多年來一直作為美國聯邦信息處理標準。DES算法的出現是密碼學史上的一個里程碑,因為以往的任何設計對于密碼體制及其設計細節都是嚴加保密的,而DES卻將算法公開,任人測試、研究和分析,一直到使用了20年后,才有報道說DES 被破譯了。
----DES是一種對二進制數據進行加密的算法,數據分組長為64位,密鑰長也為64位,經過16輪的迭代、乘積變換、壓縮變換等,輸出密文也為 64位。DES算法的安全性完全依賴于其所用的密鑰。
----前蘇聯國家標準局采用的加密算法GOST亦是分組加密算法的典型代表。GOST算法針對64位明文輸入,產生64位密文輸出,所不同的是, GOST采用256位密鑰,需經32輪加密變換才產生輸出,因此,GOST的抗攻擊能力在某種程度上并不比DES差。
----于1992年推出的另一個分組加密算法IDEA (International Data Encryption Algorithm)是近年來提出的分組加密算法中較為成功的方案之一。該方案的核心是設計了一個乘法/加法非線性構件,通過8輪迭代,能使明碼信息更好地擴散和混淆。
----在雙鑰密碼體制中,最具代表性的算法當數RSA,它從 1979年公布至今,一直是加密中的主要算法之一,盡管該算法吸引了無數研究者,但在數學上還未找到最佳破譯方法。RSA算法的核心建立在兩個足夠長(100位十進制)的大素數基礎上,以目前每秒運行100萬步的計算資源來破譯則大約需1023步,相當于1000 年。因此,RSA算法在計算理論上仍然是十分安全的。由于RSA的加密/解密互為逆運算,因此,該算法不僅可用于信息加密,也可用于數字簽名認證,如圖2所示。
----其他的雙鑰密碼體制,有些雖很著名,但已被破譯,如背包體制;有些還處于研究和發展階段,如橢圓曲線體制;有些密碼體制在算法上與RSA 有相似之處,破譯的途徑之一是大素數的分解,如Rabin、EIGamal體制等。
加/解密機制的應用----在信息安全領域中,凡涉及到數據通信均需采用加/解密機制。而目前日益發展的電子商務正是充分展示加/解密機制的一個十分重要的領域。
----電子商務涉及到的對象總體上可分四類,即消費者、網上商店、網上銀行、獨立認證機構,它們之間的關系如圖3所示。
----在交易之前,消費者、商店和銀行均需在認證中心注冊,以獲取唯一的身份號碼ID。為了使交易具有安全可靠性、防抵賴性、防假冒性等,這三者的每一次交易通信均應被認證中心確認,而認證的重要工具便是數字簽名。被認證者只需將自己的ID用雙鑰體制中的私鑰加密,并發送給認證中心,認證中心便從公鑰信箱中找出能解讀此ID的那把公鑰,便可確認ID的身份,并注冊交易。同樣,每一步的確認過程亦是一個認證的過程。
----在電子商務中,訂單的保密性需用加密技術來處理,而訂單的可靠性、時間性等則需用數字簽名技術,有時往往還要雙重簽名。例如,王先生要買李小姐的一處房產,他發給李小姐一個購買報價單及他對銀行的授權書的消息,如果李小姐同意按此價格出賣,則要求銀行將錢劃到李小姐的賬上。但是王先生不想讓銀行看到報價,也不想讓李小姐看到他的銀行賬號信息。此外,報價和付款是相連的、不可分割的,僅當李小姐同意他的報價,錢才會轉移。要達到這個要求,采用雙重簽名即可實現。
----具體的實現方法是:首先生成兩條消息的摘要,將兩個摘要連接起來,生成一個新的摘要(稱為雙重簽名),然后用簽發者的私有密鑰加密,為了讓接收者驗證雙重簽名,還必須將另一個消息的摘要一起傳過去。這樣,任何一個消息的接收者都可以通過以下方法驗證消息的真實性:生成消息摘要,將它和另外一個消息摘要連接起來,生成新的摘要,如果它與解密后的雙重簽名相等,就可以確定消息是真實的。拿上面的例子來說,如果李小姐同意,它發一個消息給銀行表示她同意,另外包括報價單的消息摘要,銀行能驗證王先生授權的真實性,用王先生的授權書生成的摘要和李小姐消息中的報價單的摘要驗證雙重簽名。銀行根據雙重簽名可以判定報價單的真實性,但卻看不到報價單的內容。
加/解密機制的研究與發展----如前所述,盡管雙鑰密碼體制較單鑰密碼體制更為可靠,且無需復雜的密鑰管理,大多數雙鑰體制還可用于數字簽名,然而,由于其計算的復雜性,在進行大信息量通信時,其速率為單鑰體制的1/1000~1/100。正是由于不同體制的加密算法各有所長,預計在今后相當長的一段時期內,各類加密體制將共存。
----在由IBM等公司1996年聯合推出的用于電子商務的協議標準SET(Secure Electronic Transaction)中以及1992年由多國聯合開發的PGP(Pretty Good Privacy)中,均采用了混合密碼系統,包含單鑰密碼、雙鑰密碼、單向雜湊算法和隨機數生成算法等。
----在單鑰密碼領域,一次一密被認為是最為可靠的機制,然而由于流密碼體制中的密鑰流生成器在算法上未能突破有限循環性,故一直未被廣泛應用,因此,若能找到一個在算法上接近無限循環的密鑰流生成器,該體制將會有一個質的飛躍。近年來,混沌學理論的研究給在這一方向產生突破帶來了曙光。
----量子密碼被認為是一個潛在的發展方向,它基于光學和量子力學理論。加密體制原理在于量子系統在被測量時會受到擾動,這對在光纖通信中加強信息安全,并對付擁有量子計算能力的破譯者來說,無疑是一種可靠的選擇。
----由于電子商務等民用系統的應用需求,認證加密算法也將有較大發展,尤其是零知識證明的加密/解密算法可望出現一些新的成員。
----此外,在傳統密碼體制中,將會產生類似IDEA這樣的新成員,新成員的一個主要特征便是在算法上有所創新和突破,而不僅僅是對傳統算法的修正或改進。
----密碼學是一個正在不斷發展的年輕學科,任何未被認識的加/解密機制都將在其中占有一席之地。
深圳市華宇晶電子科技有限公司 http://huayujing.com http://huayujing.cn http://www.hyjic.com 深圳市南山區高新技術產業園中區科文路2號波爾瑪樓下 郵箱:hyj@hyjic.com 地鐵:深大站A3出口 深圳科技園廣場50米 公交:深大北門站 易小姐:0755-26001683 26008661 手機:18123979133 傳真:26001683 QQ :3147194936 |