基于密码学的网络多模态信息动态加密系统设计
2020-07-23糜小夫
糜小夫
摘 要: 为改善传统的网络信息加密系统抗攻击力较差、容易出现数据丢失、解密后的密文不完整的情况,设计基于密码学的网络多模态信息动态加密系统。设计网络加密卡,将其嵌入网络层和链路之间,通过加密卡上的加密模块实现加密功能状态转换,利用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)