一种高性能加解密运算能力扩展方法及系统技术方案

技术编号:20075693 阅读:28 留言:0更新日期:2019-01-15 00:49
本发明专利技术公开了一种高性能加解密运算能力扩展方法及系统,所述方法包括:主处理器通过系统通讯将需要加解密的数据和加解密操作的程序调用传输给FPGA主控器;FPGA主控器对来自主处理器的程序调用进行解析并分解为系列子过程;FPGA主控器向安全芯片发送对应的命令调用和相关的数据,安全芯片根据自身存储的根密钥和来自FPGA主控器的输入数据,生成当前加解密运算所需要的次级密钥,并将运算结果反馈给FPGA主控器;FPGA主控器按照安全芯片反馈的次级密钥,调用高性能加解密电路完成对应的加解密运算,并将最终的运算结果发送给主处理器。本发明专利技术在FPGA主控器中加入了高性能加解密电路,保证了高性能加解密运算的安全执行。

A High Performance Encryption and Decryption Computing Ability Extension Method and System

The invention discloses a high-performance encryption and decryption operation expansion method and system, which includes: the main processor transmits the program calls of encryption and decryption operation to the main controller of the FPGA through system communication; the main controller of the FPGA parses and decomposes the program calls from the main processor into a series of sub-processes; and the main controller of the FPGA sends corresponding data to the security chip. The security chip generates the secondary key needed by the current encryption and decryption operation according to the root key stored by itself and the input data from the main controller of the FPGA, and feeds the operation results back to the main controller of the FPGA. The main controller of the FPGA calls the high-performance encryption and decryption circuit to complete the corresponding encryption and decryption operation according to the secondary key feedback from the security chip, and finally carries out the operation. The results are sent to the main processor. The high-performance encryption and decryption circuit is added to the main controller of the FPGA to ensure the safe execution of the high-performance encryption and decryption operation.

