国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于DES和RSA加密算法的數(shù)據(jù)安全傳輸技術的研究

2011-11-25 02:37夏淑華
制造業(yè)自動化 2011年2期
關鍵詞:明文解密密鑰

夏淑華

XIA Shu-hua

(湖南司法警官職業(yè)學院,長沙 410131)

1 DES和RSA計算方法概述

1.1 DES計算方法

這個DES即也就是一種標準的加密方式,計算的方式可以看做是分組加密,其核心的方法是按64bit分組,將數(shù)據(jù)分成若干組進行加密,使用的是8bit的奇數(shù)偶數(shù)檢驗,按照長度為56bit字節(jié)為密鑰的有效長度。計算過程為64bit的明文從輸入端進入,從另一端輸出的即為64位的密文。DES加密的算法在對數(shù)據(jù)加密和解密是使用一種計算方法,安全的保證完全依靠密鑰。執(zhí)行過程中,DES對64bit的明文進行分組,實現(xiàn)加密,通過轉換器實現(xiàn)這個過程,即明文進行左右兩組,其長度相等為32bit。在相同的16輪次計算過程中,完成加密的實現(xiàn),預算的整個過程被命名為f,運算的目的就是讓數(shù)據(jù)和密鑰進行結合。經過16輪次的計算,輪次計算,左右兩邊的兩組數(shù)據(jù)就會在此組合,在完成后輸出經由另一個轉換器,在這里的計算和前面的過程正好是相反的,也就完成了算法的進行。在每個輪次的處理中,密鑰就會產生固定的位移,過程為在56位中選取48位,并通過擴展器的作用讓右邊的數(shù)據(jù)形成一個48位的信息,并在這里完成與48位的密鑰相結合的目的,通過裝置內的8個s盒的轉化,這樣就得到了32位新的數(shù)據(jù),這樣就完成了加密的運算過程。同樣的操作在數(shù)的左半邊同時進行,利用異或運算,函數(shù)f和左半邊數(shù)據(jù)結合,形成了新的右半邊部分,原來的右半邊數(shù)據(jù)形成了新的左邊數(shù)據(jù)。這個操作在重復了16次后,就實現(xiàn)了DES的16論計算。

1.2 RSA計算方法

這個計算方法與DES不同的是,RSA在加密的過程中有兩個密鑰,其中一個為公共密鑰,相對的就是私有的密鑰。在加密的過程中,使用其中的一個加密,則另一個為解密。在RSA的算法中密鑰為40-2048字節(jié),加密的時候將明文分解成“小塊”,其大小是可以變化的,但是,無論這樣的設置都不能超過密鑰,RSA算法核心的思路就是將明文分解成小塊,其長度和密鑰相一致。顯而易見的是密鑰長則加密效果好。但是,隨之產生的加密和解密的消耗也就越大,因此要在安全性和應用性之間進行權衡,一般采用的都是64位。RSA算法的實現(xiàn),首先是對安全大素數(shù)的選取,其分別為P和Q。為了達到最佳的安全效果,這兩個素數(shù)的長度是相等的。計算n=p×q,而n>512bit,這時為了保證安全性,因為這個算法的安全性是建立在因子分解大數(shù)上的;其次,計算出n的歐拉函數(shù)?(n)=(p-1)(q-1),其中?(n)的是不應超過n,而且和n的互素數(shù);第三,[0,?(n)-1]的數(shù)列當中隨機選取出加密的密鑰e,同時讓e和?(n);第四,計算利用Euclid方法,得出密鑰解密的d,并且且de=1(mod ?(n))。其中的n與d為互質。數(shù)e和n即公共密鑰,d為私有密鑰。算法加密和解除:如加密的信息為m,則將m視為一長度整數(shù):若m大于n則將m分成等長度的數(shù)據(jù)塊,即m1……mi,其長度為s位,滿足2^s<=n的條件,且s盡量大。

結束前面的過程后,將對數(shù)據(jù)塊進行加密。分組加密的過程中,mi所產生的密文是ci=mi^e(mod n);分塊進行解密為,ci與之配合的是明文為:mi=ci^d(mod n)。

2 DES和RSA算法綜合利用

RSA的計算主要的計算方式遵循以下原則,即在對N位密鑰、N位資料處理時,加減法所消耗的時間為O(N),而乘除法所消耗的時間為O(n^2),在計算a^b mod c需要消耗的時間就為O(N^3)。由此可以推算出,對N位數(shù)據(jù)信息進行計算所消耗的時間為O(N^3)。一般采用的加密,資料N的長度為512-1024之間,主要是考慮到安全長度保證,因此計算N^3的計算量將相當?shù)木薮?。這樣利用RSA來進行數(shù)據(jù)的加密和解密降消耗大量的時間,如果需要加密的數(shù)據(jù)過大,就將消耗更長的時間,這個時間將是DES的N多倍。

另外,所產生RSA密鑰所耗費的時間也相當巨大,以N列為密鑰的話,兩個相鄰質數(shù)平均間隔為O(N)。2、RSA與DES的結合方式假設發(fā)送的信息為A,加密密鑰為kea,解密密鑰為kda,接收方為B,加密密鑰為keb,解密密鑰為kdb,其結合方式為:1)在數(shù)據(jù)的傳輸中,發(fā)送者先生成DES的密鑰K;2)發(fā)送者對數(shù)據(jù)的加密采用的是接收者上傳至服務器上的RSA計算的公共密鑰keb,并利用這個密鑰將DES的密鑰K進行加密處理,3)發(fā)送者將編制好的信息利用kda和keb進行簽名,以方便在解密的時候進行識別;4)發(fā)送者將加密數(shù)據(jù)利用K進行加密,并形成簽名文件,再將其和CK結合形成完整的加密數(shù)據(jù)發(fā)送給接收方。5)接收的一端受到C后,首先利用自己的解密密鑰kdb解密出C中的DES密鑰,即K,在利用K解密出明文以及簽名信息;6)接收端用發(fā)送方的公開密鑰kea和自己的解密密鑰kdb對簽名的信息進行認證,然后再進行適當?shù)奶幚?,在形成自己的?shù)字簽名信息發(fā)往對方;7)發(fā)送和接收雙方在接收和處理完成后刪除DES密鑰K。

3 基于DES和RSA加密算法的數(shù)據(jù)安全傳輸技術

3.1 DES和RSA實現(xiàn)過程

1)對稱加密的算法

在對稱的數(shù)據(jù)加密過程中,利用DES算法來實現(xiàn),從根本上看是一種傳統(tǒng)的分組加密模式。在其進行加密的實現(xiàn)過程中,采用的是DES的64位加密分組的方式,密鑰的長度和前面說闡述的一樣,為56位,而且在加密數(shù)據(jù)的時候進行16輪次的計算和編制。可以看到每個計算輪次都會產生48位的子密鑰,其產生的來源是在56位的基礎上進行移位計算而得來的。為了在數(shù)據(jù)傳輸中提高安全性,在數(shù)據(jù)處理時,增加了DES的算法改進技術,也就是利用三個密鑰來實現(xiàn)逐層加密,在這里假定密鑰為K1、K2、K3,而P為明文,C為密文,則C=EK3[DK2[EK1[P]]]可見需要三倍的時間來處理,但是三重加密編制的168位密鑰無疑可以增強加密的安全度。按照三個步驟就產生了密鑰生成、計算加密、解讀解密為基礎的DES算法。在使用的過程中還考慮到了平臺多元適應性,因此多采用C語言的作為算法設計的基本語言,把加密的三個關鍵分組打包成三個函數(shù),并可以在主流的操作系統(tǒng)上進行驗證。這種軟件加密的形式,速度雖然比電子硬件形式要慢,但是成本、操作、應用范圍都具備了優(yōu)勢。

2)非對稱數(shù)據(jù)加密

對非對稱數(shù)據(jù)進行處理的時候,采用RSA方法實現(xiàn)有其明顯的實用性。即可以是相對數(shù)據(jù)本身的加密也可以對數(shù)字簽名進行安全維護,如利用RSA的特殊功能,來實現(xiàn)對DES密鑰的加密就是一個明顯的優(yōu)勢,并通過網(wǎng)絡將這些二次加密的文件進行傳輸,就大大提高了數(shù)據(jù)的安全性傳輸。這就是兩種算法提高數(shù)據(jù)傳輸?shù)陌踩缘母驹颉:颓懊娴膶ΨQ加密相似,在設計中也應當考慮到廣泛應用的問題。

3.2 數(shù)據(jù)安全傳輸?shù)膶崿F(xiàn)

1)數(shù)據(jù)傳輸?shù)闹饕K

在系統(tǒng)中,數(shù)據(jù)傳輸模塊是所有加密過程的中間環(huán)節(jié),是各個模塊的橋梁。首先傳輸模塊與中央控制器形成關聯(lián),在功能實現(xiàn)時創(chuàng)建一個檢視窗口,讓所有的組件和中央控制器進行數(shù)據(jù)傳輸;反過來中央處理器也通過它將指令傳遞給其他控制組件。要達成這個功能就需要數(shù)據(jù)傳輸模塊具備接受和發(fā)送功能。

2)安全傳輸中的加密算法實現(xiàn)

DES的計算設計讓其形成了主要的三個功能參數(shù),即Key、Data、Mode。其中Key有8個字節(jié),共計64位大小,是計算中的工作性密鑰;Data有8個字節(jié),其大小也是64位,它是DES計算處理的對象;Mode解讀的是算法的共工作形式。

