CN109255259A - 一种高安全加解密运算能力扩展方法及*** - Google Patents

一种高安全加解密运算能力扩展方法及*** Download PDF

Info

Publication number
CN109255259A
CN109255259A CN201811057773.8A CN201811057773A CN109255259A CN 109255259 A CN109255259 A CN 109255259A CN 201811057773 A CN201811057773 A CN 201811057773A CN 109255259 A CN109255259 A CN 109255259A
Authority
CN
China
Prior art keywords
main controller
safety
encryption
fpga main
decryption
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.)
Granted
Application number
CN201811057773.8A
Other languages
English (en)
Other versions
CN109255259B (zh
Inventor
罗禹铭
罗禹城
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Wangyu Safety Technology (shenzhen) Co Ltd
Original Assignee
Wangyu Safety Technology (shenzhen) Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Wangyu Safety Technology (shenzhen) Co Ltd filed Critical Wangyu Safety Technology (shenzhen) Co Ltd
Priority to CN201811057773.8A priority Critical patent/CN109255259B/zh
Publication of CN109255259A publication Critical patent/CN109255259A/zh
Application granted granted Critical
Publication of CN109255259B publication Critical patent/CN109255259B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
    • G06F21/76Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information in application-specific integrated circuits [ASIC] or field-programmable devices, e.g. field-programmable gate arrays [FPGA] or programmable logic devices [PLD]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Mathematical Physics (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Storage Device Security (AREA)

Abstract

本发明公开了一种高安全加解密运算能力扩展方法及***,所述方法包括:主处理器通过***通讯将需要加解密的数据和加解密操作的程序调用传输给FPGA主控器,FPGA主控器接收相关数据并进行缓存;FPGA主控器将程序调用分解为系列子过程,对涉及安全芯片部分的操作,生成对应的命令调用序列和数据分组;FPGA主控器向多个安全芯片发送对应的命令调用和相关的数据,各个安全芯片将运算结果反馈给FPGA主控器;FPGA主控器汇集来自全部安全芯片的运算结果,将最终的运算结果发送给主处理器。所述FPGA主控器包括高安全应用程序、微内核操作***和多核CPU;本发明极大地提升了针对安全芯片的安全防护能力。

Description

一种高安全加解密运算能力扩展方法及***
技术领域
本发明涉及安全芯片技术领域,尤其涉及一种高安全加解密运算能力扩展方法及***。
背景技术
安全芯片是指实现了一种或多种密码算法,直接或间接地使用密码技术来保护密钥和敏感信息的集成电路芯片。作为智能终端的最底层安全保障,安全芯片的应用能有效地防止黑客攻击与破解,提高智能终端的安全性,保护用户个人信息和应用数据安全。目前,安全芯片正越来越多地应用于智能终端中,为金融支付、在线身份认证提供可靠保障。安全芯片就是可信任平台模块,是一个可独立进行密钥生成、加解密的装置,内部拥有独立的处理器和存储单元,可存储密钥和特征数据,为电脑提供加密和安全认证服务,用安全芯片进行加密,密钥被存储在硬件中,被窃的数据无法解密,从而保护商业隐私和数据安全。
传统的安全芯片的使用场景,如图1所示,安全芯片作为***主处理器的外接从设备,由主处理器向安全芯片发送命令调用,安全芯片获取并解释相关命令,然后执行对应的加解密运算和安全处理,最后把运算结果反馈给主处理器。
在这样的运行环境中,由于安全芯片自身硬件和软件处理能力的低下,导致安全芯片的加解密运算能力无法进一步提升。这是因为对于安全芯片而言,为了应对磨片(是指用机械或者化学的方法,逐层剥离芯片中的电路,达到解剖和反响提取芯片电路结构的目的)等物理攻击、激光与电磁信号注入半侵入式攻击,差分电流分析等非侵入式攻击,安全芯片中的CPU核、加解密电路、存储模块和总线上都加入了大量防护设计,导致安全芯片的***主频和处理能力都处于中等以下水平,仅能运行简单的操作***和应用程序,软件的处理能力和防护能力较弱。
在安全芯片内部执行的加解密运算得到了全面的安全防护,其安全等级是最高的,为了扩展这种高安全加解密运算,一种解决方案是由主处理器控制多个安全芯片并行工作,如图2所示。
但这样的解决方案存在较为严重的安全隐患:
针对安全芯片的中继攻击导致存在安全芯片所完成的加解密运算结果被非法使用的风险,由于主处理器上的操作***和应用程序可能受到恶意软件的入侵,这样安全芯片所接受的命令调用就可能是恶意软件所发送的非法命令,安全芯片按照恶意软件传输过来的数据完成加解密运算并将结果返回给主处理器后,恶意软件就可以获取对应的运算结果,进行下一步的非法使用。这种情况就是针对传统安全芯片的典型的中继攻击(RelayAttack)。
主处理器自身的硬件缺陷,会导致恶意软件能够全面地掌握操作***和应用软件的细节和漏洞,为恶意软件获取***权限和发起中继攻击创造条件。由于主处理器在最初设计上的缺陷,例如Intel芯片和ARM芯片为了最求高性能,在微架构设计中大量采用了运算部件共享、Cache共享、分枝预测等设计方法,使得CPU和整个处理器***中存在大量信息泄露的侧信道存在,这些信息泄露侧信道被称为现代先进处理器中的“癌症”,极易受到“幽灵”和“熔断”类型的恶意软件的攻击,恶意软件全面地掌握操作***和应用软件的细节和漏洞,为恶意软件获取***权限和发起中继攻击创造条件。
主处理器上运行的操作***的安全漏洞,会导致恶意软件获取***权限,并为发起中继攻击创造条件。操作***由于其代码规模的庞大,尽管软件维护人员付出了极大的努力,操作***升级和补丁程序的发布成为常态,但恶意软件总是能乘虚而入,获取***权限。获得***权限的恶意软件可以方便发起中继攻击。
也就是说,现有技术中存在安全芯片自身加解密运算能力较低,同时传统安全芯片的运行环境因安全防护能力不足无法有效地扩展高安全加解密运算能力的问题。
因此,现有技术还有待于改进和发展。
发明内容
本发明要解决的技术问题在于,针对现有技术缺陷,本发明提供一种高安全加解密运算能力扩展方法及***,旨在通过在主处理器和安全芯片之间增加FPGA主控器,所述FPGA主控器包括高安全应用程序、微内核操作***和多核CPU,当调用安全芯片的高安全应用程序时由FPGA主控器执行;微内核操作***用于控制调用安全芯片的高安全应用程序的安全执行;多核CPU为双核或者三核的多核CPU,用于适时地停止调用安全芯片的高安全应用程序的执行,清除存储器中保存的安全敏感信息,通过FPGA主控器向安全芯片发送命令调用,并汇集来自安全芯片的运算结果,将最终的运算结果发送给主处理器,极大地提升了针对安全芯片的安全防护能力。
本发明解决技术问题所采用的技术方案如下:
一种高安全加解密运算能力扩展方法,其中,所述高安全加解密运算能力扩展方法包括:
主处理器通过***通讯将需要加解密的数据和加解密操作的程序调用传输给FPGA主控器,FPGA主控器接收相关数据并进行缓存;
FPGA主控器将程序调用分解为系列子过程,对涉及安全芯片部分的操作,生成对应的命令调用序列和数据分组;
FPGA主控器向多个安全芯片发送对应的命令调用和相关的数据,各个安全芯片将运算结果反馈给FPGA主控器;
FPGA主控器汇集来自全部安全芯片的运算结果,将最终的运算结果发送给主处理器。
所述FPGA主控器包括高安全应用程序、微内核操作***和多核CPU;
当调用安全芯片的高安全应用程序时由FPGA主控器执行;微内核操作***用于控制调用安全芯片的高安全应用程序的安全执行;多核CPU为双核或者三核的多核CPU,用于适时地停止调用安全芯片的高安全应用程序的执行,清除存储器中保存的安全敏感信息。
所述的高安全加解密运算能力扩展方法,其中,所述主处理器通过***通讯将需要加解密的数据和加解密操作的程序调用传输给FPGA主控器,FPGA主控器接收相关数据并进行缓存之前还包括:
预先在所述主处理器与所述安全芯片之间设置一用于进行数据处理的FPGA主控器。
所述的高安全加解密运算能力扩展方法,其中,所述FPGA主控器向多个安全芯片发送对应的命令调用和相关的数据,各个安全芯片将运算结果反馈给FPGA主控器具体包括:
FPGA主控器向多个安全芯片发送对应的命令调用和相关的数据,各个安全芯片获取并解释相关命令;
各个安全芯片执行对应的加解密运算和安全处理,将各自的运算结果反馈给FPGA主控器。
所述的高安全加解密运算能力扩展方法,其中,将FPGA芯片的配置代码文件进行加密保护,同时禁用FPGA芯片中的扫描链。
所述的高安全加解密运算能力扩展方法,其中,FPGA主控器与主处理器之间通过***通讯与程序调用构成对等的分布式并行处理关系。
所述的高安全加解密运算能力扩展方法,其中,FPGA主控器采用软核的方式来实现CPU核,当CPU核采用双核螺旋结构设计时,在双核螺旋结构中,两个逻辑功能完全相同的CPU核执行相同的指令,且指令的执行结果和CPU状态进行比较。
所述的高安全加解密运算能力扩展方法,其中,FPGA主控器采用软核的方式来实现CPU核,当CPU核采用三核冗余结构设计时,在三核冗余结构中,三个逻辑功能完全相同的CPU核执行相同的指令,且指令的执行结果和CPU状态进行比较。
一种高安全加解密运算能力扩展***,其中,所述高安全加解密运算能力扩展***包括:
主处理器,用于通过***通讯将需要加解密的数据和加解密操作的程序调用传输给FPGA主控器;
FPGA主控器,用于接收相关数据并进行缓存,将程序调用分解为系列子过程,对涉及安全芯片部分的操作,生成对应的命令调用序列和数据分组,向多个安全芯片发送对应的命令调用和相关的数据,并将各个安全芯片反馈的运算结果发送给主处理器;
多个安全芯片,用于获取并解释相关命令,执行对应的加解密运算和安全处理,将运算结果反馈给FPGA主控器;
所述FPGA主控器包括高安全应用程序、微内核操作***和多核CPU。
所述的高安全加解密运算能力扩展***,其中,调用安全芯片的高安全应用程序时由FPGA主控器执行;
微内核操作***用于控制调用安全芯片的高安全应用程序的安全执行;
多核CPU用于适时地停止调用安全芯片的高安全应用程序的执行,清除存储器中保存的安全敏感信息。
所述的高安全加解密运算能力扩展***,其中,多核CPU为双核或者三核的多核CPU。
本发明公开了一种高安全加解密运算能力扩展方法及***,所述方法包括:主处理器通过***通讯将需要加解密的数据和加解密操作的程序调用传输给FPGA主控器,FPGA主控器接收相关数据并进行缓存;FPGA主控器将程序调用分解为系列子过程,对涉及安全芯片部分的操作,生成对应的命令调用序列和数据分组;FPGA主控器向多个安全芯片发送对应的命令调用和相关的数据,各个安全芯片将运算结果反馈给FPGA主控器;FPGA主控器汇集来自全部安全芯片的运算结果,将最终的运算结果发送给主处理器。所述FPGA主控器包括高安全应用程序、微内核操作***和多核CPU;当调用安全芯片的高安全应用程序时由FPGA主控器执行;微内核操作***用于控制调用安全芯片的高安全应用程序的安全执行;多核CPU为双核或者三核的多核CPU,用于适时地停止调用安全芯片的高安全应用程序的执行,清除存储器中保存的安全敏感信息。本发明通过FPGA主控器向安全芯片发送命令调用,并汇集来自安全芯片的运算结果,将最终的运算结果发送给主处理器,极大地提升了针对安全芯片的安全防护能力。
附图说明
图1是传统的安全芯片的使用场景的原理示意图;
图2是现有技术中由主处理器控制多个安全芯片并行工作的使用场景的原理示意图;
图3是本发明高安全加解密运算能力扩展方法的较佳实施例的流程图;
图4是本发明高安全加解密运算能力扩展***的较佳实施例的结构原理图。
具体实施方式
为使本发明的目的、技术方案及优点更加清楚、明确,以下参照附图并举实施例对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明较佳实施例所述的高安全加解密运算能力扩展方法,如图3所示,所述高安全加解密运算能力扩展方法包括以下步骤:
步骤S10、主处理器通过***通讯将需要加解密的数据和加解密操作的程序调用传输给FPGA主控器,FPGA主控器接收相关数据并进行缓存。
具体地,在安全芯片中加解密电路得到了大量物理、电学和逻辑上的安全防护,这些加解密电路可以抵抗已知的绝大部分的物理、电学和逻辑上的攻击行为,因此把这些加解密电路执行的运算称为高安全加解密运算。
预先在所述主处理器与所述安全芯片之间设置一用于进行数据处理的FPGA主控器,所述FPGA主控器包括高安全应用程序、微内核操作***和多核CPU;当调用安全芯片的高安全应用程序时由FPGA主控器执行;微内核操作***用于控制调用安全芯片的高安全应用程序的安全执行;多核CPU为双核或者三核的多核CPU,用于适时地停止调用安全芯片的高安全应用程序的执行,清除存储器中保存的安全敏感信息。
将调用安全芯片的高安全应用程序安排在FPGA主控器上执行,可以有效地解决主处理器上存在安全漏洞所造成的高安全应用程序的细节泄露的问题,规避了主处理器上安全漏洞所造成的恶意软件入侵,以及在此基础上发起针对安全芯片的中继攻击的安全风险。
FPGA主控器作为一个独立的处理器,它与主处理器之间通过***通讯与程序调用,构成对等的分布式并行处理关系,没有主从之分。安全芯片作为FPGA主控器的从设备,由FPGA主控器向多个安全芯片发送命令调用,各个安全芯片获取并解释相关命令,然后执行对应的加解密运算和安全处理,最后把运算结果反馈给FPGA主控器,本发明中,FPGA主控器+安全芯片构成了一个增强型的安全运行环境。
步骤S20、FPGA主控器将程序调用分解为系列子过程,对涉及安全芯片部分的操作,生成对应的命令调用序列和数据分组。
具体地,FPGA主控器对来自主处理器的程序调用进行解析并分解为系列子过程,对于涉及安全芯片部分的操作,FPGA主控器生成对应的命令调用序列和数据分组。
步骤S30、FPGA主控器向多个安全芯片发送对应的命令调用和相关的数据,各个安全芯片将运算结果反馈给FPGA主控器。
具体地,FPGA主控器向多个安全芯片发送对应的命令调用和相关的数据,各个安全芯片获取并解释相关命令;各个安全芯片执行对应的加解密运算和安全处理,将运算结果反馈给FPGA主控器;FPGA主控器控制多个安全芯片并发地执行高安全加解密运算,从而提升加解密运算的效率。
步骤S40、FPGA主控器汇集来自全部安全芯片的运算结果,将最终的运算结果发送给主处理器。
进一步地,当调用安全芯片的高安全应用程序时由FPGA主控器执行,规避了主处理器上安全漏洞被恶意软件利用,造成高安全应用程序的细节泄露,并发起针对安全芯片的中继攻击的风险。例如,由于Intel和ARM公司的现代先进CPU芯片在微架构设计中的缺陷,信息泄露侧信道是这些芯片不可消除的“癌症”,而由于这些CPU主处理器的大规模应用,将这些芯片在短时间内完全替换是不可能实现的。将安全防护要求不高的应用继续保留在原来的主处理器上执行,而将调用安全芯片的高安全应用程序安排在FPGA主控器上执行,可以有效地解决主处理器上存在安全漏洞所造成的调用安全芯片的应用程序细节泄露,并以此为基础发起针对安全芯片的中继攻击的风险。
进一步地,FPGA主控器可以采用安全防护功能更强的新设计,消除信息泄露侧信道所造成的调用安全芯片的高安全应用程序细节泄露的安全威胁。FPGA主控器可以灵活地采用软核的方式来实现CPU核,并在微架构设计中采用更加严格的时间和空间隔离来有效地消除信息泄露侧信道,增强了FPGA主控器对高安全应用程序的安全防护能力。
其中,FPGA主控器中的多核CPU为双核或者三核的多核CPU,采用多核CPU的原因在于提升对于恶意软件攻击的防护能力,由于恶意软件在某一时刻只能修改其中一个CPU的寄存器状态,同时修改两个或者三个CPU的寄存器状态,且修改后的多个CPU状态完全一致是难以实现的,因此通过双核螺旋结构或者三核冗余结构,可以有效地检测和发现恶意软件对CPU的攻击情况。由于FPGA主控器主要执行与安全加解密相关的程序,因此不需要执行复杂的操作***,只需要执行精简的微内核操作***即可。微内核操作***通过精简操作***的功能和代码规模(通常只有几十K的量级),因此微内核操作***可以进行严格的针对安全性的形式验证(SeL4微内核达到了最高的安全等级)。采用高安全的微内核可以进一步提升FPGA主控器的安全性。由于FPGA主控器主要执行与安全加解密相关的应用程序,因此这些应用程序可以进行代码规模的精简,同时进行严格的安全性测试和验证,同时对这些应用程序的来源和升级进行严格的管理和控制,保证这些应用程序都是高安全性的程序,从而保证FPGA主控器的安全性。
其中,FPGA主控器的多核CPU可以采用CPU核双核螺旋结构设计,检测和发现恶意软件的攻击行为,保护调用安全芯片的高安全应用程序的安全执行。恶意软件对CPU程序的攻击,只会修改其中一个CPU的指令流/数据流/***状态,同时修改两个CPU的指令流/数据流/***状态,且修改结果相同是难以实现的。在双核螺旋结构检测出恶意软件的攻击行为的时候,可以适时地停止调用安全芯片的高安全应用程序的执行,清除存储器中保存的安全敏感信息,达到保护高安全应用程序安全执行的目的。
其中,FPGA主控器中的多核CPU可以采用CPU核三核冗余结构设计,检测和发现恶意软件的攻击行为,保护调用安全芯片的高安全应用程序的安全执行。恶意软件对CPU程序的攻击,只会修改其中一个CPU的指令流/数据流/***状态,同时修改三个CPU的指令流/数据流/***状态,且修改结果相同是难以实现的。在三核冗余结构检测出恶意软件的攻击行为的时候,可以适时地停止调用安全芯片的高安全应用程序的执行,清除存储器中保存的安全敏感信息,达到保护高安全应用程序安全执行的目的。
进一步地,FPGA主控器可以采用安全防护能力更高的微内核,提升软件***的安全防护能力,保证调用安全芯片的高安全应用程序的安全执行;FPGA主控器可以灵活地采用软核的方式来实现CPU核,并在微架构设计中采用更加严格的时间和空间隔离来有效地消除信息泄露侧信道,增强了FPGA主控器的对调用安全芯片的高安全应用程序的安全防护能力。
另外,出于安全考虑,FPGA芯片的配置代码文件需要进行加密保护,同时禁用FPGA芯片中的扫描链(扫描链是可测试性设计的一种实现技术,它通过植入移位寄存器,使得测试人员可以从外部控制和观测电路内部触发器的信号值)是FPGA主控器芯片安全运行的基本要求。
FPGA主控器中的CPU核和其他功能模块,可以针对安全防护的需要并结合当前最主要的硬件和软件攻击场景和威胁,灵活地修改CPU核和其他功能模块的设计,调整CPU核的指令集,从而增强整个***的安全防护能力。
FPGA只是电路功能的一种实现形式,在FPGA主控器的电路功能经过实际应用调整定型后,可以将FPGA主控器中的全部电路功能转换为ASIC芯片实现,从而进一步提升芯片性能、降低功耗和节省成本。
如图4所示,基于上述高安全加解密运算能力扩展方法,本发明还相应提供了一种高安全加解密运算能力扩展***,所述高安全加解密运算能力扩展***包括:
主处理器101,用于通过***通讯将需要加解密的数据和加解密操作的程序调用传输给FPGA主控器102;FPGA主控器102,用于接收相关数据并进行缓存,将程序调用分解为系列子过程,对涉及安全芯片103部分的操作,生成对应的命令调用序列和数据分组,向多个安全芯片103发送对应的命令调用和相关的数据,并将各个安全芯片103反馈的运算结果发送给主处理器101;多个安全芯片103,用于获取并解释相关命令,执行对应的加解密运算和安全处理,将运算结果反馈给FPGA主控器102;所述FPGA主控器102包括高安全应用程序1021、微内核操作***1022和多核CPU1023。
其中,微内核操作***1022用于控制调用安全芯片的高安全应用程序的安全执行;多核CPU1023用于适时地停止调用安全芯片的高安全应用程序的执行,清除存储器中保存的安全敏感信息;多核CPU1023为双核或者三核的多核CPU。
本发明通过FPGA主控器来控制多个安全芯片并发地执行高安全加解密运算,从而提升加解密运算的效率。
综上所述,本发明提供一种高安全加解密运算能力扩展方法及***,所述方法包括:主处理器通过***通讯将需要加解密的数据和加解密操作的程序调用传输给FPGA主控器,FPGA主控器接收相关数据并进行缓存;FPGA主控器将程序调用分解为系列子过程,对涉及安全芯片部分的操作,生成对应的命令调用序列和数据分组;FPGA主控器向多个安全芯片发送对应的命令调用和相关的数据,各个安全芯片将运算结果反馈给FPGA主控器;FPGA主控器汇集来自全部安全芯片的运算结果,将最终的运算结果发送给主处理器。所述FPGA主控器包括高安全应用程序、微内核操作***和多核CPU;当调用安全芯片的高安全应用程序时由FPGA主控器执行;微内核操作***用于控制调用安全芯片的高安全应用程序的安全执行;多核CPU为双核或者三核的多核CPU,用于适时地停止调用安全芯片的高安全应用程序的执行,清除存储器中保存的安全敏感信息。本发明通过FPGA主控器向安全芯片发送命令调用,并汇集来自安全芯片的运算结果,将最终的运算结果发送给主处理器,极大地提升了针对安全芯片的安全防护能力。
当然,本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关硬件(如处理器,控制器等)来自动完成,所述的程序可存储于一计算机可读取的存储介质中,所述程序在执行时可包括如上述各方法实施例的流程。其中所述的存储介质可为存储器、磁碟、光盘等。
应当理解的是,本发明的应用不限于上述的举例,对本领域普通技术人员来说,可以根据上述说明加以改进或变换,所有这些改进和变换都应属于本发明所附权利要求的保护范围。

Claims (10)

1.一种高安全加解密运算能力扩展方法,其特征在于,所述高安全加解密运算能力扩展方法包括:
主处理器通过***通讯将需要加解密的数据和加解密操作的程序调用传输给FPGA主控器,FPGA主控器接收相关数据并进行缓存;
FPGA主控器将程序调用分解为系列子过程,对涉及安全芯片部分的操作,生成对应的命令调用序列和数据分组;
FPGA主控器向多个安全芯片发送对应的命令调用和相关的数据,各个安全芯片将运算结果反馈给FPGA主控器;
FPGA主控器汇集来自全部安全芯片的运算结果,将最终的运算结果发送给主处理器;
所述FPGA主控器包括高安全应用程序、微内核操作***和多核CPU;
当调用安全芯片的高安全应用程序时由FPGA主控器执行;微内核操作***用于控制调用安全芯片的高安全应用程序的安全执行;多核CPU为双核或者三核的多核CPU,用于适时地停止调用安全芯片的高安全应用程序的执行,清除存储器中保存的安全敏感信息。
2.根据权利要求1所述的高安全加解密运算能力扩展方法,其特征在于,所述主处理器通过***通讯将需要加解密的数据和加解密操作的程序调用传输给FPGA主控器,FPGA主控器接收相关数据并进行缓存之前还包括:
预先在所述主处理器与所述安全芯片之间设置一用于进行数据处理的FPGA主控器。
3.根据权利要求1或2所述的高安全加解密运算能力扩展方法,其特征在于,所述FPGA主控器向多个安全芯片发送对应的命令调用和相关的数据,各个安全芯片将运算结果反馈给FPGA主控器具体包括:
FPGA主控器向多个安全芯片发送对应的命令调用和相关的数据,各个安全芯片获取并解释相关命令;
各个安全芯片执行对应的加解密运算和安全处理,将各自的运算结果反馈给FPGA主控器。
4.根据权利要求1所述的高安全加解密运算能力扩展方法,其特征在于,将FPGA芯片的配置代码文件进行加密保护,同时禁用FPGA芯片中的扫描链。
5.根据权利要求1所述的高安全加解密运算能力扩展方法,其特征在于,FPGA主控器与主处理器之间通过***通讯与程序调用构成对等的分布式并行处理关系。
6.根据权利要求5所述的高安全加解密运算能力扩展方法,其特征在于,FPGA主控器采用软核的方式来实现CPU核,当CPU核采用双核螺旋结构设计时,在双核螺旋结构中,两个逻辑功能完全相同的CPU核执行相同的指令,且指令的执行结果和CPU状态进行比较。
7.根据权利要求5所述的高安全加解密运算能力扩展方法,其特征在于,FPGA主控器采用软核的方式来实现CPU核,当CPU核采用三核冗余结构设计时,在三核冗余结构中,三个逻辑功能完全相同的CPU核执行相同的指令,且指令的执行结果和CPU状态进行比较。
8.一种高安全加解密运算能力扩展***,其特征在于,所述高安全加解密运算能力扩展***包括:
主处理器,用于通过***通讯将需要加解密的数据和加解密操作的程序调用传输给FPGA主控器;
FPGA主控器,用于接收相关数据并进行缓存,将程序调用分解为系列子过程,对涉及安全芯片部分的操作,生成对应的命令调用序列和数据分组,向多个安全芯片发送对应的命令调用和相关的数据,并将各个安全芯片反馈的运算结果发送给主处理器;
多个安全芯片,用于获取并解释相关命令,执行对应的加解密运算和安全处理,将运算结果反馈给FPGA主控器;
所述FPGA主控器包括高安全应用程序、微内核操作***和多核CPU。
9.根据权利要求8所述的高安全加解密运算能力扩展***,其特征在于,调用安全芯片的高安全应用程序时由FPGA主控器执行;
微内核操作***用于控制调用安全芯片的高安全应用程序的安全执行;
多核CPU用于适时地停止调用安全芯片的高安全应用程序的执行,清除存储器中保存的安全敏感信息。
10.根据权利要求8所述的高安全加解密运算能力扩展***,其特征在于,多核CPU为双核或者三核的多核CPU。
CN201811057773.8A 2018-09-11 2018-09-11 一种高安全加解密运算能力扩展方法及*** Active CN109255259B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811057773.8A CN109255259B (zh) 2018-09-11 2018-09-11 一种高安全加解密运算能力扩展方法及***

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811057773.8A CN109255259B (zh) 2018-09-11 2018-09-11 一种高安全加解密运算能力扩展方法及***

Publications (2)

Publication Number Publication Date
CN109255259A true CN109255259A (zh) 2019-01-22
CN109255259B CN109255259B (zh) 2020-08-04

Family

ID=65047251

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811057773.8A Active CN109255259B (zh) 2018-09-11 2018-09-11 一种高安全加解密运算能力扩展方法及***

Country Status (1)

Country Link
CN (1) CN109255259B (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110008001A (zh) * 2019-03-29 2019-07-12 网御安全技术(深圳)有限公司 虚拟机监控器的安全加固方法、***及硬件安全监控卡
CN110166240A (zh) * 2019-06-25 2019-08-23 南方电网科学研究院有限责任公司 一种网络隔离密码板卡
CN112445827A (zh) * 2020-11-26 2021-03-05 中孚信息股份有限公司 一种云办公环境下的数据安全处理***、方法及装置
CN112910932A (zh) * 2021-04-30 2021-06-04 北京数盾信息科技有限公司 一种数据处理方法、装置及***
CN113094762A (zh) * 2021-04-30 2021-07-09 北京数盾信息科技有限公司 一种数据处理方法、装置及签名验签服务器

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN201665226U (zh) * 2009-11-02 2010-12-08 北京全路通信信号研究设计院 一种列控中心主处理设备
CN102799819A (zh) * 2012-07-04 2012-11-28 北京京航计算通讯研究所 一种嵌入式软件安全保护***
CN205003526U (zh) * 2015-09-11 2016-01-27 浙江中烟工业有限责任公司 一种基于sopc技术的plc协同控制装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN201665226U (zh) * 2009-11-02 2010-12-08 北京全路通信信号研究设计院 一种列控中心主处理设备
CN102799819A (zh) * 2012-07-04 2012-11-28 北京京航计算通讯研究所 一种嵌入式软件安全保护***
CN205003526U (zh) * 2015-09-11 2016-01-27 浙江中烟工业有限责任公司 一种基于sopc技术的plc协同控制装置

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110008001A (zh) * 2019-03-29 2019-07-12 网御安全技术(深圳)有限公司 虚拟机监控器的安全加固方法、***及硬件安全监控卡
CN110008001B (zh) * 2019-03-29 2021-01-05 网御安全技术(深圳)有限公司 虚拟机监控器的安全加固方法、***及硬件安全监控卡
CN110166240A (zh) * 2019-06-25 2019-08-23 南方电网科学研究院有限责任公司 一种网络隔离密码板卡
CN110166240B (zh) * 2019-06-25 2024-05-03 南方电网科学研究院有限责任公司 一种网络隔离密码板卡
CN112445827A (zh) * 2020-11-26 2021-03-05 中孚信息股份有限公司 一种云办公环境下的数据安全处理***、方法及装置
CN112910932A (zh) * 2021-04-30 2021-06-04 北京数盾信息科技有限公司 一种数据处理方法、装置及***
CN113094762A (zh) * 2021-04-30 2021-07-09 北京数盾信息科技有限公司 一种数据处理方法、装置及签名验签服务器
CN112910932B (zh) * 2021-04-30 2021-07-20 北京数盾信息科技有限公司 一种数据处理方法、装置及***
CN113094762B (zh) * 2021-04-30 2021-12-07 北京数盾信息科技有限公司 一种数据处理方法、装置及签名验签服务器

Also Published As

Publication number Publication date
CN109255259B (zh) 2020-08-04

Similar Documents

Publication Publication Date Title
CN109255259A (zh) 一种高安全加解密运算能力扩展方法及***
Qiu et al. Voltjockey: Breaching trustzone by software-controlled voltage manipulation over multi-core frequencies
Yuce et al. Fault attacks on secure embedded software: Threats, design, and evaluation
Bossuet et al. Architectures of flexible symmetric key crypto engines—a survey: From hardware coprocessor to multi-crypto-processor system on chip
JP5775738B2 (ja) 情報処理装置、セキュアモジュール、情報処理方法、および情報処理プログラム
US9792229B2 (en) Protecting a memory
EP3311324B1 (en) Enhanced security of power management communications and protection from side channel attacks
EP2864925B1 (en) Managing use of a field programmable gate array with reprogrammable cryptographic operations
CN101419652B (zh) 一种软硬件结合的保护程序的方法
US8181008B2 (en) Secure system-on-chip
US9735953B2 (en) Side channel analysis resistant architecture
CN107851162A (zh) 用于对安全i/o的密码引擎进行安全编程的技术
CN110210190A (zh) 一种基于二次汇编的代码混淆方法
La et al. Denial-of-service on FPGA-based cloud infrastructures—attack and defense
EP3271828B1 (en) Cache and data organization for memory protection
Mahmoud et al. Electrical-level attacks on CPUs, FPGAs, and GPUs: Survey and implications in the heterogeneous era
CN110443078B (zh) 一种基于特权分级的安全存储***
CN105827388A (zh) 用于用密码处理数据的方法
CN109190407A (zh) 一种高性能加解密运算能力扩展方法及***
Gross et al. Fpganeedle: Precise remote fault attacks from fpga to cpu
Rahimi et al. Trends and challenges in ensuring security for low-power and high-performance embedded SoCs
Ahmed et al. Multi-tenant cloud FPGA: A survey on security
CN110932853A (zh) 一种基于可信模块的密钥管理装置和密钥管理方法
KR101656092B1 (ko) 비동기적인 인증을 갖는 보안 컴퓨팅 시스템
CN109284638B (zh) 一种安全芯片运行环境的防护方法及***

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant