CN103905462B - 可抵御差分功耗分析攻击的加密处理装置及方法 - Google Patents

可抵御差分功耗分析攻击的加密处理装置及方法 Download PDF

Info

Publication number
CN103905462B
CN103905462B CN201410153362.4A CN201410153362A CN103905462B CN 103905462 B CN103905462 B CN 103905462B CN 201410153362 A CN201410153362 A CN 201410153362A CN 103905462 B CN103905462 B CN 103905462B
Authority
CN
China
Prior art keywords
random number
data
outfan
input
random
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.)
Active
Application number
CN201410153362.4A
Other languages
English (en)
Other versions
CN103905462A (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.)
Guowei group (Shenzhen) Co., Ltd.
Original Assignee
Shenzhen State Micro Technology 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 Shenzhen State Micro Technology Co Ltd filed Critical Shenzhen State Micro Technology Co Ltd
Priority to CN201410153362.4A priority Critical patent/CN103905462B/zh
Priority to US14/758,105 priority patent/US9628265B2/en
Priority to EP14854899.3A priority patent/EP2947841A4/en
Priority to PCT/CN2014/080234 priority patent/WO2015158038A1/zh
Publication of CN103905462A publication Critical patent/CN103905462A/zh
Application granted granted Critical
Publication of CN103905462B publication Critical patent/CN103905462B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/002Countermeasures against attacks on cryptographic mechanisms
    • H04L9/003Countermeasures against attacks on cryptographic mechanisms for power analysis, e.g. differential power analysis [DPA] or simple power analysis [SPA]
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09CCIPHERING OR DECIPHERING APPARATUS FOR CRYPTOGRAPHIC OR OTHER PURPOSES INVOLVING THE NEED FOR SECRECY
    • G09C1/00Apparatus or methods whereby a given sequence of signs, e.g. an intelligible text, is transformed into an unintelligible sequence of signs by transposing the signs or groups of signs or by replacing them by others according to a predetermined system
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/04Masking or blinding
    • H04L2209/046Masking or blinding of operations, operands or results of the operations

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Storage Device Security (AREA)

Abstract

本发明公开了一种可抵御差分功耗分析攻击的加密处理装置及方法。在本发明实施例提供的所述加密处理装置中,所述SecMasking单元采用以通用随机掩码技术为基础的结构实现;SecPrepare单元采用以按位异或器为基础的结构实现;SecSbox单元采用以查表结果基于随机掩码技术而进行纵向及横向同时实时更新的方案而实现。采用本发明,能够实现密码运算设备电路的工作功耗与运算数据及运算操作的无关化。并且其可以被广泛应用于需要高度安全性能的加解密运算密码设备。

Description

