安全认证的相关知识:Irdeto、CMMI5、FIPS 140-3

一、爱迪德CA系统与NDS CA系统对比

芯片组相对于NDS CA集成,Irdeto的CA集成的门槛要低得多。也许这就是决定两者市场定位的主要因素之一。Irdeto对于芯片组的要求不高,相信做过其CA的朋友们都知道,只要芯片组支持基本的流解复用和解扰,以及支持Smart Card解密技术即可。

而现在的芯片都支持这些功能,所以现有市面上的解码芯片在技术理论上均能集成Irdeto CA功能,不论是32位机、16位机还是8位机。对于Irdeto来说,要做的仅是在这些不同的平台不同的编译环境下build适合这些平台使用的lib库即可,剩余的所有工作均由机顶盒厂商来做。

反之对于机顶盒厂商来说,他们对于方案选择的余地比较大,需要考虑的仅是方案的成本哪个更低,带来的利润哪个更丰厚,性价比哪个更好。 NDS对于芯片组的要求比较高,不仅要求芯片的主频需要达到一定的速度,而且还要嵌入ICAM硬件技术。

所谓ICAM即为Integrated Conditional Access Module集成条件接收模块,它的主要功能是实现EMM、ECM等私有数据的过滤以及对码流的解扰。这么做的主要原因就是基于安全的考虑,防止黑客恶意破解。

现在能够提供该项功能芯片组的公司主要有ST、Fujitsu、Broadcom和NEC等。在国内已经集成了NDS CA技术的机顶盒采用的芯片方案主要是ST和Fujitsu。由此比较可知,机顶盒厂商选择芯片的自由度还是做Irdeto CA集成的要大。这也是为什么Irdeto在国内市场扩张比较块的原因之一。

二、CMMI5认证

CMMI全称是Capability Maturity Model Integration,是能力成熟度集成模型,是由美国国防部与卡内基-梅隆大学和美国国防工业协会共同开发和研制的。CMMI是一套融合多学科的、可扩充的产品集合,其研制的初步动机是为了利用两个或多个单一学科的模型实现一个组织的集成化过程改进。

CMMI(Capability Maturity Model Integration For Software,软件能力成熟度模型集成)是在CMM(Capability Maturity Model For Software,软件能力成熟度模型)的基础上发展而来的。CMMI是由美国卡耐基梅隆大学软件工程研究所(Software Engineering Institute,SEI)组织全世界的软件过程改进和软件开发管理方面的专家历时四年而开发出来的,并在全世界推广实施的一种软件能力成熟度评估标准,主要用于指导软件开发过程的改进和进行软件开发能力的评估。

CMM模型自20世纪80年代末推出,并于20世纪90年代广泛应用于软件过程的改进以来,极大地促进了软件生产率的提高和软件质量的提高,为软件产业的发展和壮大做出了巨大的贡献。

然而,CMM模型主要用于软件过程的改进,促进软件企业软件能力成熟度的提高,但它对于系统工程、集成化产品和过程开发、供应商管理等领域的过程改进都存在缺陷,因而人们不得不分别开发软件以外其他学科的类似模型。

自从引入基于模型的过程改进之后,工程界至少在三个重要领域已经有了变化。

首先,执行工程的环境已经变得更加复杂。工程量更大、需要更多的人员、需要跨越公司界限、发布范围更宽更广,而且必须继续加快实现的进度,以满足客户的需要。这样导致各种协调工作的大量增加。

其次,执行工程任务的方式已经有了进化。交叉学科群组、并行工程、高度自动化的过程以及多国标准等都影响到工程实践。这样一来,一个工程项目可能要涉及到几个国际标准。

第三,软件工程研究所的软件能力成熟度模型(CMM)的成功,导致了各种模型的衍生,而每一种模型都探讨了某一特定领域中的过程改进问题。各机构也已采用多种改善模型分别处理各自的关键过程问题。在工程组织中模型的繁衍导致了过程改进目标和技术的冲突,也导致了实践人员在应用各种不同的模型来实现特定的需求时容易产生混淆,这就要求培训工作也随之增长。

所有这些变化都表明,有必要将各种过程改进工作集成起来。包含在当代工程中各种各样的学科和过程是密切交叉在一起的。在应用不同模型时,效率低下且容易混淆,常常要付出极其昂贵的代价。因而需要有一种单一的过程改进框架而又能跨越多种学科的工具。软件能力成熟度模型集成(CMMI)就是用来解决这三类问题的。 [2]

