黃恒一 付三麗
(三亞學(xué)院理工學(xué)院,海南 三亞 572022)
隨著計算機網(wǎng)絡(luò)的廣泛應(yīng)用,現(xiàn)代密碼技術(shù)的應(yīng)用已經(jīng)深入到數(shù)據(jù)處理過程的各個環(huán)節(jié)?,F(xiàn)代密碼學(xué)應(yīng)用中需要的數(shù)據(jù)工具也更加廣泛,本文對現(xiàn)代密碼學(xué)應(yīng)用中常見的算術(shù)基本定理、離散對數(shù)問題、迪菲·赫爾曼密鑰交換等數(shù)學(xué)問題進(jìn)行了分析研究,嘗試讓讀者了解現(xiàn)代密碼學(xué)中的公開密匙密碼學(xué)、RSA公鑰密碼學(xué),并在此基礎(chǔ)上提出了一種基于數(shù)字軟件轉(zhuǎn)換、DES加密算法及一次一密特征值的混合在線加密方法,并對采用的混合加密方法,進(jìn)行了解密驗證測試[1]。
現(xiàn)代密碼學(xué)的數(shù)據(jù)安全基于扎實的數(shù)學(xué)理論基礎(chǔ)上,特別是公鑰密碼使得發(fā)送端和接收端無需密鑰傳輸?shù)谋C芡ㄐ懦蔀榭赡?,?dǎo)致密碼學(xué)上的一場革命,這是密碼學(xué)的第二次飛躍。公開密鑰密碼通信機制中,公布于眾的密鑰稱為“公鑰”,私人保存的密鑰稱為“私鑰”。兩把密鑰互補,用公鑰加密的密文可以用私鑰解密,反過來也一樣。論文接下來,從數(shù)學(xué)的角度通過算術(shù)基本定理、離散對數(shù)問題、迪菲·赫爾曼密鑰交換等數(shù)學(xué)問題對公鑰密碼學(xué)進(jìn)行了剖析[2]。
質(zhì)數(shù)是指在大于1的自然數(shù)中,除了1和它本身以外不再有其他因數(shù)的自然數(shù)。所有的數(shù)字都是構(gòu)建于這些質(zhì)數(shù)數(shù)字之上,任何數(shù)字有且只有一種質(zhì)因數(shù)分解,可以將每個數(shù)字描述成一把特殊的“鎖”,而每個鎖的獨特鑰匙就是這個數(shù)字的質(zhì)因數(shù)分解。就像任何兩個數(shù)的質(zhì)因素的分解不一樣,任何一把鎖的鎖芯也是不一樣的[3]。
離散對數(shù)問題主要用在密碼學(xué)加密算法的單向加密應(yīng)用中。單向加密要求加密算法朝著一個方向加密明文容易,但是相反的過程通過密文解密破解明文信息很難的一個數(shù)值過程。其中模運算就體現(xiàn)了這樣一個運算過程要求。模運算公式中選取質(zhì)數(shù)作為模數(shù),公式3xmod17≡y,當(dāng)x取值不同時,3為數(shù)字生成元,y的數(shù)值可以均勻地在1~17中間的任意數(shù)字均勻分布,例如3xmod17≡y,中當(dāng)y的數(shù)值為12的時候,用試錯法可以得出x的數(shù)值為29,這個數(shù)學(xué)問題就稱為離散對數(shù)問題,但是如果當(dāng)模數(shù)為很大的質(zhì)數(shù)時,就需要很長的計算時間,即使用性能強大的計算機運算,可能也需要上千年的時間。單向函數(shù)的強度取決于反向過程所需要的時間[4]。
現(xiàn)代計算機密碼學(xué)的數(shù)據(jù)安全性基于密鑰,前文提到了基于數(shù)據(jù)安全的密鑰單向加密函數(shù),此節(jié)迪菲·赫爾曼用(Diffie Hellman)密鑰交換數(shù)學(xué)問題,從數(shù)據(jù)的角度對公鑰密鑰交換進(jìn)行解釋,使得發(fā)送端和接收端無需密鑰傳輸?shù)谋C芡ㄐ懦蔀榭赡躘5]。
通信數(shù)據(jù)收發(fā)A、B兩方使用Diffie Hellman密匙交換算法實現(xiàn)對稱密匙交換,A所選取的隨機數(shù)私鑰15,B所選取的隨機數(shù)私鑰13,A與B確定的模運算生成元及模數(shù)為g=3,n=17,加密公式:A(B)=gxmodn,g、n為加密所采用的生成元及模數(shù),x為數(shù)據(jù)收發(fā)A、B兩方通信方私有密鑰隨機數(shù),計算他們使用的對稱密鑰值。
根據(jù)Deffie Hellman密匙交換算法原理:
g=3,n=17;
A方選擇的隨機數(shù)x=15,則A=gxmodn=315mod 17≡6;
B方選擇的隨機數(shù)y=13,則B=gxmodn=313mod 17≡12;
A方把A1=6發(fā)送給B方,B計算Ka=613mod 17≡10;
B方把B1=12發(fā)送給A方,A計算Kb=1215mod17≡10;
上文中,通信A、B雙方實際都是進(jìn)行模運算315*13mod17,通信過程中,如果存在信息的截獲者即使知道模運算公式A(B) =gxmodn,生成元3及模數(shù)17,但是不知道通信A、B雙方的私有密鑰是無法破解通信A、B雙方的共享密鑰。當(dāng)通信雙發(fā)私鑰數(shù)字足夠大及模數(shù)數(shù)字足夠大時,現(xiàn)代密碼學(xué)應(yīng)用中的離散對數(shù)問題結(jié)合偽隨機數(shù)問題的應(yīng)用,將為數(shù)據(jù)通信的雙方提供足夠安全的數(shù)據(jù)通信機制[6]。
RSA加密算法的安全性依賴于數(shù)學(xué)難題大素數(shù)分解,計算兩個大素數(shù)的乘積很容易,但是反過來由該乘積分解成兩個素數(shù)相乘的逆過程很難,當(dāng)進(jìn)行運算的兩個大素數(shù)很大時,即使使用高性能的計算機,這個過程的難度也會急劇增加[7]。
RSA算法是一種非對稱的加密算法,它通常是生成一對RSA密鑰,其中一個是保密密鑰(私鑰),由用戶保存;另一個為公開密鑰(公鑰),可對外公開[8]。
通信時,比如A要給B傳輸信息,A先用B的公鑰將內(nèi)容加密后傳輸,B收到A傳輸過來的信息后用自己的私鑰解密。該過程中,只要B不泄露自己的私鑰,就算第三方截取到了該信息,沒有B的私鑰也無法解密通信過程中的數(shù)據(jù)信息內(nèi)容。
前文主要是從數(shù)學(xué)的角度,通過對現(xiàn)代密碼學(xué)中的幾個問題進(jìn)行剖析從而讓讀者對現(xiàn)代密碼學(xué)應(yīng)用有一個深入的了解。此節(jié)提出了一種結(jié)合數(shù)字文本轉(zhuǎn)換軟件、DES加密算法組成的混合在線加密方法,并對采用的混合在線加密方法形成的密文進(jìn)行攻擊驗證測試[9]。
文中此處,首先用數(shù)字文本轉(zhuǎn)換軟件轉(zhuǎn)換待加密的明文信息。通過數(shù)字文本轉(zhuǎn)換軟件將保存明文信息的圖片轉(zhuǎn)換成密文文本。
由圖1、圖2可知,將明文數(shù)字信息123321所保存的圖片通過數(shù)字文本轉(zhuǎn)換軟件,轉(zhuǎn)換為TXT文本文件如圖2所示。此外為了提高信息的一次一密的安全性,在圖2數(shù)字文本轉(zhuǎn)換信息后的信息密文文本中添加一次一密特征值,如此處的“123456”,如圖3陰影所示,提高密文信息的穩(wěn)定性。
圖1 待加密的明文信息
圖2 數(shù)字轉(zhuǎn)換信息后的密文信息
圖3 添加有特征值的密文信息
前文是通過數(shù)字文本轉(zhuǎn)換軟件將后添加包含特征值的明文加密信息,此處采用DES在線加密的方法,通過通信雙方共享的加密密鑰111111對前文中的密文信息進(jìn)行再次加密,加密過程如圖4所示。
圖4 添加有特征值的DES密文信息
文中的密文解密驗證測試包括兩個部分,分別為包含特征值的數(shù)字文件文本的DES解密密文還原測試及不包含特征值的數(shù)字文件文本的DES解密密文還原測試[10]。
3.3.1 含特征值密文信息的解密測試
文中含特征值密文信息的解密測試,通過DES在線解密網(wǎng)站,通過收發(fā)雙方的共享密鑰111111,進(jìn)行DES加密過程的逆變換,此外再結(jié)合數(shù)字文本軟件轉(zhuǎn)換工具進(jìn)行數(shù)字文本文件的逆轉(zhuǎn)換,測試結(jié)果如圖5、圖6所示,發(fā)現(xiàn)轉(zhuǎn)換失敗。
圖5 在線解密后的含特征值DES密文信息
圖6 數(shù)字轉(zhuǎn)換軟件獲取明文信息失敗
3.3.2 不含特征值密文信息的解密測試
文中不含特征值密文信息的解密測試,通過DES在線解密網(wǎng)站,通過收發(fā)雙方的共享密鑰111111,進(jìn)行DES加密過程的逆變換,此外再結(jié)合數(shù)字文本軟件轉(zhuǎn)換工具進(jìn)行數(shù)字文本文件的逆轉(zhuǎn)換,測試結(jié)果如圖7、圖8所示,發(fā)現(xiàn)轉(zhuǎn)換成功。
圖7 在線解密后的不含特征值DES密文信息
圖8 數(shù)字轉(zhuǎn)換軟件獲取明文信息成功
論文提出了一種結(jié)合數(shù)字文本轉(zhuǎn)換軟件、DES算法及密碼信息的一次一密特點混合在線加密方法,文中的加密方法,從數(shù)學(xué)的角度進(jìn)行了設(shè)計,考慮了數(shù)學(xué)中的一次一密,明文通過數(shù)字轉(zhuǎn)換軟件第一次加密后添加了特征值,文中的混合加密方法可以進(jìn)一步拓展,如采用更加復(fù)雜的RSA加密算法等,可進(jìn)一步研究及提高數(shù)據(jù)的安全性。
論文從數(shù)學(xué)的角度,對計算機現(xiàn)代密碼學(xué)應(yīng)用中常見的算術(shù)基本定理、離散對數(shù)問題、迪菲·赫爾曼密鑰交換等數(shù)學(xué)問題進(jìn)行了深入的剖析,從數(shù)學(xué)的角度對現(xiàn)代密碼學(xué)通信方式進(jìn)行了闡述。當(dāng)下現(xiàn)代密碼技術(shù)的應(yīng)用已經(jīng)深入到數(shù)據(jù)處理過程的各個環(huán)節(jié),密碼學(xué)的數(shù)學(xué)工具的添加也更加廣泛。文中采用的信息混合加密方法,可進(jìn)一步結(jié)合復(fù)雜的RSA加密算法、數(shù)據(jù)加密工具等,為進(jìn)一步研究及提高數(shù)據(jù)的安全性提供參考。