可抵御差分功耗分析攻击的加密处理装置及方法
技术领域
本发明属于信息安全技术领域,具体而言,涉及一种可抵御差分功耗分析(Differential Power Analysis,简称DPA)攻击的加密处理装置及方法。
背景技术
加密技术通常分为两大类:对称分组密码算法以及非对称分组密码算法,其中,对称分组密码算法是指加密和解密均使用同一个密钥,这种加密技术当前被广泛采用,如美国政府所采用的DES(Data Encryption Standard,数据加密标准)加密标准就是一种典型的“对称式”加密法,它的Session Key长度为56bits。非对称分组密码算法是指加密和解密所使用的不是同一个密钥,通常有两个必须配对使用的“公钥”和“私钥”。
以经典的对称分组密码算法的典型实现为例,如图1所示,在图1中r代表当前轮变换的轮序数,p和k代表当前轮变换的轮分组数据和轮密钥,σ和λ表示此轮内的线性层变换,而唯一的非线性层变换γ则基本由多个S盒非线性变换组成。图1所示的架构并不仅仅适用于AES(Advanced Encryption Standard,高级加密标准)、DES等常见对称分组密码算法,也适用于已知或未知的包含非线性S盒构造的其它对称分组密码算法。
密码分析是密码学的重要分支,典型的密码分析通常不考虑密码系统的具体实现,而是仅通过数学推理、统计分析、高性能计算、可证明安全等途径来发现密码系统中的密钥信息或不安全因素,这些分析方法主要包括差分分析、线性分析、相关密钥分析、代数分析、线性逼近、困难问题求解、归约证明等。
而在实际中,密码系统通常是以硬件或以硬件为表现形式的软件来实现的,譬如智能卡、RFID(Radio Frequency Identification,射频识别)、密码协处理器、SoC(Systemon Chip,片上系统)密码芯片、密码机等。在这些密码系统的实现环境中,攻击者不仅可以进行“黑盒”询问,而且往往还可以通过反向工程和微探测技术等手段获得算法的硬件结构和编码实现方法,并可以观察和测量密码变换的运行时间、能量消耗、电磁辐射等信息,甚至还可以“干预”密码变换的正常运行使其出错。攻击者利用这些额外的信息有可能实现比“黑盒攻击”更有效地密码破译。人们通常把这种环境下的攻击称为“旁路攻击(SideChannel Attack)”。由于高效的攻击性能,旁路攻击已经引起了国际学术界、工业界以及各国政府的高度重视和关注,成为密码分析和密码工程领域发展最为迅速的方向之一。
差分功耗分析是使用最广泛的旁路攻击方法,通过记录密码设备对大量不同数据分组加密或解密操作时的功耗曲线,能从功耗曲线中恢复出密码设备中的密钥。差分功耗分析利用的是密码设备能量消耗的数据依赖性,使用多条功耗曲线来分析设备在某个固定时刻的能量消耗情况,并将能量消耗视作被处理数据的函数。
差分功耗分析攻击实施的依据是密码设备的功耗依赖于设备所执行的密码算法的中间值。因此,如果试图抵御这种攻击,就要降低甚至消除这种依赖性,最常见的防御方法有两种:隐藏和掩码。
隐藏策略的目标是消除密码设备的功耗与设备所执行的操作和所处理的中间值之间的相关性,可以通过两种途径实现这一目标:第一种是使用特殊的方式构建密码设备,使其功耗随机化,这意味着设备在各个时钟周期的功耗随机分布;第二种是使设备对于所有操作和所有操作数均具有同样的功耗,即设备在各个时钟周期的功耗相等。
掩码技术的核心思想是:在计算的开始时,首先使用一些随机掩码对消息和密钥进行掩码操作,而其后所有的操作则几乎与常规的计算过程完全相同;但是,在某些特定步骤的最后几个步骤中,例如,在某一轮加密变换的最后,或者在计算过程中线性操作的最后,掩码的值必须是已知的,以便在计算执行结束时重新恢复出所期望的数据值。
但在上述策略中,其在针对以S盒查表操作为表征的非线性运算中通过采用很多份冗余的伪查表操作来掩盖唯一真查表操作来提高安全性,不可避免地,其面积资源开销较大。另外,在针对以S盒查表操作为表征的非线性运算中通过采用加性和乘性随机掩码因子、及不同极性数域之间的转换操作来提高安全性,也会造成面积资源成本的大幅上升,从而不利于资源受限环境下可抵御差分功耗分析攻击的加密处理装置及方法的实现。
发明内容
鉴于此,本发明实施例的目的在于提供一种针对含有S盒查表操作的密码算法可抵御差分功耗分析攻击的加密处理装置及其方法。
本发明实施例采用以下技术方案实现:
一种可抵御差分功耗分析攻击的加密处理装置,包括:
掩盖处理电路单元SecMasking,用于将期待进行S盒查表操作的源数据pr基于随机掩码技术拆分为多份随机数据;
预处理电路单元SecPrepare,用于依据随机数xr对所述多份随机数据以及当前有效的密码算法子密钥kr进行轮密钥加AddRoundKey变换,并在实时更新变量gcnt的参与下对所述变换处理结果执行至少以消除所述随机数xr参与影响的S盒变换预处理并输出预处理数据br
S盒电路单元SecSbox,用于依据随机数yr以及随机数zr、并基于随机掩码技术对所述预处理数据br进行纵向及横向S盒查找处理以及实时更新处理。
优选地,SecMasking单元包括D触发器D0、D1、D2以及按位异或器X1、X2,其中:
源数据pr和随机数ir被分别提供至按位异或器X1的两输入端;
按位异或器X1的输出端与按位异或器X2的一输入端相连,随机数jr被提供至按位异或器X2的另一输入端;
按位异或器X2的输出端与D触发器D0的数据输入端相连;
所述随机数jr与D触发器D1的数据输入端相连;
所述随机数ir与D触发器D2的数据输入端相连;
D触发器D0、D1、D2的输出端分别与SecPrepare单元的相应输入端相连。
优选地,所述SecPrepare单元包括:按位异或器X3、X4、X5,线性变换单元σ0、σ1、σ2,AddRoundKey变换单元ARK,以及gcnt参与变换单元GADD,其中:
当前有效的密码算法子密钥kr和随机数xr被分别提供至按位异或器X3的输入端;
SecMasking单元包括的D触发器D0、D1及D2输出的三份数据pr 0、pr 1及pr 2被相应提供至线性变换单元σ0、σ1及σ2的输入端;
按位异或器X3的输出端以及线性变换单元σ0的输出端分别与AddRoundKey变换单元ARK的两输入端相连;
线性变换单元σ1以及σ2的输出端分别与按位异或器X4的两输入端相连;
AddRoundKey变换单元ARK的输出端以及按位异或器X4的输出端分别与按位异或器X5的两输入端相连;
按位异或器X5的输出端与gcnt参与变换单元GADD的一输入端相连,所述随机数xr以及实时更新变量gcnt被分别提供至gcnt参与变换单元GADD的另外两输入端;
gcnt参与变换单元GADD的输出端与SecSbox单元的输入端相连。
优选地,所述gcnt参与变换单元GADD基于被输入的信息做以下处理:
对按位异或器X5的输出信息以及所述随机数xr进行按位异或操作;
对所述按位异或操作结果以及实时更新变量gcnt进行布尔相加操作,输出预处理数据br
优选地,SecSbox单元包括N个非线性变换SecS基本单元,在所述SecSbox单元中:
SecPrepare单元输出的预处理数据br被划分成多份之后分别输入对应N个可相异的SecS基本单元;
随机数yr以及zr均被分别提供至每个SecS基本单元的另两个输入端;
分别对每个SecS基本单元的相同类型的输出端进行拼凑处理,以形成三个输出端数据mr 0、mr 1以及mr 2,其中,所述三个输出端数据mr 0、mr 1以及mr 2按位异或操作的结果等于基于源数据pr、密码算法子密钥kr以及密码算法普通S盒查表操作进行相关运算操作的结果。
优选地,所述SecS基本单元包括:多路选择器M0、M1以及M2,与之对应的三组D触发器组Dm00~Dm0k、Dm10~Dm1k、Dm20~Dm2k以及三组按位异或器组Xm00~Xm0k、Xm10~Xm1k、Xm20~Xm2k,其中:
SecPrepare单元输出的预处理数据br被划分成多份之后提供至当前SecS基本单元的数据bir被提供至所述多路选择器M0、M1以及M2的控制选择端;
所述多路选择器M0、M1以及M2的多个数据备选端分别与相对应的D触发器组中的多个D触发器的输出端相连;
所述多路选择器M0、M1以及M2对应的D触发器组中的多个D触发器的输入端与对应的按位异或器组中的多个按位异或器的输出端对应相连;
随机数yr被分别提供至所述按位异或器组Xm00~Xm0k中的多个按位异或器的一输入端,随机数zr被分别提供至所述按位异或器组Xm10~Xm1k中的多个按位异或器的一输入端,随机数yr与zr的按位异或操作结果被分别提供至所述按位异或器组Xm20~Xm2k中的多个按位异或器的一输入端;
所述D触发器组中的多个D触发器的输出端与相对应的所述按位异或器组中的多个按位异或器的另一输入端呈环状链式连接;
所述多路选择器M0、M1以及M2的输出端分别输出待拼凑数据mir 0、mir 1以及mir 2,其中i=1~N。
一种集成电路芯片,其包括如上述实施例所述的可抵御差分功耗分析攻击的加密处理装置,所述加密处理装置包括:
掩盖处理电路单元SecMasking,用于将期待进行S盒查表操作的源数据pr基于随机掩码技术拆分为多份随机数据;
预处理电路单元SecPrepare,用于依据随机数xr对所述多份随机数据以及当前有效的密码算法子密钥kr进行轮密钥加AddRoundKey变换,并在实时更新变量gcnt的参与下对所述变换处理结果执行至少以消除所述随机数xr参与影响的S盒变换预处理并输出预处理数据br
S盒电路单元SecSbox,用于依据随机数yr以及随机数zr、并基于随机掩码技术对所述预处理数据br进行纵向及横向S盒查找处理以及实时更新处理。
一种密码设备,其包括如上述实施例所述的集成电路芯片,所述集成电路芯片包括如上述实施例所述的可抵御差分功耗分析攻击的加密处理装置,具体地,所述加密处理装置包括:
掩盖处理电路单元SecMasking,用于将期待进行S盒查表操作的源数据pr基于随机掩码技术拆分为多份随机数据;
预处理电路单元SecPrepare,用于依据随机数xr对所述多份随机数据以及当前有效的密码算法子密钥kr进行轮密钥加AddRoundKey变换,并在实时更新变量gcnt的参与下对所述变换处理结果执行至少以消除所述随机数xr参与影响的S盒变换预处理并输出预处理数据br
S盒电路单元SecSbox,用于依据随机数yr以及随机数zr、并基于随机掩码技术对所述预处理数据br进行纵向及横向S盒查找处理以及实时更新处理。
一种可抵御差分功耗分析攻击的加密处理方法,包括:
将期待进行S盒查表操作的源数据pr基于随机掩码技术拆分为多份随机数据;
依据随机数xr对所述多份随机数据以及当前有效的密码算法子密钥kr进行轮密钥加AddRoundKey变换,并在实时更新变量gcnt的参与下对所述变换处理结果执行至少以消除所述随机数xr参与影响的S盒变换预处理并输出预处理数据br
依据随机数yr以及随机数zr、并基于随机掩码技术对所述预处理数据br进行纵向及横向S盒查找处理以及实时更新处理。
优选地,所述多份随机数据相互异或的结果等于所述源数据pr
优选地,在依据随机数yr以及随机数zr、并基于随机掩码技术对所述预处理数据br进行纵向及横向S盒查找处理以及实时更新处理之后,得到多份目标数据;
对所述多份目标数据进行相互异或操作处理可得到期待查找结果mr
或者,可将所述多份目标数据作为下一次S盒查表操作的源数据。
在本发明实施例中,其SecMasking单元采用以通用随机掩码(random masking)技术为基础的结构实现,SecPrepare电路单元采用以按位异或器为基础的结构实现,SecSbox单元电路采用以查表结果基于随机掩码技术而进行纵向及横向同时实时更新的方案而实现。其针对以S盒查表操作为表征的非线性运算采用“查表结果基于随机掩码技术进行纵向及横向同时实时更新”的方案代替了“用很多份冗余的伪查表操作来掩盖唯一真查表操作”的方案,以很少的面积资源代价获得了电路结构较高的安全性能。
另外,本发明针对以S盒查表操作为表征的非线性运算采用“查表结果基于随机掩码技术进行纵向及横向同时实时更新”的方案代替了“采用加性和乘性随机掩码因子及不同极性数域之间的转换操作”的方案,在资源受限环境下为了可抵御差分功耗分析攻击的加密处理装置及方法的实现提供了一种可以获得足够安全性能的可能。
采用本发明,能够实现密码运算设备电路的工作功耗与运算数据及运算操作的无关化。并且其可以被广泛应用于需要高度安全性能的加解密运算密码设备。
附图说明
图1为非线性层由多组非线性S盒查找变换组成的对称分组密码算法的轮变换典型架构示意图;
图2为本发明实施例提供的针对含有S盒查表操作的密码算法可抵御(二阶)差分功耗分析攻击的加密处理装置的电路实现结构示意图;
图3为本发明实施例提供的SecMasking单元实现结构示意图;
图4为本发明实施例提供的SecPrepare单元实现结构示意图;
图5为本发明实施例提供的SecSbox单元的实现结构示意图;
图6为本发明实施例提供的SecS基本单元的实现结构示意图。
本发明目的的实现、功能特点及优异效果,下面将结合具体实施例以及附图做进一步的说明。
具体实施方式
下面结合附图和具体实施例对本发明所述技术方案作进一步的详细描述,以使本领域的技术人员可以更好的理解本发明并能予以实施,但所举实施例不作为对本发明的限定。
本发明实施例的描述中所使用的任何部件、单元、操作或变换都不应当被解释为对本发明而言是关键性或必须的,除非明确地这样描述。
参考图2,其示出了本发明实施例提供的一种可抵御差分功耗分析攻击的加密处理装置架构示意图,所述加密处理装置包括:
掩盖处理电路单元SecMasking(下称SecMasking单元),用于将期待进行S盒查表操作的源数据pr基于随机掩码技术拆分为多份随机数据;
预处理电路单元SecPrepare(下称SecPrepare单元),用于依据随机数xr对所述多份随机数据以及当前有效的密码算法子密钥kr进行轮密钥加AddRoundKey变换,并在实时更新变量gcnt的参与下对所述变换处理结果执行至少以消除所述随机数xr参与影响的S盒变换预处理并输出预处理数据br
S盒电路单元SecSbox(下称SecSbox单元),用于依据随机数yr以及随机数zr、并基于随机掩码技术对所述预处理数据br进行纵向及横向S盒查找处理以及实时更新处理。
在本发明实施例中,所述SecMasking单元采用以通用随机掩码技术为基础的结构实现,另外,所述多份随机数据相互异或的结果等于所述源数据pr;SecPrepare单元采用以按位异或器为基础的结构实现;SecSbox单元采用以查表结果基于随机掩码技术而进行纵向及横向同时实时更新的方案而实现。本实施例中,使用S盒查表操作来表征密码算法中的非线性运算操作。
本实施例中,参考图3所示,所述SecMasking单元包括D触发器D0、D1、D2以及按位异或器X1、X2,所述SecMasking单元将期待进行S盒查表操作的源数据pr基于随机掩码技术拆分为三份,可抵御二阶差分功耗分析攻击。在所述SecMasking单元中:
(1)源数据pr和随机数ir被分别提供至按位异或器X1的两输入端;
(2)按位异或器X1的输出端与按位异或器X2的一输入端相连,随机数jr被提供至按位异或器X2的另一输入端;
(3)按位异或器X2的输出端与D触发器D0的数据输入端相连;
(4)所述随机数jr与D触发器D1的数据输入端相连;
(5)所述随机数ir与D触发器D2的数据输入端相连;
(6)D触发器D0、D1、D2的输出端分别与SecPrepare单元的相应输入端相连。
SecMasking单元的作用是基于密码设备的每次S盒查表操作运算都不同的随机数(如图3中的ir和jr),而将该次S盒查表操作既定的源数据pr拆分为多份随机数据(如图3中的pr 0,pr 1,pr 2),并且满足所述多份随机数据(pr 0,pr 1,pr 2)的相异或结果仍为pr
如此变换操作的有益效果在于:在全局层面上使单次S盒查表操作的源数据不被直接进行查表操作,而以源数据在数理上为随机数的多次S盒查表操作替换之,从而增加了对所述真实源数据进行功耗分析的实现难度,即理论上的分析攻击成本由一个单位增为至少多个单位,例如本实施例中即对应是三个单位。
本实施例中,参考图4所示,所述SecPrepare单元包括:按位异或器X3、X4、X5,线性变换单元σ0、σ1、σ2,AddRoundKey变换单元ARK,以及gcnt参与变换单元GADD,其中:
(1)当前有效的密码算法子密钥kr和随机数xr被分别提供至按位异或器X3的输入端;
(2)SecMasking单元包括的D触发器D0、D1及D2输出的三份数据pr 0、pr 1及pr 2被相应提供至线性变换单元σ0、σ1及σ2的输入端;
(3)按位异或器X3的输出端以及线性变换单元σ0的输出端分别与AddRoundKey变换单元ARK的两输入端相连;
(4)线性变换单元σ1以及σ2的输出端分别与按位异或器X4的两输入端相连;
(5)AddRoundKey变换单元ARK的输出端以及按位异或器X4的输出端分别与按位异或器X5的两输入端相连;
(6)按位异或器X5的输出端与gcnt参与变换单元GADD的一输入端相连,所述随机数xr以及实时更新变量gcnt被分别提供至gcnt参与变换单元GADD的另外两输入端;
(7)gcnt参与变换单元GADD的输出端与SecSbox单元的输入端相连。
所述的线性变换单元σ0、σ1以及σ2,其在本实施例中被用于密码算法中在S盒查表操作之前可能存在定义的一种线性变换操作。
所述的AddRoundKey变换单元ARK在本实施例中被用于密码算法中在S盒查表操作之前可能存在定义的、将欲查表数据和密码运算当前有效的密码算法子密钥kr进行结合的一种变换操作。
所述的gcnt参与变换单元GADD在本实施例中被用于抵消前述随机数xr的参与、同时又加入实时更新变量gcnt的参与以实现所述“SecSbox单元电路的查表结果基于随机掩码技术进行纵向实时更新”的方案。
例如,一种实施方式中,所述gcnt参与变换单元GADD基于被输入的信息做以下处理:
(1)对按位异或器X5的输出信息以及所述随机数xr进行按位异或操作;
(2)对所述按位异或操作结果以及实时更新变量gcnt进行布尔相加操作,输出预处理数据br
不难得知,本领域的技术人员可以对所要求保护发明的上述gcnt参与变换单元GADD单元的实现结构进行变化和修改,而不实质上违背本发明的精神和原理。所有的这些修改和变化均应被包括在本发明的范围内。
SecPrepare单元的作用是:在有新随机数xr的参与下,将前述SecMasking单元输出的多份中间随机数据(例如如图4中的pr 0,pr 1,pr 2)和密码算法当前有效的密码算法子密钥kr进行如密码算法规范所定义的、同时因有随机数xr参与而安全性又提升了的AddRoundKey变换操作。
另外,为了后续SecSbox变换单元的安全化实现又加入了有实时更新变量gcnt参与的有关变换操作。如此设计SecPrepare电路单元的有益效果在于:除了可提升后续SecSbox变换操作的安全性外,还可避免改动一般所谓密码算法轮密钥扩展操作的实现结构,从而节省密码设备的面积资源成本。
本发明实施例中,优选地,在依据随机数yr以及随机数zr、并基于随机掩码技术对所述预处理数据br进行纵向及横向S盒查找处理以及实时更新处理之后,得到多份目标数据;在具体实施时,在密码运算最终步骤中,对所述多份目标数据进行相互异或操作处理可得到期待查找结果mr;或者,在密码运算中间步骤中,可将所述多份目标数据作为下一次S盒查表操作的源数据。
参考图5所示,所述SecSbox单元包括N个非线性变换SecS基本单元,具体地,在所述SecSbox单元中:
(1)SecPrepare单元输出的预处理数据br被划分成多份(即图5中的b1r,b..r,bNr代表的N份,其满足br={b1r|b..r|bNr})之后分别输入对应N个可相异的SecS基本单元;br被划分后的每份数据分别与其对应的SecS基本单元(即如图5中所示的bir和SecSi,其中,i=1,…,N)的输入端之一相连;
(2)随机数yr以及zr均被分别提供至每个SecS基本单元的另两个输入端;
(3)分别对每个SecS基本单元的相同类型的输出端进行拼凑处理,以形成三个输出端数据mr 0、mr 1以及mr 2,其中,所述三个输出端数据mr 0、mr 1以及mr 2按位异或操作的结果等于基于源数据pr、密码算法子密钥kr以及密码算法普通S盒查表操作进行相关运算操作的结果。
例如,一种具体实施方式中,所述SecSbox单元的输出数据可以被划分为三份,通过数据划分可抵御二阶差分功耗分析攻击。不难得知,本领域的技术人员可以对所述SecSbox单元的输出数据的份数进行变化和修改,而不实质上违背本发明的精神和原理。所有这些修改和变化是要被包括在本申请公开的范围之内。
所述SecSbox电路单元的主要作用是为其中各个SecS基本单元划分输入对象,并且引入随机数yr、zr,以期在SecS变换操作中能通过随机掩码技术去实现相关的功耗掩盖。
本发明实施例中,参考图6所示,所述SecS基本单元包括:多路选择器M0、M1以及M2,与之对应的三组D触发器组Dm00~Dm0k、Dm10~Dm1k、Dm20~Dm2k以及三组按位异或器组Xm00~Xm0k、Xm10~Xm1k、Xm20~Xm2k,所述SecS基本单元由三组相似的基本单元组成,可抵御二阶差分功耗分析攻击。具体地,其中:
(1)SecPrepare单元输出的预处理数据br被划分成多份之后提供至当前SecS基本单元的数据bir被提供至所述多路选择器M0、M1以及M2的控制选择端;
(2)所述多路选择器M0、M1以及M2的多个数据备选端分别与相对应的D触发器组中的多个D触发器的输出端相连;
(3)所述多路选择器M0、M1以及M2对应的D触发器组中的多个D触发器的输入端与对应的按位异或器组中的多个按位异或器的输出端对应相连;
(4)随机数yr被分别提供至所述按位异或器组Xm00~Xm0k中的多个按位异或器的一输入端,随机数zr被分别提供至所述按位异或器组Xm10~Xm1k中的多个按位异或器的一输入端,随机数yr与zr的按位异或操作结果被分别提供至所述按位异或器组Xm20~Xm2k中的多个按位异或器的一输入端;
(5)所述D触发器组中的多个D触发器的输出端与相对应的所述按位异或器组中的多个按位异或器的另一输入端呈环状链式连接,例如,所述每个按位异或器组中的多个按位异或器的另输入端与本组中对应的D触发器组中的相邻D触发器的输出端对应相连,以此形成所述链式环;
(6)所述多路选择器M0、M1以及M2的输出端分别输出待拼凑数据mir 0、mir 1以及mir 2,其中i=1~N。
所述SecS基本单元的主要作用是实现对输入数据的安全化查表操作,其安全特征之一在于将对单一对象的查表操作等效转化为多份查表操作,即所述基于随机掩码技术进行横向实时更新;其安全特征之二在于将查表结果在相关查表寄存器之间进行实时移存,即所述基于随机掩码技术进行纵向实时更新。
在本发明实施例中,上述两大安全特征的最明显优势就是:将针对输入数据的直接且固化的查表操作转化为间接且可动态更新的多份查表操作,极大地上掩盖了原始查表操作的泄漏功耗信息。在使用本发明描述的上述抵御手段后,攻击者为实施差分功耗分析攻击,原先只需采集单份功耗信息的成本,骤然变为需要采集同一时刻泄漏的多份功耗信息,这样不单单使得分析攻击所需功耗信息的样本采集量和采集难度大幅上升,更重要地是使差分功耗分析的计算复杂度具有了指数级别的上升。
由此,采用本发明,可以在不大幅增加面积资源成本的大前提下,多处通过通用随机掩码技术实现了对密码运算中最关键的以S盒查表操作为表征的非线性变换泄漏功耗的掩盖。
相应地,本发明实施例还提供了一种集成电路芯片,其包括如上述实施例所述的可抵御差分功耗分析攻击的加密处理装置,所述加密处理装置包括:
掩盖处理电路单元SecMasking,用于将期待进行S盒查表操作的源数据pr基于随机掩码技术拆分为多份随机数据;
预处理电路单元SecPrepare,用于依据随机数xr对所述多份随机数据以及当前有效的密码算法子密钥kr进行轮密钥加AddRoundKey变换,并在实时更新变量gcnt的参与下对所述变换处理结果执行至少以消除所述随机数xr参与影响的S盒变换预处理并输出预处理数据br
S盒电路单元SecSbox,用于依据随机数yr以及随机数zr、并基于随机掩码技术对所述预处理数据br进行纵向及横向S盒查找处理以及实时更新处理。
对于所述加密处理装置的具体描述可参考上述实施例,此处不再赘述。
本发明实施例还相应地提供了一种密码设备,其包括如上述实施例所述的集成电路芯片,例如所述密码设备可以为智能卡、RFID、密码协处理器、SoC密码芯片、密码机等,所述集成电路芯片包括如上述实施例所述的可抵御差分功耗分析攻击的加密处理装置,同样地,所述加密处理装置包括:
掩盖处理电路单元SecMasking,用于将期待进行S盒查表操作的源数据pr基于随机掩码技术拆分为多份随机数据;
预处理电路单元SecPrepare,用于依据随机数xr对所述多份随机数据以及当前有效的密码算法子密钥kr进行轮密钥加AddRoundKey变换,并在实时更新变量gcnt的参与下对所述变换处理结果执行至少以消除所述随机数xr参与影响的S盒变换预处理并输出预处理数据br
S盒电路单元SecSbox,用于依据随机数yr以及随机数zr、并基于随机掩码技术对所述预处理数据br进行纵向及横向S盒查找处理以及实时更新处理。
同样地,对于所述加密处理装置的详细叙述请读者参看上文,此处不予赘述之。
与上述实施例相对应地,本发明实施例还相应地提供了一种可抵御差分功耗分析攻击的加密处理方法,包括:
S100、将期待进行S盒查表操作的源数据pr基于随机掩码技术拆分为多份随机数据;
S200、依据随机数xr对所述多份随机数据以及当前有效的密码算法子密钥kr进行轮密钥加AddRoundKey变换,并在实时更新变量gcnt的参与下对所述变换处理结果执行至少以消除所述随机数xr参与影响的S盒变换预处理并输出预处理数据br
S300、依据随机数yr以及随机数zr、并基于随机掩码技术对所述预处理数据br进行纵向及横向S盒查找处理以及实时更新处理。
一种具体实施例中,所述步骤S100的实施主体为SecMasking单元,继续参考图2以及图3所示,所述SecMasking单元采用以通用随机掩码技术为基础的结构实现,另外,所述多份随机数据相互异或的结果等于所述源数据pr
一种具体实施方式中,参考图3,所述SecMasking单元包括D触发器D0、D1、D2以及按位异或器X1、X2,所述SecMasking单元将期待进行S盒查表操作的源数据pr基于随机掩码技术拆分为三份,可抵御二阶差分功耗分析攻击。在所述SecMasking单元中:
(1)源数据pr和随机数ir被分别提供至按位异或器X1的两输入端;
(2)按位异或器X1的输出端与按位异或器X2的一输入端相连,随机数jr被提供至按位异或器X2的另一输入端;
(3)按位异或器X2的输出端与D触发器D0的数据输入端相连;
(4)所述随机数jr与D触发器D1的数据输入端相连;
(5)所述随机数ir与D触发器D2的数据输入端相连;
(6)D触发器D0、D1、D2的输出端分别与SecPrepare单元的相应输入端相连。
SecMasking单元的作用是基于密码设备的每次S盒查表操作运算都不同的随机数(如图3中的ir和jr),而将该次S盒查表操作既定的源数据pr拆分为多份随机数据(如图3中的pr 0,pr 1,pr 2),并且满足所述多份随机数据(pr 0,pr 1,pr 2)的相异或结果仍为pr
如此变换操作的有益效果在于:在全局层面上使单次S盒查表操作的源数据不被直接进行查表操作,而以源数据在数理上为随机数的多次S盒查表操作替换之,从而避免对所述真实源数据进行功耗分析的实现难度,即理论上的分析攻击成本由一个单位增为至少多个单位,例如本实施例中即对应是三个单位。
在所述步骤S200中,所述步骤的实施主体为SecPrepare单元,SecPrepare单元采用以按位异或器为基础的结构实现。继续参考图4所示,一种优选实施方式中,所述SecPrepare单元包括:按位异或器X3、X4、X5,线性变换单元σ0、σ1、σ2,AddRoundKey变换单元ARK,以及gcnt参与变换单元GADD,其中:
(1)当前有效的密码算法子密钥kr和随机数xr被分别提供至按位异或器X3的输入端;
(2)D触发器D0、D1及D2输出的三份数据pr 0、pr 1及pr 2被相应提供至线性变换单元σ0、σ1及σ2的输入端;
(3)按位异或器X3的输出端以及线性变换单元σ0的输出端分别与AddRoundKey变换单元ARK的两输入端相连;
(4)线性变换单元σ1以及σ2的输出端分别与按位异或器X4的两输入端相连;
(5)AddRoundKey变换单元ARK的输出端以及按位异或器X4的输出端分别与按位异或器X5的两输入端相连;
(6)按位异或器X5的输出端与gcnt参与变换单元GADD的一输入端相连,所述随机数xr以及实时更新变量gcnt被分别提供至gcnt参与变换单元GADD的另外两输入端;
(7)gcnt参与变换单元GADD的输出端与SecSbox单元的输入端相连。
所述的线性变换单元σ0、σ1以及σ2,其在本实施例中被用于密码算法中在S盒查表操作之前可能存在定义的一种线性变换操作。
所述的AddRoundKey变换单元ARK在本实施例中被用于密码算法中在S盒查表操作之前可能存在定义的、将欲查表数据和密码运算当前有效的密码算法子密钥kr进行结合的一种变换操作。
所述的gcnt参与变换单元GADD在本实施例中被用于抵消前述随机数xr的参与、同时又加入实时更新变量gcnt的参与以实现所述“SecSbox单元电路的查表结果基于随机掩码技术进行纵向实时更新”的方案。
例如,一种实施方式中,所述gcnt参与变换单元GADD基于被输入的信息做以下处理:
(1)对按位异或器X5的输出信息以及所述随机数xr进行按位异或操作;
(2)对所述按位异或操作结果以及实时更新变量gcnt进行布尔相加操作,输出预处理数据br
不难得知,本领域的技术人员可以对所要求保护发明的上述gcnt参与变换单元GADD单元的实现结构进行变化和修改,而不实质上违背本发明的精神和原理。所有的这些修改和变化均应被包括在本发明的范围内。
SecPrepare单元的作用是:在有新随机数xr的参与下,将前述SecMasking单元输出的多份中间随机数据(例如如图4中的pr 0,pr 1,pr 2)和密码算法当前有效的密码算法子密钥kr进行如密码算法规范所定义的、同时因有随机数xr参与而安全性又提升了的AddRoundKey变换操作。
另外,为了后续SecSbox变换单元的安全化实现又加入了有实时更新变量gcnt参与的有关变换操作。如此设计SecPrepare电路单元的有益效果在于:除了可提升后续SecSbox变换操作的安全性外,还可避免改动一般所谓密码算法轮密钥扩展操作的实现结构,从而节省密码设备的面积资源成本。
对于所述步骤S300,其实施主体为SecSbox单元,在本实施例中,所述SecSbox单元采用以查表结果基于随机掩码技术而进行纵向及横向同时实时更新的方案而实现。优选地,在依据随机数yr以及随机数zr、并基于随机掩码技术对所述预处理数据br进行纵向及横向S盒查找处理以及实时更新处理之后,得到多份目标数据;在具体实施时,在密码运算最终步骤中,对所述多份目标数据进行相互异或操作处理可得到期待查找结果mr;或者,在密码运算中间步骤中,可将所述多份目标数据作为下一次S盒查表操作的源数据。
继续参考图5所示,在优选的一种具体实施方式中,所述SecSbox单元包括N个非线性变换SecS基本单元,具体地,在所述SecSbox单元中:
(1)SecPrepare单元输出的预处理数据br被划分成多份(即图5中的b1r,b..r,bNr代表的N份,其满足br={b1r|b..r|bNr})之后分别输入对应N个可相异的SecS基本单元;br被划分后的每份数据分别与其对应的SecS基本单元(即如图5中所示的bir和SecSi,其中,i=1,…,N)的输入端之一相连;
(2)随机数y r以及zr均被分别提供至每个SecS基本单元的另两个输入端;
(3)分别对每个SecS基本单元的相同类型的输出端进行拼凑处理,以形成三个输出端数据mr 0、mr 1以及mr 2,其中,所述三个输出端数据mr 0、mr 1以及mr 2按位异或操作的结果等于基于源数据pr、密码算法子密钥kr以及密码算法普通S盒查表操作进行相关运算操作的结果。
例如,一种具体实施方式中,所述SecSbox单元的输出数据可以被划分为三份,通过数据划分可抵御二阶差分功耗分析攻击。不难得知,本领域的技术人员可以对所述SecSbox单元的输出数据的份数进行变化和修改,而不实质上违背本发明的精神和原理。所有这些修改和变化是要被包括在本申请公开的范围之内。
所述SecSbox电路单元的主要作用是为其中各个SecS基本单元划分输入对象,并且引入随机数yr、zr,以期在SecS变换操作中能通过随机掩码技术去实现相关的功耗掩盖。
本发明实施例中,参考图6所示,所述SecS基本单元包括:多路选择器M0、M1以及M2,与之对应的三组D触发器组Dm00~Dm0k、Dm10~Dm1k、Dm20~Dm2k以及三组按位异或器组Xm00~Xm0k、Xm10~Xm1k、Xm20~Xm2k,所述SecS基本单元由三组相似的基本单元组成,可抵御二阶差分功耗分析攻击。具体地,其中:
(1)SecPrepare单元输出的预处理数据br被划分成多份之后提供至当前SecS基本单元的数据bir被提供至所述多路选择器M0、M1以及M2的控制选择端;
(2)所述多路选择器M0、M1以及M2的多个数据备选端分别与相对应的D触发器组中的多个D触发器的输出端相连;
(3)所述多路选择器M0、M1以及M2对应的D触发器组中的多个D触发器的输入端与对应的按位异或器组中的多个按位异或器的输出端对应相连;
(4)随机数yr被分别提供至所述按位异或器组Xm00~Xm0k中的多个按位异或器的一输入端,随机数zr被分别提供至所述按位异或器组Xm10~Xm1k中的多个按位异或器的一输入端,随机数yr与zr的按位异或操作结果被分别提供至所述按位异或器组Xm20~Xm2k中的多个按位异或器的一输入端;
(5)所述D触发器组中的多个D触发器的输出端与相对应的所述按位异或器组中的多个按位异或器的另一输入端呈环状链式连接,例如,所述每个按位异或器组中的多个按位异或器的另输入端与本组中对应的D触发器组中的相邻D触发器的输出端对应相连,以此形成所述链式环;
(6)所述多路选择器M0、M1以及M2的输出端分别输出待拼凑数据mir 0、mir 1以及mir 2,其中i=1~N。
所述SecS基本单元的主要作用是实现对输入数据的安全化查表操作,其安全特征之一在于将对单一对象的查表操作等效转化为多份查表操作,即所述基于随机掩码技术进行横向实时更新;其安全特征之二在于将查表结果在相关查表寄存器之间进行实时移存,即所述基于随机掩码技术进行纵向实时更新。
在本发明实施例中,上述两大安全特征的最明显优势就是:将针对输入数据的直接且固化的查表操作转化为间接且可动态更新的多份查表操作,极大地上掩盖了原始查表操作的泄漏功耗信息。在使用本发明描述的上述抵御手段后,攻击者为实施差分功耗分析攻击,原先只需采集单份功耗信息的成本,骤然变为需要采集同一时刻泄漏的多份功耗信息,这样不单单使得分析攻击所需功耗信息的样本采集量和采集难度大幅上升,更重要地是使差分功耗分析的计算复杂度具有了指数级别的上升。
由此采用本发明,可以在不大幅增加面积资源成本的大前提下,多处通过通用随机掩码技术实现了对密码运算中最关键的以S盒查表操作为表征的非线性变换泄漏功耗的掩盖。
以上所述仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

