规范应用密码模块,提高安全保障能力

2018-05-23 06:29国家密码管理局商用密码管理办公室北京100036
信息安全与通信保密 2018年5期
关键词:固件密码模块

(国家密码管理局商用密码管理办公室 ,北京 100036)

当前,网络信息技术全面融入社会生产生活,深刻改变着国际国内经济格局、利益格局、安全格局,日益成为创新驱动发展的先导力量,同时“永恒之蓝”勒索病毒事件、FACEBOOK泄密门事件也深刻揭示着网络信息技术作为双刃剑所带来的巨大安全风险。习近平总书记多次指出,网络安全与信息化是相辅相成的,安全是发展的前提,发展是安全的保障,要统筹协调、同步推进。密码技术作为保障网络与信息系统安全的核心技术和基础支撑,近年来在国民经济各领域得到广泛应用,有力保障了国家信息安全、网络安全和经济安全。密码模块及其安全等级作为刻画商用密码产品自身防护能力的度量尺度,越来越展示出重要意义,得到广泛认可。也有单位和个人反映密码模块相关信息了解渠道较少,本文介绍了密码模块的涵义、与密码产品的关系、安全等级划分、应用选型建议等方面的有关情况,亦作为一种反馈渠道。

1 什么是密码模块

密码模块是指一系列包含于密码边界之中的硬件、软件、固件或其组合的集合,至少使用一个经国家密码管理局认可的密码算法、协议,实现一项或多项已定义的密码服务(如加/解密、数字签名/验证、密钥管理等)。密码边界是实现密码模块安全防护能力的硬件、软件、固件或其组合形成的相对明确的逻辑区域。密码边界应当至少包含密码模块内所有安全相关的算法、安全功能相关的部件。

2014年、2015年国家密码管理局分别发布了GM/T 0028 -2014《密码模块安全技术要求》和GM/T 0039-2015《密码模块安全检测要求》,两个标准是从业单位在广泛消化吸收国内外相关技术标准的基础上,结合国内在密码安全技术上的研究探索、技术创新和应用实践编制的,适用于除安全芯片和密码系统外的密码产品类型,如智能IC卡、智能密码钥匙、密码机、密码卡、VPN网关、支付终端等,是今后密码行业产品安全性要求、测评和应用的指导性文件。

2 密码模块与密码产品的关系

密码产品是密码技术的实现载体,直接为各种应用提供机密性、完整性、不可抵赖性保护,在网络和信息安全风险不断增强的情况下,密码产品自身安全防护能力的强弱也成为产品选型的重要参考。密码模块是针对密码产品自身安全防护能力进行度量而引入的一种描述。目前,国家密码管理局已开始将密码产品达到安全等级列入商用密码产品型号审批的重要因素。新的《商用密码产品型号证书》中不仅包含商用密码产品遵循的技术标准,也包括了防护能力达到的安全级别。

3 密码模块主要类型

按照密码边界划分方式不同,密码模块可分为硬件密码模块、软件密码模块、固件密码模块、混合密码模块。

硬件密码模块的密码边界为硬件边线,包括部件之间提供互联的物理配线的物理结构,如电路板、基板或其它表面贴装;有效电器元件,如半集成、定制集成或通用集成的电路、处理器、内存、电源、转换器等;封套、灌封或封装材料、连接器和接口之类的物理结构;可以包含操作系统。典型密码产品如服务器密码机。

软件密码模块的密码边界为执行在可修改运行环境中的纯软件部件和数据组件,包括构成密码模块的可执行文件或文件集;保存在内存中并由一个或多个处理器执行的密码模块的实例;可执行文件运行实例依赖的数据或文件集合。不包括其运行环境所包含的计算平台和操作系统,如移动终端密码模块(可修改运行环境指能够对系统功能进行增加、删除和修改等操作的可配置运行环境,如Windows/Linux/MacOS/Android/iOS等通用操作系统)。

固件密码模块的密码边界为执行在受限的或不可修改的运行环境中的纯固件部件,包括可执行文件或文件集;保存在内存中并由一个或多个处理器执行的可执行文件,不包括运行环境所包含的计算平台和操作系统,如JavaCard中的Java 虚拟机(受限运行环境指允许受控更改的软件或者固件模块、基于可信执行环境技术的TEE操作系统等,不可修改运行环境指不可编程的固件模块或者硬件模块)。

