巴音郭楞職業(yè)技術(shù)學(xué)院 金保林
應(yīng)用數(shù)據(jù)加密技術(shù)的目的是為了保護網(wǎng)絡(luò)的信息通信安全,而現(xiàn)代網(wǎng)絡(luò)系統(tǒng)的開放性和資源的共享性特征使得計算機網(wǎng)絡(luò)安全問題面臨著更加復(fù)雜的形勢。高度開放的計算機網(wǎng)絡(luò)環(huán)境之下,各種非正常運作都會帶來嚴重的安全問題。早在1994年的花旗銀行事件當(dāng)中就涉及到了計算機網(wǎng)絡(luò)安全管理問題,時至今日這項管理工作仍然是核心工作之一。
數(shù)據(jù)加密的原理是將明文進行加密轉(zhuǎn)換為密文,然后再對密文進行解密獲得原始明文的過程,借助算法來實現(xiàn)每一步的流程。無論是對稱加密還是非對稱加密方法,密碼系統(tǒng)所具有的完整性和保密性都非常明顯。
鏈路加密指的是在線加密措施,其核心內(nèi)容是提供一個安全而可靠的鏈路,并保障鏈路的節(jié)點和節(jié)點之間可以進行安全穩(wěn)定的數(shù)據(jù)傳輸工作。在數(shù)據(jù)傳輸節(jié)點進行傳輸時,需要對傳輸?shù)臄?shù)據(jù)進行加密處理之后再進行后續(xù)解密,才可以完成一個完整的數(shù)據(jù)純屬過程。再次加密所使用的密鑰并非是當(dāng)前鏈路之內(nèi)的內(nèi)容,而是下一個鏈路當(dāng)中的內(nèi)容。在循環(huán)之后數(shù)據(jù)到達接收點,雖然數(shù)據(jù)在每一個節(jié)點都進行了解密,但后續(xù)進行的加密處理使得傳輸信息、路由信息都是在密文的支持下完成的傳輸,數(shù)據(jù)的起點和重點的隱蔽性非常突出。
節(jié)點加密和鏈路加密有著相似之處,都是在鏈路上來保障數(shù)據(jù)安全,也會先對數(shù)據(jù)進行加密處理。但由于鏈路加密方法當(dāng)中,中間節(jié)點的數(shù)據(jù)形式也是明文,可能會因此暴露部分信息內(nèi)容,此時僅僅采用鏈路加密技術(shù),安全性顯得不足。節(jié)點加密的特征就是將中間節(jié)點進行密鑰加密再進行傳輸。
在端對端加密方法的應(yīng)用過程中,從數(shù)據(jù)的源端到目的端流程中,數(shù)據(jù)都具有良好的保密性能,始終以密文的方式進行傳輸,即便存在錯誤的路由信息也不會因此而導(dǎo)致數(shù)據(jù)泄露以至產(chǎn)生更加嚴重的影響,且傳輸過程不會對密文進行解密,單純對數(shù)據(jù)信息加密而不是對路徑信息加密。相比于前兩種加密方法,端對端加密的成本相對較低,對于個人用戶、小型網(wǎng)絡(luò)而言,價值會更加突出。
數(shù)據(jù)的保密性始終是設(shè)計中的基本要求,將可讀的文本轉(zhuǎn)換為不可理解的文本,即便數(shù)據(jù)在傳輸環(huán)節(jié)當(dāng)中被竊取,也不會因此丟失關(guān)鍵的信息。盡管會因為網(wǎng)絡(luò)延遲或是惡意篡改的方式導(dǎo)致數(shù)據(jù)丟失,但是數(shù)據(jù)本身相對完整。
雖然計算機硬件技術(shù)和網(wǎng)絡(luò)技術(shù)得到了快速發(fā)展,但信息的安全性將始終成為人們關(guān)注的重點。其中,密碼技術(shù)作為信息安全的核心內(nèi)容,逐漸受到人們的重視,按照密鑰的類型差異可以被劃分為對稱密鑰系統(tǒng)和公開密鑰系統(tǒng),前者的加密解密速度較快,破譯困難,但安全性依賴于密鑰的保存;后者則基于數(shù)學(xué)問題展開設(shè)計,安全性相對較高,但密鑰太長和運算速度問題使得它在某些大規(guī)模系統(tǒng)當(dāng)中缺乏應(yīng)用價值。此時,經(jīng)過改進的加密密鑰交換協(xié)議和AES對稱密鑰加密算法可以被作為信息安全設(shè)計時的主要算法選擇。除此之外,DES、RSA、MD5也具有各自的優(yōu)勢。
DES即數(shù)據(jù)加密標(biāo)準,其是一種非常經(jīng)典的對稱加密算法,在對明文進行加密之前會將所有的明文進行分組,再對每一個組的二進制數(shù)據(jù)進行加密,最終將每一個組的密文進行拼接后得到整個密文。如果工作模式為加密模式,事先設(shè)定好的密鑰會對明文進行加密處理生成密文,然后輸出,數(shù)據(jù)傳輸之前所約定好的雙方按照不同的方式來獲得密鑰之后,在數(shù)據(jù)發(fā)送之前用DES算法來加密,數(shù)據(jù)接收方再使用相應(yīng)的密鑰進行解密。
MD5是為了保障信息資料的準確無誤,用于校驗數(shù)據(jù)的完整性。MD5的特征在于不可逆性,將任意長度的字節(jié)串轉(zhuǎn)換為證書之后,即便有人知道加密后的密文信息,也無法將其轉(zhuǎn)換為原有的數(shù)據(jù)信息。其加密、解密算法主要以補位、變換處理為主,首先是對數(shù)據(jù)長度進行補位和附加,然后將各個參數(shù)進行重置、裝入,完成對于數(shù)據(jù)的變換處理,最后輸出處理后的密文。
而當(dāng)前廣泛應(yīng)用的RSA公鑰加密算法是具備雙鑰的非對稱密碼體制,在生成包含公開密鑰和私有密鑰的密鑰對,而其安全性主要體現(xiàn)在對大整數(shù)進行因子分解難度過大,不僅在加密方面效果突出,在數(shù)字簽名層面同樣可以得到應(yīng)用,至今為止安全性良好。
不同的加密體制充分利用了不同算法的優(yōu)勢,在進行應(yīng)用時要基于網(wǎng)絡(luò)安全傳輸和保障的要求進行選擇。
目前,計算機網(wǎng)絡(luò)當(dāng)中的計算機之間建立連接采取的是國際標(biāo)準化組織ISO,并且IOS參考模型當(dāng)中會定義不同的體系結(jié)構(gòu)。在一個文件加密系統(tǒng)當(dāng)中,如果發(fā)送方要把文件傳輸給其它用戶,那么需要在上層應(yīng)用程序先完成文件的加密處理之后再將文件以網(wǎng)絡(luò)傳輸?shù)姆绞絺鬟f給接收方,系統(tǒng)會對用戶和服務(wù)器進行指定,得到最有效的保密信息。數(shù)據(jù)在整個傳輸過程當(dāng)中都是密態(tài)形式,即便是路由器端都無法看到明文。
從應(yīng)用環(huán)境搭建的角度分析,系統(tǒng)在網(wǎng)絡(luò)當(dāng)中的應(yīng)用環(huán)境(廣域網(wǎng)、局域網(wǎng)等)以網(wǎng)絡(luò)方式進行連接,每一個應(yīng)用環(huán)境當(dāng)中都包含了服務(wù)器和不同的計算機,每一臺計算機都可以對文件進行保密、解密,其和服務(wù)器之間的連接以郵件或是其它類型的傳輸形式來完成。其中,服務(wù)器作為核心組成部分,要負責(zé)整個環(huán)境當(dāng)中的用戶管理工作,同時還應(yīng)具備普通用戶機的功能。例如,服務(wù)器負責(zé)保密通信所需要的私鑰、公鑰文件,并且在用戶機運行之前都應(yīng)得到管理員的用戶名和密碼。
按照運行階段的不同可以將通信協(xié)議劃分為兩種類型,一種是在用戶和服務(wù)器進行認證的階段所采取的EKE協(xié)議,一般是首次更換公鑰和密碼時間段;二是在身份完成認證之后的階段,此時采用橢圓曲線公鑰體制展開通信,確保雙方的通信在秘密的環(huán)境下進行。
基本的EKE協(xié)議當(dāng)中,一個用戶和一個服務(wù)器共享一個口令,利用這一口令可以互相進行“身份識別”然后生成一個公共的會話密鑰,利用算法對密鑰進行加密,對方得到消息后進行解密再產(chǎn)生一個隨機會話,將公開密鑰和會話再次加密。在循環(huán)過程當(dāng)中完成協(xié)議,就可以用經(jīng)過處理后的會話密鑰來完成通信過程。即便有信息的竊取者,他們也僅僅能夠了解有加密信息的過程,但并不知道用于加密的內(nèi)容。該協(xié)議的創(chuàng)新點在于雙方的共享口令和對稱算法都需要進行信息確認之后才能完成加密過程,充分利用了對稱加密算法和公開密鑰密碼體系,文件傳輸經(jīng)過多重加密,安全性更加突出。隨機串的利用也進一步保障系統(tǒng)安全性,口令和協(xié)議運行時的傳輸消息也說明口令攻擊理論上是無法進行的。可以看到,無論是服務(wù)器端發(fā)出的信息、用戶的身份信息都是足夠安全的,這一方案也可以直接針對密文攻擊進行抵抗,采取多層保護措施。即便密鑰信息無意之間被泄露,服務(wù)器端由于無法找到對應(yīng)的Username信息,也會丟棄那些不合法的認證信息。
加密系統(tǒng)的基本要素是加密算法和密鑰管理,其中不同的公式和法則會規(guī)定密文、明文之間的變化方法。密鑰作為控制、解密算法的關(guān)鍵信息,在共同計算機應(yīng)用的前提之下,會采取更加完善的應(yīng)用方案。在服務(wù)器端和客戶端開始通信之前就會完成服務(wù)器的公鑰分發(fā)過程,公鑰是由應(yīng)用程序生成,利用其來完成信息保密等操作處理。以AES對稱加密算法為例,在文件打包模塊打包前生成隨機密碼,完成對于數(shù)據(jù)的查詢和權(quán)限評估,其中最高的權(quán)限用戶可以獲得所有文件的密碼。如果用戶要解密系統(tǒng)的加密文件,那么服務(wù)器要先生成用戶名和密鑰,并且管理模塊還會將合理的權(quán)限、信息寫入數(shù)據(jù)庫當(dāng)中,合法用戶可以在經(jīng)過驗證后查詢密碼,確定信息的合法性。
在系統(tǒng)的體系設(shè)計方面,要綜合考慮到硬件層面的要求,采用基于Internet的服務(wù)器客戶結(jié)構(gòu)對關(guān)鍵信息進行傳輸控制,整個系統(tǒng)由服務(wù)器和客戶機兩個部分組成,每個部分都包含了通信和解密、加密功能,服務(wù)器端的應(yīng)用程序和客戶端的應(yīng)用程序負責(zé)這些操作。其中,服務(wù)器端的應(yīng)用程序作為系統(tǒng)的關(guān)鍵組成部分,密鑰管理模塊、加密打包模塊、文件信息綜合管理模塊共同組成系統(tǒng)架構(gòu)。此外,雙向身份認證模塊還能完成用戶的信息認證。而客戶端應(yīng)用程序則是系統(tǒng)架構(gòu)當(dāng)中完成加密的載體和平臺,即經(jīng)過身份認證的用戶才能獲取密鑰解密密文,其中客戶端模塊包括文件解密模塊、公鑰私鑰模塊、密碼模塊等。當(dāng)然在系統(tǒng)功能的設(shè)計應(yīng)用當(dāng)中,還應(yīng)考慮到安全要求和數(shù)據(jù)庫設(shè)計要求。例如,數(shù)據(jù)庫內(nèi)部人員違規(guī)引起信息泄露,或是因為數(shù)據(jù)庫業(yè)務(wù)數(shù)據(jù)建模支持問題等。需注意的是,如果網(wǎng)絡(luò)服務(wù)器并非是Windows系統(tǒng),那么可以應(yīng)用Java等手段編寫代碼來進行實際應(yīng)用,甚至是完成系統(tǒng)移植。
結(jié)語:數(shù)據(jù)加密技術(shù)在現(xiàn)代社會面臨著更高的信息傳輸和數(shù)據(jù)存儲需求,在現(xiàn)實應(yīng)用層面還應(yīng)該思考如何增強密鑰安全性,在保障運算速度的同時設(shè)計出更加具備價值的網(wǎng)絡(luò)文件加密傳輸系統(tǒng)。在后續(xù)的工作實踐環(huán)節(jié),還需要更關(guān)注系統(tǒng)的跨平臺應(yīng)用和系統(tǒng)移植要求,將數(shù)據(jù)加密技術(shù)和VPN通信環(huán)境、過濾技術(shù)等進行結(jié)合,形成具有監(jiān)控管理和檢查等多項功能的網(wǎng)絡(luò)安全系統(tǒng)。