CN109831290B - 针对基于cave算法认证协议的侧信道分析方法 - Google Patents

针对基于cave算法认证协议的侧信道分析方法 Download PDF

Info

Publication number
CN109831290B
CN109831290B CN201910069790.1A CN201910069790A CN109831290B CN 109831290 B CN109831290 B CN 109831290B CN 201910069790 A CN201910069790 A CN 201910069790A CN 109831290 B CN109831290 B CN 109831290B
Authority
CN
China
Prior art keywords
power consumption
analysis
consumption information
key
cpa
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
CN201910069790.1A
Other languages
English (en)
Other versions
CN109831290A (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.)
State Grid Corp of China SGCC
State Grid Information and Telecommunication Co Ltd
Electric Power Research Institute of State Grid Liaoning Electric Power Co Ltd
Beijing Smartchip Microelectronics Technology Co Ltd
Shanghai Jiao Tong University
Original Assignee
State Grid Corp of China SGCC
State Grid Information and Telecommunication Co Ltd
Electric Power Research Institute of State Grid Liaoning Electric Power Co Ltd
Beijing Smartchip Microelectronics Technology Co Ltd
Shanghai Jiao Tong University
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 State Grid Corp of China SGCC, State Grid Information and Telecommunication Co Ltd, Electric Power Research Institute of State Grid Liaoning Electric Power Co Ltd, Beijing Smartchip Microelectronics Technology Co Ltd, Shanghai Jiao Tong University filed Critical State Grid Corp of China SGCC
Priority to CN201910069790.1A priority Critical patent/CN109831290B/zh
Publication of CN109831290A publication Critical patent/CN109831290A/zh
Application granted granted Critical
Publication of CN109831290B publication Critical patent/CN109831290B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Mobile Radio Communication Systems (AREA)

Abstract

一种针对基于CAVE算法认证协议的侧信道分析方法,通过采集cdmaOne的认证协议在移动设备上运行时产生的包含CAVE算法执行信息的功耗曲线,从功耗曲线中解析出CAVE算法执行参数,从而恢复出cdmaOne的认证协议所使用的密钥。本发明利用简单功耗分析和相关性功耗分析作为基础攻击工具,根据CAVE算法结构,构造综合攻击方法,通过该方法恢复cdmaOne认证协议中使用的密钥A‑key。本方法适用于任何使用基于CAVE算法认证协议的密码系统。

Description