混合密码模块的密码边界为软件/固件和不相交的硬件部件(即软件/固件不在硬件模块边界中)及相关端口和接口集合,不包括运行环境所包含的计算平台和操作系统。

特别需要指出,密码模块的密码边界是相对的,一个密码模块产品有可能包含另一个或几个规模更小的密码模块。如一个实现复杂密码服务功能的加密机,其本身可定义为一个密码模块,而该密码机内部可能包含了一个或多个密码卡,而密码卡本身也可以作为独立的密码模块来定义。对于宏观上的同一款产品,由于划定的边界不同,则其模块类型也会有所不同,如采用Native技术的智能密码钥匙产品,在外壳边界之内的硬件和固件部分可以定义为一个硬件模块;而如果将智能密码钥匙依赖的上位机中间件(如密码接口、CSP/PKCS#11接口等)包含在边界之内,则可以将其定义为一个混合密码模块。

4 密码模块的安全级别

《安全技术要求》指定了密码模块应该满足的安全需求,涵盖了密码模块安全设计和实现的11个领域,包括:密码模块的规格说明;密码模块端口和接口;角色、服务和认证;软件/固件安全;运行环境;物理安全;非入侵安全;敏感安全参数管理;自测试;生命周期保障和其它攻击的缓解。按防护能力从弱到强定义了四个级别,每个领域在特定的安全级别上分别开展评估,综合后形成密码模块达到的安全等级。

(1)安全一级。基础级,阐明了密码模块的基本安全要求。在安全一级密码模块设计时,“软件/固件安全”、“非入侵安全”和“自测试”等3个安全域需要着重考虑,其他域的安全要求相对容易满足。安全一级密码模块不要求具有物理安全防护能力,可用于保护价值较低的数据。因此,安全一级密码模块的使用场景是已经配置了物理安全、网络安全以及管理过程等控制措施的运行环境。

(2)安全二级。在安全一级的基础上增加了拆卸证据、基于角色鉴别的功能。硬件密码模块的拆卸证据可使用拆卸存迹的涂层或封条,或者在封盖或门上加防撬锁等手段以提供拆卸证据。角色鉴别要求密码模块鉴别并验证操作员的角色,以确定其是否有权执行对应的服务。软件密码模块能够达到的最大整体安全等级为安全二级。安全二级密码模块可以抵抗使用简单工具的主动攻击,但其安全应当由操作员负责。在无保护运行环境下,安全二级密码模块只能用于保护价值一般的数据。尤其应当注意,为保证数据信息安全,必要时应对安全二级软件密码模块的运行环境设置有效安全防护措施。

(3)安全三级。在安全二级的基础上,增强了物理安全、身份鉴别、环境保护、非入侵式攻击缓解、敏感参数管理等安全机制。安全三级密码模块能够检测并防护直接访问和探测的物理攻击,能有效保护明文关键安全参数或密钥分量的输入和输出,当密码模块的封盖/门被打开时,可以提供主动防护的功能;执行服务时会验证操作员的身份和权限;能够有效防止电压、温度等环境异常对模块安全性的破坏;具备非入侵式攻击缓解技术的有效性证据和测试方法;安全三级密码模块可以抵抗使用简单工具的中等强度攻击,在无保护运行环境下,安全三级密码模块可用于保护价值较高的数据。

(4)安全四级。安全四级是标准中的最高安全等级。该等级包括安全一级、安全二级、安全三级中所有的安全特性,并增加了一些扩展特性。安全四级的密码模块提供完整的封套保护,无论外部电源是否供电,都能够检测并响应所有非授权的物理访问,从任何方向穿透密码模块的外壳都会以很高的概率被检测到,并立刻置零所有未受保护的敏感安全参数;支持多因素身份鉴别,至少包括“已知某物、拥有某物、物理属性”中的两个;还要实现规定的非入侵式攻击的缓解方法。安全四级密码模块可以抵抗使用特制工具的高强度长时间攻击。在无保护运行环境下,安全四级密码模块可用于保护价值高的数据。

5 密码模块选型建议

一方面,应考虑运行环境提供的防护能力。密码模块及其运行环境共同构成了密码安全防护系统。在低安全防护能力的运行环境中选用高安全等级的密码模块,也可能达到较高的安全防护效果;在高安全防护能力的运行环境中,也可选用较低安全等级的密码模块。

另一方面,还要考虑所保护信息资产的重要程度。信息资产包括数据、系统提供的服务以及相关的各类资源,其重要程度与所在的行业、业务场景以及影响范围有很大关系。信息资产重要程度的界定由用户机构或其主管机构负责,可参考标准GB/T 22240-2008《信息安全技术 信息系统安全保护等级定级指南》和GB/T 20984-2007《信息安全技术 信息安全风险评估规范》。重要信息系统中密码模块的选用还要符合其业务主管部门的相关要求。

另外,不同系统的重要程度不同,同一系统中的不同功能模块的重要程度也不尽相同。以电子银行系统为例,后台系统与银行账户资金直接相关,用户终端仅影响单一账户资金安全,性质不同。同一个密码模块在不同的场景中,随着配套环境的安全防护能力、访问控制等方面的差异,能够保护的信息资产重要程度也有所区别。

经专家研讨,应综合考虑密码模块的运行环境自身的安全防护能力、被保护系统和被保护资产的价值等各方面因素,选择合适安全等级的密码模块。用于基础信息网络、重要信息系统、重要工业控制系统和面向社会服务的政务信息系统的软件类密码产品,应达到安全二级或以上的安全要求。建议用户尽量选用采取硬件保护密钥机制的密码产品。确需选用软件的,要提醒用户注意防范风险,定期进行风险评估。

附件:通过国家密码管理部门审批标注密码模块安全等级的商用密码产品目录。

参考文献:

[1]关于密码模块若干问题的说明20180316.

[2]GM/T0028-2014《密码模块安全技术要求》.

[3]GM/T0039-2015《密码模块安全检测要求》.

附件:

通过国家密码管理部门审批标注密码模块安全等级的商用密码产品目录

截至2018年4月8日,标注“#1”的产品符合GM/T 0039-2015《密码模块安全检测要求》一级要求;标注“#2”的产品符合GM/T 0039-2015《密码模块安全检测要求》二级要求。

序号 产品型号 产品名称 研制单位 审批时间 型号证书编号1 SHM1602安全浏览器密码模块#1 北京海泰方圆科技股份有限公司 2016/05/17 SXH2016089 2 SHM1601 安全浏览器密码模块#1 北京奇虎科技有限公司 2016/06/22 SXH2016123 3 SHM1605 安全输入法密码模块#1 国民技术股份有限公司 2016/12/09 SXH2016298 4 SJM1701 终端密码模块#1 深圳市中电智慧信息安全技术有限公司 2017/02/03 SXH2017020

序号 产品型号 产品名称 研制单位 审批时间 型号证书编号5 SRM1701 身份认证组件密码模块#1江苏通付盾信息安全技术有限公司 2017/03/13 SXH2017041 6 SHM1702 安全浏览器密码模块#2上海众人网络安全技术有限公司/北京青年众人网络安全技术有限公司2017/03/28 SXH2017057 2017/04/28 SXH2017068 8 SJJ1717 业务数据代理加密网关#2 北京炼石网络技术有限公司 2017/05/19 SXH2017090 9 SRT1706 终端与服务器协同签名系统#1 北京安信天行科技有限公司 2017/06/22 SXH2017132 10 SHJ1702 移动办公密码应用终端#1 7 SHM1703智能移动终端安全密码模块#2中国科学院数据与通信保护研究教育中心/普华诚信信息技术有限公司山东同智伟业软件股份有限公司 2017/07/10 SXH2017146 11 SJJ1727 动态锁密码服务器#2 珠海汇金科技股份有限公司 2017/07/19 SXH2017163 12 SJK1733 PCI-E密码卡#1 广州江南科友科技股份有限公司 2017/07/20 SXH2017152 13 SJJ1730 卫星通信系统密钥管理密码机#2中国科学院数据与通信保护研究教育中心 2017/08/15 SXH2017178 14 SJJ1731 卫星通信系统端站加解密装置#2中国科学院数据与通信保护研究教育中心 2017/08/15 SXH2017179 15 SJJ1732 卫星通信系统端站加解密密码机#2中国科学院数据与通信保护研究教育中心 2017/08/15 SXH2017180 16 SJJ1733 卫星通信系统中心加解密密码机#2中国科学院数据与通信保护研究教育中心 2017/08/15 SXH2017181 17 SRT1709 客户端与服务端协同签名系统#1 收付宝科技有限公司 2017/08/21 SXH2017186 18 SRJ1709 身份证网络读卡终端#2 天地融科技股份有限公司/天地融信息技术有限公司 2017/09/13 SXH2017221 19 SRJ1710 身份证网络读卡终端(蓝牙型)#2 天地融科技股份有限公司 2017/09/13 SXH2017224 20 SJK1748 Mini PCI-E密码卡#2 天津国芯科技有限公司 2017/10/20 SXH2017231 21 SJK1749 PCI-E密码卡#2 天津国芯科技有限公司 2017/10/20 SXH2017232 22 SJM1720 航天双翼USB密码模块#1上海传真通信设备技术研究所有限公司 2017/10/20 SXH2017240 23 SJM1721 TF密码模块#2 成都卫士通信息产业股份有限公司 2017/10/20 SXH2017242 24 SRM1711 动态口令生成模块#1 深圳市文鼎创数据科技有限公司 2017/10/25 SXH2017245 25 SJM1722 智能电能表安全模块#1 南方电网科学研究院有限责任公司 2017/11/01 SXH2017255 26 SHM1705移动安全中间件密码模块#2武汉信安珞珈科技有限公司/北京信安世纪科技股份有限公司2017/11/28 SXH2017265

序号 产品型号 产品名称 研制单位 审批时间 型号证书编号27 SRM1712 动态口令生成模块#1 天地融科技股份有限公司 2017/12/04 SXH2017269 28 SJK1753 PCI-E密码卡#2 西安西电捷通无线网络通信股份有限公司 2017/12/11 SXH2017274 29 SRM1713 动态密码锁密码模块#1 南京东屋电气有限公司 2017/12/18 SXH2017281 30 SJK1750 PCI-E密码卡#2 北京数盾信息科技有限公司 2017/12/19 SXH2017261 31 SHM1706 车载密码模块#1 苏州简约纳电子有限公司 2017/12/25 SXH2017277 32 SJK1752 PCI-E密码卡#2 成都卫士通信息产业股份有限公司 2017/12/27 SXH2017273 33 SHM1801燃气表密码模块#1 北京泛辰信安科技有限公司2018/01/09 SXH2018002 34 SJJ1801 数字视频密码机#1 北京数码视讯科技股份有限公司 2018/01/09 SXH2018004 35 SJM1801 软件密码模块(Windows版)#1成都卫士通信息产业股份有限公司 2018/01/11 SXH2018009 36 SHM1802 燃气表密码模块#1 大庆英辰创新科技有限公司 2018/01/22 SXH2018020 37 SJM1802 条件接收系统终端密码模块#2北京数码视讯科技股份有限公司 2018/01/29 SXH2018026 38 SRM1801 移动安全密码模块#2 2018/02/07 SXH2018030 39 SHM1803移动智能终端安全密码模块#2上海众人网络安全技术有限公司/上海信息安全工程技术研究中心成都卫士通信息产业股份有限公司 2018/02/09 SXH2018035 40 SHM1804 移动终端密码模块#2 北京握奇智能科技有限公司 2018/02/09 SXH2018036 41 SHM1805移动智能终端密码安全模块#2 河南省中远科技有限公司 2018/02/09 SXH2018037 42 SHM1806移动智能终端安全密码模块#2 北京江南天安科技有限公司 2018/02/09 SXH2018039 43 SHM1807移动智能终端安全密码模块#2长春吉大正元信息技术股份有限公司 2018/02/27 SXH2018043 44 SJM1804 嵌入式密码模块#2 北京三未信安科技发展有限公司 2018/03/01 SXH2018047 45 SZM1801 支付密码器#1 杭州恒生数据安全技术有限公司 2018/03/02 SXH2018046 46 SJM1806 北斗定位信息加密模块#1 东方口岸科技有限公司 2018/03/16 SXH2018055 47 SHM1808智能移动终端安全密码模块#2 北京创原天地科技有限公司 2018/03/30 SXH2018071

猜你喜欢
固件密码模块
28通道收发处理模块设计
“选修3—3”模块的复习备考
密码里的爱
密码抗倭立奇功
基于SHA1的SCADA系统PLC固件完整性验证方法
密码藏在何处
基于固件的远程身份认证
夺命密码
英特尔发布免费固件引擎
提取ROM固件中的APP