一种SOF包下发周期的处理方法及系统与流程

文档序号:24411232发布日期:2021-03-26 19:24阅读:241来源:国知局
一种SOF包下发周期的处理方法及系统与流程
一种sof包下发周期的处理方法及系统
技术领域
1.本发明涉及侧信道信号处理技术领域,更具体地说,涉及一种sof包下发周期的处理方法及系统。


背景技术:

2.通用串行总线(universal serial bus,usb)设备可应用于个人身份认证,该usb设备内置个人密钥,通过密码算法完成对个人身份的认证。通过侧信道分析技术,采集usb设备进行密码运算时所产生的侧信道信号,分析出usb设备内置的个人密钥。侧信道信号是指usb设备运行时会消耗一定的能量并产生电磁辐射、热辐射、光辐射等物理信号。
3.在个人身份认证的过程中,涉及到usb主机与usb设备之间的数据交互,在usb主机与usb设备进行数据交互时,usb主机在每个帧周期内向usb设备发送帧起始包(start of frame packet,sof),sof包用于维持usb主机与usb设备的通信,但是sof包会对usb设备运行时产生的侧信道信号造成干扰。
4.因此,在usb主机与usb设备进行数据交互时,sof包会对侧信道信号造成干扰。


技术实现要素:

5.有鉴于此,本发明公开了一种sof包下发周期的处理方法及系统,对sof包的下发周期进行调整,在确保usb设备能够正常执行密码运算命令的前提下,增大sof包的下发周期,从而减小sof包对侧信道信号的干扰,提高usb设备侧信道信号的信噪比。
6.为了实现上述目的,其公开的技术方案如下:
7.本发明第一方面公开了一种sof包下发周期的处理方法,所述方法包括:
8.按照初始下发周期向usb设备下发sof包,与所述usb设备进行通信;
9.向所述usb设备发送密码运算命令;
10.在所述usb设备执行所述密码运算命令的过程中,根据所述usb设备是否存在挂起时间调整所述sof包的下发周期;
11.当所述usb设备存在挂起时间时,将所述sof包的下发周期调整为第一预设下发周期t1,并基于所述第一预设下发周期t1下发所述sof包;
12.当所述usb设备不存在挂起时间时,将所述sof包的下发周期调整为第二预设下发周期t2,并基于所述第二预设下发周期t2下发所述sof包。
13.优选的,在所述按照初始下发周期向usb设备下发sof包,与所述usb设备进行通信之前,还包括:
14.获取usb设备的挂起时间。
15.优选的,还包括:
16.在所述usb设备完成所述密码运算命令之后,将所述sof的下发周期调整为所述初始下发周期。
17.优选的,所述当所述usb设备存在挂起时间时,将所述sof包的下发周期调整为第
一预设下发周期t1,并基于所述第一预设下发后期t1下发所述sof包,包括:
18.当所述usb设备存在挂起时间时,将所述sof包的下发周期调整为第一预设下发周期t1,所述t1大于等于t
init
且小于,所述t
init
为所述初始下发周期,所述为所述usb设备的挂起时间;
19.基于所述第一预设下发周期t1下发所述sof包。
20.优选的,所述当所述usb设备不存在挂起时间时,将所述sof包的下发周期调整为第二预设下发周期t2,并基于所述第二预设下发周期t2下发所述sof包,包括:
21.当所述usb设备不存在挂起时间时,将所述sof包的下发周期调整为第二预设下发周期t2,所述t2大于等于t
init
,所述t
init
为所述初始下发周期;
22.基于所述第二预设下发周期t2下发所述sof包。
23.本发明第二方面公开了一种sof包下发周期的处理系统,所述系统包括:
24.下发单元,用于按照初始下发周期向usb设备下发sof包,与所述usb设备进行通信;
25.发送单元,用于向所述usb设备发送密码运算命令;
26.第一确定单元,用于在所述usb设备执行所述密码运算命令的过程中,根据所述usb设备是否存在挂起时间调整所述sof包的下发周期;
27.第二确定单元,用于当所述usb设备存在挂起时间时,将所述sof包的下发周期调整为第一预设下发周期t1,并基于所述第一预设下发周期t1下发所述sof包;
28.第三确定单元,用于当所述usb设备不存在挂起时间时,将所述sof包的下发周期调整为第二预设下发周期t2,并基于所述第二预设下发周期t2下发所述sof包。
29.优选的,还包括:
30.获取单元,用于获取usb设备的挂起时间。
31.优选的,还包括:
32.调整单元,用于在所述usb设备完成所述密码运算命令之后,将所述sof的下发周期调整为所述初始下发周期。
33.优选的,所述第二确定单元,包括:
34.第一调整模块,用于当所述usb设备存在挂起时间时,将所述sof包的下发周期调整为第一预设下发周期t1,所述t1大于等于t
init
且小于,所述t
init
为所述初始下发周期,所述为所述usb设备的挂起时间;
35.第一下发模块,用于基于所述第一预设下发周期t1下发所述sof包。
36.优选的,所述第三确定单元,包括:
37.第二调整模块,用于当所述usb设备不存在挂起时间时,将所述sof包的下发周期调整为第二预设下发周期t2,所述t2大于等于t
init
,所述t
init
为所述初始下发周期;
38.第二下发模块,用于基于所述第二预设下发周期t2下发所述sof包。
39.经由上述技术方案可知,按照初始下发周期向usb设备下发sof包,与usb设备进行通信,向usb设备发送密码运算命令,在usb设备执行密码运算命令的过程中,根据usb设备是否存在挂起时间调整sof包的下发周期,当usb设备存在挂起时间时,将sof包的下发周期调整为第一预设下发周期,基于第一预设下发周期下发sof包,当usb设备不存在挂起时间时,将sof包的下发周期调整为第二预设下发周期,基于第二预设下发周期下发sof包。通过
上述方案,对sof包的下发周期进行调整,在确保usb设备能够正常执行密码运算命令的前提下,增大sof包的下发周期,从而减小sof包对侧信道信号的干扰,提高usb设备侧信道信号的信噪比。
附图说明
40.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
41.图1为本发明实施例公开的一种sof包下发周期的处理方法的流程示意图;
42.图2为本发明实施例公开的usb总线传输情况的示意图;
43.图3为本发明实施例公开的usb设备在密码运算过程中产生的侧信道信号的示意图;
44.图4为本发明实施例公开的侧信道信号中sof包的噪音的示意图;
45.图5为本发明实施例公开的usb主机通过对usb设备执行密码运算命令过程中的侧信道信号进行采集和分析,减小侧信道信号中sof包的噪音的示意图;
46.图6为本发明实施例公开的在调整sof包的下发周期后,usb主机和usb设备的通信的交互示意图;
47.图7为本发明实施例公开的usb主机基于第一预设下发周期t1下发sof包的流程示意图;
48.图8为本发明实施例公开的usb主机基于第二预设下发周期t2下发sof包的流程示意图;
49.图9为本发明实施例公开的一种sof包下发周期的处理系统的结构示意图。
具体实施方式
50.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
51.在本申请中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
52.由背景技术可知,在usb主机与usb设备进行数据交互时,sof包会对侧信道信号造成干扰。
53.为了解决该问题,本发明实施例公开了一种sof包下发周期的处理方法及系统,通过对sof包的下发周期进行调整,在确保usb设备能够正常执行密码运算命令的前提下,增大sof包的下发周期,从而减小sof包对侧信道信号的干扰。具体实现方式通过下述实施例
具体进行说明。
54.如图1所示,为本发明实施例公开的一种sof包下发周期的处理方法的流程示意图,该sof包下发周期的处理方法应用于usb主机,该sof包下发周期的处理方法主要包括如下步骤:
55.步骤s101:usb主机按照初始下发周期向usb设备下发sof包,与usb设备进行通信。
56.在具体实现步骤s101中,在usb总线上,usb主机按照初始下发周期向usb设备下发sof包,与usb2.0设备进行通信。
57.若usb总线为高速usb总线,则初始下发周期为125us,usb主机按照每个sof包间隔125us的初始下发周期向usb设备下发sof包,若usb总线为全速/低速usb总线,则初始下发周期为1ms,usb主机按照每个sof包间隔1ms的初始下发周期向usb设备下发sof包。
58.数据在usb总线上的传输以包为单位,帧的起始包由sof包表示。高速usb总线的帧周期为125us,也称为(微)帧周期(micro)frame,全速/低速usb总线的帧周期为1ms。具体usb总线传输情况如图2所示。
59.在图2中,(微)帧的起始由sof包表示,在(微)帧期间的剩余时间内传输数据,也即在usb总线上每隔一个(微)帧周期就会由usb主机向usb设备下发一个sof包。
60.data为usb总线上的数据包。
61.若设置(微)帧周期(micro)frame n为当前时刻的(微)帧周期,则(micro)framen

