本发明涉及芯片设计技术领域,具体而言,涉及一种基于pcie接口的加密卡架构、一种加密卡及一种电子设备。
背景技术:
随着工业控制智能化程度的提升,需要采集、传输和处理的数据量呈现爆发式增长,亟需大带宽的通信技术和高速数据处理技术。与此同时,数据的安全控制对系统的智能化提升越来越重要,当前保障数据安全的最有效措施是对关键数据进行加解密处理。硬件加密方式具有安全等级高、运算快、批量应用成本低等优点,被广泛应用于工控领域的安全防护。硬件加密的安全性需要基于密码算法、硬件防护等多个技术措施。加密卡和密码芯片是密码算法的主要硬件实现形式,具有安全等级高、运行速度快,规模化应用成本低的优点。高速密码设备是指加解密速度达到gpbs量级的加密卡和密码芯片,主要应用于加密机、服务器、视频监控等数据流量大的应用场景。现有的gpbs量级的加密卡和密码芯片多为单一密码算法,通常采用usb、spi等低速通信接口,数据加解密运算量有限且多为固定值,可兼容的应用场景较少;而且产品系列化过程中研发周期长(研发周期长的主要原因是从产品规格参数到产品定型的时间比较长),无法快速响应多变的应用需求。
技术实现要素:
本发明的目的是提供一种基于pcie接口的加密卡架构及加密卡,以解决上述的加密卡兼容的应用场景少、无法快速响应多变的应用需求的问题。
为了实现上述目的,本发明第一方面提供一种基于pcie接口的加密卡架构,包括:
pcie接口模块,包括第一pcie接口单元和第二pcie接口单元,所述第一pcie接口单元用于输入待加密/解密的数据或输出加密/解密后的数据;
加解密模块,包括至少一个用于加密/解密数据的密码芯片,所述密码芯片集成安装于所述第二pcie接口单元,所述待加密/解密的数据或加密/解密后的数据经所述第二pcie接口单元传送;
控制模块,用于控制所述密码芯片对所述待加密/解密的数据进行加密/解密运算,并控制所述第一pcie接口单元将加密/解密后的数据输出。
进一步地,还包括:
存储模块,包括第一存储单元和第二存储单元,所述第一存储单元用于存储加密卡的程序指令,所述第二存储单元用于存储所述待加密/解密的数据和加密/解密后的数据;
所述控制模块还用于控制所述待加密/解密的数据从所述第二存储单元经所述第二pcie接口单元传送至所述密码芯片;以及控制加密/解密后的数据经所述第二pcie接口单元返回所述第二存储单元。
进一步地,还包括:
时钟模块,用于产生时钟信号,并将所述时钟信号等效传输至每一密码芯片;所述控制模块还用于控制所述时钟模块产生所述时钟信号。
进一步地,所述时钟模块包括:
时钟源,用于产生频率和相位稳定的时钟信号;
分频电路,用于接收所述控制模块的控制信号,根据所述控制信号调制所述时钟信号的频率和相位;
时钟路径,用于将所述时钟信号等效传输至每一密码芯片。
进一步地,还包括:电源模块,用于从主机取能并为加密卡供电。
进一步地,所述密码芯片采用多种加解密算法并行运算,所述加解密算法包括aes、des、sha、rsa、sm1、sm2、sm3、sm4、sm6、sm7和sm9。
进一步地,所述第二pcie接口单元具有预留空间,可安装n个所述密码芯片,n为1至128内的任一自然数。
进一步地,所述第一pcie接口单元的接口标准不低于所述第二pcie接口单元的接口标准。
本发明第二方面提供一种加密卡,采用上述的基于pcie接口的加密卡架构。
本发明第三方面提供一种电子设备,包括上述的加密卡。
本发明提供的基于pcie接口的加密卡架构包括第一pcie接口单元和第二pcie接口单元,将密码芯片集成安装于第二pcie接口单元,基于最大密码芯片数量进行原型研发,通过调整加密卡的密码芯片的数量(例如,密码芯片通过焊接的方式安装在第二pcie接口单元所在的pcb板上,通过增减pcb板上焊接的密码芯片的数量来进行调整)即可快速调整加密卡的算力,快速响应不同应用场景对数据加解密的需求。由于加密卡上加密芯片的成本占到整个加密卡成本的50%以上,本加密卡架构可直接增减加密芯片的数量,根据实际应用场景匹配加密芯片数量,在兼顾数据加解密效率的情况下还节约了应用成本。本加密卡架构的第二pcie接口单元预留密码芯片的安装空间,可支持最多128个密码芯片组成加密阵列,支持多密码算法并行运算,数据处理能力可达到100gpbs量级;而且第二pcie接口单元预留空间,使该加密卡架构具有充分的性能升级空间,原型研发定性后,仅需要调整pcb板上焊接的密码芯片的数量即可快速形成不同算力的加密卡,可缩短二次研发周期。本加密卡架构中,密码芯片与加密卡的通信以及密码卡与主机的通信均采用高速的pcie接口,通信带宽大、效率高。
本发明实施方式的其它特征和优点将在随后的具体实施方式部分予以详细说明。
附图说明
附图是用来提供对本发明实施方式的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本发明实施方式,但并不构成对本发明实施方式的限制。在附图中:
图1是本发明一种实施方式提供的基于pcie接口的加密卡架构的框图。
具体实施方式
以下结合附图对本发明的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本发明,并不用于限制本发明。
图1是本发明一种实施方式提供的基于pcie接口的加密卡架构的框图。如图1所示,本发明实施方式提供一种基于pcie接口的加密卡架构,包括:pcie接口模块、加解密模块、控制模块、存储模块、时钟模块和电源模块(附图未示出)。所述pcie接口模块包括第一pcie接口单元和第二pcie接口单元,所述第一pcie接口单元用于输入待加密/解密的数据或输出加密/解密后的数据。所述第一pcie接口单元用于实现主机与加密卡之间的数据交互。
所述加解密模块包括至少一个用于加密/解密数据的密码芯片,所述密码芯片集成安装于所述第二pcie接口单元,例如,密码芯片通过焊接的方式安装在第二pcie接口单元所在的pcb板上。所述待加密/解密的数据或加密/解密后的数据经所述第二pcie接口单元传送。所述第二pcie接口单元具有预留空间,可安装n个所述密码芯片(n为1至128内的任一自然数),组成密码芯片阵列。所述密码芯片自身集成有pcie接口,通过其自身的pcie接口与所述第二pcie接口单元连接。所述密码芯片集成有多种加解密算法,支持多种加解密算法并行运算。所述加解密算法包括aes、des、sha、rsa、sm1、sm2、sm3、sm4、sm6、sm7和sm9。通过调整加密卡的密码芯片的数量即可快速调整加密卡的算力,例如,二次开发加密卡时,在第二pcie接口单元的预留空间增加密码芯片即可增加加密卡的整体运算能力,以适用更高要求的应用场景。
所述控制模块用于控制所述密码芯片对所述待加密/解密的数据进行加密/解密运算,并控制所述第一pcie接口单元将加密/解密后的数据输出。
所述存储模块,包括第一存储单元和第二存储单元,所述第一存储单元用于存储加密卡的程序指令,所述第二存储单元用于存储所述待加密/解密的数据和加密/解密后的数据以及存储所述加密卡的私钥。所述控制模块还用于控制所述待加密/解密的数据从所述第二存储单元经所述第二pcie接口单元传送至所述密码芯片;以及控制加密/解密后的数据经所述第二pcie接口单元返回所述第二存储单元。
所述时钟模块用于产生时钟信号,并将所述时钟信号等效传输至每一密码芯片。所述控制模块还用于控制所述时钟模块产生所述时钟信号。本实施方式中,所述时钟模块包括时钟源、分频电路和时钟路径。所述时钟源用于产生频率和相位稳定的时钟信号;所述分频电路用于接收所述控制模块的控制信号,根据所述控制信号调制所述时钟信号的频率和相位;所述时钟路径是等长的电路线,用于将所述分频电路调制的时钟信号等效传输至每一密码芯片。
所述电源模块用于从主机取能并为加密卡供电,即为加密卡的其它模块供电。
基于本发明实施方式提供加密卡架构,加密卡中数据和指令的传输/控制过程为:主机的指令通过第一pcie接口单元传输至控制模块,主机的待加密/解密的数据通过第一pcie接口单元传输至第二存储单元;控制模块将接收到的主机指令下发并调度加密芯片进行数据加解密运算;主机的待加密/解密的数据从第二存储单元经第二pcie接口单元传输至加解密模块内的密码芯片阵列,密码芯片对数据进行加密/解密运算,加密/解密后的数据通过第二pcie接口单元返回第二存储单元;控制模块通过第一pcie接口单元向主机返回加解密任务完成的指令。主机要读取加密/解密后的数据时,通过第一pcie接口单元向控制模块发送读取数据指令,控制模块通过第一pcie接口单元将第二存储单元中存储的加密/解密后的数据发送给主机。
优选的,所述第一pcie接口单元的接口标准不低于所述第二pcie接口单元的接口标准。由于第一pcie接口单元传输的数据量大,因此采用高版本的pcie接口,并向下兼容低版本的pcie接口。第二pcie接口单元连接密码芯片,由于密码芯片研发周期长,集成的pcie接口标准改进相对缓慢、接口标准偏低,因此,第一pcie接口单元的接口标准应不低于密码芯片的pcie接口,用于兼顾数据交互、研发成本和研发周期。
本发明实施方式还提供一种加密卡,采用上述的基于pcie接口的加密卡架构。
本发明实施方式还提供一种电子设备,包括上述的加密卡。
以上结合附图详细描述了本发明的可选实施方式,但是,本发明实施方式并不限于上述实施方式中的具体细节,在本发明实施方式的技术构思范围内,可以对本发明实施方式的技术方案进行多种简单变型,这些简单变型均属于本发明实施方式的保护范围。另外需要说明的是,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合。为了避免不必要的重复,本发明实施方式对各种可能的组合方式不再另行说明。
此外,本发明的各种不同的实施方式之间也可以进行任意组合,只要其不违背本发明实施方式的思想,其同样应当视为本发明实施方式所公开的内容。
1.一种基于pcie接口的加密卡架构,其特征在于,包括:
pcie接口模块,包括第一pcie接口单元和第二pcie接口单元,所述第一pcie接口单元用于输入待加密/解密的数据或输出加密/解密后的数据;
加解密模块,包括至少一个用于加密/解密数据的密码芯片,所述密码芯片集成安装于所述第二pcie接口单元,所述待加密/解密的数据或加密/解密后的数据经所述第二pcie接口单元传送;
控制模块,用于控制所述密码芯片对所述待加密/解密的数据进行加密/解密运算,并控制所述第一pcie接口单元将加密/解密后的数据输出。
2.根据权利要求1所述的基于pcie接口的加密卡架构,其特征在于,还包括:
存储模块,包括第一存储单元和第二存储单元,所述第一存储单元用于存储加密卡的程序指令,所述第二存储单元用于存储所述待加密/解密的数据和加密/解密后的数据;
所述控制模块还用于控制所述待加密/解密的数据从所述第二存储单元经所述第二pcie接口单元传送至所述密码芯片;以及控制加密/解密后的数据经所述第二pcie接口单元返回所述第二存储单元。
3.根据权利要求2所述的基于pcie接口的加密卡架构,其特征在于,还包括:
时钟模块,用于产生时钟信号,并将所述时钟信号等效传输至每一密码芯片;
所述控制模块还用于控制所述时钟模块产生所述时钟信号。
4.根据权利要求3所述的基于pcie接口的加密卡架构,其特征在于,所述时钟模块包括:
时钟源,用于产生频率和相位稳定的时钟信号;
分频电路,用于接收所述控制模块的控制信号,根据所述控制信号调制所述时钟信号的频率和相位;
时钟路径,用于将所述时钟信号等效传输至每一密码芯片。
5.根据权利要求1所述的基于pcie接口的加密卡架构,其特征在于,还包括:
电源模块,用于从主机取能并为加密卡供电。
6.根据权利要求1所述的基于pcie接口的加密卡架构,其特征在于,所述密码芯片采用多种加解密算法并行运算,所述加解密算法包括aes、des、sha、rsa、sm1、sm2、sm3、sm4、sm6、sm7和sm9。
7.根据权利要求1所述的基于pcie接口的加密卡架构,其特征在于,所述第二pcie接口单元具有预留空间,可安装n个所述密码芯片,n为1至128内的任一自然数。
8.根据权利要求1所述的基于pcie接口的加密卡架构,其特征在于,所述第一pcie接口单元的接口标准不低于所述第二pcie接口单元的接口标准。
9.一种加密卡,其特征在于,采用权利要求1-8中任一项所述的基于pcie接口的加密卡架构。
10.一种电子设备,其特征在于,包括权利要求9所述的加密卡。
技术总结