针对基于CAVE算法认证协议的侧信道分析方法
技术领域
本发明涉及的是一种计算机安全领域的技术,具体是一种针对cdmaOne通信系统的基于蜂窝认证和语音加密算法(Cellular Authentication,Voice Privacy andEncryption,CAVE)协议的功耗分析方法,适用于简单功耗分析(SPA)、差分功耗分析(DPA)以及相关性功耗分析(CPA)。
背景技术
在移动终端中,任意代码的执行都会泄漏其执行时的能量、电磁辐射等侧信道信息(Side Channel Information),侧信道信息与移动终端当前执行的指令及指令对应的操作数相关。因此,对于在移动终端上实现的加密算法与协议,攻击者可以观察和测量密码算法执行时产生的侧信道信息,利用这些实施侧信道攻击(Side Channel Attack),恢复移动终端中的秘密信息。
发明内容
本发明提出一种针对基于CAVE算法认证协议的侧信道分析方法,利用简单功耗分析(SPA)和相关性功耗分析(CPA)作为基础攻击工具,根据CAVE算法结构,构造综合攻击方法,通过该方法恢复cdmaOne认证协议中使用的密钥A-key。
本发明是通过以下技术方案实现的:
本发明涉及一种针对基于CAVE算法认证协议的侧信道分析方法,通过采集cdmaOne的认证协议在移动设备上运行时产生的包含CAVE算法执行信息的功耗曲线,从功耗曲线中解析出CAVE算法执行参数,从而恢复出cdmaOne的认证协议所使用的密钥。
所述的CAVE算法执行信息包括查表操作和分支判断操作对应的功耗信息,其中:查表操作是指给定一个具有256个入口的一一对应的表,给定0-255中的一个索引,得到表中对应索引的值;分支判断操作是指CAVE算法中有if判断语句影响程序的执行顺序,该判断条件中有一个固定值,当与该固定值比较的变量不等于该固定值,则执行某一段程序,否则执行另一段程序。
所述的CAVE算法执行参数包括CAVE算法的查表操作的索引值以及分支判断操作的阈值。
所述的解析是指:针对查表操作,对查表操作对应的功耗曲线进行CPA分析,恢复出该查表操作的索引;针对分支判断操作,对if判断语句对应的功耗信息进行SPA分析,恢复其判断条件中的固定值。
所述的CPA分析是指:查表操作的索引inx等价于固定不变的分量a与随机变化的分量b相异或的结果(inx=a^b),其中:随机分量b是外部已知量,a是内部未知量;通过遍历a的所有可能值,用已知的b与猜测的a’异或得到猜测索引inx’=b^a’;用inx’查表得到假设表的输出out’,用out’和对应的功耗曲线计算皮尔森相关性系数,当且仅当inx’=inx,即a’=a时相关性系数达到最大。
所述的SPA分析是指:if判断语句执行判断为真的分支和判断为假的分支所产生的功耗不同,且由于两分支的指令序列不同,执行的时间长短也不同,直接从功耗曲线上观察出执行的长短以推断出当前执行了哪一分支,继而推断出if语句的判断条件。
所述的恢复是指:通过16次CPA分析和16次SPA分析经合并结果得到认证协议所使用的密钥,具体为:第1、2次CPA分析和SPA分析针对CAVE算法的第一次循环操作对应的功耗信息,恢复出A-key[4],A-key[0],A-key[1]⊕A-key[5],第3、4次CPA分析和SPA分析针对CAVE算法的第二次循环操作对应的功耗信息,恢复出A-key[1],A-key[5],第5、6次CPA分析和SPA分析针对CAVE算法的第三次循环操作对应的功耗信息,恢复出A-key[2],第7、8次CPA分析和SPA分析针对CAVE算法的第四次循环操作对应的功耗信息,恢复出A-key[3],第9、10次CPA分析和SPA分析针对CAVE算法的第五次循环操作对应的功耗信息,恢复出A-key[4],第11、12次CPA分析和SPA分析针对CAVE算法的第六次循环操作对应的功耗信息,恢复出A-key[5],第13、14次CPA分析和SPA分析针对CAVE算法的第七次循环操作对应的功耗信息,恢复出A-key[6],第15、16次CPA分析和SPA分析针对CAVE算法的第八次循环操作对应的功耗信息,恢复出A-key[7]。
所述的密钥的恢复过程中每次的CPA和SPA分析是相互依赖且串行执行。
本发明涉及一种实现上述功耗分析方法的系统,包括:功耗信息读取模块,功耗信息过滤模块、CPA分析模块、SPA分析模块和结果组合模块,其中:功耗信息读取模块载入CAVE算法执行时产生的功耗信息并将初始功耗信息输出至CPA分析模块;CPA分析模块分析传入的功耗信息并将分析结果和功耗信息输出至SPA分析模块;SPA分析模块分析传入的功耗信息并将分析结果和功耗信息输出至功耗信息过滤模块;功耗信息过滤模块根据SPA的分析结果过滤功耗信息后得到更新功耗信息并输出至CPA分析模块;结果组合模块组合多次CPA和SPA结果得到正确的密钥。
技术效果
相比现有技术无法分析cdmaOne的认证协议的功耗信息而得出密钥A-key,本发明仅需使用少量认证协议执行时产生的功耗曲线即可成功得到cdmaOne中基于CAVE算法的认证协议所使用的密钥A-key。在未有任何旁路攻击防护的情况下,整个分析系统所需的功耗曲线在5000条以内,分析时间在1小时以内,时间复杂度低。且本方法不仅限于SIM卡,可适用于任何基于CPU实现的基于CAVE算法认证协议。
附图说明
图1为本发明方法示意图。
具体实施方式
本实施例通过实施上述功耗分析系统,使用旁路攻击中的功耗分析方法恢复基于CAVE算法认证协议中使用的密钥A-key。将SIM卡运行基于CAVE算法的认证协议过程的功耗曲线存储在计算机中,利用本发明的系统对该曲线集进行分析。将初始曲线集传输至CPA分析模块进行第1次CPA分析;第1次CPA分析的结果和原始曲线集输出至SPA模块,进行第1次SPA分析;第1次SPA分析的结果及原始曲线集输出至功耗曲线过滤模块,该模块根据SPA结果从原始曲线集中剔除掉部分曲线,生成新的曲线集;新的曲线集输出至CPA分析模块进行第2次CPA分析。上述CPA至SPA至功耗过滤模块过程进行16次,最终将分析结果传输至结果组合模块,得到正确密钥A-key。
如图1所示,本实施例具体包括以下步骤:
①读取功耗曲线作为初始曲线集G,把G输出至CPA分析模块;
②CPA分析模块结合已知部分b,遍历未知部分a’,生成所有可能的索引inx’,根据所有的索引,生成所有的查表输出out’。使用out’和曲线集G计算皮尔森相关性系数,寻找最大系数对应的a’即为正确值,从而可以恢复正确a与正确索引inx。正确a与inx作为分析结果输出至结果组合模块和SPA分析模块,同时,G曲线集也输出至SPA分析模块。此过程为一次CPA分析。
③SPA分析模块结合CPA分析的结果,已知索引信息,可得到正确的if语句判断的输入。该输入要与固定的判断条件进行比较,如果相等则进入真分支,如果不相等则进入假分支。由于已知if语句判断的输入,可直接观察对应的功耗曲线执行时间的长短判断当前输入是否等于固定的判断条件。寻找到使得执行时间长,即对应的功耗曲线区间长的对应的if语句判断的输入,该输入就是固定的判断条件。固定的判断条件作为SPA分析的结果输出至结果组合模块和功耗信息过滤模块,同时,将功耗曲线集G输出至功耗信息过滤模块。
④功耗信息过滤模块根据SPA的分析结果,保留功耗曲线G中执行if判断语句真分支的曲线,剔除执行假分支的曲线,得到新的功耗曲线集G。如果已完成16次分析,则跳转至结果组合模块进行结果输出,否则跳回至CPA分析模块,并将G传输至该模块进行第②步分析。
⑤当进行了16次CPA、SPA分析后,跳转至结果组合模块。该模块将16次分析的结果组合,生成最终的密钥A-key。
整个分析系统中的各个模块都为本发明的核心内容,每个模块都影响最终的分析结果,必须严格按照上述步骤执行,才能得出正确结果。
上述过程完成了对基于cdmaOne的认证协议的侧信道分析,利用其执行时产生的功耗信息得出密钥A-key。目前,没有现有技术基于cdmaOne的认证协议的侧信道分析。本发明仅需使用少量认证协议执行时产生的功耗曲线即可成功得到cdmaOne中基于CAVE算法的认证协议所使用的密钥A-key。在未有任何旁路攻击防护的情况下,整个分析系统所需的功耗曲线在5000条以内,分析时间在1小时以内,时间复杂度低。且本方法不仅限于SIM卡,可适用于任何基于CPU实现的基于CAVE算法认证协议。
上述具体实施可由本领域技术人员在不背离本发明原理和宗旨的前提下以不同的方式对其进行局部调整,本发明的保护范围以权利要求书为准且不由上述具体实施所限,在其范围内的各个实现方案均受本发明之约束。

