一种基于可编程逻辑阵列实现安全传输的方法与流程

文档序号:23701971发布日期:2021-01-23 11:50阅读:79来源:国知局
[0001]本发明涉及数字电路、加密算法、通信技术等
技术领域
:,特别是涉及一种基于可编程逻辑阵列实现安全传输的方法。
背景技术
::[0002]信息作为一种资源,它的普遍性、共享性、增值性、可处理性和多效用性,使其对于人类具有特别重要的意义。保证信息安全性的实质要保护信息系统或信息网络中的信息资源免受各种类型的威胁、干扰和破坏。[0003]随着科技的发展和互联网的普及,各方面的信息量都在急剧增加,对信息的存储、传输提出了更高的要求。同时,物联网和移动互联网等新网络的快速发展给信息安全带来更大的挑战。物联网将会在智能电网、智能交通、智能物流、金融与服务业、国防军事等诸多领域得到应用,物联网中的认证机制和加密机制是安全上最重要的两个环节,也是信息安全产业中保障信息安全的薄弱环节。与此同时,随着互联网的发展,传统的网络边界不复存在,给未来的互联网应用和业务带来巨大改变,给信息安全也带来了新挑战。融合开放是互联网发展的特点之一,网络安全也因此变得正在向分布化、规模化、复杂化和间接化等方向发展,信息安全产业也将在融合开放的大安全环境中探寻发展。保证信息的安全传输日益成为研究的热点问题。[0004]针对某些行业或领域,对传输系统的安全性有较高要求,为增强软件和硬件的自主可控性,防止传输的信息被窃取,因此需要从软硬件两个方面设计安全传输系统,从而保证安全的信息传输。[0005]保证信息传输安全的方式多种多样,这些方法都具有保证传输信息的安全性,但因行业不同,对传输系统安全性的要求也不同;此外,虽然现在提供信息传输安全的方案及应用越来越多,然而它们中的大部分,仍旧没有通过软硬件协同设计的方法来保证信息传输系统的安全。[0006]随着软硬件协同设计方法的快速发展和成熟,为本领域提出的一种基于可编程逻辑阵列实现安全传输的方法提供了合适的研究基础。技术实现要素:[0007]基于以上所述当前信息安全传输所存在的不足以及结合科学技术的快速发展,为了更好的满足人们对信息安全的需求,本发明提出了一种基于可编程逻辑阵列实现安全传输的方法,利用开源的risc-v指令集、自定义加密算法以及可编程逻辑阵列的可重构性对信息进行安全处理和传输。以上几点,都使得本发明提出的基于可编程逻辑阵列实现安全传输的方法成为可能。[0008]本发明的一种基于可编程逻辑阵列实现信息安全传输系统的方法,具体包括以下步骤:[0009]步骤1、对开源的risc-v指令集进行裁剪和扩展,以满足信息安全传输系统的要求;[0010]步骤2、设计信息安全传输系统的发送端、接收端的加密模块和解密模块硬件部分,采用非对称加密算法以保证加密过程的安全性,用一个密钥加密信息后,只有对应的密钥才能解开;公钥可向其他人公开,私钥则保密,其他人无法通过该公钥推算出相应的私钥;[0011]步骤3、基于llvm编译器框架进行修改,添加risc-v后端以及自定义指令,完善信息安全传输系统的编译工具,完善交叉编译工具链,提高系统使用的便利性;[0012]步骤4、对开源linux系统进行裁剪,移植到risc-v上形成能够运行与调度的资源;[0013]步骤5、在交叉编译环境中调用匹配内核以risc-v体系架构编译linux内核,同时把加密模块和解密模块的驱动程序加载到内核中,生成新的内核镜像文件,用于后续管理硬件设备、实现进程调度;[0014]步骤6、利用可编程逻辑阵列厂商提供的工具,对硬件电路进行综合、布局布线后加载到可编程逻辑阵列中,将步骤5生成的内核镜像文件拷贝到存储卡中,引导嵌入式操作系统的启动。[0015]利用可编程逻辑阵列厂商提供的工具,对利用verilog硬件描述语言设计的rsic-v处理器、加密模块、解密模块硬件电路进行综合、布局布线后加载到可编程逻辑阵列中,将步骤5生成的内核镜像文件拷贝到存储卡中,引导嵌入式操作系统的启动。[0016]所述步骤3中基于llvm编译器框架进行修改,具体包括以下步骤:[0017]llvm编译器框架主要前端、优化器以及后端三部分组成,把llvm的中间表示转换成可在rsic-v处理器上运行的执行代码,即:在llvm编译框架的后端部分创建一个targetmachine类的子类来描述rsic-v目标机器的特性;然后使用tablegen为目标机器的寄存器定义、寄存器别名和来自目标特定的registerinfo.td的寄存器类产生代码;同时在targetinfo类添加代码来表示这个目标机器支持的指令集,包括自定义的加密、解密指令。[0018]所述步骤4中对开源linux系统进行裁剪,具体包括以下步骤:[0019]以开源linux系统为基础,编译一个最小化的linux内核,完成整个内核的初始化并启动init进程;然后添加uart、usb、cf等设备的驱动程序,以及完成对ext2文件系统的支持,添加文件系统相关的mtd、block设备驱动等,针对内核配置至少添加ipc、网络支持、tcp/ip、socket内容,生成内核启动镜像,将内核镜像文件嵌入引导程序,并将嵌入后得到的引导程序加载到rsic-v处理器的内存中,生成可运行于rsic-v的linux操作系统。[0020]与现有技术相比,本发明充分考虑了软硬件协同设计的方法,保证信息安全传输系统的自主可靠性和安全性。附图说明[0021]图1为基于risc-v的安全传输系统框架示意图;[0022]图2为本发明的基于可编程逻辑阵列实现信息安全传输系统的方法整体流程图。具体实施方式[0023]下面将结合附图对本发明的实施方式作进一步的详细描述。[0024]本发明所采用的技术为基于risc-v的安全传输系统,如图1所示,为基于risc-v的安全传输系统框架示意图。该系统分为发送端和接收端。其中,发送端负责拟加密传输数据的采集和接收,然后利用加密算法对数据进行加密处理,再利用传输中介(如以太网等)传输至接收端;接收端负责对接收到的加密数据进行数字签名认证以及解密,然后经过按需求处理后呈现给使用者。[0025]鉴于risc-v指令集的开源性,使用者根据需求对risc-v指令集进行裁剪和扩展实现完全的自足可控,同时开源的risc-vcore也较多,可满足快速地工程实现要求,在信息安全传输系统中的发送端和接收端的控制器基于risc-v内核进行设计;加密算法则利用非对称加密算法以保证加密过程的效率和安全性,用一个密钥(公钥或私钥)加密信息后,只有对应的密钥才能解开;公钥可向其他人公开,私钥则保密,其他人无法通过该公钥推算出相应的私钥;最后,需要将risc-v内核和加密算法部署到fpga设备中,实现大量计算在本地直接处理,而无需把所有数据都发送到云端,实现本地事件的更快响应,从而实现信息的安全传输。[0026]如图2所示,为本发明的一种基于可编程逻辑阵列实现信息安全传输系统的方法整体流程图,该方法具体包括以下步骤:[0027]步骤1、对开源的risc-v指令集进行裁剪和扩展,rsic-v指令架构是以模块化方式设计,其包括基本整数指令、乘除法指令、16位紧凑指令、单精度浮点指令、双精度浮点指令、位操作指令、向量指令等指令子集,由于目前已有的指令子集扩展没有适合需求的合适的指令子集,需要添加自定义的添加加密和解密指令。本发明对rsic-v的支持指令子集包括基本整数指令、乘除法指令和单双精度浮点指令,在rsic-v预留的指令编码空间扩展自定义的加密和解密指令,添加加密、解密指令可提高系统处理加密任务、解密任务的效率;[0028]步骤2、在基于risc-v的安全传输系统中的发送端和接收端,设计加密模块和解密模块两个硬件部分,采用非对称加密算法以保证加密过程的安全性,用一个密钥(公钥或私钥)加密信息后,只有对应的密钥才能解开;公钥可向其他人公开,私钥则保密,其他人无法通过该公钥推算出相应的私钥;[0029]步骤3、基于llvm编译器框架进行修改。llvm编译器框架主要前端、优化器以及后端三部分组成,在本发明中针对高级编程语言(如c、c++等)在基于rsic-v安全传输系统上的实现,需要在llvm后端部分添加rsic-v后端部分,把llvm的中间表示转换成可在rsic-v处理器上运行的执行代码,主要的修改步骤包括:在llvm编译框架的后端部分创建一个targetmachine类的子类来描述rsic-v目标机器的特性;然后使用tablegen为目标机器的寄存器定义、寄存器别名和来自目标特定的registerinfo.td的寄存器类产生代码;同时需要在targetinfo类添加代码来表示这个目标机器支持的指令集,包括自定义的加密、解密指令;[0030]步骤4、对开源linux系统进行裁剪,即:利用目前现有的开源linux系统为基础,编译一个最小化的linux内核,能够完整完成整个内核的初始化并启动init进程;然后添加uart、usb、cf等设备的驱动程序,以及完成对ext2文件系统的支持,添加文件系统相关的mtd、block设备驱动等,针对内核配置添加ipc、网络支持、tcp/ip、socket等内容,生成内核启动镜像,将内核镜像文件嵌入引导程序,并将嵌入后得到的引导程序加载到rsic-v处理器的内存中,生成可运行于rsic-v的linux操作系统;[0031]步骤5、在步骤4的基础之上在linux内核中添加加密模块和解密模块的驱动程序,生成新的内核镜像文件,用于后续管理外部硬件设备(如加密模块、解密模块等)、实现进程调度;[0032]步骤6、利用可编程逻辑阵列厂商提供的工具,对利用verilog硬件描述语言设计的rsic-v处理器、加密模块、解密模块等硬件电路进行综合、布局布线后加载到可编程逻辑阵列中,将步骤5生成的内核镜像文件拷贝到存储卡中,引导嵌入式操作系统的启动。[0033]本发明并不局限于前述的流程,任何将本发明所披露的特征或新的步骤的组合进行扩展的,皆落入本发明的保护范围。当前第1页1 2 3 当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1