GM/T 0083-2020 密码模块非入侵式攻击缓解技术指南

GM/T 0083-2020 Guideline for the mitigation of non-invasive attacks against cryptographic modules

行业标准-密码 中文简体 现行 页数:22页 | 格式:PDF

基本信息

标准号
GM/T 0083-2020
标准类型
行业标准-密码
标准状态
现行
中国标准分类号(CCS)
国际标准分类号(ICS)
发布日期
2020-12-28
实施日期
2021-07-01
发布单位/组织
国家密码管理局
归口单位
密码行业标准化技术委员会
适用范围
本文件给出了密码模块非入侵式攻击方法、缓解技术以及测试方法。
本文件适用于指导密码模块中部署非入侵式攻击缓解技术,指导技术人员在密码模块开发和使用过程中,根据具体的密码算法特点、密码模块特性、具体部署的实际场景,选择缓解技术来抵抗非入侵式攻击威胁。

发布历史

研制信息

起草单位:
中国科学院数据与通信保护研究教育中心、飞天诚信科技股份有限公司、格尔软件股份有限公司、北京中电华大电子设计有限责任公司、北京握奇智能科技有限公司、北京宏思电子技术有限责任公司
起草人:
刘宗斌、刘泽艺、李敏、马存庆、高能、屠晨阳、彭佳、刘丽敏、马原、朱鹏飞、郑强、郑晓光、陈国、张文婧、陈钧莎
出版信息:
页数:22页 | 字数:44 千字 | 开本: 大16开

内容描述

ICS35040

CCSL.80

中华人民共和国密码行业标准

GM/T0083—2020

密码模块非入侵式攻击缓解技术指南

Guidelineforthemitigationofnon-invasiveattacksagainst

cryptographicmodules

2020-12-28发布2021-07-01实施

国家密码管理局发布

GM/T0083—2020

目次

前言

…………………………Ⅰ

范围

1………………………1

规范性引用文件

2…………………………1

术语和定义

3………………1

符号和缩略语

4……………2

符号

4.1…………………2

缩略语

4.2………………3

非入侵式攻击方法

5………………………3

概述

5.1…………………3

命名及分类

5.2…………………………4

分析流程

5.3……………4

与安全功能的关联性

5.4………………5

非入侵式攻击缓解技术

6…………………6

概述

6.1…………………6

计时分析攻击缓解技术

6.2……………7

能量分析攻击缓解技术

6.3……………7

电磁分析攻击缓解技术

6.4……………10

非入侵式攻击测试方法

7…………………11

概述

7.1…………………11

测试策略

7.2……………11

测试框架

7.3……………11

测试流程

7.4……………12

测试所需厂商信息

7.5…………………16

附录资料性和的非入侵式攻击缓解技术介绍

A()SM2/SM9SM4………………17

参考文献

……………………19

GM/T0083—2020

前言

本文件按照标准化工作导则第部分标准化文件的结构和起草规则的规定

GB/T1.1—2020《1:》

起草

请注意本文件的某些内容可能涉及专利本文件的发布机构不承担识别专利的责任

。。

本文件由密码行业标准化技术委员会提出并归口

本文件起草单位中国科学院数据与通信保护研究教育中心飞天诚信科技股份有限公司格尔软

:、、

件股份有限公司北京中电华大电子设计有限责任公司北京握奇智能科技有限公司北京宏思电子技

、、、

术有限责任公司

本文件主要起草人刘宗斌刘泽艺李敏马存庆高能屠晨阳彭佳刘丽敏马原朱鹏飞郑强

:、、、、、、、、、、、

郑晓光陈国张文婧陈钧莎

、、、。

GM/T0083—2020

密码模块非入侵式攻击缓解技术指南

1范围

本文件给出了密码模块非入侵式攻击方法缓解技术以及测试方法

、。

本文件适用于指导密码模块中部署非入侵式攻击缓解技术指导技术人员在密码模块开发和使用

,

过程中根据具体的密码算法特点密码模块特性具体部署的实际场景选择缓解技术来抵抗非入侵式

,、、,

攻击威胁

2规范性引用文件

下列文件中的内容通过文中的规范性引用而构成本文件必不可少的条款其中注日期的引用文

。,

件仅该日期对应的版本适用于本文件不注日期的引用文件其最新版本包括所有的修改单适用于

,;,()

本文件

信息安全技术术语

GB/T25069

信息安全技术密码杂凑算法

GB/T32905SM3

信息安全技术分组密码算法

GB/T32907SM4

所有部分信息安全技术椭圆曲线公钥密码算法

GB/T32918()SM2

信息安全技术密码模块安全要求

GB/T37092—2018

所有部分祖冲之序列密码算法

GM/T0001()

所有部分标识密码算法

GM/T0044()SM9

3术语和定义