CMMI五级为优化级,是CMMI认证的最高级别。首次申报不能直接进行CMMI认证五级的申报。CMMI认证可以不用做一二级,直接做三级。但是要做CMMI四级和五级之前,必须要做并且拿到CMMI3级证书。拿到CMMI3级证书12个月之后才能申请4级认证,拿到CMMI3级证书18个月之后才能申请5级认证。

CMMI国际软件标准化体系认证作为国际通用也是唯一的软件成熟度标准,从多方面映射出一个高新技术软件企业的实力以及成熟度。CMMI认证共分为5个级别。

等级

1. 初始级 软件过程是无序的,有时甚至是混乱的,对过程几乎没有定义,成功取决于个人努力。管理是反应式的。

2. 已管理级 建立了基本的项目管理过程来跟踪费用、进度和功能特性。制定了必要的过程纪律,能重复早先类似应用项目取得的成功经验。

3. 已定义级 已将软件管理和工程两方面的过程文档化、标准化,并综合成该组织的标准软件过程。所有项目均使用经批准、剪裁的标准软件过程来开发和维护软件,软件产品的生产在整个软件过程是可见的。

4. 量化管理级 分析对软件过程和产品质量的详细度量数据,对软件过程和产品都有定量的理解与控制。管理有一个作出结论的客观依据,管理能够在定量的范围内预测性能。

5. 优化管理级 过程的量化反馈和先进的新思想、新技术促使过程持续不断改进。

在这里插入图片描述

三、FIPS 140-3 认证

FIPS 140-3是美国和加拿大政府共同赞助的安全标准,规定了硬件、软件和固件解决方案中加密模块的安全要求。美国和加拿大联邦机构用于处理敏感但未分类信息的加密设备必须完成FIPS 140-3技术验证。

美国联邦标准信息处理标准(Federal Information Processing Standards, FIPS)其前身为联邦信息安全管理法案(Federal Information Security Management Act, FISMA),规定美国联邦政府机构必须使用经过验证的密码模块,以确保密码模块安全和操作性。因此,美国国家标准研究院(National Institute of Standards and Technology, NIST)与加拿大通讯安全局(Communications Security Establishment Canada, CSEC)在1996年共同建立了FIPS 140标准,定义供货商在出售给美国联邦政府的密码系统关键安全参数。

FIPS 140-3即将于2021年9月正式上路

随着密码技术的进步,FIPS 140标准发展至今已更新至第三版(FIPS 140-3),现行的FIPS 140-2也将于2021年9月22日后停止受理申请认证。未来所有密码模块开发商与加密加速器开发商等受管制行业,所出售的任何硬件或软件密码模块,皆必须支持FIPS 140-3认可列表中的算法,同时也要符合相关算法及密码模块要求,并且由认可实验室验证这些算法的实际运作。由于FIPS 140-3设定了高安全性基准,医疗保健与金融等产业也正在评估采用该标准来保护其敏感数据。

FIPS 140-3认证计划与相关要求

美国国家标准研究院(NIST)对于 FIPS 140系列的标准订定密码算法认证计划 (Cryptographic Algorithm Validation Program, CAVP)与密码模块认证计划 (Cryptographic Module Validation Program, CMVP),分别对密码算法与密码模块提供检测及验证方案,计划简单说明如下:

密码算法认证计划 (Cryptographic Algorithm Validation Program, CAVP)

提供对已核准(即FIPS核准和NIST推荐)密码算法及其各个组成部分的验证测试。密码算法验证是密码模块验证的先决条件,开发厂商需向认可实验室提出算法验证测试申请,经过认可实验室成功测试后便会公告在NIST官方页面,说明开发厂商、实作方式、操作环境、验证日期及算法详细信息。

密码模块认证计划 (Cryptographic Module Validation Program, CMVP)

提供密码模块验证及测试,其先决条件为模块内使用了至少一个通过CAVP密码算法验证的FIPS核准或NIST推荐的密码算法。根据密码算法的使用定义出相关模块边界(Boundary),认可实验室对其边界内相关硬件、软件、固件、系统及接口等组件,根据衍生测试要求(Derived Test Requirements, DTR)进行测试和验证。验证之测试结果由认可实验室交由NIST进行审核,通过验证的密码模块同样也会被公告在NIST官方页面,说明开发厂商、操作方式、操作环境、验证日期及算法证书编号等信息。

FIPS 140-3密码模块认证计划中的安全要求包含下列11个安全领域:

  • Cryptographic Module Specification (密码模块规格)

  • Cryptographic Module Interfaces (模块数据接口)

  • Roles, Services, and Authentication (授权的角色、服务和身份验证)

  • Software/Firmware Security (软件/固件安全)

  • Operational Environment (操作系统安全)

  • Physical Security (实体安全)

  • Non-invasive Security(非侵入式安全)

  • Sensitive Security Parameter Management (敏感安全参数管理)

  • Self-Tests (自我测试)

  • Life-cycle Assurance (生命周期保证)

  • Mitigation of Other Attacks (抵挡其他攻击方法)

