一种基于FPGA的故障注入密码靶实现系统及方法技术方案

技术编号:34359153 阅读:15 留言:0更新日期:2022-07-31 07:10
本发明专利技术提供一种基于FPGA的故障注入密码靶实现系统及方法。所述基于FPGA的故障注入密码靶实现系统包括DC/DC隔离模块、DC/DC电源模块、光耦隔离模块、FPGA核电路、USB转串口模块、复位输入电路、触发输入电路、触发输出电路、JTAG下载电路、复位电路、时钟毛刺电路、电压毛刺电路、FLASH储存器,所述DC/DC隔离模块为DC直流电压转换模块,所述DC/DC隔离模块与所述DC/DC电源模块相连接,所述DC/DC电源模块与所述光耦隔离模块和所述FPGA核电路均相连接。本发明专利技术提供的基于FPGA的故障注入密码靶实现系统及方法具有具有设计合理、可以获取FPGA泄漏的错误信息并加以分析,从而得到正确的密钥结果,为密码设备抗故障攻击能力的有效评估提供了支持的优点。了支持的优点。了支持的优点。

An implementation system and method of fault injection cipher target based on FPGA

【技术实现步骤摘要】
一种基于FPGA的故障注入密码靶实现系统及方法


[0001]本专利技术涉及密码设备灌溉
,尤其涉及一种基于FPGA的故障注入密码靶实现系统及方法。

技术介绍

[0002]随着信息设备的普及,密码芯片在金融、商业、医疗、教育等领域得到广泛运用,由此引起的安全问题也日渐突出。目前,密码算法已经十分成熟,从数学层面上研究加密算法漏洞,攻破算法的可能性比较低,但是从物理层面上对芯运行的时间、能量、时钟等进行采集分析,可对密码芯片安全性造成极大威胁。通过对加密芯片注入物理故障,使芯片进行非正常加密,攻击者能够利用错误加密的密文进行差分分析获取相应密钥信息。
[0003]外界物理干扰可以通过入侵式、半入侵式或非入侵式3种形式对密码芯片进行攻击,其中温度、射线、电压、电磁等物理变化都能成为攻击芯片加密的手段。当供电电压过高或过低时,芯片算术逻辑运算指令、存储读写指令、判断指令均可被篡改,出现错误执行。电压毛刺作为一种非入侵式攻击方式,其隐蔽性强,通过调试芯片供电电压,形成电压毛刺,为密码芯片供电段注射一段特定的毛刺电压,密码芯片会错误执行指令,进行错误加密,输出错误密文。通过设置毛刺延时、幅度、宽度,电压毛刺能够对密码算法某一轮进行攻击,达到注入故障的目的。由于芯片硬件结构对不同电压值敏感程度不同,因此不同的芯片所对应的有效攻击电压也不同。电压故障注入攻击需要预先明确所要攻击第几轮,并调试出能有效攻击的脉宽、电压值。
[0004]现有技术一的技术方案:
[0005]密码产品一般是基于电子技术实现的,传统的故障注入密码靶基于密码安全芯片上的攻击,然而密码芯片主要应用于智能IC卡、加密机等产品中,密码芯片在运行过程中受到外界干扰或人为的引入的故障,包括电压毛刺,时钟毛刺,激光,电磁注入等方式,从而导致运算模块出现寄存器故障或运算错误,利用这些故障行为产生的错误信息攻击得到密钥的方法就是故障注入攻击。
[0006]现有技术一的缺点:
[0007]常见的密码芯片的内部电路都是基于CMOS工艺的,密码芯片的所有运算都是通过门电路的状态变化来实现的。传统的安全芯片应用于智能IC卡、加密机等产品中,提供支付认证、加密通信等功能。密码芯片是储存密码算法的芯片,如果加密级别不高,容易被人逆向出来,进而获取你的密码。目前的攻击仍然主要集中在以智能卡为代表的资源受限的一类密码集成电路,许多攻击方法依赖算法实现或防御方法的细节,在大部分资源受限的攻击中是有难度的。因此,有必要提供一种新的基于FPGA的故障注入密码靶实现解决上述技术问题。
[0008]因此,有必要提供一种新的基于FPGA的故障注入密码靶实现系统及方法解决上述技术问题。

技术实现思路

