糜小夫
摘? 要: 為改善傳統(tǒng)的網(wǎng)絡(luò)信息加密系統(tǒng)抗攻擊力較差、容易出現(xiàn)數(shù)據(jù)丟失、解密后的密文不完整的情況,設(shè)計(jì)基于密碼學(xué)的網(wǎng)絡(luò)多模態(tài)信息動(dòng)態(tài)加密系統(tǒng)。設(shè)計(jì)網(wǎng)絡(luò)加密卡,將其嵌入網(wǎng)絡(luò)層和鏈路之間,通過(guò)加密卡上的加密模塊實(shí)現(xiàn)加密功能狀態(tài)轉(zhuǎn)換,利用PCIE總線接口實(shí)現(xiàn)設(shè)備的基本協(xié)議功能,完成設(shè)備與主機(jī)之間的數(shù)據(jù)交互。在此基礎(chǔ)上,依據(jù)密碼學(xué)中的密碼體制改變密鑰的長(zhǎng)度,利用基于密碼學(xué)的動(dòng)態(tài)算法和軟件程序,實(shí)現(xiàn)網(wǎng)絡(luò)多模態(tài)信息動(dòng)態(tài)加密。測(cè)試結(jié)果表明,在受到攻擊后,與傳統(tǒng)加密系統(tǒng)進(jìn)行加解密后的結(jié)果相比,利用基于密碼學(xué)的動(dòng)態(tài)加密系統(tǒng)加密的密文保存完整,解密后的明文與原始明文相同,抗攻擊能力強(qiáng)。
關(guān)鍵詞: 動(dòng)態(tài)加密; 網(wǎng)絡(luò)多模態(tài)信息; 總線接口設(shè)計(jì); 系統(tǒng)設(shè)計(jì); 加密卡設(shè)計(jì); 系統(tǒng)測(cè)試
中圖分類號(hào): TN918.2?34; TP391? ? ? ? ? ? ? ? 文獻(xiàn)標(biāo)識(shí)碼: A? ? ? ? ? ? ? ? ? ? ? 文章編號(hào): 1004?373X(2020)04?0051?03
Design of cryptography?based dynamic encryption system for
network multimodal information
MI Xiaofu
(Guizhou University of Finance and Economics, Guiyang 550025, China)
Abstract: A cryptography?based dynamic encryption system for network multimodal information is designed to deal with the poor anti?attack ability of traditional network information encryption system, which is prone to data loss and results in incomplete ciphertext after decryption. The network encryption card is designed and embedded between network layer and link. The state transition of encryption function is realized by the encryption module in the encryption card. The basic protocol function of the device is realized with the PCIE bus interface, so as to complete the data interaction between the device and the host computer. On this basis, the length of the secret key is changed according to the cryptosystem of the cryptography, and the dynamic encryption of the network multimodal information is realized with the software program and dynamic algorithm based on cryptography. The testing results show that, after being attacked, in comparison with the results of encryption and decryption of traditional encryption system, the ciphertext encrypted with the dynamic encryption system based on cryptography is completely preserved, the decrypted plaintext is the same as the original plaintext, and has stronger anti?attack ability.
Keywords: dynamic encryption; network multimodal information; bus interface design; system design; encryption card design; system testing
0? 引? 言
隨著計(jì)算機(jī)技術(shù)發(fā)展,網(wǎng)絡(luò)多模態(tài)信息逐漸增多,網(wǎng)絡(luò)多模態(tài)信息即由多種單模態(tài)信息組合而成的信息,如多媒體媒介中的視頻,就包含圖像、語(yǔ)音和文本等多個(gè)單模態(tài)[1]。這些信息中既有個(gè)人的隱私信息,又有企業(yè)的機(jī)密數(shù)據(jù),不同的國(guó)家也有自己的國(guó)家機(jī)密。它們相比單模態(tài)信息,面臨的安全問(wèn)題更為嚴(yán)峻。利用密碼學(xué)技術(shù)對(duì)其進(jìn)行動(dòng)態(tài)加密是目前有效的解決方案,動(dòng)態(tài)加密使信息在使用過(guò)程中自動(dòng)加密,不需人工干預(yù),也不需進(jìn)行解密操作就可以使用,這種加密方式在保證安全性的情況下,成本較低,是一種優(yōu)秀的加密方式[2]。
密碼學(xué)對(duì)編制密碼和破譯密碼的技術(shù)進(jìn)行研究,在該領(lǐng)域中,待加密的信息被稱為明文,已加密信息稱為密文,只有收、發(fā)雙方知道的信息則是密鑰,加密就是利用密碼學(xué)將明文轉(zhuǎn)換成密文過(guò)程,具體實(shí)施取決于加密算法和密鑰。本文擬設(shè)計(jì)基于密碼學(xué)的網(wǎng)絡(luò)多模態(tài)信息動(dòng)態(tài)加密系統(tǒng),在硬件中嵌入網(wǎng)絡(luò)加密卡,同時(shí)利用密碼學(xué)中密碼體制設(shè)計(jì)動(dòng)態(tài)加密算法,實(shí)現(xiàn)對(duì)網(wǎng)絡(luò)多模態(tài)信息的動(dòng)態(tài)加密。
1? 網(wǎng)絡(luò)多模態(tài)信息動(dòng)態(tài)加密系統(tǒng)設(shè)計(jì)
1.1? 網(wǎng)絡(luò)加密卡設(shè)計(jì)
網(wǎng)卡可連接計(jì)算機(jī)與傳輸媒介,實(shí)現(xiàn)數(shù)據(jù)的發(fā)送與接收,以及數(shù)據(jù)的編碼與解碼。利用網(wǎng)卡設(shè)計(jì)網(wǎng)絡(luò)加密卡,負(fù)責(zé)處理動(dòng)態(tài)加密系統(tǒng)中的復(fù)雜算法,無(wú)需人工進(jìn)行干預(yù)[3]。以FPGA為系統(tǒng)硬件基礎(chǔ),選擇Virtex?6 240t芯片為管理核心,采用自頂向下的設(shè)計(jì)方法開(kāi)發(fā),從定義高層次的功能開(kāi)始,逐級(jí)實(shí)現(xiàn)低層次功能。頂層模塊和第二級(jí)模塊均為整塊芯片,按照主要功能分成幾個(gè)部分;中間一級(jí)存在模塊比較容易實(shí)現(xiàn);最底層只包含邏輯門和宏功能[4]。以此為基礎(chǔ),將網(wǎng)絡(luò)加密卡嵌入網(wǎng)絡(luò)層和鏈路之間,其結(jié)構(gòu)如圖1所示。
總線接口的選擇則為與Virtex?6 240t相同公司提供的PCIE接口,對(duì)接收的多模態(tài)信息進(jìn)行分層打包,完成與計(jì)算機(jī)之間的傳輸。其主要負(fù)責(zé)產(chǎn)生進(jìn)行總讀寫的相關(guān)時(shí)序,利用其中的接收機(jī)模塊、發(fā)送機(jī)模塊和控制器模塊完成數(shù)據(jù)包的傳輸和緩沖區(qū)的數(shù)據(jù)交互;同時(shí)利用端點(diǎn)模塊實(shí)現(xiàn)該設(shè)備的鏈路層、事物層和物理層的基本協(xié)議功能[5]??偩€接口在完成和主機(jī)的數(shù)據(jù)交互與信號(hào)的反饋后,還要傳輸主機(jī)和加密模塊的數(shù)據(jù)與指示信號(hào)。
1.2? 加密模塊設(shè)計(jì)
加密模塊是動(dòng)態(tài)加密重點(diǎn),加密模塊包含三個(gè)子模塊,分別是完成輪函數(shù)功能模塊、密鑰空間擴(kuò)展模塊及控制加密和子密鑰的讀取模塊[6]。加密模塊存在多個(gè)I/O接口和密鑰接口,負(fù)責(zé)產(chǎn)生輸入輸出數(shù)據(jù)的使能信號(hào),部分功能模塊劃分如圖2所示。
在網(wǎng)絡(luò)信息加密時(shí),從寄存器讀取初始密鑰,利用網(wǎng)絡(luò)加密卡執(zhí)行加密算法進(jìn)行加密。加密采用循環(huán)反饋式結(jié)構(gòu),讀取密鑰后無(wú)需進(jìn)入時(shí)鐘等待,直接對(duì)數(shù)據(jù)加密即可[7]。加密功能狀態(tài)轉(zhuǎn)換如圖3所示。
1.3? 總線接口設(shè)計(jì)
總線接口選擇與Virtex?6 240t相同公司提供的PCIE總線接口,利用該總線對(duì)接收的網(wǎng)絡(luò)多模態(tài)信息進(jìn)行分層打包,完成與計(jì)算機(jī)之間的傳輸。PCIE接口主要負(fù)責(zé)產(chǎn)生進(jìn)行總讀寫的相關(guān)時(shí)序,利用其中的接收機(jī)模塊、發(fā)送機(jī)模塊和控制器模塊完成數(shù)據(jù)包的傳輸和緩沖區(qū)的數(shù)據(jù)交互;同時(shí)利用端點(diǎn)模塊實(shí)現(xiàn)該設(shè)備的鏈路層、事物層和物理層的基本協(xié)議功能[8]。PCIE總線接口設(shè)計(jì)如圖4所示。
1.4? 基于密碼學(xué)的動(dòng)態(tài)加密算法
在密碼學(xué)中,密鑰是加密系統(tǒng)中的重要組成部分,接收方可根據(jù)密鑰對(duì)密文進(jìn)行解密,還原出明文數(shù)據(jù)。一個(gè)完整的基于密碼學(xué)的動(dòng)態(tài)加密系統(tǒng),對(duì)于任意密鑰,都有相應(yīng)的加密算法和加密函數(shù)[9]。
密鑰的長(zhǎng)度要足夠,在實(shí)際應(yīng)用中不容易被攻擊破解。首先隨機(jī)生成兩個(gè)大小相近的素?cái)?shù)i和j,計(jì)算加密鍵范圍的公式為:
[η=i-1j-1e=i·j] (1)