本文的目的是通过这些帖子,帮助读者过一遍新的要求,并指出差异点,以及潜在的问题点(或者最少是那些将会引入开支的地方)

在对标准的深潜之旅发车之前,相信通过对FIPS 140-3引入的关键术语进行定义,先打下一个牢固的基础是比较重要的。

运行的模式——“普通模式”(Normal)和“降级模式”(Degraded)

普通模式与降级模式的运行模式在密码模块章节引入。标准将整个算法集合、安全功能、服务与进程(包括批准和未批准的)均为可用状态定义为普通模式。在出错的状态下,作为重新配置的结果,一部分算法子集、安全功能、服务与进程可用,这被称为降级模式。这与FIPS 140-2有相当大的不同,后者规定在模块出现错误时,不允许运行在一种降级的模式下。在降级模式下,模块能持续提供有限的密码服务(例如:在某组件失效后,允许重要的操作继续完成)。

模块接口——HMI, SFMI, HSMI, HFMI, 和控制输出

在密码模块章节引入了硬件模块接口(HMI),软件或固件模块接口(SFMI),以及混合软件或混合固件模块接口(HSMI或HFMI)。这里的意图是清晰地定义所有被每种模块类型用于请求服务时,进入或退出模块边界的接口或命令。这包括作为请求服务的一部分进入或离开模块的密码学边界的参数。

本节还定义了一个叫做“控制输出接口”的新接口。控制输出是发送给另一个模块的控制命令,或者指示密码模块运行状态的命令(例如,控制输出可以是通过CAPWAP从无线控制器设备发送到无线访问点的控制和提供(provision)命令)。这个逻辑接口连接之前在FIPS 140-2中定义的其他四个逻辑接口(数据输入接口、数据输出接口、控制输入接口和状态输出接口)。

自初始化(Self-initiated)密码输出

自初始化密码输出能力定义在角色、业务和认证章节。这是模块在无外部操作者请求的情况下,执行密码操作和其他SSP管理技术的一种能力。(例如,如果一个模块被配置为在启动时自动建立与另一设备间的IPSec通道)类似于FIPS 140-2当中的bypass能力,要求两个独立的内部动作来激活自初始化模块输出能力,同时模块被激活后要展示出被激活的状态。

分离与包含签名

在软件/固件安全章节,FIPS 140-3 引入了术语“分离与包含签名”(disjoint and encompassing signatures)。分离签名由一个或多个签名组成,这组签名代表整个集合的多份代码,而包含签名则是单个签名代表代表整个集合中的代码。分离签名可以用于多个二进制代码组成一个密码模块,而包含签名可以用于单个二进制代码。

非侵入式安全

FIPS 140-3中的非侵入式安全部分将重点讨论无需直接物理接触即可实施的,针对密码模块边界内组件的攻击。非侵入式安全测试标准将写入SP 800-140F(也称为FIPS 140-3附件F)。附件F可能会链接到ISO/IEC 17825,以已或批准的“非侵入性攻击缓解测试标准”。当FIPS 140-3开始应用时,哪些测试可用,或者本节的测试标准是什么等很多东西还待确定。两份ISO草案(ISO/IEC PRF 20085-1和20085-2)可能会详细说明测试工具要求和测试工具的校准方法。现在,我们将提供DPA和SPA的定义,它们是最常见的非侵入式攻击类型。

差分功率分析(DPA)是对密码模块功耗变化的分析,目的是提取与密码操作有关的信息。

简单功率分析(SPA)是对密码模块功耗相关的指令(或单个指令)执行模式的直接(主要是可视化的)分析,目的是提取与密码操作相关的信息。

SSP, CSP 和 PSP

在FIPS 140-3中的SSP(敏感安全参数Sensitive Security Parameter )管理章节有一个较大变化。这一节现在同时定义了关键安全参数(CSP)和公开安全参数(PSP)。PSP为安全相关的公开信息,它的变更会损害密码模块的安全性,例如:公钥、证书或者信任锚。SSP被定义为既包括CSP也包括PSP。可以这样想——对SSP有机密性和完整性相关的要求,而对PSP只有完整性相关的要求。

自检

