CN101232506A - 一种安全的现场可编程门阵列网络配置方法和配置系统 - Google Patents
一种安全的现场可编程门阵列网络配置方法和配置系统 Download PDFInfo
- Publication number
- CN101232506A CN101232506A CNA2008100567651A CN200810056765A CN101232506A CN 101232506 A CN101232506 A CN 101232506A CN A2008100567651 A CNA2008100567651 A CN A2008100567651A CN 200810056765 A CN200810056765 A CN 200810056765A CN 101232506 A CN101232506 A CN 101232506A
- Authority
- CN
- China
- Prior art keywords
- configuration
- programmable gate
- gate array
- field programmable
- network
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Logic Circuits (AREA)
Abstract
本发明公开了一种安全的现场可编程门阵列网络配置方法和配置系统。该配置方法,包括:制作现场可编程门阵列的配置文件;对所述配置文件进行加密操作,得到加密文件;对加密文件进行散列操作,得到第一散列码;将所述加密文件和所述散列码通过网络传输发送至配置控制单元;配置控制单元对接收到的加密文件进行相同的散列操作,得到第二散列码;配置控制单元收到的第一散列码与计算得到的第二散列码进行比较,若不相同,则要求重传加密文件和第一散列码,若相同,配置控制单元对收到加密文件进行解密操作,得到解密后文件;配置控制单元配置现场可编程门阵列。本发明采用软件来实现FPGA网络配置,不仅易于实现而且提高了配置过程的安全性。
Description
技术领域
本发明涉及现场可编程门阵列(Field Programmable Gate Array,FPGA),特别涉及现场可编程门阵列网络配置方法和配置系统。
背景技术
现场可编程门阵列(FPGA)广泛存在于网络设备中,可用来实现如包分类、入侵检测、动态路由协议等诸多应用。基本的现场可编程门阵列(FPGA)包括逻辑块、布线轨道和输入输出单元,每个逻辑块被布线轨道所包围,输入输出单元分布在现场可编程门阵列(FPGA)的四周。每个可编程的逻辑块完成一定的数字功能,可编程布线又将这些逻辑块的输入和输出端口相连来形成更大功能的电路。每个输入输出单元可以是输入口,也可以是输出口,通过可编程布线和逻辑块相连。
这些现场可编程门阵列(FPGA)需要进行初始化后才可以实现既定的功能,在使用过程中通常也需要根据需求进行升级。现场可编程门阵列(FPGA)功能的初始化和升级均是通过对其配置来实现的。对现场可编程门阵列(FPGA)的配置可以分为很多种,根据配置时机可以分为静态配置和动态配置,根据配置的区域可以分为全配置和部分配置,根据配置文件传输的距离可以分为本地配置和网络配置。静态配置是指配置过程中现场可编程门阵列(FPGA)需要停止运行,而动态配置时现场可编程门阵列(FPGA)可以在配置的同时保持运行状态;全配置是指配置文件配置现场可编程门阵列(FPGA)中所有的可编程逻辑资源,部分配置是指配置文件只对现场可编程门阵列(FPGA)中部分可编程逻辑资源进行配置;本地配置是指配置文件存储在现场可编程门阵列(FPGA)所在的板卡上或者在通过较短的通信链路与板卡连接的主机上,而网络配置是指配置文件存储在网络上的主机中。
相对于本地配置,网络配置具有方便、灵活、反应时间短的优点,一个完整的网络配置过程包括配置请求发送、配置文件传输、配置文件接收和写现场可编程门阵列(FPGA)的配置端口。现有的对现场可编程门阵列(FPGA)网络配置的方法或装置都是完全用硬件逻辑实现,存在的一个不足是占用了现场可编程门阵列(FPGA)内部的逻辑资源;现有技术存在的另外一个不足是硬件逻辑很难用来实现安全策略,导致现有的配置方法安全性较差。由于配置文件和命令需要在网络上进行传输,其安全性受到很大威胁。配置文件受到的安全攻击主要可以分为三类:复制、逆向工程和恶意修改。复制是指在用户没有觉察到的情况下对配置文件进行复制,以盗取配置文件内容,并用在攻击者所需要的地方。逆向工程是指攻击者试图通过逆向工程获得产生配置文件的整个设计内容,包括源文件等。恶意修改是指攻击者篡改配置文件,从而达到使现场可编程门阵列(FPGA)执行自己想要的功能,甚至从物理上损害现场可编程门阵列(FPGA)的目标。由于现有技术的网络配置方法缺乏安全性,所以需要采取措施保证配置文件和配置过程的安全和可靠性。
发明内容
本发明的目的是在网络配置现场可编程门阵列(FPGA)时,消除配置文件的安全性受到的威胁,从而提供一种安全的、同时对现场可编程门阵列(FPGA)逻辑资源占用很少的现场可编程门阵列(FPGA)网络配置方法和配置系统。
为了达到上述目的,本发明采取如下技术方案:
一种安全的现场可编程门阵列的网络配置方法,包括以下步骤:
步骤S1,制作现场可编程门阵列的配置文件;
步骤S2,对所述配置文件进行加密操作,得到加密文件;
步骤S3,对所述加密文件进行散列操作,得到第一散列码;
步骤S4,将所述加密文件和所述散列码通过网络传输发送至位于现场可编程门阵列端的配置控制单元;
步骤S5,配置控制单元对接收到的加密文件进行与步骤S3相同的散列操作,得到第二散列码;
步骤S6,配置控制单元将所述第一散列码与所述第二散列码进行比较,若不相同,则要求重传加密文件和第一散列码,若相同,则继续下述操作;
步骤S7,配置控制单元采用与步骤S2对应的解密算法,对收到的加密文件进行解密操作,得到解密后文件;
步骤S8,配置控制单元使用所述解密后文件,配置现场可编程门阵列。
优选地,所述散列操作采用的散列算法是单向散列算法。
优选地,所述配置控制单元是运行嵌入式操作系统的现场可编程门阵列内部或外部的嵌入式处理器;
所述操作系统包含用于接收用户的配置请求的消息传输模块、用于接收加密文件和散列码的文件传输模块、用于对加密文件解密的解密模块、解密密钥、用于管理所述配置请求的配置管理模块和配置模块。
优选地,所述配置管理模块对于用户发来的并发的配置请求确定不同的优先级,并使优先级高的配置请求先得到满足。
优选地,在所述步骤S8中,所述配置现场可编程门阵列是对现场可编程门阵列正在运行状态下的动态配置,或在现场可编程门阵列停止运行状态下的静态配置;所述动态配置包括至少配置部分逻辑单元。
优选地,该方法还包括下列步骤:
步骤S9,配置完成后,配置控制单元观察现场可编程门阵列返回的配置成功或者配置失败信息,并将此信息通过网络传输发送至用户端。
优选地,该方法还包括下列步骤:
步骤S10,若用户自发出配置请求时起在预定时间内接收到所述配置成功信息,则配置过程结束,若用户接收到所述配置失败信息或未在规定时间内接受到配置成功信息,则进行失败处理。
优选地,所述规定时间是预先通过网络带宽、配置文件大小、写配置端口速率参数计算出从发出配置请求到应当接收到配置完成信号所需要的时间与一个自定义系数的乘积。
优选地,所述自定义系数的范围为2至10的实数。
优选地,所述失败处理包括重试或放弃。
一种安全的现场可编程门阵列的网络配置系统,包括通过网络连接的用户端和现场可编程门阵列端,其特征是,所述用户端包括:
加密模块,用于将配置文件进行加密,得到加密文件;
第一散列操作模块,用于对所述加密文件进行散列操作,得到第一散列码;
发送模块,用于将用户端的配置请求、所述加密文件和所述散列码通过网络传输至现场可编程门阵列端;
所述现场可编程门阵列端,包括:
配置控制单元,用于接收所述配置请求、所述加密文件和所述散列码并完成对现场可编程门阵列配置。
优选地,所述配置控制单元是运行嵌入式操作系统的嵌入式处理器,所述操作系统包括用于接收所述配置请求的消息传输模块、用于接收所述加密文件和所述散列码的文件传输模块、用于对配置文件解密的解密模块、解密密钥、用于管理所述配置请求的配置管理模块和采用配置文件对现场可编程门阵列配置的配置模块。
优选地,所述操作系统还包括:与位于用户端的散列操作模块实现相同操作的第二散列操作模块,用于对接收到的加密文件进行散列操作,得到第二散列码;和文件完整性验证模块,用于验证第一散列码和第二散列码是否相同,如果相同,则给所述解密模块信号使其通过解密密钥对加密文件解密,并给所述配置模块信号使其采用解密后配置文件对现场可编程门阵列配置;如果不同,则通知操作系统停止操作并向用户端发送消息要求重传加密文件和第一散列码。
优选地,所述第一、第二散列操作模块采用的散列算法是单向散列算法。
优选地,所述配置管理模块对用户端发来的并发的配置请求确定不同的优先级,并使优先级高的配置请求先得到满足。
优选地,所述配置管理模块接收现场可编程门阵列返回的配置成功或者配置失败信息,并通过所述消息传输模块发送至用户端。
优选地,所述用户端还包括配置信息处理模块,用于自用户端发出配置请求时起在预定时间内接收到所述配置成功信息时,结束配置过程,并且若在规定时间内接收到所述配置失败信息或未在规定时间内接收到所述配置成功信息,进行失败处理。
优选地,所述规定时间是预先通过网络带宽、配置文件大小、写配置端口速率参数计算出从发出配置请求到应当接收到配置完成信号所需要的时间与一个自定义系数的乘积。
优选地,所述自定义系数的范围为2至10的实数。
优选地,所述失败处理包括重试或放弃。
与现有技术相比,本发明产生的有益技术效果是:
本发明的对现场可编程门阵列(FPGA)的配置方法和配置系统采用基于嵌入式操作系统的软件来实现,并综合利用了数据安全算法,保证配置文件和配置过程的安全特性,使得本发明对现场可编程门阵列(FPGA)的网络配置不仅安全性高,且对现场可编程门阵列(FPGA)的可编程逻辑资源占用较少,灵活易于实现。与现有技术相对比,现有技术的网络配置方法开发硬件逻辑所需要的工作量比本发明的网络配置开发软件大的多,而且硬件逻辑难以调试,而采用操作系统来管理硬件资源,并在操作系统上运行软件程序配置现场可编程门阵列(FPGA)易于实现且比硬件逻辑更灵活。
附图说明
图1是本发明的现场可编程门阵列网络配置方法流程图;
图2是本发明的现场可编程门阵列网络配置系统结构示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明的现场可编程门阵列网络配置方法和配置系统进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
为实现本发明的目的,作为一种可实施的方式,以对一种现场可编程门阵列(FPGA)(如赛灵思XCV4FX60)通过网络进行安全配置为例来介绍本发明的技术方案,但应当说明的是,其不是对本发明的限制。
本实施例采用动态的部分配置方案,因此在通过网络配置前,应先确保现场可编程门阵列(FPGA)已经被初始化配置。初始化配置要求至少配置现场可编程门阵列(FPGA)的静态部分,也就是不会在运行中被重新配置的部分。初始化配置完成后,现场可编程门阵列(FPGA)能够运行嵌入式操作系统。动态配置过程中采用现场可编程门阵列(FPGA)内置的PowerPC处理器作为配置控制单元,内部配置访问端口(Internal Configuration Access Port,ICAP)作为配置端口。
为了使配置控制单元工作,需要开发或者移植嵌入式操作系统,使其能够运行在作为配置控制单元的嵌入式处理器上。
在本实施例中,采用移植的嵌入式Montavista Linux操作系统,嵌入式处理器是PowerPC,在移植过程中选择如网络传输协议、文件传输、加解密等必要的功能。
该操作系统包括应用程序和设备驱动程序。
该设备驱动程序包含嵌入式处理器片上系统中所有的设备;该应用程序包括配置管理模块,配置管理模块按照先来先服务的原则处理用户发来的配置请求。
按照对现场可编程门阵列(FPGA)(如赛灵思XCV4FX60)通过网络进行安全配置为例,本发明提供的一种安全的现场可编程门阵列的网络配置方法,如图1所示,包括以下步骤:
步骤S1,制作现场可编程门阵列的配置文件。
用户可以使用电子设计自动化(Electronic Design Automation,EDA)工具制作出现场可编程门阵列的配置文件;
制作现场可编程门阵列的配置文件,是一种现有技术。
作为一种实施方法,利用如赛灵思公司的EDK和PlanAhead软件,采用基于模块的方法开发出控制二极管指示灯(LED)闪烁频率模块的配置文件。配置文件使得在配置完成后,现场可编程门阵列(FPGA)驱动的一个发光二极管指示灯(LED)的闪烁频率发生改变;但是应该理解,本领域的技术人员很容易将本发明的方法应用于采用不同配置文件和型号的现场可编程门阵列(FPGA)上。
步骤S2,对所述配置文件进行加密操作,得到加密文件。
较佳地,所述加密操作采用的加密算法可以是对称加密算法。作为一种可以实施的方式,比如高级加密标准(AES)算法;
所述加密算法也可以是非对称加密算法,作为一种可以实施的方式,比如RSA算法。
本步骤中的加密操作带来的好处是:在不知道解密密钥的情况下无法由步骤S2中的加密文件得到步骤S1中的原始配置文件,从而防止在用户没有觉察到的情况下对配置文件进行复制,以盗取配置文件内容,并用在攻击者所需要的地方。
步骤S3,对所述加密文件进行散列操作,得到第一散列码;
较佳地,所述散列操作采用的散列算法是单向散列算法,作为一种可以实施的方式,比如采用信息摘要算法5(Message-digest Algorithm 5)进行散列,得到一串128bit的散列值。这样做的好处是:散列码并不以可辨别的方式依赖于加密文件,对加密文件任何比特位的修改都将导致产生不同的散列码,所以能够防止攻击者篡改配置文件,从而达到使现场可编程门阵列(FPGA)执行自己想要的功能的企图。
步骤S4,将所述加密文件和所述散列码通过网络传输发送至位于现场可编程门阵列端的配置控制单元;具体来说,用户使用主机中的安全外壳协议(Secure Shell Protocol,SSH)程序登录到配置控制单元运行的MontaVistaLinux操作系统上,通过所述的安全外壳协议程序启动文件传输协议(FileTransfer Protocol,FTP),将所述加密文件和所述散列码传输到现场可编程门阵列(FPGA)所在系统中。
较佳地,除了上面作为一种实时方式描述的所述的配置控制单元可以是现场可编程门阵列内部的嵌入式处理器硬核或者软核之外,还可以是现场可编程门阵列外部的嵌入式处理器。所述的配置控制单元运行嵌入式操作系统,该操作系统包含用于接收用户的配置请求的消息传输模块、用于接收加密文件和散列码的文件传输模块、用于对加密文件解密的解密模块、解密密钥、用于管理所述配置请求的配置管理模块和用于将配置文件写入配置端口的配置模块。
较佳地,所述配置管理模块依照一定算法给予由对网络配置现场可编程门阵列(FPGA)进行网络配置的用户发出的并发的配置请求不同的优先级,并使优先级高的配置请求先得到满足。作为一种可实施的方式,所述算法比如为小配置文件优先算法。该算法为本领域技术人员熟知的技术,在此不再赘述。
较佳地,在所述的步骤S4中,所述的消息传输模块可以是基于面向连接的网络传输协议,作为一种可以实施的方式,比如TCP协议;作为另一种可实施的方式,也可以是基于无连接的网络传输协议,比如UDP协议。
步骤S5,配置控制单元对接收到的加密文件进行与步骤S3相同的散列操作,得到第二散列码;
步骤S6,配置控制单元将步骤S4中收到的第一散列码与步骤S5中计算得到的第二散列码进行比较,若不相同,则中止操作并要求重传加密文件和第一散列码,若相同,则继续下述操作;
步骤S7,配置控制单元采用与步骤S2对应的解密算法,对步骤S4中收到的加密文件进行解密操作,得到解密后文件;
步骤S8,配置控制单元使用步骤S7中的解密后文件,配置现场可编程门阵列。
较佳地,所述配置现场可编程门阵列的配置方案不限于对现场可编程门阵列正在运行状态下的动态配置,还包括在现场可编程门阵列停止运行状态下的静态配置,当进行静态配置时,配置控制单元要设在FPGA的外部,如设置在FPGA外部的嵌入式处理器上;所述动态配置包括至少配置其中的部分逻辑单元,或者配置现场可编程门阵列中的全部逻辑单元。但对于全部逻辑单元的配置而言,如果仍以上面的实例作为例子,当配置控制单元所在的逻辑块被重新配置时,必须有另一个配置控制单元暂时接管工作,目前的高端FPGA中就有两个PPC处理器作为配置控制单元。这种配置控制单元处于FPGA内部并且两个配置控制单元交替接管的方法,本领域技术人员根据本实施方式的描述是很容易实现的。
较佳地,本发明的网络配置方法还包括:
步骤S9,配置完成后,配置控制单元观察现场可编程门阵列返回的配置成功或者配置失败信息,并将此信息通过网络传输发送至用户端。
较佳地,本发明的网络配置方法还包括:步骤S10,若用户自发出配置请求时起在预定时间内接收到所述配置成功信息,则配置过程结束,若用户接收到所述配置失败信息或未在规定时间内接受到配置成功信息,则进行失败处理。用户发送配置请求的技术是本领域技术人员熟知的,一般是在发送配置文件之前向现场可编程门阵列所处的网络端发送。
较佳地,所述的规定时间是根据网络传输质量、配置文件大小和配置端口确定。作为一种可实施的方式,预先通过网络带宽、配置文件大小、写配置端口速率等参数计算出从发出配置请求到接收到配置完成信号所需要的时间,再用该时间乘上一个自定义系数得到该预定时间。所述自定义系数的设定范围为不小于2的实数,但一般不大于10,做为一种可实施的方式,该系数设置为3。
较佳地,所述失败处理包括重试或放弃。
如图2所示,本发明的一种安全的现场可编程门阵列的网络配置系统,包括通过网络连接的用户端和现场可编程门阵列端,其中,所述用户端包括:
加密模块10,用于将用户的配置文件进行加密,得到加密文件。
第一散列操作模块11,用于对所述加密文件进行散列操作,得到第一散列码。
发送模块12,用于将用户的配置请求、所述加密文件和所述散列码通过网络传输至现场可编程门阵列端;
所述现场可编程门阵列端,包括:
配置控制单元13,用于接收所述配置请求、所述加密文件和所述散列码并完成对现场可编程门阵列配置。
较佳地,所述配置控制单元是运行嵌入式操作系统的嵌入式处理器,所述操作系统包括用于接收所述配置请求的消息传输模块131、用于接收所述加密文件和所述散列码的文件传输模块132、用于对配置文件解密的解密模块133、解密密钥134、用于管理所述配置请求的配置管理模块135和采用配置文件对现场可编程门阵列(FPGA)配置的配置模块136。所述解密密钥可以以文件的形式保存。所述嵌入式处理器是位于现场可编程门阵列内部或外部。
较佳地,所述操作系统还包括:与位于用户端的散列操作模块实现相同操作的第二散列操作模块137,用于对接收到的加密文件进行散列操作,得到第二散列码;和文件完整性验证模块138,用于验证第一散列码和第二散列码是否相同,如果相同,则给所述解密模块133信号使其通过解密密钥134对加密文件解密,并给所述配置模块136信号使其采用解密后配置文件对现场可编程门阵列(FPGA)配置;如果不同,则通知操作系统停止操作并通过消息传输模块131向用户端发送消息要求重传加密文件和第一散列码。
较佳地,所述第一和第二散列操作模块采用的散列算法是单向散列算法。
较佳地,所述配置管理模块对于用户端发来的并发的配置请求确定不同的优先级,并使优先级高的配置请求先得到满足。
较佳地,所述配置管理模块135观察现场可编程门阵列返回的配置成功或者配置失败信息,并将此信息通过消息传输模块131发送至用户端。
较佳地,所述用户端还包括配置信息处理模块(图中未示出),用于自用户端发出配置请求时起在预定时间内接收到所述配置成功信息时,结束配置过程,并且若在规定时间内接收到所述配置失败信息或未在规定时间内接收到配置成功信息,则进行失败处理。
较佳地,所述规定时间是预先通过网络带宽、配置文件大小、写配置端口速率参数计算出从发出配置请求到应当接收到配置完成信号所需要的时间与一个自定义系数的乘积。
较佳地,所述自定义系数的范围为不小于2且不大于10,做为一种可实施的方式,该系数设置为3。
较佳地,所述失败处理包括重试或放弃。
本发明的对现场可编程门阵列(FPGA)的配置方法和配置系统采用基于嵌入式操作系统的软件来实现,并综合利用了数据安全算法,保证配置文件和配置过程的安全特性,使得本发明对现场可编程门阵列(FPGA)的网络配置不仅安全性高,且对现场可编程门阵列(FPGA)的可编程逻辑资源占用较少,灵活易于实现。与现有技术相对比,现有技术的网络配置方法开发硬件逻辑所需要的工作量比本发明的网络配置开发软件大的多,而且硬件逻辑难以调试,而采用操作系统来管理硬件资源,并在操作系统上运行软件程序配置现场可编程门阵列(FPGA)易于实现且比硬件逻辑更灵活。
以上所述内容,仅为本发明具体的实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围内。
Claims (20)
1.一种安全的现场可编程门阵列的网络配置方法,包括以下步骤:
步骤S1,制作现场可编程门阵列的配置文件;
步骤S2,对所述配置文件进行加密操作,得到加密文件;
步骤S3,对所述加密文件进行散列操作,得到第一散列码;
步骤S4,将所述加密文件和所述散列码通过网络传输发送至位于现场可编程门阵列端的配置控制单元;
步骤S5,配置控制单元对接收到的加密文件进行与步骤S3相同的散列操作,得到第二散列码;
步骤S6,配置控制单元将所述第一散列码与所述第二散列码进行比较,若不相同,则要求重传加密文件和第一散列码,若相同,则继续下述操作;
步骤S7,配置控制单元采用与步骤S2对应的解密算法,对收到的加密文件进行解密操作,得到解密后文件;
步骤S8,配置控制单元使用所述解密后文件,配置现场可编程门阵列。
2.根据权利要求1所述的现场可编程门阵列的网络配置方法,其特征是,所述散列操作采用的散列算法是单向散列算法。
3.根据权利要求1所述的现场可编程门阵列的网络配置方法,其特征是,所述配置控制单元是运行嵌入式操作系统的现场可编程门阵列内部或外部的嵌入式处理器;
所述操作系统包含用于接收用户的配置请求的消息传输模块、用于接收加密文件和散列码的文件传输模块、用于对加密文件解密的解密模块、解密密钥、用于管理所述配置请求的配置管理模块和配置模块。
4.根据权利要求3所述的现场可编程门阵列的网络配置方法,其特征是,所述配置管理模块对于用户发来的并发的配置请求确定不同的优先级,并使优先级高的配置请求先得到满足。
5.根据权利要求1所述的现场可编程门阵列的网络配置方法,其特征是,在所述步骤S8中,所述配置现场可编程门阵列是对现场可编程门阵列正在运行状态下的动态配置,或在现场可编程门阵列停止运行状态下的静态配置;所述动态配置包括至少配置部分逻辑单元。
6.根据权利要求1所述的现场可编程门阵列的网络配置方法,其特征是,还包括下列步骤:
步骤S9,配置完成后,配置控制单元观察现场可编程门阵列返回的配置成功或者配置失败信息,并将此信息通过网络传输发送至用户端。
7.根据权利要求6所述的现场可编程门阵列的网络配置方法,其特征是,还包括下列步骤:
步骤S10,若用户自发出配置请求时起在预定时间内接收到所述配置成功信息,则配置过程结束,若用户接收到所述配置失败信息或未在规定时间内接受到配置成功信息,则进行失败处理。
8.根据权利要求7所述的现场可编程门阵列的网络配置方法,其特征是,所述规定时间是预先通过网络带宽、配置文件大小、写配置端口速率参数计算出从发出配置请求到应当接收到配置完成信号所需要的时间与一个自定义系数的乘积。
9.根据权利要求8所述的现场可编程门阵列的网络配置方法,其特征是,所述自定义系数的范围为2至10的实数。
10.根据权利要求7所述的现场可编程门阵列的网络配置方法,其特征是,所述失败处理包括重试或放弃。
11.一种安全的现场可编程门阵列的网络配置系统,包括通过网络连接的用户端和现场可编程门阵列端,其特征是,所述用户端包括:
加密模块,用于将配置文件进行加密,得到加密文件;
第一散列操作模块,用于对所述加密文件进行散列操作,得到第一散列码;
发送模块,用于将用户端的配置请求、所述加密文件和所述散列码通过网络传输至现场可编程门阵列端;
所述现场可编程门阵列端,包括:
配置控制单元,用于接收所述配置请求、所述加密文件和所述散列码并完成对现场可编程门阵列配置。
12.根据权利要求11所述的现场可编程门阵列的网络配置系统,其特征是,所述配置控制单元是运行嵌入式操作系统的嵌入式处理器,所述操作系统包括用于接收所述配置请求的消息传输模块、用于接收所述加密文件和所述散列码的文件传输模块、用于对配置文件解密的解密模块、解密密钥、用于管理所述配置请求的配置管理模块和采用配置文件对现场可编程门阵列配置的配置模块。
13.根据权利要求12所述的现场可编程门阵列的网络配置系统,其特征是,所述操作系统还包括:与位于用户端的散列操作模块实现相同操作的第二散列操作模块,用于对接收到的加密文件进行散列操作,得到第二散列码;和文件完整性验证模块,用于验证第一散列码和第二散列码是否相同,如果相同,则给所述解密模块信号使其通过解密密钥对加密文件解密,并给所述配置模块信号使其采用解密后配置文件对现场可编程门阵列配置;如果不同,则通知操作系统停止操作并向用户端发送消息要求重传加密文件和第一散列码。
14.根据权利要求13所述的现场可编程门阵列的网络配置系统,其特征是,所述第一、第二散列操作模块采用的散列算法是单向散列算法。
15.根据权利要求12所述的现场可编程门阵列的网络配置系统,其特征是,所述配置管理模块对用户端发来的并发的配置请求确定不同的优先级,并使优先级高的配置请求先得到满足。
16.根据权利要求12所述的现场可编程门阵列的网络配置系统,其特征是,所述配置管理模块接收现场可编程门阵列返回的配置成功或者配置失败信息,并通过所述消息传输模块发送至用户端。
17.根据权利要求16所述的现场可编程门阵列的网络配置系统,其特征是,所述用户端还包括配置信息处理模块,用于自用户端发出配置请求时起在预定时间内接收到所述配置成功信息时,结束配置过程,并且若在规定时间内接收到所述配置失败信息或未在规定时间内接收到所述配置成功信息,进行失败处理。
18.根据权利要求17所述的现场可编程门阵列的网络配置系统,其特征是,所述规定时间是预先通过网络带宽、配置文件大小、写配置端口速率参数计算出从发出配置请求到应当接收到配置完成信号所需要的时间与一个自定义系数的乘积。
19.根据权利要求18所述的现场可编程门阵列的网络配置系统,其特征是,所述自定义系数的范围为2至10的实数。
20.根据权利要求1 7所述的现场可编程门阵列的网络配置系统,其特征是,所述失败处理包括重试或放弃。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNA2008100567651A CN101232506A (zh) | 2008-01-24 | 2008-01-24 | 一种安全的现场可编程门阵列网络配置方法和配置系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNA2008100567651A CN101232506A (zh) | 2008-01-24 | 2008-01-24 | 一种安全的现场可编程门阵列网络配置方法和配置系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101232506A true CN101232506A (zh) | 2008-07-30 |
Family
ID=39898680
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNA2008100567651A Pending CN101232506A (zh) | 2008-01-24 | 2008-01-24 | 一种安全的现场可编程门阵列网络配置方法和配置系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101232506A (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102280133A (zh) * | 2011-08-16 | 2011-12-14 | 杭州晟元芯片技术有限公司 | 一种抗截获的代码加密烧录方式 |
CN104612531A (zh) * | 2014-12-31 | 2015-05-13 | 重庆川仪自动化股份有限公司 | 轨道交通安全屏蔽门控制系统的通信响应方法 |
CN104683428A (zh) * | 2013-11-26 | 2015-06-03 | 华为技术有限公司 | 网络业务处理方法与装置 |
CN105554098A (zh) * | 2015-12-14 | 2016-05-04 | 瑞斯康达科技发展股份有限公司 | 一种设备配置方法、服务器及系统 |
CN106648791A (zh) * | 2016-12-29 | 2017-05-10 | 成都多沐汽车工程有限公司 | 数据加载方法及装置 |
CN108847930A (zh) * | 2018-06-05 | 2018-11-20 | 深圳市中电数通智慧安全科技股份有限公司 | 一种数据传输方法、装置及消防系统 |
CN111339544A (zh) * | 2019-04-24 | 2020-06-26 | 上海安路信息科技有限公司 | 离线下载装置及离线下载方法 |
CN112528346A (zh) * | 2019-09-02 | 2021-03-19 | 复旦大学 | 一种基于云端加密的fpga动态配置系统 |
-
2008
- 2008-01-24 CN CNA2008100567651A patent/CN101232506A/zh active Pending
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102280133A (zh) * | 2011-08-16 | 2011-12-14 | 杭州晟元芯片技术有限公司 | 一种抗截获的代码加密烧录方式 |
CN104683428B (zh) * | 2013-11-26 | 2019-02-19 | 华为技术有限公司 | 网络业务处理方法与装置 |
CN104683428A (zh) * | 2013-11-26 | 2015-06-03 | 华为技术有限公司 | 网络业务处理方法与装置 |
US10050875B2 (en) | 2013-11-26 | 2018-08-14 | Huawei Technologies Co., Ltd. | Network service processing method and apparatus |
CN104612531B (zh) * | 2014-12-31 | 2016-05-04 | 重庆川仪自动化股份有限公司 | 轨道交通安全屏蔽门控制系统的通信响应方法 |
CN104612531A (zh) * | 2014-12-31 | 2015-05-13 | 重庆川仪自动化股份有限公司 | 轨道交通安全屏蔽门控制系统的通信响应方法 |
CN105554098A (zh) * | 2015-12-14 | 2016-05-04 | 瑞斯康达科技发展股份有限公司 | 一种设备配置方法、服务器及系统 |
CN105554098B (zh) * | 2015-12-14 | 2019-01-25 | 瑞斯康达科技发展股份有限公司 | 一种设备配置方法、服务器及系统 |
CN106648791A (zh) * | 2016-12-29 | 2017-05-10 | 成都多沐汽车工程有限公司 | 数据加载方法及装置 |
CN106648791B (zh) * | 2016-12-29 | 2019-11-05 | 成都多沐汽车工程有限公司 | 数据加载方法及装置 |
CN108847930A (zh) * | 2018-06-05 | 2018-11-20 | 深圳市中电数通智慧安全科技股份有限公司 | 一种数据传输方法、装置及消防系统 |
CN111339544A (zh) * | 2019-04-24 | 2020-06-26 | 上海安路信息科技有限公司 | 离线下载装置及离线下载方法 |
CN111339544B (zh) * | 2019-04-24 | 2023-03-14 | 上海安路信息科技股份有限公司 | 离线下载装置及离线下载方法 |
CN112528346A (zh) * | 2019-09-02 | 2021-03-19 | 复旦大学 | 一种基于云端加密的fpga动态配置系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101232506A (zh) | 一种安全的现场可编程门阵列网络配置方法和配置系统 | |
US8379847B2 (en) | Data and control encryption | |
US10255463B2 (en) | Secure computer architecture | |
US8843739B2 (en) | Anti-tamper device, system, method, and computer-readable medium | |
US8677144B2 (en) | Secure software and hardware association technique | |
KR101776172B1 (ko) | 사물 인터넷 장치 | |
TW201717092A (zh) | 裝置出生憑證 | |
US10680816B2 (en) | Method and system for improving the data security during a communication process | |
CN1926837A (zh) | 在网络域中与网络端点上的嵌入式代理共享密钥的方法、装置和计算机程序 | |
TWI725148B (zh) | 使用動態公鑰基礎建設發送及接收加密訊息方法、系統及媒介 | |
CN101163044A (zh) | 信息安全设备的远程升级方法及系统 | |
CN112822177B (zh) | 数据传输方法、装置、设备和存储介质 | |
US10749847B2 (en) | Hardware trusted data communications over system-on-chip (SOC) architectures | |
CN105071935A (zh) | 一种数据处理方法、异构系统和集成系统 | |
EP3772008A1 (en) | Device programming with system generation | |
WO2008012759A2 (en) | A network management method based on snmp | |
US10715325B2 (en) | Secure, real-time based data transfer | |
EP3657318A1 (en) | Client-side entropy collection for server-side usage | |
CN102970134A (zh) | 将硬件密码设备的算法用于pkcs#7数据封装的方法及系统 | |
CN116166749A (zh) | 数据共享方法、装置、电子设备及存储介质 | |
KR102523416B1 (ko) | 이미지에 대한 보안 기능을 제공하는 보안 장치, 이를 포함하는 카메라 장치 및 카메라 장치를 제어하는 시스템 온 칩 | |
KR20160038935A (ko) | Dnp 메시지의 보안통신장치 및 방법 | |
CN114826742B (zh) | 一种面向工程机械物联网感知层网络的通信安全系统及认证方法 | |
EP3714389B1 (en) | Deployment of components of a distributed application to runtime environments | |
CN1642265A (zh) | 一种数字电视网络系统的通讯方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C12 | Rejection of a patent application after its publication | ||
RJ01 | Rejection of invention patent application after publication |
Open date: 20080730 |