界定的以及下列术语和定义适用于本文件

GB/T25069、GB/T37092。

31

.

高级侧信道分析advancedside-channelattacks

对于信道泄露的高级利用这些泄露主要依赖于密码设备处理的数据以及检索秘密参数时执行的

操作

32

.

关键安全参数criticalsecurityparameter

与安全有关的信息例如秘密的和私有密码密钥口令之类的鉴别数据个人身份号证书或其他

(:,,、

可信锚其泄露或修改会危及密码模块的安全

),。

注关键安全参数可能是明文或加密的

:。

定义

[GB/T25069—2010,2.2.2.50]

33

.

关键安全参数类CSPclass

的分类如密钥鉴别数据如口令码生物鉴别数据

CSP,、(、PINs、)。

34

.

差分电磁分析differentialelectromagneticanalysis

对密码模块电磁辐射的变化进行分析针对大量的电磁辐射测量值使用统计方法来确定划分出

。,

1

GM/T0083—2020

的秘密参数子集合的假设值是否正确以此来提取安全功能运算中的相关信息

。。

35

.

差分能量分析differentialpoweranalysis

为提取与加密操作相关的信息对密码模块的用电功耗的变化所作的分析

,。

定义

[GB/T25069—2010,2.2.2.11]

36

.

电磁分析electromagneticanalysis

对密码模块中由于逻辑电路转换所造成的电磁辐射的分析用来提取对应于安全功能操作的信息

以及后续提取秘密参数例如密钥

,。

37

.

水平攻击horizontalattack

从单条能量迹中的不同部分提取敏感信息的方法

38

.

能量分析poweranalysis

密码模块的能耗分析用来提取对应于安全功能操作的信息以及后续提取秘密信息例如密钥

。,。

39

.

矩形攻击rectangleattack

在观察采集阶段混合了水平和垂直攻击的方法

310

.

侧信道分析side-channelattacks

对密码设备的瞬时侧信道泄露的利用这些泄露依赖于设备所处理的数据以及检索秘密参数时所

执行的操作

311

.

简单电磁分析simpleelectromagneticanalysis

对指令执行模式和逻辑电路活动模式的直接主要是可视化的分析这些模式主要来源于监视密

()。

码模块的电磁辐射变化用以揭示密码算法的特征和实现并后续揭示秘密参数的值

,,。

312

.

简单能量分析simplepoweranalysis

对指令执行或单个指令的执行模式的直接主要是可视化的分析它与密码模块的能耗有关并

()(),,

用以获取密码操作相关的信息

313

.

计时分析timinganalysis

对安全功能中某个操作的响应或执行时间变化进行分析这种时间变化可能揭露出与诸如密钥或

,

等安全参数有关的信息

PIN。

314

.

垂直攻击verticalattack

从多次不同的算法执行过程中提取敏感信息的方法

4符号和缩略语

41符号

.

中所使用的以及下面给出的符号适用于本文件

GB/T37092。

密码运算

A:

2

GM/T0083—2020

观测量处理函数默认为恒等变换

C:,

观测量处理函数的多项式次数

d_C:

统计测量函数的多项式次数

d_D:

观测量维度

d_o:

函数即操作

F:,

索引

i:

密钥

K:

子密钥

k1:1

子密钥

k2:2

泄露模型

M:

观测量的数量

N:

观测量

o_i:

第次观测值

(o_i)_i:i

预测值

pred_i:

的第次循环值

x1_i:x1i

的第次循环值

x2_i:x2i

输入文本

X:

乘法符号

*:

42缩略语

.

中所使用的以及下面给出的缩略语适用于本文件

GB/T37092。

专用集成电路

ASIC:(ApplicationSpecificIntegratedCircuit)

关键安全参数

CSP:(CriticalSecurityParameter)

差分电磁分析

DEMA:(DifferentialElectroMagneticAnalysis)

差分能量分析

DPA:(DifferentialPowerAnalysis)

电磁

EM:(Electro-Magnetic)

电磁分析

EMA:(ElectroMagneticAnalysis)

现场可编程门阵列

FPGA:(Field-ProgrammableGateArray)

汉明距离

HD:(HammingDistance)

汉明重量

HW:(HammingWeight)

能量分析

PA:(PowerAnalysis)

个人识别码

PIN:(PersonalIdentificationNumber)

随机数发生器

RNG:(RandomNumberGenerator)

5非入侵式攻击方法

51概述

.

非入侵式攻击利用的密码模块中产生的侧信道信息从密码系统的物理实现中获得的信息主要

()

包括

:

计算时间

———;

能量消耗

———;

电磁辐射

———。

对应的攻击为

:

3

GM/T0083—2020

计时分析攻击主要通过密码模块固有接口包括但不限于对密码运算的总体计算时间进行

———,()

记录

;

