【摘 要】本文主要從加密技術、加密模型、加密算法等幾個方面著手,介紹計算機幾種常用的加密技術及原理。這其中包括DES加密算法、IDEA加密算法及非對稱加密算法RSA。最后對計算機信息加密技術的應用做了一些簡要的論述。
【關鍵詞】加密技術 數(shù)據(jù)加密模型 算法
【中圖分類號】TP309.7 【文獻標識碼】A 【文章編號】1006-9682(2009)04-0078-02
一、引 言
隨著計算機技術的發(fā)展與應用,計算機網絡得到了迅猛的發(fā)展,由于計算機網絡缺乏足夠的安全性,網絡上傳輸?shù)男畔㈦S時都受到非法存取、盜聽、篡改和破壞等威脅,網絡的安全性問題越來越受到高度的重視。計算機信息加密技術是對信息進行重新編碼,從而達到隱藏信息內容,使非法用戶無法獲得信息真實內容的一種技術手段,尤其是在當今互聯(lián)網應用不斷普及的今天,計算機中保存的信息安全問題顯得越來越重要。
加密技術發(fā)展到現(xiàn)代,它已經成為結合物理、量子力學、電子學、生物學等多個專業(yè)的綜合科學。加密技術的不斷發(fā)展給計算機的安全提供了保障。
二、數(shù)據(jù)加密模型
在計算機中,采用加密技術將信息隱蔽起來,再將隱蔽后的信息傳輸出去,使信息在傳輸過程中即使被竊取或截獲,信息內容也不會泄露,從而保證信息的安全。
數(shù)據(jù)加密的一般模型如圖1:
在圖1中,明文數(shù)據(jù)是未進行加密的數(shù)據(jù)簡稱明文,用M表示;密文數(shù)據(jù)是利用加密算法加密得到的數(shù)據(jù)簡稱密文,用C表示;E是加密算法,D是解密算法。用公式表示為C=E(M)。經過網絡將密文由發(fā)送端傳輸?shù)浇邮斩?。在接收端由解密算法D解密出明文M,公式表示為M=D(C)。
圖1加密方法必須保證算法的安全,這種基于保持算法秘密的算法稱為受限制的算法。但按照現(xiàn)在的標準它的保密性是遠遠不夠的。一旦算法丟失或泄露會對整個加密系統(tǒng)和信息造成嚴重的損失?,F(xiàn)代密碼學利用密鑰解決了這個問題,密鑰是一種參數(shù),它是在明文轉換為密文或將密文轉換為明文的算法中輸入的數(shù)據(jù)。密鑰使用K來表示。圖2是對稱加密的數(shù)據(jù)加密模型。
如圖2中發(fā)送端與接收端都采用相同密鑰K的加密方法即為對稱加密,用公式表示為EK(M)=C,DK(C)=M。DES(Data Encryption Standard)算法是對稱加密算法。
有些算法使用不同的加密密鑰K1和解密密鑰K2。如圖3:
這種加密和解密使用不同密鑰的加密方法即為非對稱加密。用公式表示為EK1(M)=C,DK2(C)=M。在應用中通常在發(fā)送端加密采用的密鑰稱為公鑰,接收端解密采用的密鑰稱為私鑰。RSA(Rivest Shamir Adleman)是非對稱公開密鑰算法。
三、DES算法
DES算法是由IBM公司研制的,并于1977年定為美國聯(lián)邦信息加密標準。它是一種分組密碼,以64位為分組對數(shù)據(jù)加密,它的密鑰長度是56位(每個第8位作為奇偶校驗),加密解密用同一算法。
DES算法的工作原理是公開算法,包括加密和解密算法。然而,DES算法對密鑰進行保密。只有掌握了和發(fā)送方相同密鑰的人才能解讀由DES算法加密的密文數(shù)據(jù)。因此,破譯DES算法實際上就是搜索密鑰的編碼。對于56位長度的密鑰來說,如果用窮舉法來進行搜索的話,其運算次數(shù)為256。
DES算法的加密過程如圖4所示。DES算法的輸入是明文數(shù)據(jù)M,經初始置換后輸出為M0。然后把M0按32位長度分為左半部分L0和右半部分R0。對數(shù)據(jù)L0和R0,DES按照迭代公式:Li=Ri-1以及Ri=Li-1⊕#402;(Ri-1,Ki)(i=1,…,16)進行16次迭代運算。即在每次迭代運算中,右半部分的第i-1次數(shù)據(jù)變?yōu)樽蟀氩糠值牡趇次數(shù)據(jù),而左半部分第i-1次數(shù)據(jù)在和函數(shù)#402;(Ri-1,Ki)進行異或運算之后變?yōu)橛野氩糠值趇次數(shù)據(jù)。在最后一次迭代運算后,得到的結果R16和L16直接輸入初始置換的反變換過程,并輸出加密后的密文數(shù)據(jù)C。
DES算法具有極高的安全性,到目前為止,除了用窮舉搜索法可以對DES算法進行攻擊還沒有發(fā)現(xiàn)其他更有效的辦法。DES算法中只用到64位密鑰中的其中56位,而再8,16,24,…,64位8個位并未參與DES運算,即DES的安全性是基于除了8,16,24,…,64位外的其余56位的組合變化,在實際應用中,我們應避開使用第8,16,24,…,64位作為有效數(shù)據(jù)位,使用其他的56位作為有效數(shù)據(jù)位,才能保證DES算法安全可靠地發(fā)揮作用。
四、IDEA算法
IDEA(International Data Encryption Algorithm,國際加密標準)。
IDEA算法的密鑰長度為128位,針對64位數(shù)據(jù)進行加密和解密操作。設計者盡可能使該算法不受差分密碼分析的影響,XueJia Lai已證明IDEA算法在其8輪迭代的第4圈之后更不受差分密碼分析的影響了。目前而言IDEA是非常安全的。
IDEA是一個迭代分組密碼,分組長度為64比特,密鑰長度為128比特。
IDEA密碼中使用了以下三種不同的運算:
①逐位異或運算;②模216加運算;③模216+1乘運算,0與216對應。
IDEA算法是由8輪迭代和隨后的一個輸出變換組成。它將64比特的數(shù)據(jù)分成4個子塊,每個16比特,令這四個子塊作為迭代第一輪的輸出,全部共8輪迭代。每輪迭代都是4個子塊彼此間以及16比特的子密鑰進行異或,模216加運算,模216+1乘運算。除最后一輪外把每輪迭代輸出的四個子塊的第二和第三子塊互換。該算法所需要的“混淆”可通過連續(xù)使用三個“不相容”的群運算于兩個16比特塊來獲得。
五、RSA算法
RSA公開密鑰算法是在1978年提出的一種將加密密鑰公開,并使其和解密密鑰分開,無法由已知的密鑰推導出解密密鑰的密碼體制。
RSA加密算法是最常用的非對稱加密算法,是第一個比較完善的公開密鑰算法,它既能用于Internet上加密,也能用于數(shù)字簽名。
RSA以它的三個發(fā)明者Ron Rivest, Adi Shamir, Leonard Adleman的名字首字母命名,這個算法經受住了多年深入的密碼分析,雖然密碼分析者既不能證明也不能否定RSA的安全性,但這恰恰說明該算法有一定的可信性,目前它已經成為最流行的公開密鑰算法。
RSA的安全基于大數(shù)分解的難度。其公鑰和私鑰是一對大素數(shù)(100到200位十進制數(shù)或更大)的函數(shù)。從一個公鑰和密文恢復出明文的難度,等價于分解兩個大素數(shù)之積(這是公認的數(shù)學難題)。RSA從提出到現(xiàn)在已近二十年,經歷了各種攻擊的考驗,逐漸為人們所接受,普遍認為是目前最優(yōu)秀的公鑰方案之一。
然而,雖然RSA的安全性依賴于大數(shù)的因子分解,但并沒有從理論上證明破譯RSA的難度與大數(shù)分解難度等價。即RSA的重大缺陷是無法從理論上把握它的保密性能如何。
此外,RSA的缺點還有:①產生密鑰很麻煩,受到素數(shù)產生技術的限制,因而難以做到一次一密。②分組長度太大,為保證安全性,運算代價很高,尤其是速度較慢,較對稱密碼算法慢幾個數(shù)量級;且隨著大數(shù)分解技術的發(fā)展,這個長度還在增加,不利于數(shù)據(jù)格式的標準化。因此,使用 RSA只能加密少量數(shù)據(jù),大量的數(shù)據(jù)加密還要靠對稱密碼算法。
六、計算機信息加密技術應用
1.在電子商務方面的應用
電子商務要求很高的可靠性,加密技術是電子商務采取的主要安全保密措施,是最常用的安全保密手段。RSA(一種公開/私有密鑰)的加密技術在電子商務上的應用,提高信用卡交易的安全性,從而使電子商務得到更好的發(fā)展。
2.在VPN上的應用
虛擬私有網(Virtual Private Network, VPN),又稱虛擬私有撥號網(Virtual Private Dialup Network, VPDN),是近年來隨著Internet的發(fā)展而迅速發(fā)展起來的一種技術。VPN中網絡安全問題由具有加密/解密功能的路由器解決,這使人們通過互聯(lián)網連接這些局域網成為可能。當數(shù)據(jù)離開發(fā)送者所在的局域網時,該數(shù)據(jù)首先被用戶端連接到互聯(lián)網上的路由器進行硬件加密,數(shù)據(jù)在互聯(lián)網上是以加密的形式傳送的,當達到目的LAN的路由器時,該路由器就會對數(shù)據(jù)進行解密,這樣目的LAN中的用戶就可以看到真正的信息。提高了信息傳輸?shù)陌踩浴?/p>
隨著網絡的復雜性和多樣性的發(fā)展,網絡信息安全不斷的涌現(xiàn)。計算機加密技術成為保障網絡信息安全的主要手段之一。在未來信息安全中,計算機信息加密技術將不斷得到應用和發(fā)展。
參考文獻
1 李達成、張 京、龔茗茗.計算機信息安全[M].人民郵電出版社,2004
2 雷震甲.網絡工程師教程[M].清華大學出版社,2004
3 林 濤.網絡安全與管理[M].電子工業(yè)出版社,2004
注:本文中所涉及到的圖表、注解、公式等內容請以PDF格式閱讀原文