FIPS 140-3的自检章节更好地在不同的自检间做了区分。它还引入了一些新的自检。运行前(Pre-Operational)自检在FIPS 140-2中被看作POST或者上电自检。条件自检(Life-cycle assurance)依然存在,但是FIPS 140-3引入了周期自检(Periodic self-tests)的概念。在安全级别SL1级中,这种自检很大程度上跟传统的FIPS 140-2的按需自检相同。但是,在SL3和SL4级中,模块必须在规定的时间内重复执行指定的自检。这意味着在没有操作者的干预下,模块需要内建这些处理逻辑。

标准也引入了一种条件故障检测自检。这种检测涉及在密码模块中集成故障检测实现。当检测到故障,密码模块的算法故障自检必须失败。

生命周期保障和供应商测试

FIPS 140-2中长期被认为过时的一节是“设计保障”(Design Assurance)。在FIPS 140-3中,这部分被称为“生命周期保障”(Life-cycle assurance),已经被彻底修改(谢天谢地!)生命周期保证是指密码模块供应商在密码模块的设计、开发、运行和生命周期结束期间使用的最佳实践。

生命周期保障包括FIPS 140-2未包含的一些附加活动。其中一个活动就是“供应商测试”。在导出测试要求(Derived Testing Requirements)文档ISO/IEC 24759:2017中对供应商测试的描述指出,对于SL 1和SL 2,测试应该包括用于检测问题的自动化安全诊断工具,例如缓冲区溢出。在SL 3和SL 4中,这应包括“低级测试”。这被定义为“测试加密模块的单个组件或一组组件,及其物理端口和逻辑接口”。我们知道这有点含糊不清。希望在未来的几个月里,从CMVP那里得到更多的指导,确切地说,这也就是他们想要弄清楚的东西。

生命周期保障包括对密码模块“生命终止”的安全要求。这是指不再部署或不再打算让操作员进一步使用模块。SL 1和SL 2级需要对加密模块进行安全消毒(sanitization)。在SL 3和SL 4中,还必须有安全销毁模块的过程要求。

本节还包括熟悉的有限状态模型或FSM。FSM在FIPS 140-2中有自己的章节。FSM章节包含新的术语,如静止状态。这是密码模块处于休眠状态的一种状态(例如低功耗、暂停或休眠)。

熟悉的概念和总结

值得注意的是,FIPS 140-3包含了一些目前在FIPS 140-2实现指南中提到的术语和概念,而不是标准本身(是的,244页的IG有些庞大)。一些条款包括运行时环境(虚拟机状态)(FIPS 140 - 2 IG 的G.13 G1.3 & IG 6.2),不可更改运行环境,有限的运行环境有限,可修改的运行环境(FIPS 140 - 2 IG 1.3),最小熵(FIPS 140 - 2 IG 7.15),可信通道(FIPS 140 - 2 IG 2.1),混合软件模块,混合固件模块(FIPS 140 - 2 IG 1.9),SSP /密钥建立,电子入口,直接入口(FIPS 140 - 2 IG 7.7),和密钥协议(IG D.2)。我们所看到的许多FIPS 140-3/140-2 delta分析材料并没有指出这一点。

我们选择将这篇文章作为一个系列,这样您就可以学习、理解并为您的FIPS 140-3测试和认证需求做计划。希望这篇文章在某种程度上能成为你的入门,让你在接下来的几个月里了解到一些要点和术语。我们希望读者们能通过这些帖子学习、理解并与我们一起成长。请继续关注这个系列的下一个帖子。

说明

这是某安全认证机构的五篇关于FIPS140-2与140-3差异的博客第一篇。我感觉作为逐渐向FIPS 140-3迁移的学习资料比较好,尝试翻译。如有错误,敬请指出。

原文链接:

https://blog.acumensecurity.net/2019/08/20/whats-the-diff-fips-140-2-and-fips-140-3-part-1-key-terms-and-definitions/