能量分析攻击一般从电源供电端或者电路接地端对密码模块的整体能量消耗进行采集

———,;

电磁分析攻击主要利用电磁探头对密码模块的密码运算模块进行更为精确的电磁辐射采集

———,。

52命名及分类

.

本文件规定了一种形式化的命名方法见图以突显不同攻击之间的关系当需要对新的攻击

(1),。

命名时可参考该命名方法

,。

图1形式化的侧信道命名方法

应按照如下的方式描述一个攻击

:<XXX>-<YYY>-<ZZZ>。

见图横轴代表在攻击中使用的统计学方法如代表即简单分析代表

XXX(1),<S>Simple,,<C>

即相关性统计代表即极大似然统计代表

Correlation,,<MI>MutualInformation,,<ML>Maximum

即互信息统计代表即均值差分统计代表

Likelihood,,<D>DifferenceofMeans,,<LR>Linear

即线性回归方法等若需表示一种产生阶能量的预处理方法可采用方式表达如

Regression,。d,<dO>,

表示阶相关性攻击以及阶极大似然攻击这种方式既可表示将能量迹中单个目

<dOC>、<dOML>,dd(

标时刻的能量消耗自乘为次方也可表示对每条能量迹上个点的能量消耗进行结合

d,d)。

见图纵轴代表观测到的侧信道类型如代表能量分析代表电磁分析

YYY(1),<PA>,<EMA>,<TA>

代表计时分析等

代表攻击方法的特点如代表刻画攻击代表非刻画攻击其中刻画攻击是指攻击人

ZZZ,<P>,<UP>,

员能够事先对目标设备的真实侧信道泄露模型进行精准建模的一种攻击方式非刻画攻击反之该项

,。

为可选项默认的值为在整体攻击名称前可附加一个形容词用以指明攻击的工作方式该工作

,<UP>。。

方式可为垂直的默认模式水平的或者矩形的

“”(),“”“”。

53分析流程

.

本文件根据是否使用统计分析方法将非入侵式侧信道分析流程分为简单侧信道分析流程和高级

,

4

GM/T0083—2020

侧信道分析流程

简单侧信道分析流程通常为通过直接主要是可视化的或是肉眼识别的分析方法对密码模块的

:()

运行时间能量消耗或是电磁泄露进行检测分析从而揭示密码算法的秘密参数

、,。

高级侧信道分析通常包括如下步骤

:

对观测量进行次测量每次测量对应一次以已知输入和密钥为参数的密码运

a)(o_i)N,XK

A;

为设备选择泄露模型

b)M;

选择观测量处理函数默认情况下被设置为恒等变换

c)C(,C);

对密钥或者其子密钥的可能值进行假设记为

d)K,h;

从以及可能的中推测出个预测值每个预测值对应一个明文且该

e)A,h,(o_i)_iMNpred_i(,

明文对应的观测量已被获取

);

选择统计测试函数并计算

f)D,D[pred_i,C(o_i)];

如果大于某一阈值则认为假设值正确否则认为假设值错误回到步

g)D[pred_i,C(o_i)],h。,,

骤并重新选择假设值

d)h。

其中步骤和步骤是可选项步骤中的阈值应根据实际的攻击方法进行选取一种经典

,b)c)。g)。

的方法是选取与所有密钥假设对应的中的最大值作为阈值观测量可是单变量

D[pred_i,C(o_i)]。o_i

也可是多变量当为多变量时中的每一个变量对应于不同的时刻的测量量的维度可用

。o_i,o_i。o_i

表示观测量处理函数是一个多项式函数定义在维的实数向量集合上下文用d_o表

d_o。C(.),d_o,R

示多项式的次数用表示函数表示一个包含的多项式多项式

,d_C。D(pred_i,.):X→D(pred_i,X)X,

次数为值为攻击的阶数

d_D,d_C*d_Dd。

碰撞攻击是一种特殊的高级侧信道分析方法其分析流程主要包括

,:

对观测量进行次测量每次测量对应一次以已知输入和密钥为参数的密码运

a)(o_i)N,XK

A;

从能量迹中的不同运算时刻提取特征点

b)o_i;

对差分值的可能值进行假设假设值记为其中分别是目标密钥的两部

c)(k1-k2),h,k1、k2K

分即分组密码实现中的两个子密钥

();

根据差分假设值对每个观测量进行分组

d)h(o_i)_i;

如果假设差分值与真实的子密钥差分值相同则该差分值所对应的观测量分组在选取

e)h,o_i

的不同特征点上存在强关联

例如攻击以的操作为目标则攻击将从观测量中提取出与及另一

,F(x1_i+k1),o_iF(x1_i+k1)

个操作相关的特征点并且这些观测量将会根据进行重新分组每组中的观测量满足性

关联标准

相似标准推荐

更多>