Claims (10)

1.一种可抵御差分功耗分析攻击的加密处理装置,其特征在于,包括:
掩盖处理电路单元SecMasking,用于将期待进行S盒查表操作的源数据pr基于随机掩码技术拆分为多份随机数据;
预处理电路单元SecPrepare,用于依据随机数xr对所述多份随机数据以及当前有效的密码算法子密钥kr进行轮密钥加AddRoundKey变换,并在实时更新变量gcnt的参与下对所述变换处理结果执行至少以消除所述随机数xr参与影响的S盒变换预处理并输出预处理数据br
S盒电路单元SecSbox,用于依据随机数yr以及随机数zr、并基于随机掩码技术对所述预处理数据br进行纵向及横向S盒查找处理以及实时更新处理。
2.如权利要求1所述的可抵御差分功耗分析攻击的加密处理装置,其特征在于,SecMasking单元包括D触发器D0、D1、D2以及按位异或器X1、X2,其中:
源数据pr和随机数ir被分别提供至按位异或器X1的两输入端;
按位异或器X1的输出端与按位异或器X2的一输入端相连,随机数jr被提供至按位异或器X2的另一输入端;
按位异或器X2的输出端与D触发器D0的数据输入端相连;
所述随机数jr与D触发器D1的数据输入端相连;
所述随机数ir与D触发器D2的数据输入端相连;
D触发器D0、D1、D2的输出端分别与SecPrepare单元的相应输入端相连。
3.如权利要求1所述的可抵御差分功耗分析攻击的加密处理装置,其特征在于,所述SecPrepare单元包括:按位异或器X3、X4、X5,线性变换单元σ0、σ1、σ2,AddRoundKey变换单元ARK,以及gcnt参与变换单元GADD,其中:
当前有效的密码算法子密钥kr和随机数xr被分别提供至按位异或器X3的输入端;
SecMasking单元包括的D触发器D0、D1及D2输出的三份数据pr 0、pr 1及pr 2被相应提供至线性变换单元σ0、σ1及σ2的输入端;
按位异或器X3的输出端以及线性变换单元σ0的输出端分别与AddRoundKey变换单元ARK的两输入端相连;
线性变换单元σ1以及σ2的输出端分别与按位异或器X4的两输入端相连;
AddRoundKey变换单元ARK的输出端以及按位异或器X4的输出端分别与按位异或器X5的两输入端相连;
按位异或器X5的输出端与gcnt参与变换单元GADD的一输入端相连,所述随机数xr以及实时更新变量gcnt被分别提供至gcnt参与变换单元GADD的另外两输入端;
gcnt参与变换单元GADD的输出端与SecSbox单元的输入端相连。
4.如权利要求3所述的可抵御差分功耗分析攻击的加密处理装置,其特征在于,所述gcnt参与变换单元GADD基于被输入的信息做以下处理:
对按位异或器X5的输出信息以及所述随机数xr进行按位异或操作;
对所述按位异或操作结果以及实时更新变量gcnt进行布尔相加操作,输出预处理数据br
5.如权利要求1所述的可抵御差分功耗分析攻击的加密处理装置,其特征在于,SecSbox单元包括N个非线性变换SecS基本单元,在所述SecSbox单元中:
SecPrepare单元输出的预处理数据br被划分成多份之后分别输入对应N个可相异的SecS基本单元;
随机数yr以及zr均被分别提供至每个SecS基本单元的另两个输入端;
分别对每个SecS基本单元的相同类型的输出端进行拼凑处理,以形成三个输出端数据mr 0、mr 1以及mr 2,其中,所述三个输出端数据mr 0、mr 1以及mr 2按位异或操作的结果等于基于源数据pr、密码算法子密钥kr以及密码算法普通S盒查表操作进行相关运算操作的结果。
6.如权利要求5所述的可抵御差分功耗分析攻击的加密处理装置,其特征在于,所述SecS基本单元包括:多路选择器M0、M1以及M2,与之对应的三组D触发器组Dm00~Dm0k、Dm10~Dm1k、Dm20~Dm2k以及三组按位异或器组Xm00~Xm0k、Xm10~Xm1k、Xm20~Xm2k,其中:
SecPrepare单元输出的预处理数据br被划分成多份之后提供至当前SecS基本单元的数据bir被提供至所述多路选择器M0、M1以及M2的控制选择端;
所述多路选择器M0、M1以及M2的多个数据备选端分别与相对应的D触发器组中的多个D触发器的输出端相连;
所述多路选择器M0、M1以及M2对应的D触发器组中的多个D触发器的输入端与对应的按位异或器组中的多个按位异或器的输出端对应相连;
随机数yr被分别提供至所述按位异或器组Xm00~Xm0k中的多个按位异或器的一输入端,随机数zr被分别提供至所述按位异或器组Xm10~Xm1k中的多个按位异或器的一输入端,随机数yr与zr的按位异或操作结果被分别提供至所述按位异或器组Xm20~Xm2k中的多个按位异或器的一输入端;
所述D触发器组中的多个D触发器的输出端与相对应的所述按位异或器组中的多个按位异或器的另一输入端呈环状链式连接;
所述多路选择器M0、M1以及M2的输出端分别输出待拼凑数据mir 0、mir 1以及mir 2,其中i=1~N。
7.一种集成电路芯片,其特征在于,包括如权利要求1-6任一项所述的可抵御差分功耗分析攻击的加密处理装置。
8.一种可抵御差分功耗分析攻击的加密处理方法,其特征在于,包括:
将期待进行S盒查表操作的源数据pr基于随机掩码技术拆分为多份随机数据;
依据随机数xr对所述多份随机数据以及当前有效的密码算法子密钥kr进行轮密钥加AddRoundKey变换,并在实时更新变量gcnt的参与下对所述变换处理结果执行至少以消除所述随机数xr参与影响的S盒变换预处理并输出预处理数据br
依据随机数yr以及随机数zr、并基于随机掩码技术对所述预处理数据br进行纵向及横向S盒查找处理以及实时更新处理。
9.如权利要求8所述的可抵御差分功耗分析攻击的加密处理方法,其特征在于,所述多份随机数据相互异或的结果等于所述源数据pr
10.如权利要求8所述的可抵御差分功耗分析攻击的加密处理方法,其特征在于,在依据随机数yr以及随机数zr、并基于随机掩码技术对所述预处理数据br进行纵向及横向S盒查找处理以及实时更新处理之后,得到多份目标数据;
对所述多份目标数据进行相互异或操作处理可得到期待查找结果mr
或者,可将所述多份目标数据作为下一次S盒查表操作的源数据。
CN201410153362.4A 2014-04-16 2014-04-16 可抵御差分功耗分析攻击的加密处理装置及方法 Active CN103905462B (zh)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CN201410153362.4A CN103905462B (zh) 2014-04-16 2014-04-16 可抵御差分功耗分析攻击的加密处理装置及方法
US14/758,105 US9628265B2 (en) 2014-04-16 2014-06-18 Encryption processing device and method capable of defending differential power analysis attack
EP14854899.3A EP2947841A4 (en) 2014-04-16 2014-06-18 ENCRYPTION PROCESSING DEVICE AND METHOD OF DEFENSE BEFORE ATTACKING THROUGH DIFFERENTIAL PERFORMANCE ANALYSIS
PCT/CN2014/080234 WO2015158038A1 (zh) 2014-04-16 2014-06-18 可抵御差分功耗分析攻击的加密处理装置及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410153362.4A CN103905462B (zh) 2014-04-16 2014-04-16 可抵御差分功耗分析攻击的加密处理装置及方法

