采集usbkey运行功耗的系统及方法

文档序号:8258417阅读:480来源:国知局
采集usbkey运行功耗的系统及方法
【技术领域】
[0001]本发明涉及对USBKEY (通用串行总线接口口令盘)进行功耗采集领域,特别是涉及一种采集USBKEY运行功耗的系统。本发明还涉及一种采集USBKEY运行功耗的方法。
【背景技术】
[0002]安全设备的加密算法在操作或者实现的过程中会不经意的泄露一些信息,这些信息就称作为旁路信息,对安全设备的旁路信息的采集和分析就称为旁路攻击。常见的旁路攻击有如下几种:时序攻击、功耗分析、故障分析、电磁分析等。

【发明内容】

[0003]本发明要解决的技术问题是提供一种采集USBKEY运行功耗的系统,在不用破坏USBKEY硬件设备的情况下,即可有效的对USKBEY进行运行功耗采集;为此,本发明还要提供一种采集USBKEY运行功耗的方法。
[0004]为了解决上述技术问题,本发明的采集USBKEY运行功耗的系统,包括:一 PC(个人电脑)和一硬件接口 ;
[0005]所述PC通过第一 USB (通用串行接口)接口或串行接口与硬件接口中的MCU (微控制器)相连接;所述PC的第二 USB接口通过所述硬件接口与USBKEY相连接,其中第二 USB接口中的5V电源线在所述硬件接口中的延伸线路被断开;所述USBKEY的电源由所述硬件接口提供;
[0006]所述硬件接口的采样电阻一端与所述通用串行总线接口口令盘USBKEY的地线相连接,另一端与所述第二 USB接口中的地线在硬件接口中的延伸线路相连接;由所述PC和MCU协同工作,触发示波器对USBKEY运行功耗信号采样;所述硬件接口的采样模块通过所述采样电阻对USBKEY进行运行功耗信号采集,并将采集的运行功耗信号传送给所述示波器。
[0007]所述采集USBKEY运行功耗的方法,是采用如下技术方案实现的:
[0008]将USBKEY通过一硬件接口与PC的第二 USB接口相连接;PC端的第二 USB接口的5V电源线到所述硬件接口时被断开,USBKEY的电源由所述硬件接口提供;
[0009]对USBKEY进行运行功耗采集时对外部噪声进行抑制;由所述PC和硬件接口的MCU协同工作,触发示波器对USBKEY运行功耗信号采样;通过所述硬件接口设备内的采样电阻对USBKEY进行运行功耗采集,并将采集的运行功耗信号传送给所述示波器。
[0010]采用本发明的系统和方法,无需破坏USBKEY的硬件设备,隔离了 PC端电源的干扰,并且抑制了外部电源的噪声,实现对USBKEY运行功耗信息的采集。
[0011]本发明可用于对USBKEY进行功耗分析。
【附图说明】
[0012]下面结合附图与【具体实施方式】对本发明作进一步详细的说明:
[0013]图1是采集USBKEY运行功耗的系统示意图;
[0014]图2是PC端触发示波器采样和驱动USBKEY流程图;
[0015]图3是MCU端触发示波器采样流程图。
【具体实施方式】
:
[0016]参见图1所示,所述采集USBKEY运行功耗的系统,包括一 PC和一硬件接口。
[0017]所述PC具有一第一 USB接口或串行接口 I和第二 USB接口 2。
[0018]所述硬件接口具有一 MCU、一隔离电源模块4、一 USBKEY电源模块5、一采样模块7、一采样电阻Rl和具有一定容量的充电电容Cl。
[0019]所述PC的第一 USB接口或串行接口 I与MCU相连接。所述PC的第二 USB接口 2通过硬件接口与USBKEY相连接,其中第二 USB接口 2中的5V电源线在所述硬件接口中的延伸线路被断开。外接电源3输入所述隔离电源模块4,该隔离电源模块4输出经过隔离的电源并提供给所述USBKEY电源模块5,该USBKEY电源模块5输出5V电压提供给USBKEY使用。
[0020]所述采样电阻一端与所述USBKEY的地线相连接,另一端与所述第二 USB接口 2中的地线在硬件接口中的延伸线路相连接;所述采样模块7通过采样电阻Rl对USBKEY进行运行功耗信号采集,并将采集的运行功耗信号传送给所述示波器。
[0021]为了采集USBKEY运行时的功耗,比如其执行某些算法时的功耗,需要对USBKEY进行驱动,为了高效便捷的获得理想的驱动,因此采用PC驱动USBKEY的方法。PC不仅提供了强大的协议支持[如:CCID (USB Chip/Smart Card Interface Devices-USB 芯片智能卡接口设备)、HID (人机接口设备)、Mass Storage (大容量存储设备)、PC/SC (个人电脑/智能卡设备)等],而且PC应用开发相对比较容易。为了获取干扰较小的功耗信号,将USBKEY通过硬件接口与PC相连,并且USBKEY的电源不再使用PC端的电源,PC端的第二 USB接口2的5V电源线与硬件接口断开,这样就可以避免PC端电源的干扰。为了采集USBKEY运行时的功耗,在硬件接口内增加采样电阻Rl,只需要将USBKEY的地线通过采样电阻Rl连接到硬件接口的隔离地就可以通过采样电阻Rl采集USBKEY的运行功耗了。这样做的好处是无需破坏USBKEY的硬件设备便可以进行功耗采集,这与通过破坏USBKEY硬件设备使用探针进行采集是个很大的优势。
[0022]对USBKEY进行运行功耗采集时需要抑制外部噪声。由上所述可以知道,USBKEY的电源不再由PC端的第二 USB接口 2提供,而是由的硬件接口提供,硬件接口是通过外接电源3供电的,这样外接电源3会将各种噪声引入功耗采集系统。为了准确的获取USBKEY的运行功耗信号需要对USBKEY的电源的外部噪声进行抑制。一种比较好的方法就是如图1所示,外接电源3经过隔离电源模块4输出经过隔离的电源,然后提供给USBKEY电源模块5,使USBKEY电源模块5输出5V电源电压提供给USBKEY使用。即使这样外接电源3的噪声也会通过隔离电源模块4引入到功耗采集系统影响USBKEY的电源,为了解决这个问题需要在隔离电源模块4与USBKEY电源模块5之间增加适量的电容Cl,增加电容Cl的目的是让隔离电源模块4对电容Cl进行充电。当需要对USBKEY进行运行功耗采集时,可以切断隔离电源模块4的输出,使用电容Cl的放电来维持耗功耗采集系统的工作。由于已经切断隔离电源模块4的输出,外接电源3的噪声已经得到了有效的抑制,因此之后的USBKEY的运行功耗采集比较精确。
[0023]对USBKEY进行运行功耗采集时需要对USBKEY功耗信号调节,包括功耗信号的偏移和增益。因为USBKEY的功耗信号通过采样电阻Rl进行采样是个微小的信号,需要在采样电阻Rl输出端接运算放大器来对采样信号进行放大即增益调节。但是由于集成运算放大器的工作特性,增益过大可能导致信号失真,这样就无法分析USBKEY的运行功耗,因此需要增益是可以调节的。同样由于集成运算放大器的工作特性,对于采集的信号放大后将增益调节到最小值,采集信号仍然可能会出现失真的情况,这就需要采样信号的偏移可以调节即偏移调节。比如信号的顶部出现失真,可以将信号整体向下偏移,这样得到的信号就可能会恢复。同理底部出现失真时,可以将信号整体向上偏移。
[0024]触发示波器对USBKEY功耗信号进行采样。由于功耗信号的采集希望是可控的,即USBKEY在执行某种算法的时候采集运行功耗信号,在USBKEY没有操作的时候不采集功耗信号。由于USBKEY的工作是通过PC端驱动控制的,而示波器的触发是由MCU控制的,当PC端驱动USBKEY执行某种加密算法时MCU端何时触发示波器进行采样是个急需解决的问题。由于PC和MCU的控制并非同步,因此可以通过图2和图3所示的处理流程来对USBKEY运行功耗进行采集。分两部分介绍:第一部分:PC端程序先通过第一 USB接口或串行接口 I给MCU发送一条需要触发示波器进行采样的命令,此命令带有两个参数,参数一为MCU收到此命令后需要延时的时间,之后再向示波器发出触发波形;参数二为执行此次命令时示波器需要采样的时间长度;然后PC再驱动USBKEY运行某种加密算法。第二部分:在MCU端,首先等待PC端发送的等待延时触发示波器的指令,当接收到延时触发指令后,MCU开始计时,当MC
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1