Claims (4)

1.一种针对基于CAVE算法认证协议的侧信道分析方法,其特征在于,通过采集cdmaOne的认证协议在移动设备上运行时产生的包含CAVE算法执行信息的功耗曲线,从功耗曲线中解析出CAVE算法执行参数,从而恢复出cdmaOne的认证协议所使用的密钥;
所述的解析是指:针对查表操作,对查表操作对应的功耗曲线进行CPA分析,恢复出该查表操作的索引;针对分支判断操作,对if判断语句对应的功耗信息进行SPA分析,恢复其判断条件中的固定值,其中CPA分析是指:查表操作的索引inx等价于固定不变的分量a与随机变化的分量b相异或的结果inx = a ^ b,其中:随机分量b是外部已知量,a是内部未知量;通过遍历a的所有可能值,用已知的b与猜测的a’异或得到猜测索引inx’=b ^ a’;用inx’查表得到假设表的输出out’,用out’和对应的功耗曲线计算皮尔森相关性系数,当且仅当inx’ = inx,即 a’=a时相关性系数达到最大;
所述的SPA分析是指:if判断语句执行判断为真的分支和判断为假的分支所产生的功耗不同,且由于两分支的指令序列不同,执行的时间长短也不同,直接从功耗曲线上观察出执行的长短以推断出当前执行了哪一分支,继而推断出if语句的判断条件;
所述的恢复是指:通过16次CPA分析和16次SPA分析经合并结果得到认证协议所使用的密钥,具体为:第1、2次CPA分析和SPA分析针对CAVE算法的第一次循环操作对应的功耗信息,恢复出A-key[4],A-key[0],A-key[1]
Figure DEST_PATH_IMAGE001
A-key[5],第3、4次CPA分析和SPA分析针对CAVE算法的第二次循环操作对应的功耗信息,恢复出A-key[1],A-key[5],第5、6次CPA分析和SPA分析针对CAVE算法的第三次循环操作对应的功耗信息,恢复出A-key[2],第7、8次CPA分析和SPA分析针对CAVE算法的第四次循环操作对应的功耗信息,恢复出A-key[3],第9、10次CPA分析和SPA分析针对CAVE算法的第五次循环操作对应的功耗信息,恢复出A-key[4],第11、12次CPA分析和SPA分析针对CAVE算法的第六次循环操作对应的功耗信息,恢复出A-key[5],第13、14次CPA分析和SPA分析针对CAVE算法的第七次循环操作对应的功耗信息,恢复出A-key[6],第15、16次CPA分析和SPA分析针对CAVE算法的第八次循环操作对应的功耗信息,恢复出A-key[7];
所述的密钥的恢复过程中每次的CPA和SPA分析是相互依赖且串行执行。
2.根据权利要求1所述的方法,其特征是,所述的CAVE算法执行信息包括查表操作和分支判断操作对应的功耗信息,其中:查表操作是指给定一个具有256个入口的一一对应的表,给定0-255中的一个索引,得到表中对应索引的值;分支判断操作是指CAVE算法中有if判断语句影响程序的执行顺序,该判断条件中有一个固定值,当与该固定值比较的变量不等于该固定值,则执行某一段程序,否则执行另一段程序。
3.根据权利要求1或2所述的方法,其特征是,所述的CAVE算法执行参数包括CAVE算法的查表操作的索引值以及分支判断操作的阈值。
4.一种实现权利要求1~3中任一所述方法的系统,其特征在于,包括:功耗信息读取模块,功耗信息过滤模块、CPA分析模块、SPA分析模块和结果组合模块,其中:功耗信息读取模块载入CAVE算法执行时产生的功耗信息并将初始功耗信息输出至CPA分析模块;CPA分析模块分析传入的功耗信息并将分析结果和功耗信息输出至SPA分析模块;SPA分析模块分析传入的功耗信息并将分析结果和功耗信息输出至功耗信息过滤模块;功耗信息过滤模块根据SPA的分析结果过滤功耗信息后得到更新功耗信息并输出至CPA分析模块;结果组合模块组合多次CPA和SPA结果得到正确的密钥。
CN201910069790.1A 2019-01-24 2019-01-24 针对基于cave算法认证协议的侧信道分析方法 Active CN109831290B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910069790.1A CN109831290B (zh) 2019-01-24 2019-01-24 针对基于cave算法认证协议的侧信道分析方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910069790.1A CN109831290B (zh) 2019-01-24 2019-01-24 针对基于cave算法认证协议的侧信道分析方法