1为上一时刻的(微)帧周期,(micro)frame n+1为下一时刻的(微)帧周期。
62.步骤s102:usb主机向usb设备发送密码运算命令。
63.在步骤s102中,usb主机向usb设备发送密码运算命令,usb设备接收到该密码运算命令后,usb设备中的密码模块执行相应的密码运算,并产生相应的侧信道信号。
64.usb设备工作时会消耗一定的能量并产生电磁辐射、热辐射、光辐射等物理信号,这些信号统称为侧信道信号。具体如图3所示,usb设备包括密码模块、通信模块和其他功能模块等等。
65.信号采集工具采集usb设备进行密码运算时产生的侧信道信号。
66.图3中,usb设备在密码运算过程中产生的侧信道信号,如公式(1)所示。
67.(1)
68.其中,usb设备在密码运算过程中产生的侧信道信号包括:密码模块产生的侧信道信号、通信模块产生的侧信道信号、以及其他功能模块和各种环境产生的侧信道信号。
69.usb设备的侧信道信号与其工作状态所处理的数据存在一定的关联性,分析者根据usb设备特点建立模型,通过分析侧信道信号与模型的相关性获取敏感信息,敏感信息包括usb设备的密钥或工作状态等信息。
70.usb设备中的密码模块产生的侧信道信号过程如下:
71.根据usb设备中的密码模块建立模块的侧信道模型,密码模块产生的侧信道信号与侧信道模型的关系如公式(2)所示。
72.(2)
73.其中,为usb设备中的密码模块产生的侧信道信号,data为密码运算数据,key是内置在usb设备中的密码运算密钥,为密码模块的侧信道模型。
74.为了方便理解侧信道信号与侧信道模型的关系,这里举例说明:
75.在采集到一定数量的侧信道信号后,先假设usb设备内的密钥为,并分析侧信道信号和侧信道模型的相关性cov(,(data,)),如果与芯片内的真实密钥key相同,则相关性最大,可通过相关性大小恢复出usb设备的内置密钥key。
76.其中,的组成不仅包括了由usb设备进行密码运算时直接相关的侧信道信号,还包括由usb通信产生的和其他模块产生的。如果过大以至于超过侧信道模型的分辨能力,则无法分析出密钥信息。如果消除或降低,即对sof包的下发周期进行调整,提高侧信道信号的信噪比,可以提高分析的成功率。
77.如图4所示,通过对usb设备执行密码运算整个过程的侧信道信号进行采集并分析,可以发现侧信道信号中存在sof包所带来的噪音(以usb全速设备为例)。
78.在图4中,矩形框内为采集到的侧信道信号每间隔1ms,sof包所产生的通信噪音。
79.为了减小sof包产生的通信噪音,在确保usb设备能够正常执行密码运算命令的前提下,增大sof包的下发周期,从而减小sof包对侧信道信号的干扰。
80.步骤s103:usb主机在usb设备执行密码运算命令的过程中,根据usb设备是否存在挂起时间调整sof包的下发周期,若usb设备存在挂起时间,则执行步骤s104,若usb设备不存在挂起时间,则执行步骤s105。
81.在步骤s103中,若usb总线处于空闲状态,则usb设备会进入挂起状态,usb设备进入挂起状态所需要的时间为usb设备的挂起时间。
82.在按照初始下发周期向usb设备下发sof包,与usb设备进行通信之前,获取usb设备的挂起时间。
83.确认usb设备是否存在挂起时间,挂起时间的确认可通过多种检测方法确认,挂起时间的确认可以为密码运算命令来确认,也可以是其他检测方法确认,具体挂起时间的确认本发明不做具体限定。
84.步骤s104:usb主机将sof包的下发周期调整为第一预设下发周期t1,并基于第一预设下发周期t1下发sof包。
85.在步骤s104中,第一预设下发周期t1的取值范围为:t1大于等于t
init
且小于,t
init
为初始下发周期,为usb设备的挂起时间,t1的取值越大,采集到的usb设备的侧信道信号的信噪比越大。
86.usb主机通过第一预设下发周期t1下发sof包,在确保usb设备能够正常执行密码运算命令的前提下,增大sof包的下发周期,从而减小sof包对侧信道信号的干扰,提高usb设备侧信道信号的信噪比。
87.步骤s105:usb主机将sof包的下发周期调整为第二预设下发周期t2,并基于第二预设下发周期t2下发sof包。
88.在步骤s105中,第二预设下发周期t2的取值范围为:t2大于等于t
init
,t
init
为初始下发周期,t2大于等于t
init
,t
init
为初始下发周期。
89.本方案优选t2大于t
oper
,t
oper
为usb设备执行密码运算的时间,当t2>t
oper
时,sof包对侧信道信号带来的干扰达到最小。
90.usb主机通过第二预设下发周期t2下发sof包,在确保usb设备能够正常执行密码运算命令的前提下,增大sof包的下发周期,从而减小sof包对侧信道信号的干扰,提高usb设备侧信道信号的信噪比。
91.如图5所示,在usb主机通过第一预设下发周期t1或第二预设下发周期t2下发sof包,usb主机通过对usb设备(以usb全速设备为例)执行密码运算命令过程中的侧信道信号进行采集和分析,减少侧信道信号中sof包的噪音。
92.图5与上述图4对比,可发现通过调整sof包的下发周期后的侧信道信号减小了sof包带来的侧信道信号噪音。
93.如图6所示,为在调整sof包的下发周期后,usb主机和usb设备的通信的交互示意图。
94.在图6中,在调整sof包的下发周期后,usb主机和usb设备的通信的具体过程如下:
95.在usb总线下,usb主机按照初始下发周期向usb设备(以usb全速设备为例)下发sof包,与usb设备进行通信,其中,初始下发周期为1ms。
96.usb主机向usb设备发送密码运算命令。
97.usb设备接收密码运算命令并解析,得到命令执行参数,并基于命令执行参数执行密码运算。
98.在usb设备执行密码运算命令的过程中,根据usb设备存在挂起时间调整sof包的下发周期,当usb设备存在挂起时间时,将sof包的下发周期调整为10ms,usb主机每隔10ms向usb设备发送一个sof包。
99.在usb设备完成密码运算命令之后,将sof的下发周期调整为初始下发周期。
100.本发明实施例公开了一种sof包下发周期的处理方法,通过对sof包的下发周期进行调整,在确保usb设备能够正常执行密码运算命令的前提下,增大sof包的下发周期,从而减小sof包对侧信道信号的干扰,提高usb设备的侧信道信号的信噪比。
101.本发明实施例中,通过对sof包的下发周期进行调整,在确保usb设备能够正常执行密码运算命令的前提下,增大sof包的下发周期,从而减小sof包对侧信道信号的干扰,提高usb设备的侧信道信号的信噪比。
102.在上述步骤s104中涉及到usb主机将sof包的下发周期调整为第一预设下发周期,并基于第一预设下发周期下发sof包的过程,如图7所示,主要包括如下步骤:
103.步骤s701:当usb设备存在挂起时间时,usb主机将sof包的下发周期调整为第一预设下发周期t1,t1大于等于t
init
且小于,t
init
为初始下发周期,为usb设备的挂起时间。
104.步骤s702:usb主机基于第一预设下发周期t1下发sof包。
105.步骤s701