【技术实现步骤摘要】
一种高性能加解密运算能力扩展方法及系统
本专利技术涉及安全芯片
,尤其涉及一种高性能加解密运算能力扩展方法及系统。
技术介绍
安全芯片是指实现了一种或多种密码算法,直接或间接地使用密码技术来保护密钥和敏感信息的集成电路芯片。作为智能终端的最底层安全保障,安全芯片的应用能有效地防止黑客攻击与破解,提高智能终端的安全性,保护用户个人信息和应用数据安全。目前,安全芯片正越来越多地应用于智能终端中,为金融支付、在线身份认证提供可靠保障。安全芯片就是可信任平台模块,是一个可独立进行密钥生成、加解密的装置,内部拥有独立的处理器和存储单元,可存储密钥和特征数据,为电脑提供加密和安全认证服务,用安全芯片进行加密,密钥被存储在硬件中,被窃的数据无法解密,从而保护商业隐私和数据安全。传统的安全芯片的使用场景,如图1所示,安全芯片作为系统主处理器的外接从设备,由主处理器向安全芯片发送命令调用,安全芯片获取并解释相关命令,然后执行对应的加解密运算和安全处理,最后把运算结果反馈给主处理器。在这样的运行环境中,由于安全芯片自身硬件和软件处理能力的低下,导致安全芯片的加解密运算能力无法进一步提升。这是因为对于安全芯片而言,为了应对磨片(是指用机械或者化学的方法,逐层剥离芯片中的电路,达到解剖和反响提取芯片电路结构的目的)等物理攻击、激光与电磁信号注入半侵入式攻击,差分电流分析等非侵入式攻击,安全芯片中的CPU核、加解密电路、存储模块和总线上都加入了大量防护设计,导致安全芯片的系统主频和处理能力都处于中等以下水平,仅能运行简单的操作系统和应用程序,软件的处理能力和防护能力较弱。为了实现更高速度更高性能的加解密运算,一种解决方案是将这些高速运算迁移到运算能力更强的主处理器上执行,安全芯片只负责实现密钥的生成和保存。但这样的解决方案存在较为严重的安全隐患:针对安全芯片的中继攻击导致密钥的泄露,由于主处理器上的操作系统和应用程序可能受到恶意软件的入侵,这样安全芯片所接受的命令调用就可能是恶意软件所发送的非法命令,安全芯片将生成的次级密钥返回给主处理器后,恶意软件就可以获取对应的密钥,导致后续的加解密运算无效,这种情况就是针对传统安全芯片的典型的中继攻击(RelayAttack)。主处理器自身的硬件缺陷,会导致加解密运算的密钥和运算细节泄露;由于主处理器在最初设计上的缺陷,例如Intel芯片和ARM芯片为了最求高性能,在微架构设计中大量采用了运算部件共享、Cache共享、分枝预测等设计方法,使得CPU和整个处理器系统中存在大量信息泄露的侧信道存在,这些信息泄露侧信道被称为现代先进处理器中的“癌症”,极易受到“幽灵”和“熔断”类型的恶意软件的攻击,恶意软件可以获取加解密运算的密钥以及加解密运算的程序细节。主处理器上运行的操作系统的安全漏洞,会导致加解密运算的密钥和运算细节泄露,操作系统由于其代码规模的庞大,尽管软件维护人员付出了极大的努力,操作系统升级和补丁程序的发布成为常态,但恶意软件总是能乘虚而入,获取系统权限。获得系统权限的恶意软件可以方便地获取加解密运算的密钥以及加解密运算的程序细节。也就是说,现有技术中存在安全芯片自身加解密运算能力较低,同时传统安全芯片的运行环境因安全防护能力不足无法有效地扩展加解密运算性能的问题。因此,现有技术还有待于改进和发展。
技术实现思路
本专利技术要解决的技术问题在于,针对现有技术缺陷,本专利技术提供一种高性能加解密运算能力扩展方法及系统,在FPGA主控器中加入了高性能加解密电路,这部分电路由FPGA主控器中的高安全应用程序调用,安全芯片负责在保存和保护根密钥的基础上提供高性能加解密运算所需要的次级密钥,有效地解决传统方案所面临的中继攻击导致安全芯片所生成的次级密钥泄露的问题,保证了高性能加解密运算的安全执行。本专利技术解决技术问题所采用的技术方案如下:一种高性能加解密运算能力扩展方法,其中,所述高性能加解密运算能力扩展方法包括:主处理器通过系统通讯将需要加解密的数据和加解密操作的程序调用传输给FPGA主控器,FPGA主控器接收相关数据并进行缓存;FPGA主控器对来自主处理器的程序调用进行解析并分解为系列子过程,所述子过程分为两部分,第一部分是由多核CPU调用高性能加解密电路进行加解密运算操作,第二部分是FPGA主控器调用安全芯片,由安全芯片生成当前加解密运算所需要的次级密钥;FPGA主控器向安全芯片发送对应的命令调用和相关的数据,安全芯片根据自身存储的根密钥和来自FPGA主控器的输入数据,生成当前加解密运算所需要的次级密钥,并将运算结果反馈给FPGA主控器;FPGA主控器按照安全芯片反馈的次级密钥,调用高性能加解密电路完成对应的加解密运算,并将最终的运算结果发送给主处理器。所述的高性能加解密运算能力扩展方法,其中,所述FPGA主控器包括高安全应用程序、微内核操作系统、多核CPU和高性能加解密电路。所述的高性能加解密运算能力扩展方法,其中,当调用高性能加解密电路的高安全等级的应用程序时由FPGA主控器执行;微内核操作系统用于控制调用加解密运算的高安全应用程序的安全执行;多核CPU为双核或者三核的多核CPU,用于适时地停止安全应用程序和加解密运算的执行,清除存储器中保存的安全敏感信息。所述的高性能加解密运算能力扩展方法,其中,所述主处理器通过系统通讯将需要加解密的数据和加解密操作的程序调用传输给FPGA主控器,FPGA主控器接收相关数据并进行缓存之前还包括:预先在所述主处理器与所述安全芯片之间设置一用于进行数据处理的FPGA主控器。所述的高性能加解密运算能力扩展方法,其中,将FPGA芯片的配置代码文件进行加密保护,同时禁用FPGA芯片中的扫描链。所述的高性能加解密运算能力扩展方法,其中,FPGA主控器与主处理器之间通过系统通讯与程序调用构成对等的分布式并行处理关系。所述的高性能加解密运算能力扩展方法,其中,多核CPU采用双核螺旋结构,当检测出恶意软件的攻击行为时,适时地停止安全应用程序的执行和加解密运算的执行,清除存储器中保存的安全敏感信息,控制相关密钥和加解密运算安全执行。所述的高性能加解密运算能力扩展方法,其中,多核CPU采用三核冗余结构,当检测出恶意软件的攻击行为时,适时地停止安全应用程序的执行和加解密运算的执行,清除存储器中保存的安全敏感信息,控制相关密钥和加解密运算安全执行。一种高性能加解密运算能力扩展系统,其中,所述高性能加解密运算能力扩展系统包括:主处理器,用于通过系统通讯将需要加解密的数据和加解密操作的程序调用传输给FPGA主控器;FPGA主控器,用于接收相关数据并进行缓存,将来自主处理器的程序调用进行解析并分解为系列子过程,向安全芯片发送对应的命令调用和相关的数据,并按照安全芯片反馈的次级密钥,调用高性能加解密电路完成对应的加解密运算,并将最终的运算结果发送给主处理器;安全芯片,用于根据自身存储的根密钥和来自FPGA主控器的输入数据,生成当前加解密运算所需要的次级密钥,并将运算结果反馈给FPGA主控器;所述FPGA主控器包括高安全应用程序、微内核操作系统、多核CPU和高性能加解密电路。所述的高性能加解密运算能力扩展系统,其中,调用高性能加解密电路的高安全等级的应用程序时由FPGA主控器执行本文档来自技高网
...

【技术保护点】
1.一种高性能加解密运算能力扩展方法,其特征在于,所述高性能加解密运算能力扩展方法包括:主处理器通过系统通讯将需要加解密的数据和加解密操作的程序调用传输给FPGA主控器,FPGA主控器接收相关数据并进行缓存;FPGA主控器对来自主处理器的程序调用进行解析并分解为系列子过程,所述子过程分为两部分,第一部分是由多核CPU调用高性能加解密电路进行加解密运算操作,第二部分是FPGA主控器调用安全芯片,由安全芯片生成当前加解密运算所需要的次级密钥;FPGA主控器向安全芯片发送对应的命令调用和相关的数据,安全芯片根据自身存储的根密钥和来自FPGA主控器的输入数据,生成当前加解密运算所需要的次级密钥,并将运算结果反馈给FPGA主控器;FPGA主控器按照安全芯片反馈的次级密钥,调用高性能加解密电路完成对应的加解密运算,并将最终的运算结果发送给主处理器。

【技术特征摘要】
1.一种高性能加解密运算能力扩展方法,其特征在于,所述高性能加解密运算能力扩展方法包括:主处理器通过系统通讯将需要加解密的数据和加解密操作的程序调用传输给FPGA主控器,FPGA主控器接收相关数据并进行缓存;FPGA主控器对来自主处理器的程序调用进行解析并分解为系列子过程,所述子过程分为两部分,第一部分是由多核CPU调用高性能加解密电路进行加解密运算操作,第二部分是FPGA主控器调用安全芯片,由安全芯片生成当前加解密运算所需要的次级密钥;FPGA主控器向安全芯片发送对应的命令调用和相关的数据,安全芯片根据自身存储的根密钥和来自FPGA主控器的输入数据,生成当前加解密运算所需要的次级密钥,并将运算结果反馈给FPGA主控器;FPGA主控器按照安全芯片反馈的次级密钥,调用高性能加解密电路完成对应的加解密运算,并将最终的运算结果发送给主处理器。2.根据权利要求1所述的高性能加解密运算能力扩展方法,其特征在于,所述FPGA主控器包括高安全应用程序、微内核操作系统、多核CPU和高性能加解密电路。3.根据权利要求1所述的高性能加解密运算能力扩展方法,其特征在于,当调用高性能加解密电路的高安全等级的应用程序时由FPGA主控器执行;微内核操作系统用于控制调用加解密运算的高安全应用程序的安全执行;多核CPU为双核或者三核的多核CPU,用于适时地停止安全应用程序和加解密运算的执行,清除存储器中保存的安全敏感信息。4.根据权利要求1所述的高性能加解密运算能力扩展方法,其特征在于,所述主处理器通过系统通讯将需要加解密的数据和加解密操作的程序调用传输给FPGA主控器,FPGA主控器接收相关数据并进行缓存之前还包括:预先在所述主处理器与所述安全芯片之间设置一用于进行数据处理的FPGA主控器。5.根据权利要求1所述的高性能加解密运算能力扩展方法,其特征在于,将FPGA芯片的配置代码文件进行加密保护,同时禁...

【专利技术属性】
技术研发人员:罗禹铭罗禹城
申请(专利权)人:网御安全技术深圳有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1