該算法對數(shù)據(jù)的處理為:當Mode指令加密時,系統(tǒng)利用Key將對象Data做相應的密鑰結合,即對數(shù)據(jù)進行加密,而其生成的數(shù)據(jù)就是系統(tǒng)的輸出結果;如Mode指令為解密,則系統(tǒng)就利用Key數(shù)據(jù)解讀,將數(shù)據(jù)還原,結果輸出。在數(shù)據(jù)傳輸?shù)陌l(fā)送和接收中,雙方應約定好Key,并在數(shù)據(jù)傳輸?shù)陌l(fā)起方,用該密鑰對核心的秘密數(shù)據(jù)進行處理,然后再以加密文件的形式在網(wǎng)絡中實現(xiàn)傳遞,數(shù)據(jù)達到目標地后,接收方利用密鑰對密碼數(shù)據(jù)進行解密,這樣就可得到明文形式的數(shù)據(jù)。這樣保證了核心數(shù)據(jù)的傳輸安全性。DES算法設計在利用DES的過程中,設計的算法主要有三個步驟,即密鑰生成、加密函數(shù)、解密函數(shù)。為了更好的實現(xiàn)平臺跨越性,統(tǒng)一選擇了C語言作為實現(xiàn)加密的語言。其語言構成為:struct deskeytype{int keylen;//密鑰長度char key[20];//密鑰};

DES在數(shù)據(jù)安全傳輸中的功能實現(xiàn),在整個數(shù)據(jù)傳輸過程中,負責發(fā)送的模塊可以將加密模塊所生成的加密數(shù)據(jù)作為輸入信息,然后按照約定好的協(xié)議進行數(shù)據(jù)傳輸前的處理,隨后利用網(wǎng)絡協(xié)議將整個文件傳輸?shù)浇邮辗健_@時接收的模塊就把這個完整的數(shù)據(jù)存儲下來,并按照協(xié)議進行分解和解讀,也就是將數(shù)據(jù)向下一級模塊進行處理。在完成解密后將輸出數(shù)據(jù)傳遞給其他應用程序。這個過程中,為了保證數(shù)據(jù)傳輸?shù)陌踩?,在發(fā)送和接收的模塊中利用TCP協(xié)議作為低層次的傳輸協(xié)議,并且為了生成的代碼可以跨平臺使用,應當使用標準C的套接自編程,在經過測試。

4 安全傳輸系統(tǒng)的總體構成

如果采用的是VC6.0系統(tǒng)構建,就需要考慮到集成性。也就是將某個處理的方式匯集到一個特定的模塊上,并使之能夠完成功能的實現(xiàn)。這樣就可以將整個加密和解密的系統(tǒng)人為的分解成簡單的模塊化處理區(qū)域。這樣可以讓系統(tǒng)更加的簡單化清晰化。簡化的系統(tǒng)設計就是對加密和解密功能的優(yōu)化,這種優(yōu)化就是將系統(tǒng)分解成為四個模塊,控制、加密、簽字、傳輸模塊,在這些模塊中控制模塊是負責對其他模塊的控制和調節(jié),整個加密的功能實現(xiàn)依靠的是控制模塊的指揮。與此同時,系統(tǒng)還會附加某些功能,如對話功能的實現(xiàn),主要是幫助接收和傳送雙方實現(xiàn)實時的對話,并保證傳輸?shù)臅r間一致。采用明文的傳輸模式,這主要是傳輸一些正規(guī)的文件,只有文件不含有亂碼就可在這種方式的幫助下進行傳輸;傳送含有不規(guī)則符號的文件,它是專門為傳送一些特殊文件設計,一般不使用。

[1]陳明舉,陳善學.基于DES算法和RSA算法的數(shù)據(jù)加密方案[J].南昌工程學院學報,2006,(01).

[2]吳昊.基于DES算法和RSA算法的數(shù)據(jù)加密方案[J].焦作工學院學報:自然科學版,2002,(05).

[3]程一飛.RSA算法及其應用[J].安慶師范學院學報,2004,10(02).

[4]程明慧.基于DES和RSA算法的數(shù)據(jù)加密方案及實現(xiàn)[J].河南教育學院學報,2009,(02).

[5]楊波.現(xiàn)代密碼學[M].北京:清華大學出版社,2003.

[6]章照止.現(xiàn)代密碼學基礎[M].北京:郵電大學出版社,2004:57-59.

[7]徐向文.藍牙技術中的一種基于DES加密的安全策略[J].通信技術,2008,(11).

[8]李海斌,周玉潔.一種抗DPA攻擊的DES設計[J].通信技術,2007,(11).

猜你喜歡
明文解密密鑰
幻中邂逅之金色密鑰
炫詞解密
解密“一包三改”
密碼系統(tǒng)中密鑰的狀態(tài)與保護*
炫詞解密
TPM 2.0密鑰遷移協(xié)議研究
一種對稱密鑰的密鑰管理方法及系統(tǒng)
奇怪的處罰
奇怪的處罰
四部委明文反對垃圾焚燒低價競爭
辰溪县| 沈丘县| 乌兰县| 新平| 越西县| 万盛区| 铜陵市| 怀化市| 安国市| 微山县| 台东县| 康平县| 定安县| 宝鸡市| 辽宁省| 肇庆市| 监利县| 常德市| 吴旗县| 新源县| 金秀| 金川县| 龙门县| 虞城县| 闵行区| 石河子市| 林芝县| 奉贤区| 东城区| 沙洋县| 中西区| 屯门区| 灵璧县| 葵青区| 桐柏县| 鹿泉市| 泰安市| 新化县| 富源县| 泾源县| 神木县|