Publications (2)

Publication Number Publication Date
CN109831290A CN109831290A (zh) 2019-05-31
CN109831290B true CN109831290B (zh) 2021-06-11

Family

ID=66862484

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910069790.1A Active CN109831290B (zh) 2019-01-24 2019-01-24 针对基于cave算法认证协议的侧信道分析方法

Country Status (1)

Country Link
CN (1) CN109831290B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111614459B (zh) * 2020-05-29 2021-08-06 上海交通大学 针对ble密钥协商协议的侧信道分析方法
CN114428961A (zh) * 2022-01-27 2022-05-03 上海交通大学 针对snow3g算法的侧信道安全性检测方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104796250A (zh) * 2015-04-11 2015-07-22 成都信息工程学院 针对RSA密码算法M-ary实现的侧信道攻击方法
CN106452789A (zh) * 2016-11-02 2017-02-22 北京宏思电子技术有限责任公司 一种多方位防侧信道攻击的签名方法
CN108155984A (zh) * 2017-12-29 2018-06-12 北京理工大学 一种基于能量分析的密码算法簇逆向工程分析方法
CN108446556A (zh) * 2018-03-01 2018-08-24 北京智芯微电子科技有限公司 密码芯片的抗功耗分析电路和方法
CN108880783A (zh) * 2018-09-06 2018-11-23 成都三零嘉微电子有限公司 一种针对sm4算法的联合攻击方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7602907B2 (en) * 2005-07-01 2009-10-13 Microsoft Corporation Elliptic curve point multiplication
JP6398812B2 (ja) * 2015-03-17 2018-10-03 ブラザー工業株式会社 画像処理装置、および、コンピュータプログラム

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104796250A (zh) * 2015-04-11 2015-07-22 成都信息工程学院 针对RSA密码算法M-ary实现的侧信道攻击方法
CN106452789A (zh) * 2016-11-02 2017-02-22 北京宏思电子技术有限责任公司 一种多方位防侧信道攻击的签名方法
CN108155984A (zh) * 2017-12-29 2018-06-12 北京理工大学 一种基于能量分析的密码算法簇逆向工程分析方法
CN108446556A (zh) * 2018-03-01 2018-08-24 北京智芯微电子科技有限公司 密码芯片的抗功耗分析电路和方法
CN108880783A (zh) * 2018-09-06 2018-11-23 成都三零嘉微电子有限公司 一种针对sm4算法的联合攻击方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
Random Clocking Induced DPA Attack Immunity in FPGAs;Yousaf Zafar, Jihan Park and Dongsoo Har;《IEEE》;20100527 *
关于CDMA伪基站的疑点辨析;汪志斌;《中国无线电》;20170126 *
抗旁路攻击的分组密码电路自动防护方法;甘杰,刘军荣,郭筝,凌宇霄,唐晓柯;《信息技术》;20160125 *