[0009]本专利技术解决的技术问题是提供一种设计合理、可以避免被逆向分析,解决了资源不足、运算速度快、灵活性大的问题,提出更高的安全性,能集成各种加解密算法为一体,并快速的分析出密钥的基于FPGA的故障注入密码靶实现系统及方法。
[0010]为解决上述技术问题,本专利技术提供的基于FPGA的故障注入密码靶实现系统及方法包括:
[0011]DC/DC隔离模块、DC/DC电源模块、光耦隔离模块、FPGA核电路、USB转串口模块、复位输入电路、触发输入电路、触发输出电路、JTAG下载电路、复位电路、时钟毛刺电路、电压毛刺电路、FLASH储存器,所述DC/DC隔离模块为DC直流电压转换模块,所述DC/DC隔离模块与所述DC/DC电源模块相连接,所述DC/DC电源模块与所述光耦隔离模块和所述FPGA核电路均相连接,所述光耦隔离模块和所述FPGA核电路相连接,所述USB转串口模块、所述复位输入电路、所述触发输入电路和所述触发输出电路均与所述光耦隔离模块相连接,所述USB转串口模块与所述DC/DC隔离模块相连接,所述JTAG下载电路、所述复位电路、所述时钟毛刺电路、所述电压毛刺电路和所述FLASH储存器与所述FPGA核电路均相连接。
[0012]优选的,所述FPGA核电路为写有AES\RSA\DES\SM4\SM2算法的ALTERA的EP4系列芯片。
[0013]优选的,所述光耦隔离模块为采用光耦隔离的芯片。
[0014]优选的,所述时钟毛刺电路和所述电压毛刺电路为外部输入带毛刺的时钟和电压。
[0015]优选的,所述USB转串口模块为采用USB转串口的芯片。
[0016]优选的,所述复位输入电路为支持外部输入5V/3.3V的复位信号。
[0017]优选的,所述触发输出电路为支持输出5V/3.3V的触发信号。
[0018]优选的,所述DC/DC电源模块的输出电压为3.3V、2.5V、1.2V和1.0V。
[0019]一种基于FPGA的故障注入密码靶实现方法,包括以下两个步骤:
[0020]S1:通过串口发送随机明文,并执行相应的密码算法,得到正确的密文;
[0021]S2:在上电运行过程中,引入精确可控的时钟或电压毛刺,使芯片操作产生特定的错误,并分析破解出正确的密钥等敏感信息。
[0022]与相关技术相比较,本专利技术提供的基于FPGA的故障注入密码靶实现系统及方法具有如下有益效果:
[0023]本专利技术提供一种基于FPGA的故障注入密码靶实现系统及方法,可帮助用户迅速检测泄露点,快速评估攻击策略,是用户在进行故障注入分析时的强大工具,通过ICAttack强大的分析软件对采集的轨迹信号进行统计分析,以及复杂的数学处理,最终以界面显示方式将最终分析结果呈现给用户,帮助用户实现自有功能的开发和实现;当用户有自己特殊算法需求或其他模块需求(如预处理模块,泄露模型等),用户完全可以通过平台实现自由开发,集成自己的功能,实现个性化的功能定制,提供完全开放的开发环境,满足用户的二次开发需求,为密码设备抗故障攻击能力的有效评估提供了支持。
附图说明
[0024]图1为本专利技术提供的基于FPGA的故障注入密码靶实现系统的框图;
[0025]图2为本专利技术提供的基于FPGA的故障注入密码靶实现方法中加密运算执行的流程图。
具体实施方式
[0026]下面结合附图和实施方式对本专利技术作进一步说明。
[0027]请结合参阅图1、图2,其中,图1为本专利技术提供的基于FPGA的故障注入密码靶实现系统的框图;图2为本专利技术提供的基于FPGA的故障注入密码靶实现方法中加密运算执行的流程图。基于FPGA的故障注入密码靶实现系统及方法包括:
[0028]DC/DC隔离模块、DC/DC电源模块、光耦隔离模块、FPGA核电路、USB转串口模块、复位输入电路、触发输入电路、触发输出电路、JTAG下载电路、复位电路、时钟毛刺电路、电压毛刺电路、FLASH储存器,所述DC/DC隔离模块为DC直流电压转换模块,所述DC/DC隔离模块与所述DC/DC电源模块相连接,所述DC/DC电源模块与所述光耦隔离模块和所述FPGA核电路均相连接,所述光耦隔离模块和所述FPGA核电路相连接,所述USB转串口模本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于FPGA的故障注入密码靶实现系统,其特征在于,包括:DC/DC隔离模块、DC/DC电源模块、光耦隔离模块、FPGA核电路、USB转串口模块、复位输入电路、触发输入电路、触发输出电路、JTAG下载电路、复位电路、时钟毛刺电路、电压毛刺电路、FLASH储存器,所述DC/DC隔离模块为DC直流电压转换模块,所述DC/DC隔离模块与所述DC/DC电源模块相连接,所述DC/DC电源模块与所述光耦隔离模块和所述FPGA核电路均相连接,所述光耦隔离模块和所述FPGA核电路相连接,所述USB转串口模块、所述复位输入电路、所述触发输入电路和所述触发输出电路均与所述光耦隔离模块相连接,所述USB转串口模块与所述DC/DC隔离模块相连接,所述JTAG下载电路、所述复位电路、所述时钟毛刺电路、所述电压毛刺电路和所述FLASH储存器与所述FPGA核电路均相连接。2.根据权利要求1所述的基于FPGA的故障注入密码靶实现系统,其特征在于,所述FPGA核电路为写有AES\RSA\DES\SM4\SM2算法的ALTERA的EP4系列芯片。3.根据权利要求1所述的基于FPGA的故障注入密码靶实现系统,其特征在于,所述光耦...

【专利技术属性】
技术研发人员:徐九八杜磊赵永锁杨子航石健李海滨
申请(专利权)人:北京智慧云测信息技术有限公司
类型:发明
国别省市:

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

1