張月++李海青
摘要:在信息時代,信息在網(wǎng)絡(luò)中安全的傳輸成為網(wǎng)絡(luò)發(fā)展中的重要問題。該文在討論了對稱加密算法、非對稱加密算法、摘要算法及數(shù)字簽名技術(shù)的基礎(chǔ)上,闡述了加密理論在安全的通信中的應(yīng)用。
關(guān)鍵詞:加密;數(shù)字簽名;摘要;保密通信;信息安全
中圖分類號 TP309 文獻標(biāo)識碼:A 文章編號:1009-3044(2015)21-0012-02
On the Encryption Technology Used in Secure Communication
ZHANG Yue, LI Hai-qing
(Henan Communication Vocational Technology College, Zhengzhou 450001, China)
Abstract: In the information age, information security in the network transmission has become an important issue. This paper discusses the encryption algorithms, public-key cryptography, digest algorithms and digital signature technology. At last, the paper presents the encryption used in a secure communication.
Key words: encryption; digital signature; hash; secure communication; information security
隨著網(wǎng)絡(luò)的發(fā)展,信息在網(wǎng)絡(luò)中安全的從發(fā)送方傳到接收方成了網(wǎng)絡(luò)應(yīng)用中的重要一環(huán)。傳統(tǒng)密碼學(xué)給我們提供了經(jīng)典的算法,為信息的安全傳輸提供了重要保障。
1 加密理論基礎(chǔ)
1.1 對稱和非對稱加密
密碼算法按密鑰的不同分為對稱加密和非對稱加密兩大類。對稱密碼體系也稱為單鑰密碼體系。對稱密碼算法中加密和解密時使用同一個算法、同一個密鑰。對稱密碼體系通常分為兩大類,一類是分組密碼(如DES、AES算法),另一類是序列密碼(如RC4算法)。非對稱密碼算法又稱公鑰密碼算法,在算法實現(xiàn)過程中同時生成的一對密鑰,一個用于加密,一個用于解密,并且用一個密鑰加密的信息只能用和它同時生成的這個密鑰解密。在兩個密鑰中,一個保密存儲,不對任何外人泄露,簡稱為“私鑰”;另一個密鑰可以公開發(fā)表,通常是用數(shù)字證書的方式發(fā)布在目錄服務(wù)器上,這個密鑰稱為“公鑰”。通常情況用公鑰進行加密,私鑰用于解密。常用的非對稱加密算法有RSA等。
1.2 哈希函數(shù)
哈希(Hash)又稱散列、又稱摘要。它是這樣一個函數(shù),它以一個變長的信息作為輸入,并產(chǎn)生一個定長的散列(也稱摘要)作為函數(shù)的輸出。散列函數(shù)最主要的作用是用于驗證信息完整性,即原始信息在傳遞或存儲過程中是否被篡改。常用的算法有MD5、SHA-1等。
哈希函數(shù)的主要特點有:
1) 論輸入的消息有多長,計算出來的消息摘要的長度總是固定的。
2) 一般地,只要輸入的消息不同,對其進行摘要以后產(chǎn)生的摘要消息也必不相同;但相同的輸入必會產(chǎn)生相同的輸出。
3) 消息摘要函數(shù)是單向函數(shù),即只能進行正向的信息摘要運算,而無法從摘要中恢復(fù)出任何的消息。
2 數(shù)字簽名技術(shù)
所謂數(shù)字簽名是指通過一個單向函數(shù)對要傳送的電子文檔進行處理得到的,用于認證電子文檔來源并核實該文檔是否發(fā)生變化的一個字符串。它有三個作用:認證、非否認性和完整性驗證。在數(shù)字簽名技術(shù)應(yīng)用了兩個算法:即摘要算法和用于簽名的公鑰算法。實現(xiàn)過程分兩部分:簽名與驗證。
數(shù)字簽名與驗證的過程實現(xiàn)步驟如下:
1) 采用摘要算法,對被簽名的電子文檔做摘要運算,得到一份數(shù)據(jù)摘要;
2) 用簽名者的私鑰和數(shù)字簽名算法對數(shù)據(jù)摘要做非對稱加密,得到的結(jié)果即為數(shù)字簽名;
3) 將以上的簽名和電子文件原文以及簽名證書的公鑰一起封裝,形成簽名結(jié)果發(fā)送給接收方;
4) 接收方首先用發(fā)送方公鑰解密數(shù)字簽名,導(dǎo)出數(shù)字摘要,并對電子文件原文作同樣摘要運算得一個新的數(shù)字摘要;
5) 將兩個摘要值進行比較。如果兩個摘要匹配,則簽名得到驗證,否則簽名無效。
數(shù)字簽名得到驗證可得出兩個結(jié)論:一是文件是由簽名方簽署。因為數(shù)字簽名是用簽名方公鑰來解密的,而簽名方是唯一擁有和解密公鑰相匹配的私鑰的那個人,因此保證了非否認性;二是文檔在傳輸過程中未被篡改。因為即使稍加改動,根據(jù)摘要算法的性質(zhì)可知,得出的摘要值也會不同,從而保證了被簽名數(shù)據(jù)的完整性。
3 加密技術(shù)在保密通信中的應(yīng)用
信息安全傳輸機制就是在數(shù)字簽名的基礎(chǔ)上加入對信息的保密傳輸,而由于對稱加密的速度較快,因此,保密傳輸過程是用對稱加密算法實現(xiàn)的,而對稱加密要考慮密鑰本身的安全傳遞問題,針對密鑰本身是個小信息,因此可以采用非對稱加密方式對密鑰進行加密傳輸??傊?,實現(xiàn)信息的安全傳輸可以采用對稱加密算法、非對稱加密算法和哈希算法相結(jié)合的方式。以終端A為發(fā)送方,終端B為接收方為例,圖1、圖2給出了具體實現(xiàn)流程。
發(fā)送端A的操作步驟如下:
1) 將要發(fā)送的原文信息用會話密鑰(對稱加密用的密鑰)和對稱加密算法進行加 密得到保密后的原文;
2) 將會話密鑰用接收方的公鑰進行加密,得到加密后的對稱密鑰;
3) 將原文信息用摘要算法進行運算得到原文的摘要,并對這個摘要用發(fā)送方自己的私鑰進行數(shù)字簽名;
4) 把以上三步驟得到的保密的原文、加密后的對稱密鑰和數(shù)字簽名信息打包傳遞給接收端B。
接收端B的操作步驟如下:
1) 將加密后的對稱密鑰用自己的私鑰進行解密,得到對稱密鑰;
2) 用對稱密鑰對發(fā)來的“保密的原文”進行解密,得到明文信息;
3) 用摘要算法對明文進行摘要運算得到一份摘要;
4) 對數(shù)字簽名信息用發(fā)送端A的公鑰和非對稱加密算法(同發(fā)送端A使用相同的算法)進行運算得到一份摘要信息;
5) 將兩個摘要進行對比,相同則說明通信是安全的。
4 結(jié)論
兩份摘要如果相同須有幾個條件來保證,第一信息在傳遞過程中沒有更改,因為不同的信息不能得到相同的摘要結(jié)果;第二,簽名信息來自發(fā)送端A,因為接收端是用發(fā)送端A的公鑰解密的簽名,根據(jù)非對稱密碼的性質(zhì),只有A的公鑰與A自己的私鑰是匹配的,因此A不能否認自己的簽名行為。在信息傳輸過程中對稱密碼算法有效保障了信息是加密傳輸?shù)?。因此該過程通過對幾個加密技術(shù)的應(yīng)用有效保證了信息在網(wǎng)絡(luò)中的安全傳送。在保密通信的的軟件開發(fā)過程中可以通過相應(yīng)的經(jīng)典的算法(RSA、MD5、DES)實現(xiàn)。在實踐過程中發(fā)送和接收的雙方可以用PGP軟件按上述流程的原理進行保密通信。該流程和保密通信技術(shù)在網(wǎng)絡(luò)信息傳遞過程中具有重要的現(xiàn)實意義。
參考文獻:
[1] 賀廣生,武書彥,吳慧玲.計算機網(wǎng)絡(luò)安全實訓(xùn)教程[M].北京:中國鐵道出版社,2011.
[2] 楊娟,趙婷婷. 淺析數(shù)字簽名及其應(yīng)用[J].中國科技信息,2011(8):138.