FIPS 140-3与140-2的差异-1相关推荐

  1. 140.210.28.29扬州BGP高防服务器

    江苏扬州市机房,位于运河西路237号数据中心,机柜数量400-500个,位于4楼6楼,每层200多个标准机柜,机柜42U.同机房典型客户有阿里的天猫 淘宝 CDN业务.金山云的华东最大节点,以及小米后 ...

  2. Windows服务器防火墙端口怎么开放?扬州服务器租用140.210.20.X

    什么是端口? 我们平时所说的端口其实不是指物理意义上的端口,而是特指TCP/IP协议中的端口,是逻辑意义上的端口.本地操作系统会给那些有需求的进程分配一个端口.当目的主机接收到数据包后,将根据报文首部 ...

  3. C语言:计算全班学生的总成绩、平均成绩和以及 140 分以下的人数。

    以下是使用结构体实现统计全班总成绩,平均分以及140分以下的人数. 进入程序后先进行选择是要继续输入下一个学生成绩或者退出. 当输入学生成绩后,会打印出所有学生的成绩以及全班的总成绩,平均分和少于14 ...

  4. 第二章-数据描述(初级统计)

    一.图表展示定性数据 定性数据包括分类数据和顺序数据(通常用频数分布表和图形描述). 饼图.直方图.环形图来描述的是单变量的数据. (一)频数分布表 频数分布表中落在某一特定类别的数据个数称为次数或频 ...

  5. Scipy_常用统计函数

    Scipy_常用统计函数 Weijia Li 关注公众号,一起学习~ 无聊e编程 from scipy.stats import * import numpy as np import matplot ...

  6. python画一片树叶的故事_《Python数据分析与机器学习实战-唐宇迪》读书笔记第7章--决策树...

    第7章决策树 决策树算法是机器学习中最经典的算法之一.大家可能听过一些高深的算法,例如在竞赛中大杀四方的Xgboost.各种集成策略等,其实它们都是基于树模型来建立的,掌握基本的树模型后,再去理解集成 ...

  7. [统计学笔记] (八)分类数据分析

    (八)分类数据分析 首先思考问题: 1. 为什么要对数据进行分类?如何对数据分类? 2. 数据分类后,如何对分类数据进行分析? 数据分类 分类变量的结果表现为类别,例如:性别 (男, 女) 各类别用符 ...

  8. 毕业设计 - 题目:基于机器视觉的图像矫正 (以车牌识别为例) - 图像畸变校正

    文章目录 0 简介 1 思路简介 1.1 车牌定位 1.2 畸变校正 2 代码实现 2.1 车牌定位 2.1.1 通过颜色特征选定可疑区域 2.1.2 寻找车牌外围轮廓 2.1.3 车牌区域定位 2. ...

  9. 93、R语言教程详解

    加载数据> w<-read.table("test.prn",header = T)> w X.. X...11 A 22 B 33 C 54 D 5> l ...

  10. 科学研究设计四:测量

    说明 这是Bangor University 2007年School of Sport Health & Exercise Sciences的教学讲义,大家可以在这里查看原课程的讲义 课程目录 ...

最新文章

  1. pyhon 数据类型转换函数
  2. 1.Consul 简介和环境搭建
  3. React Native 开发环境搭建
  4. [洛谷P1231] 教辅的组成
  5. python逆序数的程序_计算逆序数(归并法)程序问题 (Python)
  6. 洛谷 P1754 球迷购票问题
  7. Nginx [emerg]: bind() to 0.0.0.0:80 failed (98: Address already in use)
  8. api postmain 鉴权_认证鉴权与API权限控制在微服务架构中的设计与实现(一)
  9. 你该学点HTML/CSS知识的9大理由
  10. linux实验十shell程序设计,实验二Linux Shell编程.doc
  11. regionGrowth3D
  12. 一个股票软件开发了三年的人如何画制iOS k线图
  13. BP神经网络模型及梯度下降法
  14. Unity DoTween
  15. vnc远程控制软件下载,四款神级能够下载的vnc远程控制软件
  16. Python小项目(学生成绩管理系统)7.排序、显示部分
  17. 欧几里得算法(求解最大公约数的优质方法)以及原理拓展
  18. 英语谚语精选(English Proverb Collection)
  19. 标准交换机和分布式交换机区别
  20. Selenium打开浏览器闪退问题(浏览器驱动是对应的前提)-解决办法

热门文章

  1. Azureus Vuze v5.7.2.0官方中文版
  2. Maven中央仓库地址
  3. DPDK入门(环境搭建以及小demo)
  4. python xlwt
  5. js(EcamaScript)
  6. python图片合成视频
  7. python面试自我介绍_python自我描述
  8. Windows 11 版本介绍
  9. 虚幻引擎 4 14 版发布
  10. ucosiii系统中的任务管理