温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,汇文网负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。
网站客服:3074922707
ISO_IEC_17825
技术
测试
方法
标准
解读
鹿福祥
87STANDARD SCIENCE2023,No.7摘要:从密码模块上保障数据隐私和安全是一种行之有效的手段,因此近年来对密码模块的安全性评估倍受关注。非入侵式攻击缓解技术是密码模块安全指标之一,本文结合GM/T 0083-2020国密标准对IEC 17825-2016进行了学习与解读。主要针对非入侵式攻击方法与安全功能的关联性、基本测试项目和流程、通过/失败测试指标、缓解技术等方面进行了解读。希望能为相关人员对标准及测试方法的理解和密码模块安全设计、应用、评估提供些许参考。关键词:非入侵式攻击,缓解技术,侧信道攻击,密码模块DOI编码:10.3969/j.issn.1674-5698.2023.07.015Interpretation of ISO/IEC 17825-2016 on Testing Methods for the Mitigation of Non-Invasive Attack Classes against Cryptographic Modules LU Fu-xiang CHEN Chuan-lu HU Jin-wei CHEN Peng ZHANG Deng(China Quality Certification Center South China Laboratory)Abstract:It is an effective means to protect data privacy and security from cryptographic modules,so the security evaluation of cryptographic modules has attracted much attention in recent years.Non-invasive attack mitigation technology is one of the security indicators of cryptographic modules.This paper studies and interprets ISO/IEC 17825-2016 based on GM/T 0083-2020,and mainly explores the correlation between non-invasive attack methods and security functions,basic test items and processes,pass/fail test indicators,mitigation techniques,etc.It is expected to provide some reference for relevant personnel to understand the standard and its test methods,as well as the security design,application and evaluation of the cryptographic module.Keywords:non-invasive attack,mitigation techniques,side channel attack,cryptographic moduleISO/IEC 17825-2016密码模块的非入侵式攻击缓解技术的测试方法标准解读鹿福祥 陈传禄 胡进伟 陈 鹏 张 登(中国质量认证中心华南实验室)基金项目:本文受中国质量认证中心科技课题“商用密码产品安全测评关键技术研究”(课题编号:2022CQC18-GZ)资助。作者简介:鹿福祥,工程师,硕士学位,研究方向为密码芯片的侧信道泄露评估与防护、数据中心检测和认证。陈传禄,高级工程师。胡进伟,高级工程师。陈鹏,工程师。0 引 言为贯彻落实密码法合理使用密码技术保护关键信息基础设施,2022年11月7日,发布了GB/T 39204-2022信息安全技术 关键信息基础设施安全保护要求1。在密码行业委员会、高校学者、企业专家等相关方的共同推进下,我国已发布商用密码相关国家标准31项、行业标准116项、ISO/IEC标准7项2。Evaluation and Analysis on Standard88标 准 科 学 2023年7期我国正在建立结构合理、配套协调的密码标准体系,为迎接信息网络安全“密码+”新时代铺垫基石。密码算法的实现需要一个载体,往往应用过程中需要将密码算法嵌入到物理设备。如:现在常见的智能门锁、共享单车、移动支付等设备都采用了不同的密码技术,设备中都包含了相应的密码模块。ISO/IEC 19790:2012和GB/T 37092-2018中都定义密码模块应该包含硬件、软件、固件或者其中组合的集合,集合至少一个核准的密码算法、功能或过程实现的一项密码服务。密码模块是实现密码算法、密钥管理等功能的硬件、软件等一体的组件,根据不同程度的安全要求将其划分成4个不同安全等级(或者5个等级),从1至4级安全要求不断提高3。常见的密码模块安全要求相关标准如:ISO/IEC 19790:2012、GM/T 0028-2014、GM/T 0039-2015、ISO/IEC 24759-2017、GB/T 37092-2018等,这些标准中都包含了非入侵式攻击、缓解非入侵式攻击的检测方法或相关要求。这些标准为密码模块的设计、研发、生产、集成建设、运维、应用安全测评等活动提供依据。密码模块安全标准对安全等级1级、2级的要求仅需要通过文件声明密码模块是如何缓解非入侵式技术攻击的措施。对安全等级3级、4级的要求,需要实验室对密码模块抵抗非入侵式攻击的能力进行测试,来证明密码模块具有标准中列出的非入侵式攻击缓解技术4。1 标准解读为了 确 定 密 码 模 块 是 否 符 合 I S O/I E C 19790:2012中的安全等级3级、4级的要求。ISO/IEC 17825:2016标准中规定了非侵入性攻击缓解测试指标与ISO/IEC 19790中规定的安全功能相关性5。ISO/IEC 17825采用的测试方法具有可靠性、有效性、可重复性、成本适中、易实现等优点。ISO/IEC 17825:2016包含了分组密码算法和公钥密码算法非侵入性攻击缓解测试方法,和判定通过/失败的指标。结合我国商用密码算法的独特性和创新性,2020年12月28日国家密码管理局发布了GM/T 0083-2020,该标准规定了应用国产商用算法的密码模块非入侵式攻击测试方法及其判定指标2。1.1 非入侵式攻击方法与安全功能的关联性密码模块安全性评估应当根据其安全功能特点、模块特性、应用场景,来选择相应的非入侵式攻击缓解技术。其中,计时分析攻击(TA)、简单能量分析攻击(SPA)、简单电磁分析攻击(SEMA)、差分能量分析攻击(DPA)、电磁分析攻击(EMA)等攻击技术成熟容易实现,对密码模块的威胁最大,受到学术界和测评界广泛关注4。ISO/IEC 17825:2016中也针对这几种非入侵式攻击缓解情况规定了测试方法和要求。表1 非侵入性攻击方法与安全功能的关联表GM/T 0083中涉及的核准的安全功能与非侵入式攻击方法核准的安全功能非入侵式攻击方法计时分析攻击能量分析攻击电磁分析攻击分组密码SM4适用适用适用流密码GM/T 0001适用适用适用非对称面算法SM2适用适用适用SM9适用适用适用杂凑函数SM3适用适用适用ISO/IEC 17825中涉及的核准的安全功能与非侵入式攻击方法核准的安全功能非入侵式攻击方法SPA/SEMADPA/DEMATA对称密钥AES适用适用适用3DES适用适用适用Stream Ciphers适用适用适用非对称密钥Plain RAS(key Wrapping)适用适用适用RAS KPCS#1 V1.5适用适用适用RAS KPCS#1 V2.1不适用不适用适用DSA适用适用适用ECDSA适用适用适用散列机制SHA不适用适用适用RNG和RNGDeterministic不适用适用适用Non-deterministic不适用适用适用数据认证机制HMAC适用适用不适用秘钥生成适用不适用不适用从其他密钥派生密钥适用适用不适用从密码派生秘钥适用不适用不适用密钥建立DLC适用不适用不适用IFC适用不适用不适用秘钥登录与输出不适用不适用不适用操作员身份验证机制PIN/Password适用适用适用Key不适用不适用适用生物统计学适用不适用适用标准评析89STANDARD SCIENCE2023,No.7表1中的“适用”意味着安全功能容易受到这些类型的攻击,“不适用”意味着安全功能不容易受到这些类型的攻击5。1.2 非侵入性攻击和缓解技术没有任何标准和检测技术能够完全保证密码设备可免受非入侵式攻击的侵扰。ISO/IEC 17825和GM/T 0083的测试目的是评估已使用非侵入性攻击缓解技术的密码模块,能否在期望的安全级别上提供抵抗非入侵式攻击的能力,验证在设计和实施阶段采取了足够的注意来缓解非侵入性攻击。测试的基本原理是以非入侵的方法从密码模块周围提取物理信息,检测这个物理信息与密码模块的CSP(关键秘密参数)是否有依赖关系。如果通过这种依赖关系足够开展非入侵式攻击,则认为密码模块存在泄露,不能通过非入侵式攻击测试。如果收集到的物理信息与CSP不存在依赖关系或者现有技术条件检测不到,则认为不存在泄露通过测试。在密码模块安全性测试中,应依次进行TA、SPA/SEMA、DPA/DEMA分析攻击的抵抗能力测试。图1给出了非入侵式攻击的测试框架,测试人员应当按照图中顺序进行测试。必要时进行高级的测试如:Mico-architectural TA、Markov SPA、Adress-bit DPA、高阶DPA攻击等5。下文分别介绍了TA、SPA/SEMA、DPA/DEMA6缓解技术的测试流程如图24所示。1.3 计时攻击的泄露测试图2计时攻击的泄漏分析流程可分为两个阶段。第一阶段,测量几个不同CSP和固定文本的执行时间。如果测量的加/解密执行时间与不同CSP没有明显的统计学相关性,那么测试继续到第二阶段;否则,测试失败。第二阶段,使用不同的明文和固定的CSP进行加/解密操作。如果加/解密操作的Evaluation and Analysis on Standard图1 非入侵式攻击测试框架图 图2 计时分析攻击泄露分析流程图90标 准 科 学 2023年7期执行时间与不同明文之间无明显的统计学相关性,测试通过。否则,测试失败。当密码模块的执行时间难以准确测量,应使用被测密码模块芯片的时钟周期作为容错值。比较时间值(或两个平均时间值)T1和T2,如果|T1-T2|不成立,则测试不通过5。因为高级时间分析攻击存在一定的威胁,所以泄露测试不仅应计算均值差,还应计算方差或者其他统计学特征,以便检测是否存在二阶或高级计时泄漏。图3 简单能量/电磁分析攻击测试流程图 图4 差分能量/电磁分析攻击测试流程图1.4 简单能量/电磁分析泄露测试简单能量/电磁分析攻击测试流程图如图3所示。首先,测试实验室应获取与所需安全等级相关的物理测量值,在非侵入性攻击缓解通过/失败测试指标中,对不同安全等级的密码模块测试,采集信息的时间和数据量有不同要求。其次,对每个侧信道测量值,使用交叉关联的方法来检索指令序列。交叉关联方法是一种识别重复操作的有效方法,若交叉关联方法识别出与关键安全参数相关的指令操作序列7,则密码模块测试失败。1.5 差分能量/电磁分析泄露测试差分能量/电磁分析泄露测试流程如图4。首先,从待测设备上收集对应测试安全等级所需物理测量值,通过滤波、动态对齐、静态对齐技术对测量值曲线进行预处理。然后计算SNR(信噪比),若SNR足够进行密码算法的中间值分析,则计算出对应的中间值,再对预处理的测量值曲线进行统计学假设检验。通常进行Welch t检验,如果同一时间点测量值的T表明显著性不同,则认为存在泄露。如果发现所有的点都存在显著性