CN101488846A - 密码保护方法和*** - Google Patents
密码保护方法和*** Download PDFInfo
- Publication number
- CN101488846A CN101488846A CNA2009101055570A CN200910105557A CN101488846A CN 101488846 A CN101488846 A CN 101488846A CN A2009101055570 A CNA2009101055570 A CN A2009101055570A CN 200910105557 A CN200910105557 A CN 200910105557A CN 101488846 A CN101488846 A CN 101488846A
- Authority
- CN
- China
- Prior art keywords
- power consumption
- feedback shift
- linear feedback
- key generation
- shift register
- 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.)
- Pending
Links
Images
Landscapes
- Storage Device Security (AREA)
Abstract
一种密码保护***,包括密钥产生模块,用于产生密钥。所述密码保护***还包括控制模块和功耗补偿模块,所述控制模块用于检测密钥产生模块的功耗、计算需要补偿的功耗并控制所述功耗补偿模块以需要补偿的功耗工作。上述密码保护***中,通过功耗补偿模块补偿功耗,使得总体功耗不会发生变化,也就无法依据功耗的差异进行攻击。此外,还提供了一种密码保护方法。
Description
【技术领域】
本发明涉及移动通信技术,尤其是涉及一种密码保护方法和***。
【背景技术】
移动通信设备的应用越来越广泛,安全问题也日益突出。在众多种攻击方法中,利用密码设备所泄漏的一些侧信道信息来攻破这些密码***是最有威胁的攻击。功率消耗对于密码设备是一种重要的侧信道信息,因为密码设备执行的计算最终都归结到了对逻辑状态0和1的操作,而当前技术的制约导致当处理逻辑0和逻辑1时会有不同的功率消耗,攻击者能够监测这种功耗的差异并获得有用的侧信道信息。主要有简单功耗分析(Simple Power Analysis,SPA)与差分功耗分析(Differential Power Analysis,DPA),它们的基本思想是功耗与密钥操作数有相关性。SPA从少量功耗曲线,直接观察分析出关键数据,需要熟悉设备的算法实现。DPA利用数理统计的方法将需要的某种功耗差异放大,分析出密钥,是比SPA更强的攻击手段。对抗DPA的技术主要有算法及其硬件实现中的加罩技术MASK、时钟扰乱技术、基于双轨互补CMOS的功耗平衡技术等。
因为流密码A5/1产生的随机加密密钥流是不重复且不可预测的,所以流密码A5/1是很难利用传统的基于处理逻辑0和1时会有不同的功率消耗来DPA攻击。对于A5/1的每次钟控,A5/1在并行执行3个线性反馈移位寄存器(LinearFeedback Shifting Register,LFSR)时的功耗大于并行执行2个LFSR时的功耗,于是有人提出针对A5/1中用于产生随机数的LFSR的攻击,这样便建立了功耗与密钥操作数的相关性,基于这一物理原理进行DPA攻击。
【发明内容】
有鉴于此,有必要针对流密码容易被依据功耗的差异攻击的问题,提供一种密码保护方法。
此外,还提供了一种密码保护***。
一种密码保护方法,包括如下步骤:检测密钥产生模块的功耗;计算需要补偿的功耗;控制功耗补偿模块以需要补偿的功耗工作。
在优选的实施例中,所述检测密钥产生模块的功耗的方式为检测密钥产生模块的钟控位并确定密钥产生模块的功耗。
在优选的实施例中,所述计算需要补偿的功耗的步骤包括:读取总的功耗;将总的功耗与密钥产生模块的功耗的差值作为需要补偿的功耗。
在优选的实施例中,所述控制功耗补偿模块以需要补偿的功耗工作的步骤包括:根据所述需要补偿的功耗确定需要工作的线性反馈移位寄存器的数量;控制相应数量的线性反馈移位寄存器工作。
一种密码保护***,包括密钥产生模块,用于产生密钥,所述密码保护***还包括控制模块和功耗补偿模块,所述控制模块用于检测密钥产生模块的功耗、计算需要补偿的功耗并控制所述功耗补偿模块以需要补偿的功耗工作。
在优选的实施例中,所述密钥产生模块包括两个以上线性反馈移位寄存器,所述控制模块检测工作的线性反馈移位寄存器的数量,将工作的线性反馈移位寄存器的数量作为密钥产生模块的功耗。
在优选的实施例中,所述功耗补偿模块包括至少一个线性反馈移位寄存器,所述控制模块根据预设的线性反馈移位寄存器工作总数及密钥产生模块中工作的线性反馈移位寄存器的数量确定所述功耗补偿模块中线性反馈移位寄存器工作的数量。
在优选的实施例中,所述功耗补偿模块中的线性反馈移位寄存器采用随机初始化。
在优选的实施例中,在工作过程中所述功耗补偿模块中的线性反馈移位寄存器同步于所述密钥产生模块中的线性反馈移位寄存器进行钟控操作。
在优选的实施例中,所述密码保护***采用A5/1流密码运算方法,所述密钥产生模块包括三个线性反馈移位寄存器,所述功耗补偿模块包括三个线性反馈移位寄存器,所述控制模块用于在所述密钥产生模块中的两个线性反馈移位寄存器工作时,控制所述功耗补偿模块中的三个线性反馈移位寄存器同步工作;在所述密钥产生模块中的三个线性反馈移位寄存器工作时,控制所述功耗补偿模块中的两个线性反馈移位寄存器同步工作。
上述密码保护方法和***中,通过功耗补偿模块补偿功耗,使得总体功耗不会发生变化,也就无法依据功耗的差异进行攻击。
【附图说明】
图1为密码保护***的模块图;
图2为适用于A5/1的算法中的密码保护***的示意图;
图3为密码保护方法的流程图。
【具体实施方式】
在以下密码保护方法和***中,通过设置功耗补偿模块,在密钥产生模块工作时,根据密钥产生模块功耗的变化,功耗补偿模块产生相应的补偿功率,使得整体的功耗保持不变,从而无法依据功耗的差异进行攻击。
如图1所示,密码保护***100包括密钥产生模块110、控制模块120和功耗补偿模块130。
密钥产生模块110用于产生密钥。例如,密钥产生模块110将接收的数据与密钥产生模块110中的初始数据进行异或运算获得密钥。密钥产生模块110在工作过程中,内部工作的元件数量时多时少,将导致密钥产生模块110的功耗发生变化。
控制模块120用于检测密钥产生模块110的功耗、计算需要补偿的功耗并控制功耗补偿模块130以需要补偿的功耗工作,从而使得密码保护***100的总体功耗不会发生变化,也就无法依据功耗的差异进行攻击。
以下以A5/1流密码运算方法为例进行更详细的说明。如图2所示,密钥产生模块110包括三个线性反馈移位寄存器(Linear Feedback Shifting Register,LFSR)111、112、113。功耗补偿模块130包括三个线性反馈移位寄存器131、132、133。线性反馈移位寄存器111、112、113的结构与线性反馈移位寄存器131、132、133的结构相同。功耗补偿模块130的线性反馈移位寄存器131、132、133没有输出比特流,没有钟控位(clocking bit),由控制模块120来驱动。当然也可以设置输出比特流和钟控位,但是输出比特流不用来加密通信数据。控制模块120同步控制密钥产生模块110的线性反馈移位寄存器和功耗补偿模块130的线性反馈移位寄存器。密钥产生模块110产生的密文数据帧是由固定密钥和已知数据帧(即再同步初始化值)通过A5/1加密所得。
密码保护***100的工作过程如下:
(1)初始化:密钥产生模块110的三个线性反馈移位寄存器111、112、113都设置为零,功耗补偿模块130的三个线性反馈移位寄存器131、132、133都设置为随机数值。也就是说,功耗补偿模块130中的线性反馈移位寄存器采用随机初始化。
(2)t=0...63(钟控):从t=0开始,密钥产生模块110的三个线性反馈移位寄存器111、112、113钟控64次,每次钟控,密钥的一个比特分别与密钥产生模块110的三个线性反馈移位寄存器111、112、113最低位异或。
(3)t=64...85(钟控):接着密钥产生模块110的三个线性反馈移位寄存器111、112、113钟控22次,每次钟控,已知初始化数据帧的一个比特分别与密钥产生模块110的三个线性反馈移位寄存器111、112、113最低位异或。
(4)t=86...413(钟控):从现在开始,密钥产生模块110的线性反馈移位寄存器将执行多数原则的钟控模式。在密钥产生模块110的三个线性反馈移位寄存器111、112、113中依次选取第8位、第10位和第10位作为钟控位,当钟控位全部相同时,在该周期内所有的线性反馈移位寄存器都工作;当钟控位不全部相同时,在该周期内钟控位相同数量多的线性反馈移位寄存器工作,由于是三个线性反馈移位寄存器,至少有两个线性反馈移位寄存器的钟控位相同(都为0或者1,另一个则为1或者0),也就是说,此时两个钟控位相同的线性反馈移位寄存器工作。在t=86...413的过程中,密钥产生模块110的线性反馈移位寄存器便产生出328位比特输出流,把前100比特丢弃,剩下的228比特用于加密移动通信通话。在密钥产生模块110工作的过程中,控制模块120在密钥产生模块110中的两个线性反馈移位寄存器工作时,控制功耗补偿模块130中的三个线性反馈移位寄存器同步工作;在密钥产生模块110中的三个线性反馈移位寄存器工作时,控制功耗补偿模块130中的两个线性反馈移位寄存器同步工作。从而密码保护***100中同时工作的线性反馈移位寄存器的数量为五个,总体功耗不会发生变化,也就无法依据功耗的差异进行攻击。
在上述实施方式中,密钥产生模块110和功耗补偿模块130中的线性反馈移位寄存器都为三个,在其他的实施方式中,密钥产生模块110中的线性反馈移位寄存器可以是两个、四个、五个等。而功耗补偿模块130需包括至少一个线性反馈移位寄存器,控制模块120根据预设的线性反馈移位寄存器工作总数及密钥产生模块110中工作的线性反馈移位寄存器的数量确定功耗补偿模块130中线性反馈移位寄存器工作的数量。例如,例如,在A5/1的流密码运算方法中,可以在功耗补偿模块130中只设置一个线性反馈移位寄存器,使预设的线性反馈移位寄存器工作总数为3,在密钥产生模块110工作的过程中,控制模块120在密钥产生模块中110的两个线性反馈移位寄存器工作时,控制功耗补偿模块130中的一个线性反馈移位寄存器同步工作;在密钥产生模块110中的三个线性反馈移位寄存器工作时,控制功耗补偿模块130中的线性反馈移位寄存器不工作。
上述过程可以归纳为如图3所示的密码保护方法:
步骤S302,检测密钥产生模块的功耗。例如,通过检测密钥产生模块110的钟控位并确定密钥产生模块110的功耗,将工作的线性反馈移位寄存器的数量作为密钥产生模块的功耗。
步骤S304,计算需要补偿的功耗。例如,通过读取总的功耗(总的功耗可以用工作的线性反馈移位寄存器的数量来表示),将总的功耗与密钥产生模块110的功耗的差值作为需要补偿的功耗。
步骤S306,控制功耗补偿模块以需要补偿的功耗工作。例如,根据需要补偿的功耗确定需要工作的线性反馈移位寄存器的数量,然后控制相应数量的线性反馈移位寄存器工作。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
Claims (10)
1、一种密码保护方法,其特征在于,包括如下步骤:
检测密钥产生模块的功耗;
计算需要补偿的功耗;
控制功耗补偿模块以需要补偿的功耗工作。
2、根据权利要求1所述的密码保护方法,其特征在于,所述检测密钥产生模块的功耗的方式为检测密钥产生模块的钟控位并确定密钥产生模块的功耗。
3、根据权利要求1所述的密码保护方法,其特征在于,所述计算需要补偿的功耗的步骤包括:读取总的功耗;将总的功耗与密钥产生模块的功耗的差值作为需要补偿的功耗。
4、根据权利要求1所述的密码保护方法,其特征在于,所述控制功耗补偿模块以需要补偿的功耗工作的步骤包括:根据所述需要补偿的功耗确定需要工作的线性反馈移位寄存器的数量;控制相应数量的线性反馈移位寄存器工作。
5、一种密码保护***,包括密钥产生模块,用于产生密钥,其特征在于,所述密码保护***还包括控制模块和功耗补偿模块,所述控制模块用于检测密钥产生模块的功耗、计算需要补偿的功耗并控制所述功耗补偿模块以需要补偿的功耗工作。
6、根据权利要求5所述的密码保护***,其特征在于,所述密钥产生模块包括两个以上线性反馈移位寄存器,所述控制模块检测工作的线性反馈移位寄存器的数量,将工作的线性反馈移位寄存器的数量作为密钥产生模块的功耗。
7、根据权利要求6所述的密码保护***,其特征在于,所述功耗补偿模块包括至少一个线性反馈移位寄存器,所述控制模块根据预设的线性反馈移位寄存器工作总数及密钥产生模块中工作的线性反馈移位寄存器的数量确定所述功耗补偿模块中线性反馈移位寄存器工作的数量。
8、根据权利要求7所述的密码保护***,其特征在于,所述功耗补偿模块中的线性反馈移位寄存器采用随机初始化。
9、根据权利要求7所述的密码保护***,其特征在于,在工作过程中所述功耗补偿模块中的线性反馈移位寄存器同步于所述密钥产生模块中的线性反馈移位寄存器进行钟控操作。
10、根据权利要求7所述的密码保护***,其特征在于,所述密码保护***采用A5/1流密码运算方法,所述密钥产生模块包括三个线性反馈移位寄存器,所述功耗补偿模块包括三个线性反馈移位寄存器,所述控制模块用于在所述密钥产生模块中的两个线性反馈移位寄存器工作时,控制所述功耗补偿模块中的三个线性反馈移位寄存器同步工作;在所述密钥产生模块中的三个线性反馈移位寄存器工作时,控制所述功耗补偿模块中的两个线性反馈移位寄存器同步工作。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNA2009101055570A CN101488846A (zh) | 2009-02-24 | 2009-02-24 | 密码保护方法和*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNA2009101055570A CN101488846A (zh) | 2009-02-24 | 2009-02-24 | 密码保护方法和*** |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101488846A true CN101488846A (zh) | 2009-07-22 |
Family
ID=40891541
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNA2009101055570A Pending CN101488846A (zh) | 2009-02-24 | 2009-02-24 | 密码保护方法和*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101488846A (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102024810A (zh) * | 2009-09-18 | 2011-04-20 | 索尼公司 | 集成电路和电子设备 |
CN102509145A (zh) * | 2011-09-30 | 2012-06-20 | 清华大学 | 功耗感知的功耗平衡s盒单元电路及其应用方法 |
CN104093144A (zh) * | 2014-07-11 | 2014-10-08 | 重庆邮电大学 | 基于心电信号qrs波群特征的无线体域网加密方法 |
CN104348625A (zh) * | 2013-08-08 | 2015-02-11 | 新唐科技股份有限公司 | 加解密装置及其加解密方法 |
CN104507085A (zh) * | 2015-01-13 | 2015-04-08 | 重庆邮电大学 | 无线体域网数据加密方法 |
CN108446556A (zh) * | 2018-03-01 | 2018-08-24 | 北京智芯微电子科技有限公司 | 密码芯片的抗功耗分析电路和方法 |
CN109617668A (zh) * | 2018-12-14 | 2019-04-12 | 四川长虹电器股份有限公司 | 一种防止旁路攻击的方法 |
-
2009
- 2009-02-24 CN CNA2009101055570A patent/CN101488846A/zh active Pending
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102024810A (zh) * | 2009-09-18 | 2011-04-20 | 索尼公司 | 集成电路和电子设备 |
CN102024810B (zh) * | 2009-09-18 | 2013-06-19 | 索尼公司 | 集成电路和电子设备 |
CN102509145A (zh) * | 2011-09-30 | 2012-06-20 | 清华大学 | 功耗感知的功耗平衡s盒单元电路及其应用方法 |
CN104348625A (zh) * | 2013-08-08 | 2015-02-11 | 新唐科技股份有限公司 | 加解密装置及其加解密方法 |
CN104093144A (zh) * | 2014-07-11 | 2014-10-08 | 重庆邮电大学 | 基于心电信号qrs波群特征的无线体域网加密方法 |
CN104093144B (zh) * | 2014-07-11 | 2017-08-25 | 重庆邮电大学 | 基于心电信号qrs波群特征的无线体域网加密方法 |
CN104507085A (zh) * | 2015-01-13 | 2015-04-08 | 重庆邮电大学 | 无线体域网数据加密方法 |
CN108446556A (zh) * | 2018-03-01 | 2018-08-24 | 北京智芯微电子科技有限公司 | 密码芯片的抗功耗分析电路和方法 |
CN108446556B (zh) * | 2018-03-01 | 2020-04-07 | 北京智芯微电子科技有限公司 | 密码芯片的抗功耗分析电路和方法 |
CN109617668A (zh) * | 2018-12-14 | 2019-04-12 | 四川长虹电器股份有限公司 | 一种防止旁路攻击的方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101488846A (zh) | 密码保护方法和*** | |
CN100583739C (zh) | 加密装置、加密方法及其存储介质 | |
CN1989726A (zh) | 用于执行加密计算的方法和装置 | |
CN103679008A (zh) | 一种高效的安全芯片功耗攻击测试方法 | |
CN101084506A (zh) | 数据处理设备及操作这种数据处理设备的方法 | |
CN105227295A (zh) | 一种针对sms4密码算法的差分故障注入攻击 | |
MY158762A (en) | System, methods, and apparatuses for ciphering error detection and recovery | |
CN103795527A (zh) | 防止基于功耗分析攻击aes算法的软件掩码防护方案 | |
CN103530474A (zh) | 面向aes算法电路的差分功耗攻击测试方法 | |
CN102063586B (zh) | 用于检测故障攻击的方法和装置 | |
CN105426445A (zh) | 一种格式保留的数据脱敏方法 | |
CN103414549A (zh) | 一种qr二维码二值图像分区变密钥混沌加密方法 | |
CN100461669C (zh) | 公钥跳码安全*** | |
CN101908111B (zh) | 一种利用dpa曲线极性进行密钥提取的方法及*** | |
EA200200468A1 (ru) | Метод для создания системы обработки данных, устойчивой к извлечению данных с помощью анализа непреднамеренных сигналов побочного ввода-вывода | |
CN104301095A (zh) | Des轮运算方法和电路 | |
CN111224770B (zh) | 一种基于门限技术的抗侧信道与故障攻击的综合防护方法 | |
CN104301096A (zh) | Aes轮运算方法和电路 | |
CN101552778B (zh) | 安全协议自动化检测中的攻击者模型构建方法 | |
CN102509145B (zh) | 功耗感知的功耗平衡s盒单元电路及其应用方法 | |
CN103427978A (zh) | 基于混沌加密***的无线汉字传输装置 | |
CN104158651A (zh) | 基于数据冗余实时检错机制的全展开结构aes加/解密电路 | |
CN104158652A (zh) | 基于数据冗余实时检错机制的循环展开结构aes加/解密电路 | |
CN207530855U (zh) | 分组密码芯片低功耗攻击防御装置 | |
Li et al. | Single byte differential fault analysis on the LED lightweight cipher in the wireless sensor network |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C12 | Rejection of a patent application after its publication | ||
RJ01 | Rejection of invention patent application after publication |
Open date: 20090722 |