Publications (2)

Publication Number Publication Date
CN103905462A CN103905462A (zh) 2014-07-02
CN103905462B true CN103905462B (zh) 2017-05-17

Family

ID=50996616

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410153362.4A Active CN103905462B (zh) 2014-04-16 2014-04-16 可抵御差分功耗分析攻击的加密处理装置及方法

Country Status (4)

Country Link
US (1) US9628265B2 (zh)
EP (1) EP2947841A4 (zh)
CN (1) CN103905462B (zh)
WO (1) WO2015158038A1 (zh)

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9871651B2 (en) * 2014-06-16 2018-01-16 Cisco Technology, Inc. Differential power analysis countermeasures
SG10201405852QA (en) * 2014-09-18 2016-04-28 Huawei Internat Pte Ltd Encryption function and decryption function generating method, encryption and decryption method and related apparatuses
WO2016094195A2 (en) * 2014-12-08 2016-06-16 Cryptography Research, Inc. Multiplicative masking for cryptographic operations
CN106161002A (zh) * 2015-04-01 2016-11-23 上海华虹集成电路有限责任公司 一种sm4密码电路抵抗侧信道分析的方法
CN106027221B (zh) * 2015-09-29 2019-04-19 深圳华视微电子有限公司 抵抗高阶差分功耗分析攻击的数据处理系统
US10171234B2 (en) * 2015-12-16 2019-01-01 Nxp B.V. Wide encoding of intermediate values within a white-box implementation
CN107466453B (zh) * 2017-03-16 2020-11-24 深圳大趋智能科技有限公司 Des软件防dpa攻击的方法及装置
KR101914028B1 (ko) * 2017-04-28 2018-11-01 삼성에스디에스 주식회사 부채널 공격에 안전한 연산 장치 및 방법
KR101989943B1 (ko) * 2017-04-28 2019-06-17 삼성에스디에스 주식회사 부채널 공격에 안전한 연산 장치 및 방법
KR101989950B1 (ko) 2017-04-28 2019-06-17 삼성에스디에스 주식회사 부채널 공격에 안전한 연산 장치 및 방법
US11669426B2 (en) 2017-06-30 2023-06-06 International Business Machines Corporation Kernel-based power consumption and isolation and defense against emerging power attacks
CN107703442A (zh) * 2017-07-17 2018-02-16 天津大学 基于抗差分扫描攻击的数据置乱安全扫描装置
CN109299938B (zh) * 2017-07-25 2023-05-02 紫光同芯微电子有限公司 一种基于随机掩码防护的内存加密装置及其方法
FR3078463A1 (fr) * 2018-02-26 2019-08-30 Stmicroelectronics (Rousset) Sas Procede et dispositif de realisation d'operations en table de substitution
US11218291B2 (en) * 2018-02-26 2022-01-04 Stmicroelectronics (Rousset) Sas Method and circuit for performing a substitution operation
FR3078464A1 (fr) * 2018-02-26 2019-08-30 Stmicroelectronics (Rousset) Sas Procede et circuit de mise en oeuvre d'une table de substitution
KR102507861B1 (ko) * 2018-04-19 2023-03-09 삼성에스디에스 주식회사 부채널 공격에 안전한 연산 장치 및 방법
US11507699B2 (en) * 2019-09-27 2022-11-22 Intel Corporation Processor with private pipeline
CN110943824B (zh) * 2019-11-14 2021-02-23 中国科学院半导体研究所 基于单总线协议的密钥电路

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101197660A (zh) * 2006-12-07 2008-06-11 上海安创信息科技有限公司 防攻击标准加密标准的加密方法及其加密芯片
CN101729241A (zh) * 2008-10-23 2010-06-09 国民技术股份有限公司 抵御差分能量攻击的aes加密方法
US8005209B2 (en) * 2005-01-06 2011-08-23 Polytechnic University Invariance based concurrent error detection for the advanced encryption standard
CN102752103A (zh) * 2012-07-26 2012-10-24 上海爱信诺航芯电子科技有限公司 一种抗des功耗攻击的增强型mask掩码方法
CN203933683U (zh) * 2014-04-16 2014-11-05 深圳国微技术有限公司 可抵御差分功耗分析攻击的加密处理装置、集成电路芯片及密码设备

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4596686B2 (ja) * 2001-06-13 2010-12-08 富士通株式会社 Dpaに対して安全な暗号化
US7848514B2 (en) * 2004-05-24 2010-12-07 Research In Motion Limited Table masking for resistance to power analysis attacks
JP5203594B2 (ja) * 2006-11-07 2013-06-05 株式会社東芝 暗号処理回路及び暗号処理方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8005209B2 (en) * 2005-01-06 2011-08-23 Polytechnic University Invariance based concurrent error detection for the advanced encryption standard
CN101197660A (zh) * 2006-12-07 2008-06-11 上海安创信息科技有限公司 防攻击标准加密标准的加密方法及其加密芯片
CN101729241A (zh) * 2008-10-23 2010-06-09 国民技术股份有限公司 抵御差分能量攻击的aes加密方法
CN102752103A (zh) * 2012-07-26 2012-10-24 上海爱信诺航芯电子科技有限公司 一种抗des功耗攻击的增强型mask掩码方法
CN203933683U (zh) * 2014-04-16 2014-11-05 深圳国微技术有限公司 可抵御差分功耗分析攻击的加密处理装置、集成电路芯片及密码设备

