一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种信号的加密方法、信号的加密装置以及终端设备与流程

2022-07-30 15:03:17 来源:中国专利 TAG:


1.本技术涉及安全技术领域,尤其涉及一种信号的加密方法、信号的加密装置以及终端设备。


背景技术:

2.在这个信息爆发的时代,信息安全显得尤为重要。在加密装置的设计中,设计人员为了保护装置内的敏感数据不被泄露,会采取各种防护手段来抵御各种攻击,降低敏感数据泄露的风险。
3.加密装置相关的硬件攻击手段主要包含:1、侧信道攻击;2、错误注入攻击。其中,1、侧信道攻击主要通过装置内硬件或软件运行时产生的各种泄露信息来获取敏感数据。泄露信息包含电路信号翻转产生的能量消耗,软件或硬件不同流程的运算时间,电路信号在互连线传输时的天线效应导致的电磁辐射等。2、错误注入攻击主要在装置运行时通过各种手段使装置产生错误结果或行为。攻击人员可以从这些错误结果或行为中获取相关敏感数据或权限。
4.因此,亟需一种提高加密装置安全性的技术。


技术实现要素:

5.基于此,有必要针对上述技术问题,提供一种信号的加密方法、信号的加密装置以及移动终端。
6.第一方面,提供了一种信号的加密方法,包括:
7.第一设备生成用于向第二设备发送的数据信号;所述第一设备和第二设备通过总线连接;
8.在所述数据信号传输的过程中,所述数据信号经过掩码操作,得到掩码数据信号;
9.所述掩码数据信号经过错误检测码编码操作,得到经过编码的掩码数据信号;
10.所述经过编码的掩码数据信号用于由所述第二设备进行解码和校验操作,得到所述掩码数据信号;所述校验操作是指根据所述经过编码的掩码数据信号,判断所述数据信号在传输的过程中是否受到攻击。
11.在一些可选的实施方式中,所述在数据信号传输的过程中,所述数据信号经过掩码操作,得到掩码数据信号包括:
12.所述第一设备获取掩码信号,根据所述掩码信号和所述数据信号得到所述掩码数据信号;
13.所述掩码数据信号经过错误检测码编码操作,得到经过编码的掩码数据信号包括:
14.所述第一设备将所述掩码数据信号进行错误检测码编码操作,得到所述经过编码的掩码数据信号。
15.在一些可选的实施方式中,所述在数据信号传输的过程中,所述数据信号经过掩
码操作,得到掩码数据信号包括:
16.所述总线获取掩码信号,根据所述掩码信号和所述数据信号得到所述掩码数据信号;
17.所述掩码数据信号经过错误检测码编码操作,得到经过编码的掩码数据信号包括:
18.所述总线将所述掩码数据信号进行错误检测码编码操作,得到经过编码的掩码数据信号。
19.在一些可选的实施方式中,所述第一设备为主设备,所示第二设备为从设备;所述第一设备获取掩码信号,根据所述掩码信号和所述数据信号得到所述掩码数据信号包括:
20.所述主设备从随机数生成模块获取所述掩码信号,对所述掩码信号和所述数据信号进行异或逻辑运算和/或加法算术运算得到所述掩码数据信号。
21.在一些可选的实施方式中,所述第一设备为从设备,所示第二设备为主设备;所述第一设备获取掩码信号,根据所述掩码信号和所述数据信号得到所述掩码数据信号包括:
22.所述从设备从所述总线获取经过编码的掩码信号;
23.所述从设备对所述经过编码的掩码信号进行解码和校验操作,得到掩码信号;
24.所述从设备对所述掩码信号和所述数据信号进行异或逻辑运算和/或加法算术运算得到所述掩码数据信号。
25.在一些可选的实施方式中,所述第一设备为主设备,所示第二设备为从设备;所述总线获取掩码信号,根据所述掩码信号和所述数据信号得到所述掩码数据信号包括:
26.所述总线从随机数生成模块获取所述掩码信号,对所述掩码信号和所述数据信号进行异或逻辑运算和/或加法算术运算得到所述掩码数据信号。
27.在一些可选的实施方式中,所述从设备从所述总线获取经过编码的掩码信号之前,所述方法包括:
28.所述总线从随机数生成模块获取所述掩码信号,对所述掩码信号进行错误检测码编码操作,得到所述经过编码的掩码信号。
29.在一些可选的实施方式中,所述从设备从所述总线获取经过编码的掩码信号之前,所述方法包括:
30.所述主设备从随机数生成模块获取所述掩码信号;
31.所述主设备将所述掩码信号进行错误检测码编码操作,得到所述经过编码的掩码信号,将所述经过编码的掩码信号传输至所述总线;
32.所述总线对所述经过编码的掩码信号进行解码和校验操作。
33.在一些可选的实施方式中,所述主设备生成用于向所述从设备发送的地址信号;
34.所述主设备对所述地址信号进行错误检测码编码操作,并将经过编码的地址信号发送给所述从设备;
35.所述总线对所述经过编码的地址信号进行解码和校验操作;
36.所述从设备对所述经过编码的地址信号进行解码和校验操作,得到所述地址信号。
37.在一些可选的实施方式中,所述主设备向所述从设备发送地址信号;
38.所述总线对所述地址信号进行错误检测码编码操作,得到经过编码的地址信号;
39.所述从设备对所述经过编码的地址信号进行解码和校验操作,得到所述地址信号。
40.在一些可选的实施方式中,所述第一设备将所述掩码数据信号进行错误检测码编码操作,得到所述经过编码的掩码数据信号之后,所述方法包括:所述总线对所述经过编码的掩码数据信号进行解码和校验操作。
41.第二方面,提供了一种信号的加密装置,包括:
42.第一设备,生成用于向第二设备发送的数据信号;
43.第二设备;用于接收所述数据信号;
44.总线,用于连接所述第一设备和所述第二设备,并且,用于传输所述数据信号;
45.掩码模块,用于对所述数据信号进行掩码操作,得到掩码数据信号;
46.数据编码模块,用于对所述掩码数据信号进行错误检测码编码操作,得到经过编码的掩码数据信号;
47.所述第二设备还包括数据解码模块,所述数据解码模块用于对所述经过编码的掩码数据信号进行解码和校验操作,得到所述掩码数据信号;所述校验操作是指根据所述经过编码的掩码数据信号,判断所述数据信号在传输的过程中是否受到攻击。
48.在一些可选的实施方式中,所述掩码模块包括逻辑运算模块;所述装置进一步包括随机数生成模块;
49.所述随机数生成模块用于生成掩码信号;
50.所述逻辑运算模块包括异或逻辑运算模块和/或加法算术运算模块;所述逻辑运算模块用于获取所述掩码信号,根据所述数据信号和所述掩码信号得到所述掩码数据信号。
51.在一些可选的实施方式中,所述第一设备包括所述掩码模块和所述数据编码模块。
52.在一些可选的实施方式中,所述总线包括所述掩码模块和所述数据编码模块。
53.在一些可选的实施方式中,所述第一设备为主设备,所述第二设备为从设备;所述第一设备包括所述随机数生成模块。
54.在一些可选的实施方式中,所述第一设备为从设备,所述第二设备为主设备;所述从设备包括掩码解码模块,所述掩码解码模块用于从所述总线获取经过编码的掩码信号,并进行解码和校验操作,得到所述掩码信号。
55.在一些可选的实施方式中,所述总线包括所述随机数生成模块和掩码编码模块,所述掩码编码模块用于对所述掩码信号进行错误检测码编码操作,得到所述经过编码的掩码信号。
56.在一些可选的实施方式中,所述主设备包括所述随机数生成模块和掩码编码模块,所述掩码编码模块用于对所述掩码信号进行错误检测码编码操作,得到所述经过编码的掩码信号,并将所述经过编码的掩码信号传输至所述总线。
57.第三方面,提供了一种终端设备,包括:
58.处理器;以及
59.存储器,用于存储所述处理器执行的程序,所述程序包括指令使所述处理器执行第一方面中任意一项所述的方法。
60.本技术实施例提供的方案,在数据信号传输的过程中,所述数据信号经过掩码操作后,使得传输过程中的数据不会出现明文数据传输,可以抵御侧信道攻击;数据信号在传输的过程中经过错误检测码编码操作、由第二设备进行解码和校验操作,使得该加密方法具有检错能力,能够检测攻击者对于数据信号在传输过程中的错误注入攻击,从而提高该加密方法的安全性。
附图说明
61.下面将结合附图,对本技术实施例中的技术方案进行描述。
62.图1是一种信号的加密装置的结构示意图;
63.图2是本技术实施例提供的一种加密方法的流程图;
64.图3是本技术实施例提供的一种对数据信号进行掩码操作和错误检测码编码操作的示意性交互图;
65.图4是本技术实施例提供的另一种对数据信号进行掩码操作和错误检测码编码操作的示意性交互图;
66.图5是本技术实施例提供的一种获取掩码信号的示意性交互图;
67.图6是本技术实施例提供的另一种获取掩码信号的示意性交互图;
68.图7是本技术实施例提供的另一种获取掩码信号的示意性交互图;
69.图8是本技术实施例提供的一种获取经过编码的掩码信号的示意性交互图;
70.图9是本技术实施例提供的另一种获取经过编码的掩码信号的示意性交互图;
71.图10是本技术实施例提供的一种地址信号传输的示意性交互图;
72.图11是本技术实施例提供的另一种地址信号传输的示意性交互图;
73.图12是本技术实施例提供的一种信号的加密装置的结构示意图;
74.图13是本技术实施例提供的一种安全芯片的主设备发起写数据操作时的电路逻辑结构图;
75.图14是本技术实施例提供的一种安全芯片的主设备发起读数据操作时的电路逻辑结构图;
76.图15是本技术实施例提供的另一种安全芯片的主设备发起写数据操作时的电路逻辑结构图;
77.图16是本技术实施例提供的另一种安全芯片的主设备发起读数据操作时的电路逻辑结构图。
具体实施方式
78.下面将结合附图,对本技术实施例中的技术方案进行描述。
79.应理解,本文中的具体的例子只是为了帮助本领域技术人员更好地理解本技术实施例,而非限制本技术实施例的范围。
80.还应理解,本技术实施例中的公式只是一种示例,而非限制本技术实施例的范围,各公式可以进行变形,这些变形也应属于本技术保护的范围。
81.还应理解,在本技术的各种实施例中,各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本技术实施例的实施过
程构成任何限定。
82.还应理解,本说明书中描述的各种实施方式,既可以单独实施,也可以组合实施,本技术实施例对此并不限定。
83.除非另有说明,本技术实施例所使用的所有技术和科学术语与本技术的技术领域的技术人员通常理解的含义相同。本技术中所使用的术语只是为了描述具体的实施例的目的,不是旨在限制本技术的范围。本技术所使用的术语“和/或”包括一个或多个相关的所列项的任意的和所有的组合。
84.图1是一种信号的加密装置的结构示意图。如图1所示,第一设备100和第二设备300之间的连接统称为总线200。一般的总线200上的信号可以包括控制信号、响应信号、地址信号和数据信号等。可以看到,一般的总线200如ahb总线(advanced high-performance bus,高速总线)和apb总线(advanced peripheral bus,低速总线),这两种总线200上的数据传输全部为明文数据传输。一方面,攻击者可以通过传输过程中的能量信息并结合侧信道攻击手段来获取相关的数据;另一方面,一般的总线200不具有自校验功能,无法检测错误注入攻击。可以理解,错误注入攻击包括各种使得传输信号产生异常的攻击手段,比如电磁攻击、电压攻击、温度攻击、光攻击等攻击手段。
85.为了应对各种攻击手段,降低敏感数据泄露的风险,需要采取防护方式来抵御和检测对应的攻击手段。
86.有鉴于此,本技术实施例提供一种信号的加密方法、信号的加密装置以及移动终端。
87.本技术第一方面提供一种加密方法。请参考图2,图2为本技术实施例提供的一种加密方法的流程图。该加密方法可以由加密装置或者终端设备等来执行。其中,加密装置可以是安全芯片。该加密方法包括如下内容:
88.s100:第一设备生成用于向第二设备发送的数据信号,其中,该第一设备和该第二设备通过总线连接。
89.具体的,第一设备可以是安全芯片中的主设备,例如:中央处理器(central processing unit,cpu)、直接存储器访问(direct memory access,dma)等;第二设备可以是安全芯片中的从设备,例如:数据加密标准(data encryption standard,des)、定时器(timer)等。
90.或者,第一设备可以是安全芯片中的从设备,第二设备可以是安全芯片中的主设备,此处不再赘述。
91.或者,第一设备可以是终端设备(如移动终端或者非移动终端)的中央处理器(central processing unit,cpu)等、第二设备可以是终端设备的非易失性存储器(non-volatile memory,nvm)、随机存取存储器(random access memory,ram)等。
92.或者,第一设备可以是终端设备的非易失性存储器、随机存取存储器等,第二设备可以是终端设备的中央处理器等。
93.s200:在数据信号传输的过程中,数据信号经过掩码操作,得到掩码数据信号。
94.具体的,比如,数据信号可以记作data,经过掩码操作后,得到的掩码数据信号可以记作data_mask。可以理解,数据信号经过掩码操作后由明文数据转化为密文数据,可以防止明文数据相关能量的泄露,从而使得该密文数据具有抵御侧信道攻击的能力。
95.s300:掩码数据信号经过错误检测码编码操作,得到经过编码的掩码数据信号。
96.具体的,错误检测码编码操作可以基于多种错误检测码,比如错误检测码可以包括奇偶校验码、独热码(one-hot code)、检错码(error detecting code,edc)和纠错码(error correcting code,ecc)等的一种或多种。同时,在选择错误检测码时可以结合系统资源占用、硬件资源消耗等因素进行选择。
97.在一种优选的实施方式中,错误检测码编码操作包括:检错码编码操作和/或纠错码编码操作。比如,掩码数据信号经过检错码编码操作,得到的经过编码的掩码数据信号可以记作data_mask_edc;或者,掩码数据信号经过纠错码编码操作,得到的经过编码的掩码数据信号可以记作data_mask_ecc;或者掩码数据信号经过检错码编码操作和纠错码编码操作,得到的经过编码的掩码数据信号可以记作data_mask_edc_ecc等。
98.s400:经过编码的掩码数据信号用于由第二设备进行解码和校验操作,得到所述掩码数据信号。
99.具体的,校验操作是指根据所述经过编码的掩码数据信号,判断所述数据信号在传输的过程中是否受到攻击。
100.具体的,所述校验操作可以是对所述经过编码的掩码数据信号的整体进行运算,得到运算结果。该运算结果可以包括所述掩码数据信号是否正确的判断结果。当所述判断结果为正确时,判断所述数据信号在传输的过程中没有受到攻击;当所述判断结果为错误时,判断所述数据信号在传输的过程中受到攻击。
101.在上述方案中,在数据信号传输的过程中,所述数据信号经过掩码操作后,使得传输过程中的数据不会出现明文数据传输,可以抵御侧信道攻击;数据信号在传输的过程中经过错误检测码编码操作、解码和校验操作,使得该加密方法具有检错能力,能够检测攻击者对于数据信号在传输过程中的错误注入攻击,从而提高该加密方法的安全性。
102.图3为本技术实施例提供的一种对数据信号进行掩码操作和错误检测码编码操作的示意性交互图,如图所示,在一种可选的实施方式中,上述步骤s200可以包括如下内容:
103.s201a:第一设备获取掩码信号,根据掩码信号和数据信号得到掩码数据信号。
104.上述步骤s300可以包括如下内容:
105.s301a:第一设备将掩码数据信号进行错误检测码编码操作,得到经过编码的掩码数据信号。
106.在上述方案中,所述掩码操作在所述第一设备中进行,可以使得第一设备向第二设备发送密文数据,可以防止明文数据相关能量的泄露,从而使得该密文数据可以抵御侧信道攻击;所述错误检测码编码操作在所述第一设备中进行,使得所述掩码数据信号在第一设备中得到后即可进行错误检测码编码操作得到经过编码的掩码数据信号,该经过编码后的掩码数据信号具有检错能力,该信号在后续的传输过程中可以检测错误注入攻击,也即在后续的传输过程中安全性得到提高。因此,可以提高该加密方法的检错能力,进而提高该加密方法的安全性。
107.图4为本技术实施例提供的另一种对数据信号进行掩码操作和错误检测码编码操作的示意性交互图。在另一种可选的实施方式中,如图4所示,上述步骤s200可以包括如下内容:
108.s201b:总线获取掩码信号,根据掩码信号和数据信号得到掩码数据信号;
109.上述步骤s300可以包括如下内容:
110.s301b:总线将掩码数据信号进行错误检测码编码操作,得到经过编码的掩码数据信号。
111.在上述方案中,第一设备向第二设备发送明文数据。该明文数据在总线上经过掩码操作后,总线上将传输掩码数据信号,即密文数据,进而防止明文数据相关能量的泄露,从而使得该密文数据可以抵御侧信道攻击;所述错误检测码编码操作在所述总线中进行可以在总线中得到经过编码的掩码数据信号,该信号具有检错能力,能够检测攻击者的错误注入攻击,该信号在后续传输过程中的安全性提高。
112.图5为本技术实施例提供的一种获取掩码信号的示意性交互图。如图所示,在一种可选的实施方式中,第一设备为主设备,第二设备为从设备,其中,主设备和从设备可以是安全芯片中的主设备和从设备,具体可以参考图2对应的实施例的相关描述,此处不再赘述。应理解,主设备生成用于向从设备发送的数据信号的过程为主设备发起写数据操作的过程。上述步骤s201a:第一设备获取掩码信号,根据掩码信号和数据信号得到掩码数据信号可以包括如下内容:
113.s2011a:主设备从随机数生成模块获取掩码信号,对掩码信号和数据信号进行异或逻辑运算和/或加法算术运算得到掩码数据信号。
114.具体的,随机数生成模块可以包括真随机数生成模块和伪随机数生成模块;掩码信号可以包括随机数信号,采用随机数信号作为掩码信号可以提高数据信号抵御侧信道攻击的能力,提高加密方法的安全性。
115.具体的,在一种可选的实施方式中,随机数生成模块可以配置在总线中,主设备从该随机数生成模块获取掩码信号。
116.在一种优选的实施方式中,主设备包括随机数生成模块,主设备从配置在其内部的随机数生成模块获取掩码信号可以提高该获取掩码信号过程的安全性,降低掩码信号在传输过程中受到错误注入攻击的风险。
117.在上述实施方式中,主设备获取掩码信号后,优选的,可以根据掩码信号以及数据信号进行异或逻辑运算得到掩码数据信号。上述运算过程如下:掩码数据信号=数据信号