根据其要求的复杂度与严谨度分为基本要求的安全等级(Security Level)1至最严格的安全等级4,共分为四种安全等级,不同的模块安全等级对其能抵挡攻击的能力、防止攻击来源及目的皆有所不同。例: 安全等级1其目的系为防止内部人员操作失误导致CVP (Cryptographic Validation Program)的错误而非抵挡恶意攻击;安全等级4则是为了抵挡内外部恶意的攻击,或持有大量资源及高等攻击能力知识的组织对产品进行攻击进而获取敏感数据。

前述列出的11个安全领域根据各个安全等级有其相对应的安全要求,而较高安全等级涵盖较低等级的所有安全要求,所有安全领域最低安全等级评等即为密码模块的整体评等(Overall Level)。针对各安全等级概括要求差异说明如下:

安全等级1

a. 模块至少使用一个NIST规定或建议的安全功能(Security Function)。

b. 执行在无法改动(Non-modifiable)、限制改动(Limited-modifiable)或可改动(Modifiable)的操作环境中。

c. 实体安全仅要求使用一般生产等级的组件。

d. 以文件说明所有非侵入式或其他攻击的安全缓解机制。

安全等级2

a. 实体安全增加窜改证据(Tamper-evidence)机制的要求,其中包含使用防窜改涂层或防撬锁。

b. 使用基于角色(Role-based)使用者验证机制。

c. 软件模块运行在可改动的操作环境,需要提供访问控制列表(Access Control List, ACL)以控管保护避免非授权执行、修改、泄露及读取软件模块。

安全等级3

a. 新增避免非授权存取于模块内部敏感安全参数的要求。

b. 实体安全新增防窜改响应机制,和避免由通风洞口进行探测攻击的安全机制等要求。

c. 使用基于身份(Identity-based)使用者验证机制。

d. 需使用信任路径(Trust Path)或分持机密(Split Knowledge)的方式再手动建立明文的关键安全参数时进行加密。

e. 新增针对操作环境中模块工作电压与温度范围的保护机制,避免超出工作环境能力而导致安全性风险的要求。

f. 所有非侵入式攻击的安全缓解机制,需根据标准规范的安全等级3测试要求进行测试。

g. 新增生命周期保证(Life-cycle Assurance)要求包括:自动化设置管理、详细设计、Low-level测试和使用厂商(Vendor)提供的信息进行操作验证。

安全等級4

a. 使用多因子(Multi-factor)使用者验证机制

b. 所有非侵入式攻击的安全缓解功能,需根据标准规范的安全等级4测试要求进行测试。

NIST对认可实验室的高规格要求
密码算法认证计划或密码模块认证计划的验证评估作业,都必须由National Voluntary Laboratory Accreditation Program (NVLAP)计划认可的密码和安全测试(Cryptographic and Security Testing, CST)实验室进行。针对CST实验室NIST也有高规格的规范要求。NIST规范实验室需要有至少2位(含)以上的测试人员通过CVP测试人员资格考试,该测试实验室同时也需拥有ISO 17025实验室质量能力。NIST对实验室要求规范的严格,全球截至目前为止,仅有20间实验室通过NIST认证并成为核可的CST实验室;在密码安全认证上全球也仅有81位取得CVP资格成为密码安全专家。

经由受认可的CST测试实验室进行加密模块测试,产出验证报告,再由NIST审核通过后,证书将发布到NIST官网上提供搜索。透过FIPS 140-3的密码模块验证,使具有密码功能的信息安全产品,能够有效降低密码算法的失误率及防止敏感性数据的泄露。

四、Riscure

Riscure公司成立于2001年,是全球芯片侧信道安全领域的先驱与技术和市场领导者。经历了近20年的发展,Riscure公司的安全测评服务及测试工具经过全球范围广泛客户的使用和验证,具有很高的可靠性、易操作性和成熟稳定性。Riscure为扩展全球业务,于2017年12月在中国设立分部——安试酷信息科技(上海)有限公司。

参考资料

  • https://blog.csdn.net/aaaaatiger/article/details/1824188?spm=1001.2014.3001.5506
  • https://zhuanlan.zhihu.com/p/353159026?utm_id=0
  • https://zhidao.baidu.com/question/1441495873634683299.html

猜你喜欢

转载自blog.csdn.net/weixin_45264425/article/details/132375943