糜小夫



摘? 要: 為改善傳統的網絡信息加密系統抗攻擊力較差、容易出現數據丟失、解密后的密文不完整的情況,設計基于密碼學的網絡多模態信息動態加密系統。設計網絡加密卡,將其嵌入網絡層和鏈路之間,通過加密卡上的加密模塊實現加密功能狀態轉換,利用PCIE總線接口實現設備的基本協議功能,完成設備與主機之間的數據交互。在此基礎上,依據密碼學中的密碼體制改變密鑰的長度,利用基于密碼學的動態算法和軟件程序,實現網絡多模態信息動態加密。測試結果表明,在受到攻擊后,與傳統加密系統進行加解密后的結果相比,利用基于密碼學的動態加密系統加密的密文保存完整,解密后的明文與原始明文相同,抗攻擊能力強。
關鍵詞: 動態加密; 網絡多模態信息; 總線接口設計; 系統設計; 加密卡設計; 系統測試
中圖分類號: TN918.2?34; TP391? ? ? ? ? ? ? ? 文獻標識碼: A? ? ? ? ? ? ? ? ? ? ? 文章編號: 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? 引? 言
隨著計算機技術發展,網絡多模態信息逐漸增多,網絡多模態信息即由多種單模態信息組合而成的信息,如多媒體媒介中的視頻,就包含圖像、語音和文本等多個單模態[1]。這些信息中既有個人的隱私信息,又有企業的機密數據,不同的國家也有自己的國家機密。它們相比單模態信息,面臨的安全問題更為嚴峻。利用密碼學技術對其進行動態加密是目前有效的解決方案,動態加密使信息在使用過程中自動加密,不需人工干預,也不需進行解密操作就可以使用,這種加密方式在保證安全性的情況下,成本較低,是一種優秀的加密方式[2]。
密碼學對編制密碼和破譯密碼的技術進行研究,在該領域中,待加密的信息被稱為明文,已加密信息稱為密文,只有收、發雙方知道的信息則是密鑰,加密就是利用密碼學將明文轉換成密文過程,具體實施取決于加密算法和密鑰。本文擬設計基于密碼學的網絡多模態信息動態加密系統,在硬件中嵌入網絡加密卡,同時利用密碼學中密碼體制設計動態加密算法,實現對網絡多模態信息的動態加密。
1? 網絡多模態信息動態加密系統設計
1.1? 網絡加密卡設計
網卡可連接計算機與傳輸媒介,實現數據的發送與接收,以及數據的編碼與解碼。利用網卡設計網絡加密卡,負責處理動態加密系統中的復雜算法,無需人工進行干預[3]。以FPGA為系統硬件基礎,選擇Virtex?6 240t芯片為管理核心,采用自頂向下的設計方法開發,從定義高層次的功能開始,逐級實現低層次功能。頂層模塊和第二級模塊均為整塊芯片,按照主要功能分成幾個部分;中間一級存在模塊比較容易實現;最底層只包含邏輯門和宏功能[4]。以此為基礎,將網絡加密卡嵌入網絡層和鏈路之間,其結構如圖1所示。
總線接口的選擇則為與Virtex?6 240t相同公司提供的PCIE接口,對接收的多模態信息進行分層打包,完成與計算機之間的傳輸。其主要負責產生進行總讀寫的相關時序,利用其中的接收機模塊、發送機模塊和控制器模塊完成數據包的傳輸和緩沖區的數據交互;同時利用端點模塊實現該設備的鏈路層、事物層和物理層的基本協議功能[5]。總線接口在完成和主機的數據交互與信號的反饋后,還要傳輸主機和加密模塊的數據與指示信號。
1.2? 加密模塊設計
加密模塊是動態加密重點,加密模塊包含三個子模塊,分別是完成輪函數功能模塊、密鑰空間擴展模塊及控制加密和子密鑰的讀取模塊[6]。加密模塊存在多個I/O接口和密鑰接口,負責產生輸入輸出數據的使能信號,部分功能模塊劃分如圖2所示。
在網絡信息加密時,從寄存器讀取初始密鑰,利用網絡加密卡執行加密算法進行加密。加密采用循環反饋式結構,讀取密鑰后無需進入時鐘等待,直接對數據加密即可[7]。加密功能狀態轉換如圖3所示。
1.3? 總線接口設計
總線接口選擇與Virtex?6 240t相同公司提供的PCIE總線接口,利用該總線對接收的網絡多模態信息進行分層打包,完成與計算機之間的傳輸。PCIE接口主要負責產生進行總讀寫的相關時序,利用其中的接收機模塊、發送機模塊和控制器模塊完成數據包的傳輸和緩沖區的數據交互;同時利用端點模塊實現該設備的鏈路層、事物層和物理層的基本協議功能[8]。PCIE總線接口設計如圖4所示。
1.4? 基于密碼學的動態加密算法
在密碼學中,密鑰是加密系統中的重要組成部分,接收方可根據密鑰對密文進行解密,還原出明文數據。一個完整的基于密碼學的動態加密系統,對于任意密鑰,都有相應的加密算法和加密函數[9]。
密鑰的長度要足夠,在實際應用中不容易被攻擊破解。首先隨機生成兩個大小相近的素數i和j,計算加密鍵范圍的公式為:
[η=i-1j-1e=i·j] (1)