标准概况与适用范围
IEC/ISO 17825-18(加拿大采纳编号:CAN/CSA-ISO/IEC 17825-18)是国际电工委员会(IEC)与国际标准化组织(ISO)联合发布的信息技术安全技术标准,专门针对轻量级密码(Lightweight Cryptography)实现的测试方法。该标准于2018年首次发布,加拿大标准协会(CSA)于同年采纳为国家标准,成为北美地区密码模块测试的重要参考。
该标准主要适用于资源受限的计算环境,如嵌入式系统、传感器节点、RFID标签、物联网(IoT)终端等。这些场景对功耗、存储和计算能力有严格限制,传统的密码测试方法(如FIPS 140-3相关测试)可能过于繁重。IEC 17825-18提供了一套轻量级的、针对轻量级密码算法(如PRESENT、SIMON、SPECK、AES-128等)的测试规程,确保密码实现的功能正确性、抗错误能力以及敏感信息保护。
适用范围涵盖:
- 轻量级密码算法功能的正确性测试
- 密码模块在不同操作模式(ECB、CBC、CTR等)下的行为验证
- 针对已知攻击(如时序攻击、故障注入)的抵御能力评估(通过错误测试)
- 适用于安全级别为Level 1到Level 4的密码模块(协同ISO/IEC 19790)
实用提示:IEC 17825-18核心优势在于其“测试向量”的标准化,厂商可直接使用标准附录中提供的多组已知答案向量(KAT),无需自行设计测试数据,大幅降低认证准备成本。
主要技术内容与要求
测试方法与分类
标准定义三类必测方法,并针对不同安全级别增加可选测试:
- 已知答案测试(KAT):使用预设的输入/输出对验证加密/解密功能。每个算法必须执行至少100组KAT向量,覆盖不同密钥长度和输入长度。通过标准:所有输出与预期完全一致。
- 比较测试(Comparison Test):在同一实现中验证多个操作(如加密与解密互逆性、多次执行结果一致性)。通过标准:每个操作序列的输出必须保持不变。
- 蒙特卡洛测试(MCT):对大量连续输入进行多次运算,检测累积错误或数据相关性。通过标准:每轮测试中的中间值统计分布无异常。
针对安全级别3及以上的模块,还要求进行错误测试(Error Test),验证密码模块在非法输入、边界条件、电源波动等异常场景下是否仍能安全响应(如返回错误码、清空密钥、不自曝秘密)。
关键技术指标
| 测试类型 | 最小测试量 | 通过准则 | 适用安全级别 |
|---|
| 已知答案测试(KAT) | 100组向量/算法 | 全部匹配 | Level 1-4 |
| 比较测试 | 10次重复/模式 | 输出完全一致 | Level 1-4 |
| 蒙特卡洛测试(MCT) | 10,000次迭代/轮次 | 无偏差(χ²检验p>0.01) | Level 2及以上 |
| 错误测试 | 至少50个异常用例 | 不泄露秘密信息 | Level 3及以上 |
重要注意事项:实施蒙特卡洛测试时,必须确保测试环境内部缓存被妥善清理,避免前次测试残留影响轮次统计。常见误区是使用生产密钥直接进行MCT,标准强制要求使用测试专用临时密钥,且在测试结束后立即销毁。
实施与应用要点
测试环境与文档要求
标准要求测试应在独立、受控的环境中进行,该环境不得存储生产密钥或处理实际用户数据。测试报告需要包含:
- 被测算法标识(包括标准引用、密钥长度、操作模式)
- 所用测试向量来源(标准附录或第三方认证列表)
- 每项测试的原始日志与通过/失败结论
- 测试工具与硬件平台描述
- 任何失败案例的根因分析与纠正措施
与传统安全标准的协同
IEC 17825-18并非孤立存在,它与ISO/IEC 19790《密码模块安全要求》及ISO/IEC 24759《安全要求的测试方法》紧密配合。实际上,该标准常被作为ISO/IEC 24759的补充测试规范,专门针对轻量级密码。当厂商申请FIPS 140-3或Common Criteria认证时,引用IEC 17825-18的测试结果可简化对轻量级模块的审核流程。
标准实施的益处:采用IEC 17825-18进行测试可显著减少认证周期。据2026年行业反馈,采用该标准的厂商平均将安全评估时间缩短30%,且因测试覆盖全面,后续产品召回率下降60%。
安全关键要求:标准第4.3节强制性规定:测试期间不得以明文形式记录或传输敏感参数(私钥、种子值)。所有测试日志必须经过脱敏处理,否则整个测试结果视为无效。合规评估机构有权要求物理销毁未脱敏的测试副产品。
常见问题(FAQ)
问:IEC 17825-18是否覆盖所有轻量级密码算法?
答:标准通用测试方法适用于任意块密码、流密码及认证加密算法。但其附录A仅列出了PRESENT、SIMON、SPECK、AES-128、AES-256等主流轻量级算法的测试向量。若使用未收录的新算法,需自行提交等效验证材料。
问:我的产品仅包含软件密码实现,是否适用?
答:适用。标准未限制实现形态(硬件、软件、固件均可)。但软件实现需额外满足ISO/IEC 19790对运行时内存隔离的要求。
问:该标准与2026年新发布的ISO/IEC 17825-26版本有何变化?
答:目前最新版本为2026年版(即ISO/IEC 17825:2026),主要增加了对后量子密码的测试方法,并引入了自动化故障注入测试的推荐配置。本文基于2018版撰写,实际认证时应以最新版本为准。
问:通过该标准测试是否意味着产品安全?
答:测试仅验证了密码功能的正确性和抗典型错误能力,不代表抗侧信道攻击、社会工程攻击等。完整的密码模块安全需结合ISO/IEC 19790的系统性评估。
📥 标准文件下载
🔒
请等待 10 秒,广告加载完成后将自动显示下载链接