掩码信号,其中“⊕”表示异或逻辑运算过程。
118.在上述方案中,采用异或运算得到掩码数据信号可以在保证信号的加密方法的安全性的情况下,减少系统或硬件资源的消耗。
119.或者,在一种可选的实施方式中,在上述主设备获取掩码信号后,可以根据掩码信号以及数据信号进行加法算术运算得到掩码数据信号。该运算过程如下:掩码数据信号=数据信号 掩码信号,其中“ ”表示加法算术运算过程。
120.或者,在一种可选的实施方式中,在上述主设备获取掩码信号后,可以根据掩码信号以及数据信号进行异或逻辑运算以及加法算术运算得到掩码数据信号。比如,上述运算过程如下:掩码数据信号=(数据信号 掩码信号)

掩码信号。其中“⊕”表示异或逻辑运算过程,“ ”表示加法算术运算过程。
121.数据信号在主设备内经过上述运算后得到的掩码数据信号为密文数据,即主设备向从设备发送密文数据,可以防止明文数据相关能量的泄露,从而使得该密文数据可以抵御侧信道攻击,提高了数据信号传输的安全性。
122.进一步的,在该实施例中,从设备还可以将所述掩码数据信号恢复为数据信号,即明文数据,以便于对所述数据信号进行后续的计算或者处理,该恢复为数据信号的过程可以包括如下内容:
123.s700a:所述主设备对所述掩码信号进行错误检测码编码操作,得到经过编码的掩码信号;
124.s701a:从设备获取所述经过编码的掩码信号,对所述经过编码的掩码信号进行解码和校验操作,得到所述掩码信号;
125.s702a:所述从设备根据所述掩码信号和所述掩码数据信号获取所述数据信号。具体的,从设备基于掩码信号和掩码数据信号可以通过去掩码运算,得到数据信号。比如,数据信号可以用data表示,掩码数据信号可以用data_mask表示,掩码信号可以用mask表示,则上述运算过程可以表示为:data=data_mask^mask,其中,“^”表示去掩码运算。
126.应理解,所述掩码信号与主设备对数据信号进行掩码操作的掩码信号是同一个掩码信号,这样,从设备可以基于所述掩码信号实现去掩码运算,得到去掩码运算后的数据信号。
127.在另外一些实施方式中,从设备可以直接对掩码数据信号进行后续的计算或处理,而不需要将该掩码数据信号恢复为数据信号。比如,从设备可以基于实现掩码数据信号和掩码信号相关的算法来对掩码数据信号进行计算或处理。
128.在上述方案中,采用随机数生成模块生成的随机数信号作为掩码信号可以提高数据信号抵御侧信道攻击的能力,提高加密方法的安全性;并且,在主设备中对掩码信号和数据信号进行异或逻辑运算和/或加法算术运算,可以使得主设备向从设备发送密文数据,进而可以抵御侧信道攻击,提高了数据信号传输的安全性。
129.图6为本技术实施例提供的另一种获取掩码信号的示意性交互图。如图所示,在另一种可选的实施方式中,第一设备为从设备,第二设备为主设备,其中,主设备和从设备可以是安全芯片中的主设备和从设备,具体可以参照图2对应的实施例的相关描述,此处不再赘述。应理解,从设备生成用于向主设备发送的数据信号的过程为主设备发起读数据操作的过程。上述步骤s201a:第一设备获取掩码信号,根据掩码信号和数据信号得到掩码数据信号可以包括如下内容:
130.s2011b:从设备从总线获取经过编码的掩码信号;
131.s2012b:从设备对经过编码的掩码信号进行解码和校验操作,得到掩码信号;
132.具体的,从设备对经过编码的掩码信号进行解码和校验操作,可以判断所述掩码信号在总线上传输时,是否受到错误注入攻击,提高掩码信号传输的安全性。
133.s2013b:从设备对掩码信号和数据信号进行异或逻辑运算和/或加法算术运算得到掩码数据信号。
134.具体的,在图5对应的实施例中,已经描述了对掩码信号和数据信号进行异或逻辑运算和/或加法算术运算得到掩码数据信号的过程,此处不再赘述。
135.在上述方案中,从设备从总线中获取经过编码的掩码信号,该经过编码的掩码信号在从设备中经过解码和校验操作,判断所述掩码信号在总线上传输时,是否受到错误注入攻击,提高掩码信号传输的安全性;并且,从设备对数据信号进行掩码操作,可以使得从设备向主设备发送密文数据,该密文数据可以抵御侧信道攻击,提高了数据信号传输的安
全性。
136.图7为本技术实施例提供的另一种获取掩码信号的示意性交互图。如图所示,在另一种可选的实施方式中,第一设备为主设备,第二设备为从设备,其中,主设备和从设备可以是安全芯片中的主设备和从设备,具体可以参照图2对应的实施例的相关描述,此处不再赘述。应理解,主设备生成用于向从设备发送的数据信号的过程为主设备发起写数据操作的过程;上述步骤s201b:总线获取掩码信号,根据掩码信号和数据信号得到掩码数据信号可以包括如下内容:
137.s2011c:总线从随机数生成模块获取掩码信号,对掩码信号和数据信号进行异或逻辑运算和/或加法算术运算得到掩码数据信号。
138.具体的,主设备生成数据信号,所述数据信号传输至总线,即主设备发送明文数据。总线从随机数生成模块获取掩码信号,并根据所述掩码信号和所述数据信号进行异或逻辑运算和/或加法算术运算得到掩码数据信号,可以使得在总线上传输的数据为密文数据,可以抵御侧信道攻击,提高数据信号传输的安全性。异或逻辑运算和/或加法算术运算在图5对应的实施例中已经描述,此处不再赘述。
139.进一步的,在该实施例中,从设备还可以将所述掩码数据信号恢复为数据信号,并对所述数据信号进行后续的计算或者处理等,该恢复为数据信号的过程可以包括如下内容:
140.s700b:所述总线对所述掩码信号进行错误检测码编码操作,得到经过编码的掩码信号;
141.s701b:所述从设备获取所述经过编码的掩码信号,对所述经过编码的掩码信号进行解码和校验操作,得到所述掩码信号;
142.s702b:所述从设备根据所述掩码信号和所述掩码数据信号获取所述数据信号。
143.具体的,从设备基于掩码信号和掩码数据信号可以通过去掩码运算,得到数据信号的过程在图5对应的实施例中已有描述,此处不再赘述。
144.应理解,所述掩码信号与总线对数据信号进行掩码操作的掩码信号是同一个掩码信号,这样,从设备可以基于所述掩码信号实现去掩码运算,得到去掩码运算后的数据信号。
145.在另外一些实施方式中,参见图5对应的实施例的相关描述,从设备可以直接对掩码数据信号进行后续的计算或处理等,而不需要将该掩码数据信号恢复为数据信号,此处不再赘述。
146.图8为本技术实施例提供的一种获取经过编码的掩码信号的示意性交互图。如图所示,在一种可选的实施方式中,在上述步骤s2011b:从设备从总线获取经过编码的掩码信号之前,可以包括如下内容:
147.s2010a:总线从随机数生成模块获取掩码信号,对掩码信号进行错误检测码编码操作,得到经过编码的掩码信号。
148.具体的,总线对掩码信号进行错误检测码编码操作,得到经过编码的掩码信号,该经过编码的掩码信号具有检错能力,该信号可以经过从设备的解码和校验,能够检测攻击者对总线上传输的掩码信号的错误注入攻击,提高加密方法的安全性。
149.应理解,掩码信号的位宽可以和数据信号的位宽相同,掩码信号的位宽一般可以
为32位或者64位,在总线上传输的所有信号中,掩码信号所占位宽的比例较大,因此,总线对掩码信号进行错误检测码编码操作,可以提高该加密方法的检错能力,进而提高掩码信号传输的安全性。
150.进一步的,在该实施例中,主设备还可以将所述掩码数据信号恢复为数据信号,对所述数据信号进行后续的计算或者处理等,该恢复为数据信号的过程可以包括如下内容:
151.s700b:所述主设备从所述总线获取所述经过编码的掩码信号,对所述经过编码的掩码信号进行解码和校验操作,得到所述掩码信号;
152.s701b:所述主设备根据所述掩码信号和所述掩码数据信号获取所述数据信号。
153.具体的,主设备基于掩码信号和掩码数据信号可以通过去掩码运算,得到数据信号的过程在图5对应的实施例中已有类似描述,此处不再赘述。
154.应理解,所述掩码信号与从设备对数据信号进行掩码操作的掩码信号是同一个掩码信号,这样,主设备可以基于所述掩码信号实现去掩码运算,得到去掩码运算后的数据信号。
155.在另外一些实施方式中,参见图5对应的实施例,类似的,主设备可以对掩码数据信号直接进行后续的计算或处理等,而不需要将该掩码数据信号恢复为数据信号,此处不再赘述。
156.图9为本技术实施例提供的另一种获取经过编码的掩码信号的示意性交互图。如图所示,在一种可选的实施方式中,在上述步骤s2011b:从设备从总线获取经过编码的掩码信号之前,可以包括如下内容:
157.s2008b:主设备从随机数生成模块获取掩码信号;
158.s2009b:主设备将掩码信号进行错误检测码编码操作,得到经过编码的掩码信号,将经过编码的掩码信号传输至总线。
159.具体的,主设备对掩码信号进行错误检测码编码操作,可以提高该加密方法对掩码信号的检错能力。因为,所述错误检测码编码操作在主设备中进行,使得所述掩码信号在生成后即可进行错误检测码编码操作得到经过编码的掩码信号,该信号具有检错能力,在后续的传输过程中可以检测错误注入攻击,也即在后续的传输过程中安全性得到提高。
160.可选的,在上述步骤s2009b之后还可以包括步骤s2010b:总线对经过编码的掩码信号进行解码和校验操作。
161.具体的,总线对经过编码的掩码信号进行解码和校验操作,可以在总线上判断掩码信号在传输的过程中是否受到攻击,提升掩码信号传输的安全性。
162.进一步的,在该实施例中,主设备还可以将所述掩码数据信号恢复为数据信号,并对所述数据信号进行后续的计算或者处理等,该恢复为数据信号的过程可以包括如下内容:
163.s700b:所述主设备从所述随机数生成模块获取所述掩码信号;
164.s701b:所述主设备根据所述掩码信号和所述掩码数据信号获取所述数据信号。
165.具体的,主设备基于掩码信号和掩码数据信号可以通过去掩码运算,得到掩码数据信号,该过程在图5对应的实施例中已有类似描述,此处不再赘述。
166.应理解,所述掩码信号与从设备对数据信号进行掩码操作的掩码信号是同一个掩码信号,这样,主设备可以基于所述掩码信号实现去掩码运算,得到去掩码运算后的数据信
号。
167.在另外一些实施方式中,参见图5对应的实施例,主设备可以对掩码数据信号直接进行后续的计算或处理等,而不需要将该掩码数据信号恢复为数据信号,此处不再赘述。
168.图10为本技术实施例提供的一种地址信号传输的示意性交互图。如图所示,在一种可选的实施方式中,图5、图9对应的实施例的步骤还可以包括如下内容:
169.s500a:主设备生成用于向从设备发送的地址信号;
170.具体的,地址信号可以用于选择指定存储器单元和i/o设备端口。
171.s501a:主设备对地址信号进行错误检测码编码操作,并将经过编码的地址信号发送给从设备;
172.s503a:从设备对经过编码的地址信号进行解码和校验操作,得到地址信号。
173.具体的,从设备对经过编码的地址信号进行解码和校验操作,可以判断出该地址信号在传输至从设备之前,是否受到错误注入攻击,提升地址信号传输的安全性。
174.可选的,在上述步骤s501a之后还可以包括步骤s502a:总线对经过编码的地址信号进行解码和校验操作;
175.具体的,总线对经过编码的地址信号进行解码和校验操作,可以在总线上判断地址信号在传输的过程中是否受到攻击,进一步提升地址信号传输的安全性。
176.在上述方案中,由于地址信号的位宽一般可以为32位或者64位,在总线上传输的所有信号中,地址信号所占位宽的比例较大,因此,对地址信号进行错误检测码编码操作,可以提高该加密方法的检错能力,提高地址信号传输的安全性。
177.图11为本技术实施例提供的另一种地址信号传输的示意性交互图。如图所示,在另一种可选的实施方式中,图7、图8对应的实施例的步骤还可以包括如下内容:
178.s500b:主设备向从设备发送地址信号;
179.具体的,地址信号可以用于选择指定存储器单元和i/o设备端口。
180.s501b:总线对地址信号进行错误检测码编码操作,得到经过编码的地址信号;
181.s502b:从设备对经过编码的地址信号进行解码和校验操作,得到地址信号。
182.在上述方案中,由于地址信号的位宽一般可以为32位或者64位,在总线上传输的所有信号中,地址信号所占位宽的比例较大,因此,总线对地址信号进行错误检测码编码操作,可以提高该加密方法的检错能力,提高地址信号传输的安全性。
183.可以理解,在上述方案中,地址信号与数据信号的生成(发送)没有时序上的限制,可以先生成(发送)地址信号再生成(发送)数据信号;或者,可以先生成(发送)数据信号再生成(发送)地址信号;或者,地址信号与数据信号可以同时生成(发送)。
184.进一步的,在一种可选的实施方式中,在图3、图5、图6、图8和图9对应的实施例中的步骤s301a:第一设备将掩码数据信号进行错误检测码编码操作,得到经过编码的掩码数据信号之后,该方法还可以包括如下内容:
185.s600:总线对经过编码的掩码数据信号进行解码和校验操作。
186.具体的,总线对经过编码的掩码数据信号进行解码和校验操作,可以使得总线对于总线上传输的经过编码的掩码数据信号进行实时的校验,实现在总线上判断数据信号在传输过程中是否受到攻击,进一步提高数据信号传输的安全性。
187.进一步的,当所述总线通过所述校验操作判断所述数据信号在传输的过程中受到
攻击时,所述总线生成报警信号。
188.在另一种实施方式中,当所述第二设备通过所述校验操作判断所述数据信号在传输的过程中受到攻击时,所述第二设备生成报警信号。
189.进一步的,所述加密装置可以根据所述报警信号作出响应,所述响应可以包括:复位加密装置、中断加密装置运行,或者擦除加密装置相关存储等。
190.可选的,主设备还可以向所述从设备发送控制信号,从设备可以向所述主设备发送响应信号;
191.进一步的,所述控制信号可以经过错误检测码编码操作(错误检测码编码操作可以发生在总线或主设备中)、再由从设备进行解码和校验操作;所述响应信号可以经过错误检测码编码操作(错误检测码编码操作可以发生在总线或从设备中),再由主设备进行解码和校验操作,以提高上述两种信号的检错能力,能够检测错误注入攻击,进而提高上述两种信号传输的安全性。
192.本技术实施例提供的信号的加密方法,在数据信号传输的过程中,所述数据信号经过掩码操作后,使得传输过程中的数据不会出现明文数据传输,可以抵御侧信道攻击;数据信号在传输的过程中经过错误检测码编码操作、由第二设备进行解码和校验操作,使得该加密方法具有检错能力,能够检测攻击者对于数据信号在传输过程中的错误注入攻击,从而提高该加密方法的安全性。
193.在总线上进行掩码操作,使得总线上传输密文数据,该密文数据可以抵御侧信道攻击;错误检测码编码操作在总线上进行,可以在总线上得到具有检错能力的经过编码后的掩码数据信号,该信号在后续的传输过程中安全性提高;
194.在第一设备中进行掩码操作,使得第一设备向第二设备发送密文数据,该密文数据可以抵御侧信道攻击;错误检测码编码操作在第一设备中进行,使得掩码数据信号在第一设备中得到后即可进行错误检测码编码操作得到具有检错能力的经过编码的掩码数据信号,该信号在后续的传输过程中安全性得到提高;
195.通过随机数生成模块生成的随机数信号作为掩码信号,可以提高数据信号抵御侧信道攻击的能力,提升加密方案的安全性;主设备包括随机数生成模块可以提高主设备获取掩码信号过程的安全性;
196.总线对经过编码的掩码数据信号进行解码和校验操作,可以使得总线对于总线上传输的经过编码的掩码数据信号进行实时的校验,实现在总线上判断数据信号在传输过程中是否受到攻击,进一步提高数据信号传输的安全性。
197.本技术第二方面提供一种信号的加密装置20。请参照图12,图12为本技术实施例提供的一种信号的加密装置20的结构示意图,包括:
198.第一设备100,生成用于向第二设备300发送的数据信号;
199.第二设备300,用于接收数据信号;
200.总线200,用于连接第一设备100和第二设备300,并且,用于传输数据信号;
201.掩码模块201,用于对数据信号进行掩码操作,得到掩码数据信号;
202.数据编码模块202,用于对掩码数据信号进行错误检测码编码操作,得到经过编码的掩码数据信号;
203.具体的,数据编码模块可以包括奇偶校验码模块和独热码(one-hot code)模块、
检错码(error detecting code,edc)编码模块和纠错码(error correcting code,ecc)编码模块等的一种或多种。同时,在选择数据编码模块时可以结合系统资源占用、硬件资源消耗等因素进行选择。
204.在一种优选的实施方式中,数据编码模块可以包括检错码编码模块、纠错码编码模块。其中,检错码编码模块可以对数据信号进行检错码编码操作;纠错码编码模块可以对数据信号进行纠错码编码操作,上述两种操作在图1对应的实施例中已有描述,此处不再赘述。
205.第二设备300还包括数据解码模块203,数据解码模块203用于对经过编码的掩码数据信号进行解码和校验操作,得到掩码数据信号;校验操作是指根据经过编码的掩码数据信号,判断数据信号在传输的过程中是否受到攻击。
206.在上述方案中,在数据信号传输的过程中,所述数据信号经过掩码模块201的掩码操作后,使得传输过程中的数据不会出现明文数据传输,可以抵御侧信道攻击;数据信号在传输的过程中经过数据编码模块202的错误检测码编码操作、配置在第二设备300中的数据解码模块203的解码和校验操作,使得该信号的加密装置具有检错能力,能够检测攻击者对于数据信号在传输过程中的错误注入攻击,从而提高该加密装置的安全性。
207.进一步的,掩码模块201可以包括逻辑运算模块,该逻辑运算模块可以包括异或逻辑运算模块、加法算术运算模块;信号的加密装置20包括随机数生成模块,该随机数生成模块用于生成掩码信号。可以理解,随机数生成模块可以包括真随机数生成模块和伪随机数生成模块,在图5对应的实施例中对该随机数生成模块已有描述,此处不再赘述。
208.其中,逻辑运算模块用于获取掩码信号,并根据数据信号和掩码信号得到掩码数据信号。逻辑运算模块包括的异或逻辑运算模块可以对掩码信号以及数据信号进行异或逻辑运算;逻辑运算模块包括的加法算术运算模块可以对掩码信号以及数据信号进行加法算术运算。上述运算过程在图5对应的实施例中已有描述,此处不再赘述。
209.在一种可选的实施方式中,第一设备100包括掩码模块201和数据编码模块202。
210.其中,将掩码模块201配置在第一设备100中,可以使得所述掩码操作在第一设备100中进行,进而使得第一设备100向第二设备300发送密文数据,可以防止明文数据相关能量的泄露,从而使得该密文数据可以抵御侧信道攻击;
211.将数据编码模块202配置在第一设备100中,可以使得所述错误检测码编码操作在所述第一设备中进行,使得掩码数据信号在第一设备100中得到后即可进行错误检测码编码操作得到经过编码的掩码数据信号,该经过编码后的掩码数据信号具有检错能力,该信号在后续的传输过程中可以检测错误注入攻击,也即在后续的传输过程中安全性得到提高。因此,可以提高该加密装置20的检错能力,进而提高该加密装置20的安全性。
212.进一步的,总线200可以包括数据解码模块203。具体的,配置在总线200上的数据编码模块203对经过编码的掩码数据信号进行解码和校验操作,可以使得总线200对于总线200上传输的经过编码的掩码数据信号进行实时的校验,实现在总线200上判断数据信号在传输过程中是否受到攻击,提高数据信号传输的安全性。
213.进一步的,在一种可选的实施方式中,第一设备100为主设备,第二设备300为从设备,其中,主设备和从设备可以是安全芯片中的主设备和从设备,具体可以参考图2所对应的实施例,此处不再赘述。第一设备100包括随机数生成模块。具体的,将随机数生成模块配
置在主设备中,使得主设备从配置在其内部的随机数生成模块获取掩码信号可以提高该获取掩码信号过程的安全性,降低掩码信号在传输过程中受到错误注入攻击的风险。
214.在另一种可选的实施方式中,第一设备100为从设备,第二设备300为主设备,其中,主设备和从设备可以是安全芯片中的主设备和从设备,具体可以参考图2所对应的实施例,此处不再赘述。从设备包括掩码解码模块,掩码解码模块用于从总线200获取经过编码的掩码信号,并进行解码和校验操作,得到掩码信号。应理解,从设备生成用于向主设备发送的数据信号的过程为主设备发起读数据操作的过程。
215.具体的,掩码解码模块配置在从设备中,对经过编码的掩码信号进行解码和校验操作得到掩码信号,可以判断所述掩码信号在总线200上传输时,是否受到错误注入攻击,提高掩码信号传输的安全性。
216.进一步的,在一种可选的实施方式中,总线200包括随机数生成模块和掩码编码模块,掩码编码模块用于对所述掩码信号进行错误检测码编码操作,得到所述经过编码的掩码信号。
217.具体的,总线200上的掩码编码模块对掩码信号进行错误检测码编码操作,得到经过编码的掩码信号,该经过编码的掩码信号具有检错能力,该信号可以经过从设备的解码和校验,能够检测攻击者对总线200上传输的掩码信号的错误注入攻击,提高该加密装置20的安全性。
218.进一步的,在另一种可选的实施方式中,主设备包括随机数生成模块205和掩码编码模块208,掩码编码模块208用于对掩码信号进行错误检测编码操作,得到经过编码的掩码信号,并将经过编码的掩码信号传输至总线200。
219.具体的,配置在主设备中的随机数生成模块205生成掩码信号,配置在主设备中的掩码编码模块208对掩码信号进行错误检测码编码操作,可以提高该加密装置对掩码信号的检错能力。因为,所述错误检测码编码操作在主设备中进行,使得所述掩码信号在主设备中生成后即可进行错误检测码编码操作得到经过编码的掩码信号,该经过编码的掩码信号具有检错能力,在后续的传输过程中可以检测错误注入攻击,也即在后续的传输过程中安全性得到提高。
220.进一步的,在一种可选的实施方式中,上述实施例还可以包括如下内容:
221.所述主设备生成用于向所述从设备发送的地址信号;
222.具体的,地址信号可以用于选择指定存储器单元和i/o设备端口。
223.所述主设备包括地址编码模块;
224.具体的,地址编码模块用于对所述地址信号进行错误检测码编码操作,得到经过编码的地址信号;将该经过编码的地址信号传输至所述总线;
225.所述从设备包括地址解码模块;
226.具体的,配置在所述从设备中的所述地址解码模块从所述总线获取所述经过编码的地址信号,并对该信号进行解码和校验操作,可以判断出该信号在传输至所述地址解码模块之前,是否受到错误注入攻击,提升地址信号传输的安全性。
227.可选的,所述总线包括地址解码模块;
228.具体的,总线对经过编码的地址信号进行解码和校验操作,可以在总线上判断地址信号在传输的过程中是否受到攻击,进一步提升地址信号传输的安全性。
229.在另一种可选的实施方式中,总线200包括掩码模块201和数据编码模块202。
230.其中,第一设备100向第二设备300发送明文数据。该明文数据在总线200上经过掩码模块201的掩码操作后,总线200上将传输掩码数据信号,即密文数据,进而防止明文数据相关能量的泄露,从而使得该密文数据可以抵御侧信道攻击。
231.将数据编码模块202配置在总线200中,也即错误检测码编码操作在所述总线中进行,可以在总线中得到经过编码的掩码数据信号,该信号具有检错能力,能够检测攻击者的错误注入攻击,该信号在后续传输过程中的安全性提高。
232.进一步的,在一种可选的实施方式中,所述第一设备100为主设备,所述第二设备300为从设备,上述实施例还可以包括如下内容:
233.所述主设备向所述从设备发送地址信号;
234.具体的,地址信号可以用于选择指定存储器单元和i/o设备端口。
235.所述总线包括地址编码模块;
236.具体的,所述地址编码模块对地址信号进行错误检测码编码操作,得到经过编码的地址信号;
237.所述从设备包括地址解码模块。
238.具体的,配置在从设备中的地址解码模块对经过编码的地址信号进行解码和校验操作,可以判断出该信号在总线上传输的过程中是否受到攻击,提升地址信号传输的安全性。
239.可选的,在上述各实施例中,当数据解码模块203通过所述校验操作判断所述数据信号在传输的过程中受到攻击时,所述数据解码模块203生成报警信号。
240.进一步的,所述信号的加密装置20可以根据所述报警信号作出响应,所述响应可以包括:复位加密装置、中断加密装置运行,或者擦除加密装置相关存储等。
241.可选的,与第一方面提供的加密方法类似,主设备还可以向所述从设备发送控制信号,从设备可以向所述主设备发送响应信号,此处不再赘述。
242.本技术第二方面提供的信号的加密装置20,在数据信号传输的过程中,所述数据信号经过掩码模块201的掩码操作后,使得传输过程中的数据不会出现明文数据传输,可以抵御侧信道攻击;数据信号在传输的过程中经过数据编码模块202的错误检测码编码操作、配置在第二设备300中的数据解码模块203的解码和校验操作,使得该信号的加密装置具有检错能力,能够检测攻击者对于数据信号在传输过程中的错误注入攻击,从而提高该加密装置20的安全性;
243.掩码模块201配置在第一设备100中,可以使得所述掩码操作在第一设备100中进行,进而使得第一设备100向第二设备300发送密文数据,该密文数据可以抵御侧信道攻击;数据编码模块202配置在第一设备100中,可以使得所述错误检测码编码操作在所述第一设备中进行,使得掩码数据信号在第一设备100中得到后即可进行错误检测码编码操作得到经过编码的掩码数据信号,该信号具有检错能力,也即在后续的传输过程中安全性得到提高,加密装置20的安全性得到提高;
244.掩码模块201配置在总线200上,可以使得总线200上传输密文数据,该密文数据可以抵御侧信道攻击;数据编码模块202配置在总线200中,也即错误检测码编码操作在所述总线中进行,可以在总线中得到经过编码的掩码数据信号,该信号具有检错能力,在后续传
输过程中的安全性提高,加密装置20的安全性得到提高;
245.通过随机数生成模块生成的随机数信号作为掩码信号,可以提高数据信号抵御侧信道攻击的能力,提升加密方案的安全性;主设备包括随机数生成模块可以提高主设备获取掩码信号过程的安全性,加密装置20的安全性得到提高;
246.总线200可以包括数据解码模块203,该模块对经过编码的掩码数据信号进行解码和校验操作,可以使得总线200对于总线200上传输的经过编码的掩码数据信号进行实时的校验,实现在总线200上判断数据信号在传输过程中是否受到攻击,提高数据信号传输的安全性,加密装置20的安全性得到提高。
247.下面将结合几个具体实施例,详细描述将本技术第一方面提供的加密方法应用在本技术第二方面提供的信号的加密装置20上,具体的,信号的加密装置20可以包括一种安全芯片30。
248.具体实施例一:
249.参照图13,图13为本技术实施例提供的一种安全芯片的主设备发起写数据操作时的电路逻辑结构图。可选的,作为第一个具体实施例,第一设备100为主设备,第二设备300为从设备,对于主设备和从设备的描述可以参照图2对应的实施例,此处不再赘述;主设备与从设备通过总线200连接,主设备用于生成向从设备发送的数据信号,可以理解,主设备生成用于向从设备发送的数据信号的过程为主设备发起写数据操作的过程。
250.如图13所示,总线200包括数据编码模块202、掩码模块201和随机数生成模块205。主设备生成数据信号,并将数据信号发送至掩码模块201;随机数生成模块205生成掩码信号,该掩码信号传输至掩码模块201,掩码模块201根据数据信号和掩码信号得到掩码数据信号,该掩码数据信号传输至数据编码模块202,经过错误检测码编码操作,得到经过编码的掩码数据信号;
251.从设备可以包括数据解码模块203,该数据解码模块203接收经过编码的掩码数据信号,并对该经过编码的掩码数据信号进行解码和校验操作,得到掩码数据信号。所述校验操作是指根据所述经过编码的掩码数据信号,判断所述数据信号在传输的过程中是否受到攻击。
252.在上述方案中,数据信号经过配置在总线200上的掩码模块201的掩码操作后,总线200上传输的信号为密文数据,可以有效防止明文数据相关能量的泄露,进而可以抵御侧信道攻击;并且,掩码数据信号经过配置在总线200上的数据编码模块202的错误检测码编码操作得到经过编码的掩码数据信号,该经过编码的掩码数据信号经过配置在从设备中的数据解码模块203的解码和校验操作,可以判断所述数据信号在传输的过程中是否受到错误注入攻击,提高数据信号传输的安全性。
253.可选的,继续参照图13,主设备还可以向从设备发送地址信号。总线200可以进一步包括地址编码模块209,该地址信号经过地址编码模块209的错误检测码编码操作,得到经过编码的地址信号;从设备可以进一步包括地址解码模块210,该地址解码模块210接收所述经过编码的地址信号,对经过编码的地址信号进行解码和校验操作,从而判断所述地址信号在传输的过程中是否受到攻击,即总线200对于地址信号具有检错能力,能够检测攻击者对总线200上传输的地址信号的错误注入攻击。
254.可选的,继续参照图13,总线200还可以包括掩码编码模块208,随机数生成模块
205生成的掩码信号可以发送至该掩码编码模块208,经过错误检测码编码操作,得到经过编码的掩码信号;从设备可以包括掩码解码模块207,该掩码解码模块207获取所述经过编码的掩码信号,对所述经过编码的掩码信号进行解码和校验操作,得到掩码信号,从而判断所述掩码信号在传输的过程中是否受到攻击,即总线200对于掩码信号具有检错能力,能够检测攻击者对总线200上传输的掩码信号的错误注入攻击。
255.可选的,继续参照图13,为了对掩码数据信号进行后续的计算或处理等,从设备可以包括去掩码模块211,该去掩码模块211可以获取掩码信号和掩码数据信号,对掩码数据信号进行去掩码运算,所述去掩码运算具体可以参考图5对应的实施例的相关描述,此处不再赘述。
256.在另外一些实施方式中,从设备可以包括掩码运算模块,该掩码运算模块可以直接对接收到的掩码数据信号进行后续的计算或处理等,而不需要将该掩码数据信号恢复为数据信号。具体可以参考图5对应的实施例的相关描述,此处不再赘述。
257.可选的,当地址解码模块210或数据解码模块203或掩码解码模块207通过校验操作,判断得出该地址信号或数据信号或掩码信号在传输的过程中受到攻击,此时,地址解码模块210或数据解码模块203或掩码解码模块207给出报警信号,安全芯片30根据所述报警信号作出响应,例如:复位芯片,中断芯片运行,或者擦除芯片相关存储等。
258.具体实施例二
259.作为第二个具体实施例,可选的,第一设备100为从设备,第二设备300为主设备,对于主设备和从设备的描述可以参照图2对应的实施例,此处不再赘述;主设备与从设备通过总线200连接,从设备用于生成向主设备发送的数据信号,可以理解,从设备生成用于向主设备发送的数据信号的过程为主设备发起读数据操作的过程。
260.图14为本技术实施例提供的一种安全芯片30的主设备发起读数据操作时的电路逻辑结构图,如图14所示,作为第二个具体实施方式,从设备包括掩码模块201、数据编码模块202、掩码解码模块207a。
261.应理解,在下述各实施例中,对于相同功能、但配置在安全芯片30不同位置的模块,在附图标记上通过英文字母a和b来做区分。比如,配置在从设备中的掩码编码模块的附图标记可以为207a,配置在主设备中的掩码模块的附图标记可以为207b,下文不再赘述。
262.总线200包括随机数生成模块205和掩码编码模块208;随机数生成模块205生成掩码信号,该掩码信号传输至所述掩码编码模块208,经过错误检测码编码操作得到经过编码的掩码信号;
263.配置在从设备中的掩码解码模块207a获取所述经过编码的掩码信号,对其进行解码和校验操作,得到掩码信号,所述校验操作可以判断所述掩码信号在传输的过程中是否受到攻击,即该实施例中总线200对于掩码信号具有检错能力,能够检测攻击者对总线200上传输的掩码信号错误注入攻击。
264.配置在从设备中的掩码模块201获取数据信号和掩码信号,根据数据信号和掩码信号得到掩码数据信号。具体的,掩码模块201配置在从设备中,可以使得从设备向主设备发送密文数据,可以防止明文数据相关能量的泄露,从而使得该密文数据可以抵御侧信道攻击;
265.配置在从设备中的数据编码模块202获取所述掩码数据信号,对其进行错误检测
码编码操作得到经过编码的掩码数据信号。具体的,数据编码模块配置在从设备中,可以提高该安全芯片30对数据信号的检错能力。因为,数据编码模块配置在从设备中可以使得错误检测码编码操作发生在从设备中,即所述掩码数据信号在从设备中得到后即可进行错误检测码编码操作得到经过编码的掩码数据信号,该信号具有检错能力,该信号在后续的传输过程中可以检测错误注入攻击,也即在后续的传输过程中安全性得到提高。因此,该安全芯片30对数据信号的检错能力和安全性得到提高。
266.主设备可以包括数据解码模块203a,该数据解码模块203a获取经过编码的掩码数据信号,对其进行解码和校验操作,得到掩码数据信号;
267.可选的,总线200包括数据解码模块203b,该数据解码模块203b对经过编码的掩码数据信号进行解码和校验操作,可以使得总线200对于总线200上传输的经过编码的掩码数据信号进行实时的校验,实现在总线200上判断数据信号在传输过程中是否受到攻击,提高数据信号传输的安全性。
268.在上述方案中,从设备包括掩码解码模块207a可以判断掩码信号在传输的过程中是否受到攻击;数据信号经过配置在从设备中的掩码模块201的掩码操作后,可以使得从设备发送的数据为密文数据,并且,总线200上传输的数据同样也为密文数据,可以有效防止明文数据相关能量的泄露,进而抵御侧信道攻击;掩码数据信号经过配置在从设备中的数据编码模块202的错误检测码编码操作得到经过编码的掩码数据信号,该经过编码的掩码数据信号具有检错能力,该信号经过配置在主设备中的数据解码模块203a的解码和校验操作,可以判断所述数据信号在传输的过程中是否受到攻击。
269.与第一个具体实施例类似,可选的,主设备还可以向从设备发送地址信号,此处不再赘述。
270.与第一个具体实施例类似,可选的,为了对掩码数据信号进行后续的计算或处理等,主设备可以包括去掩码模块211和掩码解码模块207b,此处不再赘述。
271.与第一个具体实施例类似,在另外一些实施方式中,主设备中可以包括掩码运算模块,此处不再赘述。
272.可选的,与第一个具体实施方式类似,地址解码模块210、数据解码模块203、掩码解码模块207可以给出报警信号,此处不再赘述。
273.具体实施例三
274.作为第三个具体实施例,可选的,第一设备100为主设备,第二设备300为从设备,对于主设备和从设备的描述可以参照图2对应的实施例,此处不再赘述;主设备和从设备通过总线200连接,主设备用于生成向从设备发送的数据信号,可以理解,主设备生成用于向从设备发送的数据信号的过程为主设备发起写数据操作的过程。
275.图15为本技术实施例提供的另一种安全芯片30的主设备发起写数据操作时的电路逻辑结构图,如图15所示,主设备包括掩码模块201、数据编码模块202和随机数生成模块205。
276.其中,随机数生成模块205生成掩码信号,所述掩码模块201获取数据信号和掩码信号,对数据信号进行掩码操作,得到掩码数据信号;具体的,主设备包括随机数生成模块205,主设备从配置在其内部的随机数生成模块205获取掩码信号可以提高该获取掩码信号过程的安全性,降低掩码信号在传输过程中受到错误注入攻击的风险。
277.掩码数据信号经过配置在主设备中的数据编码模块202的错误检测码编码操作,得到经过编码的掩码数据信号。具体的,数据编码模块202配置在主设备中,可以提高该安全芯片30对数据信号的检错能力。因为,数据编码模块202配置在主设备中可以使得错误检测码编码操作在主设备中进行,使得所述掩码数据信号在主设备中得到后即可进行错误检测码编码操作得到经过编码的掩码数据信号,该信号具有检错能力,在后续的传输过程中可以检测错误注入攻击,也即在后续的传输过程中安全性得到提高。
278.从设备可以包括数据解码模块203a,所述数据解码模块203a获取经过编码的掩码数据信号,对所述经过编码的掩码数据信号进行解码和校验操作,得到掩码数据信号,所述校验操作是指根据所述经过编码的掩码数据信号,判断所述数据号在传输的过程中是否受到攻击。
279.在上述方案中,主设备包括随机数生成模块205可以提高主设备获取掩码信号的安全性,数据信号经过配置在主设备中的掩码模块201的掩码操作后,可以使得主设备发送的数据为密文数据,并且,总线200上传输的数据同样也为密文数据,可以有效防止明文数据相关能量的泄露,进而抵御侧信道攻击;掩码数据信号经过配置在主设备中的数据编码模块202的错误检测码编码操作得到经过编码的掩码数据信号,该信号具有检错能力,该信号经过配置在从设备中的数据解码模块203a的解码和校验操作,可以判断所述数据信号在传输的过程中是否受到攻击。
280.进一步的,主设备包括地址编码模块209,从设备包括地址解码模块210a;主设备生成用于向从设备发送的地址信号,地址编码模块209对地址信号进行错误检测码编码操作,并将经过编码的地址信号通过总线发送给配置在从设备中的地址解码模块210a,地址解码模块210a对经过编码的地址信号进行解码和校验操作,得到地址信号。
281.具体的,配置在从设备中的地址解码模块210a对经过编码的地址信号进行解码和校验操作,可以判断出该地址信号在传输至从设备之前,是否受到错误注入攻击,提升地址信号传输的安全性。可选的,与具体实施例二类似,总线200包括数据解码模块203b,此处不再赘述。
282.可选的,总线200还可以包括掩码解码模块207b,用于接收经过编码的掩码信号,并对经过编码的掩码信号进行解码和校验操作,可以使得总线200对于总线200上传输的经过编码的掩码信号进行实时的校验,判断掩码信号在传输过程中是否受到攻击,提高掩码信号传输的安全性;总线200还可以包括地址解码模块210b,用于接收经过编码的地址信号,并对经过编码的地址信号进行解码和校验,可以使得总线200对于总线200上传输的经过编码的地址信号进行实时的校验,判断地址信号在传输过程中是否受到攻击,提高地址信号传输的安全性。
283.可选的,与第一个具体实施方式类似,为了对掩码数据信号进行后续的计算或处理等,从设备可以包括去掩码模块211和掩码解码模块207a,此处不再赘述。
284.可选的,与第一具体实施方式类似,从设备中可以包括掩码运算模块,此处不再赘述。
285.可选的,与第一个具体实施方式类似,地址解码模块210、数据解码模块203、掩码解码模块207可以给出报警信号,此处不再赘述。
286.具体实施例四
287.作为第四个具体实施例,可选的,第一设备100为从设备,第二设备300为主设备,对于主设备和从设备的描述可以参照图2对应的实施例,此处不再赘述;主设备与从设备通过总线200连接,从设备用于生成向主设备发送的数据信号,可以理解,从设备生成用于向主设备发送的数据信号的过程为主设备发起读数据操作的过程。
288.图16为本技术实施例提供的另一种安全芯片30的主设备发起读数据操作时的电路逻辑结构图,如图16所示,从设备包括掩码模块201、数据编码模块202和掩码解码模块207a;主设备包括随机数生成模块205和掩码编码模块208。
289.其中,配置在主设备中的随机数生成模块205生成掩码信号,该掩码信号传输至掩码编码模块208,经过错误检测码编码操作,得到经过编码的掩码信号;该经过编码的掩码信号传输至总线200;
290.配置在从设备中的掩码解码模块207a接收经过编码的掩码信号,并对其进行解码和校验操作,得到掩码信号;具体的,所述校验操作可以判断所述掩码信号在传输的过程中是否受到攻击;
291.配置在从设备中的掩码模块201获取数据信号和掩码信号,对数据信号进行掩码操作,得到掩码数据信号;
292.配置在从设备中的数据编码模块202获取所述掩码数据信号,对掩码数据信号进行错误检测码编码操作,得到经过编码的掩码数据信号,该经过编码的掩码数据信号传输至总线200;
293.主设备包括数据解码模块203a,该数据解码模块203a获取经过编码的掩码数据信号,对其进行解码和校验操作,得到掩码数据信号。
294.在上述方案中,从设备包括掩码解码模块207a可以判断掩码信号在传输的过程中是否受到攻击;数据信号经过配置在从设备中的掩码模块201的掩码操作后,可以使得从设备发送的数据为密文数据,并且,总线200上传输的数据同样也为密文数据,可以有效防止明文数据相关能量的泄露,进而抵御侧信道攻击;掩码数据信号经过配置在从设备中的数据编码模块202的错误检测码编码操作得到经过编码的掩码数据信号,该信号具有检错能力,该经信号经过配置在主设备中的数据解码模块203a的解码和校验操作,可以判断所述数据信号在传输的过程中是否受到攻击。
295.进一步的,与第三个具体实施例类似,主设备括地址编码模块209,从设备包括地址解码模块210a,此处不再赘述。可选的,与第三个具体实施例类似,总线200可以包括数据解码模块203b、掩码解码模块207b和地址解码模块210b,此处不再赘述。
296.可选的,与第二个具体实施例类似,为了对掩码数据信号进行后续的计算或处理等,主设备可以包括去掩码模块211,此处不再赘述。
297.可选的,与第二个具体实施例类似,主设备中可以包括掩码运算模块,此处不再赘述。
298.可选的,与第一个具体实施例类似,地址解码模块210、数据解码模块203、掩码解码模块207可以给出报警信号,此处不再赘述。
299.可选的,与第一方面提供的加密方法类似,在上述四个具体实施例中,主设备可以向从设备发送控制信号,从设备可以向主设备发送响应信号;
300.可选的,总线200可以包括控制编码模块,用于对控制信号进行检错码编码操作,
得到经过编码的控制信号;从设备可以包括控制解码模块,用于对经过编码的控制信号进行解码和校验操作,得到控制信号;所述校验操作是指根据所述经过编码的控制信号,判断所述控制信号在传输的过程中是否受到攻击;具体的,经过编码的控制信号具有检错能力,该信号经过配置在从设备中的控制解码模块的解码和校验,可以判断出控制信号在总线上传输的过程中是否受到攻击,进而提高控制信号传输的安全性。
301.可选的,与上述总线200可以包括控制编码模块,从设备可以包括控制解码模块类似,总线200可以包括响应编码模块;主设备可以包括响应解码模块,此处不再赘述。
302.可选的,可选的,与第一方面提供的加密方法类似,在上述四个具体实施例中,主设备可以生成用于向从设备发送控制信号,从设备可以生成用于向主设备发送响应信号;
303.可选的,主设备可以包括控制编码模块,从设备可以包括控制解码模块。
304.具体的,主设备生成控制信号,经过控制编码模块的错误检测码编码操作,得到经过编码的控制信号;该信号经过控制解码模块的解码和校验,得到控制信号,所述校验操作是指根据所述经过编码的控制信号,判断所述控制信号在传输的过程中是否受到攻击;
305.在该实施例中,控制编码模块配置在主设备中,可以使得控制信号在主设备中生成后即可进行错误检测码编码操作,得到经过编码的控制信号,该信号具有检错能力,在后续的传输过程中的安全性得到提高;
306.可选的,与上述主设备可以包括控制编码模块,从设备可以包括控制解码模块类似,从设备可以包括响应编码模块,主设备可以包括响应解码模块,此处不再赘述。
307.进一步的,总线200可以包括控制解码模块。具体的,配置在总线200上的控制解码模块可以对经过编码的控制信号进行解码和校验,可以使得总线200对于总线200上传输的经过编码的控制信号进行实时的校验,实现在总线200上判断控制信号在传输过程中是否受到攻击,提高控制信号传输的安全性。
308.进一步的,与总线200可以包括控制解码模块类似,总线200可以包括响应解码模块,此处不再赘述。
309.本技术第三方面提供一种终端设备,该终端设备包括处理器,以及存储器,用于存储所述处理器执行的程序,所述程序包括指令使所述处理器执行第一方面中任意一项所述的方法。
310.上述终端设备,由于执行第一方面中任意一项所述的方法,其实现的功能、产生的有益效果等可以参照第一方面中任意一项所述的方法所实现的功能、产生的有益效果等,此处不再赘述。
311.普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本技术的范围。
312.所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
313.在本技术所提供的几个实施例中,应所述理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元
的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
314.所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
315.另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
316.所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者所述技术方案的部分可以以软件产品的形式体现出来,所述计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本技术各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read-only memory,rom)、随机存取存储器(random access memory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。
317.以上所述,仅为本技术的具体实施方式,但本技术的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本技术揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本技术的保护范围之内。因此,本技术的保护范围应所述以权利要求的保护范围为准。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献