密码保护方法和系统的制作方法

文档序号:7703809阅读:221来源:国知局
专利名称:密码保护方法和系统的制作方法
技术领域
本发明涉及移动通信技术,尤其是涉及一种密码保护方法和系统。背景技术
移动通信设备的应用越来越广泛,安全问题也日益突出。在众多种攻击方 法中,利用密码设备所泄漏的一些侧信道信息来攻破这些密码系统是最有威胁 的攻击。功率消耗对于密码设备是一种重要的侧信道信息,因为密码设备执行
的计算最终都归结到了对逻辑状态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个线性反馈移位寄存器(Linear Feedback Shifting Register, LFSR)时的功摔毛大于并行4丸行2个LFSR时的功寻毛, 于是有人提出针对A5/1中用于产生随机数的LFSR的攻击,这样便建立了功耗 与密钥操作数的相关性,基于这一物理原理进行DPA攻击。

发明内容
有鉴于此,有必要针对流密码容易被依据功耗的差异攻击的问题,提供一种密码保护方法。
此外,还提供了一种密码保护系统。
一种密码保护方法,包括如下步骤检测密钥产生模块的功耗;计算需要 补偿的功耗;控制功耗补偿模块以需要补偿的功耗工作。
在优选的实施例中,所述检测密钥产生模块的功耗的方式为检测密钥产生 模块的钟控位并确定密钥产生模块的功耗。
在优选的实施例中,所述计算需要补偿的功耗的步骤包括读取总的功耗; 将总的功耗与密钥产生模块的功耗的差值作为需要补偿的功耗。
在优选的实施例中,所述控制功耗补偿模块以需要补偿的功耗工作的步骤 包括根据所述需要补偿的功耗确定需要工作的线性反馈移位寄存器的数量; 控制相应数量的线性反馈移位寄存器工作。
一种密码保护系统,包括密钥产生模块,用于产生密钥,所述密码保护系 统还包括控制模块和功耗补偿模块,所述控制模块用于检测密钥产生模块的功 耗、计算需要补偿的功耗并控制所述功耗补偿模块以需要补偿的功耗工作。
在优选的实施例中,所述密钥产生模块包括两个以上线性反馈移位寄存器, 所述控制模块检测工作的线性反馈移位寄存器的数量,将工作的线性反馈移位 寄存器的数量作为密钥产生模块的功耗。
在优选的实施例中,所述功耗补偿模块包括至少一个线性反馈移位寄存器, 所述控制模块根据预设的线性反馈移位寄存器工作总数及密钥产生模块中工作 的线性反馈移位寄存器的数量确定所述功耗补偿模块中线性反馈移位寄存器工 作的数量。
在优选的实施例中,所述功耗补偿模块中的线性反馈移位寄存器采用随机 初始4匕。
在优选的实施例中,在工作过程中所述功耗补偿模块中的线性反馈移位寄 存器同步于所述密钥产生模块中的线性反馈移位寄存器进行钟控操作。
在优选的实施例中,所述密码保护系统采用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的三个线性反馈 移位寄存器lll、 112、 113钟控64次,每次钟控,密钥的一个比特分别与密钥 产生模块110的三个线性反馈移位寄存器111、 112、 113最低位异或。
(3) t = 64.,.85 (钟控)接着密钥产生模块110的三个线性反馈移位寄存 器lll、 112、 113钟控22次,每次钟控,已知初始化数据帧的一个比特分别与 密钥产生模块110的三个线性反馈移位寄存器111、 112、 113最低位异或。
(4) t = 86...413 (钟控)从现在开始,密钥产生模块110的线性反馈移位 寄存器将执行多数原则的钟控模式。在密钥产生模块110的三个线性反馈移位 寄存器111、 112、 113中依次选取第8位、第IO位和第IO位作为钟控位,当钟 控位全部相同时,在该周期内所有的线性反馈移位寄存器都工作;当钟控位不 全部相同时,在该周期内钟控位相同数量多的线性反馈移位寄存器工作,由于 是三个线性反馈移位寄存器,至少有两个线性反馈移位寄存器的钟控位相同(都 为O或者l,另一个则为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,控制功耗补偿模块以需要补偿的功耗工作。例如,根据需要补 偿的功耗确定需要工作的线性反馈移位寄存器的数量,然后控制相应数量的线 性反馈移位寄存器工作。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细, 但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和 改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附 权利要求为准。
权利要求
1、一种密码保护方法,其特征在于,包括如下步骤检测密钥产生模块的功耗;计算需要补偿的功耗;控制功耗补偿模块以需要补偿的功耗工作。
2、 根据权利要求1所述的密码保护方法,其特征在于,所述^r测密钥产生 模块的功耗的方式为检测密钥产生模块的钟控位并确定密钥产生模块的功耗。
3、 根据权利要求1所述的密码保护方法,其特征在于,所述计算需要补偿 的功耗的步骤包括读取总的功耗;将总的功耗与密钥产生模块的功耗的差值 作为需要补偿的功耗。
4、 根据权利要求1所述的密码保护方法,其特征在于,所述控制功耗补偿 模块以需要补偿的功耗工作的步骤包括根据所述需要补偿的功耗确定需要工 作的线性反馈移位寄存器的数量;控制相应数量的线性反馈移位寄存器工作。
5、 一种密码保护系统,包括密钥产生才莫块,用于产生密钥,其特征在于, 所述密码保护系统还包括控制模块和功耗补偿模块,所述控制模块用于检测密 钥产生模块的功耗、计算需要补偿的功耗并控制所述功耗补偿模块以需要补偿 的功耗工作。
6、 根据权利要求5所述的密码保护系统,其特征在于,所述密钥产生模块 包括两个以上线性反馈移位寄存器,所述控制模块检测工作的线性反馈移位寄 存器的数量,将工作的线性反馈移位寄存器的数量作为密钥产生模块的功耗。
7、 根据权利要求6所述的密码保护系统,其特征在于,所述功耗补偿模块 包括至少一个线性反馈移位寄存器,所述控制模块根据预设的线性反馈移位寄 存器工作总数及密钥产生模块中工作的线性反馈移位寄存器的数量确定所述功 耗补偿模块中线性反馈移位寄存器工作的数量。
8、 根据权利要求7所述的密码保护系统,其特征在于,所述功耗补偿^莫块 中的线性反馈移位寄存器采用随机初始化。
9、 根据权利要求7所述的密码保护系统,其特征在于,在工作过程中所述 功耗补偿模块中的线性反馈移位寄存器同步于所述密钥产生模块中的线性反馈 移位寄存器进行钟控操作。
10、根据权利要求7所述的密码保护系统,其特征在于,所述密码保护系统采用A5/1流密码运算方法,所述密钥产生模块包括三个线性反馈移位寄存器,所述功耗补偿;漢块包括三个线性反馈移位寄存器,所述控制^t块用于在所述密钥产生模块中的两个线性反馈移位寄存器工作时,控制所述功耗补偿模块中的三个线性反馈移位寄存器同步工作;在所述密钥产生才莫块中的三个线性反馈移位寄存器工作时,控制所述功耗补偿模块中的两个线性反馈移位寄存器同步工作。
全文摘要
一种密码保护系统,包括密钥产生模块,用于产生密钥。所述密码保护系统还包括控制模块和功耗补偿模块,所述控制模块用于检测密钥产生模块的功耗、计算需要补偿的功耗并控制所述功耗补偿模块以需要补偿的功耗工作。上述密码保护系统中,通过功耗补偿模块补偿功耗,使得总体功耗不会发生变化,也就无法依据功耗的差异进行攻击。此外,还提供了一种密码保护方法。
文档编号H04L9/06GK101488846SQ20091010555
公开日2009年7月22日 申请日期2009年2月24日 优先权日2009年2月24日
发明者于峰崎, 李慧云, 邬可可 申请人:深圳先进技术研究院
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1