Also Published As

Publication number Publication date
US20160277180A1 (en) 2016-09-22
CN103905462A (zh) 2014-07-02
WO2015158038A1 (zh) 2015-10-22
EP2947841A1 (en) 2015-11-25
EP2947841A4 (en) 2016-03-02
US9628265B2 (en) 2017-04-18

Similar Documents

Publication Publication Date Title
CN103905462B (zh) 可抵御差分功耗分析攻击的加密处理装置及方法
Sun et al. MILP‐aided bit‐based division property for primitives with non‐bit‐permutation linear layers
Li et al. A hyper-chaos-based image encryption algorithm using pixel-level permutation and bit-level permutation
Chen et al. Cryptanalysis and improvement of medical image encryption using high-speed scrambling and pixel adaptive diffusion
Ye et al. An efficient symmetric image encryption algorithm based on an intertwining logistic map
Chai An image encryption algorithm based on bit level Brownian motion and new chaotic systems
CN106788974A (zh) 掩码s盒、分组密钥计算单元、装置及对应的构造方法
Wang et al. A novel image encryption algorithm using chaos and reversible cellular automata
Wang et al. A novel image encryption scheme based on 2-D logistic map and DNA sequence operations
Wang et al. Cryptanalysis of an image encryption algorithm using Chebyshev generator
Guo et al. Shadow: A lightweight block cipher for IoT nodes
CN105656619B (zh) 一种aes加密方法和基于其的抗功耗攻击方法
CN102546157B (zh) 一种抵抗能量分析的随机混合加密系统及其实现方法
Belazi et al. Algebraic analysis of a RGB image encryption algorithm based on DNA encoding and chaotic map
CN1989726A (zh) 用于执行加密计算的方法和装置
Kumar et al. An efficient image encryption scheme using elementary cellular automata with novel permutation box
CN107769910A (zh) 一种基于Latch PUF的抗边信道攻击DES防护方法及电路
Xiao et al. Using the self-synchronizing method to improve security of the multi chaotic systems-based image encryption
CN104301095A (zh) Des轮运算方法和电路
Liu et al. Chaos-based color image encryption using one-time keys and Choquet fuzzy integral
Liu et al. A highly secure image encryption algorithm based on conservative hyperchaotic system and dynamic biogenetic gene algorithms
CN104301096A (zh) Aes轮运算方法和电路
Zhang et al. An efficient differential fault attack against SIMON key schedule
CN108650072A (zh) 一种支持多种对称密码算法芯片及其抗攻击电路实现方法
CN109936437B (zh) 一种基于d+1阶掩码的抗功耗攻击方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CP03 Change of name, title or address

Address after: 22A, Guoshi building, 1801 Shahe West Road, high tech Zone, Yuehai street, Nanshan District, Shenzhen City, Guangdong Province

Patentee after: Guowei group (Shenzhen) Co., Ltd.

Address before: 518000 Guangdong city of Shenzhen province Nanshan District high tech Industrial Park South high SSMEC building two floor

Patentee before: Guowei Teih Co., Ltd., Shenzhen

CP03 Change of name, title or address