步骤s702的执行过程和执行原理与上述步骤s104的执行过程和执行原理一致,可参考,此处不再进行赘述。
106.本发明实施例中,usb主机通过第一预设下发周期t1下发sof包,在确保usb设备能够正常执行密码运算命令的前提下,增大sof包的下发周期,从而减小sof包对侧信道信号的干扰,提高usb设备的侧信道信号的信噪比。
107.在上述步骤s105中涉及到usb主机将sof包的下发周期调整为第二预设下发周期t2,并基于第二预设下发周期t2下发sof包的过程,如图8所示,主要包括如下步骤:
108.步骤s801:当usb设备不存在挂起时间时,usb主机将sof包的下发周期调整为第二预设下发周期t2,t2大于等于t
init
,t
init
为初始下发周期。
109.步骤s802:usb主机基于第二预设下发周期t2下发sof包。
110.步骤s801

步骤s802的执行过程和执行原理与上述步骤s105的执行过程和执行原
理一致,可参考,此处不再进行赘述。
111.本发明实施例中,usb主机通过第二预设下发周期t2下发sof包,在确保usb设备能够正常执行密码运算命令的前提下,增大sof包的下发周期,从而减小sof包对侧信道信号的干扰,提高usb设备的侧信道信号的信噪比。
112.基于上述实施例图1公开的一种sof包下发周期的处理方法,本发明实施例还对应公开了一种sof包下发周期的处理系统,如图9所示,该sof包下发周期的处理系统主要包括:
113.下发单元901,用于按照初始下发周期向usb设备下发sof包,维持与usb设备的通信。
114.发送单元902,用于向usb设备发送密码运算命令。
115.第一确定单元903,用于在usb设备执行密码运算命令的过程中,根据usb设备是否存在挂起时间调整sof包的下发周期。
116.第二确定单元904,用于当usb设备存在挂起时间时,将sof包的下发周期调整为第一预设下发周期t1,并基于第一预设下发周期t1下发sof包。
117.第三确定单元905,用于当usb设备不存在挂起时间时,将sof包的下发周期调整为第二预设下发周期t2,并基于第二预设下发周期t2下发sof包。
118.可选的,还包括:获取单元。
119.获取单元,用于获取usb设备的挂起时间。
120.可选的,还包括:调整单元。
121.调整单元,用于在usb设备完成密码运算命令之后,将sof的下发周期调整为初始下发周期。
122.进一步的,第二确定单元904包括:第一调整模块和第一下发模块。
123.第一调整模块,用于当usb设备存在挂起时间时时,将sof包的下发周期调整为第一预设下发周期t1,t1大于等于t
init
且小于,t
init
为初始下发周期,为usb设备的挂起时间。
124.第一下发模块,用于基于第一预设下发周期t1下发sof包。
125.进一步的,第三确定单元905包括:第二调整模块和第二下发模块。
126.第二调整模块,用于当usb设备不存在挂起时间时,将sof包的下发周期调整为第二预设下发周期t2,t2大于等于t
init
,t
init
为初始下发周期。
127.第二下发模块,用于基于第二预设下发周期t2下发sof包。
128.本发明实施例公开了一种sof包下发周期的处理系统,通过对sof包的下发周期进行调整,在确保usb设备能够正常执行密码运算命令的前提下,增大sof包的下发周期,从而减小sof包对侧信道信号的干扰,提高usb设备的侧信道信号的信噪比。
129.对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
130.需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于系统类实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参
见方法实施例的部分说明即可。
131.本发明各实施例方法中的步骤可以根据实际需要进行顺序调整、合并和删减。
132.最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。
133.对所公开的实施例的上述说明,使本领域技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
134.以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1