Also Published As

Publication number Publication date
CN109831290A (zh) 2019-05-31

Similar Documents

Publication Publication Date Title
CN103825722B (zh) 一种sm4密码算法的二阶侧信道能量分析方法
Zhang et al. Formal analysis of QUIC handshake protocol using symbolic model checking
CN109617671B (zh) 加解密、扩展方法及装置、加解密系统、终端
CN109831290B (zh) 针对基于cave算法认证协议的侧信道分析方法
CN111817842B (zh) 一种针对rsa-crt运算的能量分析攻击测试装置和方法
CN106330424B (zh) 基于sm3算法的密码模块的防攻击方法及装置
CN104967509B (zh) 一种轮输出为算术掩码的zuc序列密码算法掩码防护方法
CN106357378A (zh) 用于sm2签名的密钥检测方法及其系统
CN108155984B (zh) 一种基于能量分析的密码算法簇逆向工程分析方法
Shim On the suitability of post-quantum signature schemes for internet of things
CN105281889A (zh) 一种基于侧信道泄漏的算法还原方法和系统
Luo et al. Cryptanalysis of a chaotic block cryptographic system against template attacks
CN107070629A (zh) 一种针对sm4密码算法轮输出的模板攻击方法
Guo et al. A chosen-plaintext differential power analysis attack on HMAC-SM3
Xiao et al. Less Traces Are All It Takes: Efficient Side-Channel Analysis on AES
Ji et al. Screaming channels revisited: Encryption key recovery from AES-CCM accelerator
Unger et al. TVLA, Correlation Power Analysis and Side-Channel Leakage Assessment Metrics
CN113965324B (zh) 基于模板的rsa-crt实现模约减攻击的私钥恢复方法和系统
Tang et al. Evolutionary ciphers against differential power analysis and differential fault analysis
CN104767749B (zh) 一种基于无线物联网的信息处理方法
CN106301756A (zh) 用于sm2签名的大数模幂求逆功耗检测方法及其系统
Jin et al. Breaking real-world COTS USIM cards with unknown side-channel countermeasures
Tang et al. An approach for attacking speck on microcontroller with correlation power analysis
CN106330443B (zh) 一种基于sm3算法的密码模块的防攻击方法及装置
CN119254407B (zh) 一种针对sm4-xts高阶侧信道分析抵抗能力的安全评估方法和设备

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant