【word】 密码模块安全测评标准的演进:现状、困境与趋势.doc
《【word】 密码模块安全测评标准的演进:现状、困境与趋势.doc》由会员分享,可在线阅读,更多相关《【word】 密码模块安全测评标准的演进:现状、困境与趋势.doc(30页珍藏版)》请在三一办公上搜索。
1、密码模块安全测评标准的演进:现状、困境与趋势第26卷第2期2011年4月成都信息工程学院JOURNALOFCHENGDUUNIVERSITYOFINFORMATIONTECHNOL(YVl01.26No.2Apr.20111文章编号:1671.1742(2011)02.0109一()14密码模块安全测评标准的演进:现状,困境与趋势周永彬,李建堂,刘继业(中国科学院软件研究所信息安全国家重点实验室,北京100190)摘要:联邦信息处理规范FIPS140系美国国家标准技术研究所(NIST)制定并由美国联邦政府颁布的密码模块安全要求.FIPSI40.1与FIPS140.2先后于1994年和2001年
2、颁布执行.按照NIST每5年启动1次标准审查的既定方针,FIPS1402的审查暨FIPS1403的制定工作于2005年1月启动.但是,在先后公布FIPSl403草案与修订草案并面向全球征集到2000余条修订意见后,时至今日,FIPS1403标准仍未颁布,这一事实引人深思.通过对近20年来FIPS140系列标准演变的分析,结合密码分析与应用技术的发展,探讨FIPSl40系列标准随着密码模块技术发展产生的结构性与技术性改进以及当前陷于困境的可能原因,展望可能的发展趋势.关键词:密码模块;标准;安全要求;安全等级中图分类号:TP393.08文献标识码:A1引言FIPS140系列标准系美国国家标准技术
3、研究所(NIST)制定并由美国联邦政府颁布的密码模块安全要求,旨在规范密码模块的设计,实现,使用及销毁过程涉及的技术与流程.FIPS140所提供的安全保障,既不确保绝对安全的应用及部署,也不保证密码模块的绝对安全性,只是针对八项功能性安全目标提出具体的安全要求.所以,FIPS140系列标准是目标导向的安全测评标准.FIPS140系列标准主要面向美国和加拿大,同时也被亚洲的日本,韩国,台湾等国家和地区的主要密码模块厂商广泛接纳.截止2011年6月13日,FIPS140系列标准已经完成300余家密码模块厂商的1557种安全产品的检测.FIPS140112于1994年首次颁布,由政府和产业界工作组共
4、同制定,产业界工作组成员分别来自运营商和厂商.工作组分别对11个安全领域规定了密码模块的4个递增的安全等级,分别适用于多层次数据敏感性与多样化应用环境.这4个安全等级能够针对不同的数据敏感度和不同的应用环境提供经济有效的密码模块安全解决方案.2001年,在吸收了自FIPS1401发布以来适用标准和技术方面的变化,并考虑了来自厂商,实验室和用户团体的不同意见与建议的基础上,NIST颁布了FIPS1402_jJ以取代FIPS1401.FIPS1402的审查暨FIPS140.3的制定工作于2005年1月启动.NIST于2005年9月和2008年3月分别召开了两次专题研讨会,分别针对硬件安全领域和软件
5、安全领域的技术进展和标准制定工作召集产业界和学术界的专家参与讨论,并先后于2007年5月和2009年12月发布了FIPS140.3草案(FIPS1403Draft,简记为FIPS1403D)l4J及FIPS1403修订草案(FIPS1403DraftRevid,简记为FIPS140.3DR)_5J.基于这两部草案,截止2010年底,NIST共向全球的厂商,科研团体及检测机构征集了2000余条修改意见及建议.按NIST制定的每5年启动1次FIPS140系列标准审查的既定方针,本应于2006年启动的对FIPS1402的审查工作提前至2005年,这一现象反映了密码分析技术的发展以及新兴密码技术在密码
6、模块中的应用迫使FIPS140标准须更新以适应技术进步的客观需求.然而,时至今日,最终的FIPS1403标准仍未正式颁布,NIST再次将FIPS1403的颁布时间推迟至2011年年末l_6j6,这与FIPS1402颁布的时间间隔已达l0年,远长于颁布FIPS1401与颁布FIPS140.2的7年的时间间隔.FIPS1403迟迟不能发布这一事实反映出FIPS1403的制定遭遇了更多,更大的困难和挑战,主要集中在物理安全和软件安全领域.通过对近20年来FIPS140系列标准安全要求演变的分析,结合密码分析与应用技术的发展以及密码新技术在密码模块中的应用,探讨FIPS140系列标准应对密码模块技术发
7、展的结构性与技术性改进以及当前陷于困境的可能原因.此外还总结了FIPS140系列标准的几个显着特点,以期对国内相关标准的制定有些许参考价收稿日期:2011-04-20基金项目:国家自然科学基金资助项目(61073178);北京市自然科学基金资助项目(4l12064)Ll0成都信息工程学院第26卷值;同时,展望了FIPSI403的发布将会对学术界和产业界可能产生的影响.2安全领域变化概述FIPS140系列标准详细规定了符合标准的密码模块应该满足的各项具体安全要求.FIPS140一l和FIPSl402覆盖了密码模块的设计与实现相关的各个安全领域,而FIPS1403中的当前版本FIPs1403DR的
8、安全要求则覆盖了与密码模块的设计,实现,操作与销毁等相关领域,如表l所示.表1FIPS140系列标准的安全要求包含的11个领域由表l可以看出,FIPS140系列标准近20年的制定与修订基本上延续了FIPS1401的安全领域划分,但随着信息安全与软件技术的发展,密码攻击手段的多样化以及安全检测水平的提升,在各个安全领域或多或少的进行了范围或者检测手段的调整(见表1中用下划线标记的安全领域).例如,在软件安全领域,FIPS140系列标准先后从软件安全扩展到设计保障,进而又提出了软件与固件安全的概念.这种变化正是软件和固件不同的安全保护手段和需求所导致的.例如,在物理安全与非入侵式攻击方面,FIPS
9、140系列标准的制定经历了从无到有,从可选要求到强制要求的变化,这种变化的直接驱动力即是侧信道攻击对密码模块造成的前所未有的威胁以及检测技术客观上的滞后性.再例如,从FIPS1401/2中的密钥保护到FIPS1403DR中的敏感安全参数管理,这种对敏感信息范围的延展变化,体现出当今信息安全领域对于密码模块安全性的理解已经发生了改变,单纯保护密钥已经无法满足安全需求.3各安全领域安全要求具体变化下面将对FIPS140系列标准演进过程中安全领域的调整,以及各个安全领域中具体安全要求的变化进行更深入的剖析.3.1密码模块规格密码模块规格领域中,FIPS140系列标准均定义了适用的密码模块,并且限定了
10、密码模块的密码边界.随着计算机和微电子技术的进步,不同类型密码模块的安全威胁和保护方式呈现出不同特征,FIPS1403DR在FIPS1401/2的基础上把密码模块分为硬件,软件,固件和昆合密码模块4类,并分别限制和界定了这4类密码模块的密码边界,这一改变有利于安全要求具体化,从而具有更强的可行性.FIPS1401并没有操作模式的概念;FIPS1402引人了批准操作模式;在此基础上,FIPS140.3DR又引人了多种批准操作模式,降级操作模式和非批准操作模式.批准操作模式指只使用批准或获准安全功能的密码模块操作模式;在批准操作模式的基础上,多种批准操作模式允许每个密码模块在多种不同的批准操作模式
11、下提供不同的批准或获准的安全功能子集.当部分安全功能自检错误或者运行过程中检测到故障时,FIPSI403DR要求密码模块自动进人降级操作模式.在降级操作模式下,经检测正确的安全功能方可用.非批准操作模式是当密码模块只提供非批准的服务或不满足FIPS140.3DR中要求时,密码模块进人的操作模式.多种操作模式的引入,使FIPS1403DR对于更广泛类型的密码模块具有更好的适用性,同时试图确保一些没有实现”批准依准安第2期周永彬等:密码模块安全测评标准的演进:现状,困境与趋势全功能”的安全模块具有最大限度的安全性.FIPS140系列标准在引入操作模式的概念以前,要求通过对操作员进行认证来控制用户(
12、角色)对密码模块的操作(对人员的控制);而在引入操作模式后,要求用户对密码模块的操作同时还受控于模块的操作模式(对服务的控制).引入操作模式使用户与密码模块交互下的控制机制更细密.由此,推断FIPS140系列标准引入操作模式能够通过控制服务以加强对密码模块安全性即关键安全参数(CriticalSecurityParameter,CSP)的控制.然而,引人操作模式也导致了一些潜在的技术问题.首先,密码模块在不同的批准操作模式间切换引发了两点争论:模块的整体安全等级是否需要保持不变?是否所有CSP都不能在不同批准操作模式间被共享与访问?此外,各种模式,服务以及转换条件的定义还存在状态完备性的问题.
13、通过分析,发现FIPS1403DR中的全部操作模式并不能涵盖所有服务的运行状态,例如批准和非批准服务同时运行并不属于上述几种操作模式的任意一种操作模式.因此,我们认为FIPS1403正式版本应当对此问题进行处理,并适当修正.3.2密码模块接口密码模块接口限制所有的逻辑信息流只可以通过标识为输入输出的物理访问点或者逻辑接口进出模块的密码边界.FIPS1401将密码模块的接口抽象为数据输人偷出接口,控制输人接口和状态输出接口,此外,密码模块还可以具有供电接口和维护访问接口等可选接口,安全要求则主要确保敏感数据传输在各个接口物理隔离.FIPS1402在密码模块接口方面的安全要求与FIPS1401相比
14、变化不大.一个显着的变化是去除了维护访问接口;另一个重要的信息是首次提出了可信路径的概念,可信路径是信息安全领域的热点概念可信信道的雏形.FIPS1403DR的最显着变化是强化了可信信道的安全要求,在敏感安全参数(SensitiveSecurityParameter,SSP)管理中大量采用可信信道.并对可信信道的实现提出了具体的安全要求,即可信信道必须提供数据源认证并避免未经授权的对SSP的更改,替换,读取以及重放操作.可信信道作为信息系统安全领域的热门技术,FIPS1403DR将其作为密码模块的通用安全要求引发了一些问题和争议_7J.JCMVP(JapanCryptographicModul
15、eValidationProgram)指出在单芯片的密码模块中实现可信信道的成本过高;而IBM对可信信道的质疑则在于可信信道的概念本身,主张应当使用”端到端安全”机制代替可信信道.事实上,学术界目前对于可信信道的核心概念仍存在较大争议和质疑8.3.3角色,服务与认证角色,服务与认证安全领域中,FIPS140系列标准规定了密码模块应该支持的必备与可选角色,必备与可选服务,以及不同安全等级的密码模块应该支持的操作员认证机制,如表2所示.表2FIPS140系列标准要求密码模块支持的角色,服务与认证ll2成都信息工程学院第26卷在角色方面,F1PS1403DR开始要求密码模块支持可信角色.可信角色是密
16、码模块的一种工作状态,该状态下,模块可以运行密码操作以及其它批准的安全功能而无须对外界实体进行认证.从上述可信角色的定义发现,FIPS1403DR中的可信角色属于状态范畴.可见,该定义是含糊的;另一个问题是:有些密码模块出厂前已经完成所有的密码初始化,是否应该要求这类密码模块必须支持密码主管角色l77在服务方面,FIPS1403DR增加了对于密码模块提供输出模块版本号和执行清零两个必备服务的要求;可选服务除了旁路服务外,还可能包括软件/固件加载服务.在认证方面,FIPS140一l/2要求密码模块使用基于角色或基于身份的单因素认证机制,而FIPSl40.3DR要求满足安全等级4的密码模块使用多因
17、素认证机制l9J.一般而言,认证因素可以分为3类,分别是:所知(如PIN或口令),所有(如智能卡或token)和所属(如指纹或声音).多因素认证要求用户应该至少支持上述认证因素中的两个.双因素认证的思想在20世纪90年代已经提出,直到2004年12月Etrade金融才开始试点采用双因素认证机制;美银(BankofAmerica)于2005年底开始采用被称作SiteKey加的双因素认证机制.考虑到双因素认证开始在产业界愈发广泛的应用,NIST在FIPS1403D中提出了对双因素认证的要求;随着多因素认证技术的发展,例如使用图形密码1”和移动电话L1j的多因素认证等,NIST在FIPS1403DR
18、中将安全要求中的双因素认证修订为多因素认证.3.4软件/固件安全FIPS1401为固件组件与软件组件统一制定了安全要求,统称为软件安全.FIPS140.2将密码模块软件/固件组件的安全要求弱化,置于生命周期保障的安全要求中.面对迅速发展的软件攻击技术,FIPS1403DR重新强化了对软件/固件的安全要求.具体而言,FIPS1401主要对软件/固件设计中的文档编制(包括设计文档,代码和注释),编程语言和密码模块安全运行的状态模型做出要求.在FIPS1401颁布近20年后的今天看来,FIPS1401制定时对于软件安全的认识与现今观点有较大差异,FIPS140一l更偏重于对软件工程流程方面的安全要求
19、.所以,FIPS1402将FIPS140一l中软件安全要求涵盖在生命周期保障领域,该领域属于软件工程的范畴.FIPS1403DR对于软件佃件安全性的认识发生了变化,提出了对软件安装过程的安全性,完整性检测,对软件/固件访问权限以及代码签名认证机制等方面的安全要求.可见,FIPS1403DR对软件/固件安全要求主要体现在对软件/固件提供方的身份认证信任以及软件的防篡改方面.这种变化反映了近年来软件/固件安全保护方面的技术更新思路.软件代码签名一直是软件安全领域的研究热点,理论和实践也证明,最新的代码签名技术能够较好地保障软件安全性.例如,Kozen等人提出了一种简单有效的方法对已编译的代码进行认
20、ill!13j.这种认证技术能够保证代码一定限度的安全,包括控制流安全,存储安全和堆栈安全,而且这种系统设计简单,有效,易于与现有的编译器融合.Stillerman等人认为签名技术为固件安全提供的安全保护功能有限,并实现了一种高效代码认证(EfficientCodeCertification,ECC)技术来保证系统中固件的安全l1.这种认证技术基于一种认证编译器,可以使用认证编译器对固件代码进行统计分析来保证固件的安全性.Denney等人给出了一个集成的可认证代码生成系统,这个系统实现了在代码生成的过程中进行代码认证的功能,以此保证代码的安全5l.可见,FIPS1403的编制切实结合了科研进展
21、,体现了其在系统安全技术方面的导向性.然而,目前FIPS1403DR在软件/固件安全要求方面尚存一定的问题.最主要的问题是其对软件/固件的安全要求能否充分保障软件/固件的安全性,是否需要进一步强化?在文献16中,作者针对固件安全检测方面的问题和不足进行了研究,提出了一些改进的方法,包括对固件安全检测系统的准确性和多样性的改进,评估程序的标准化,加人动态代码认证保证固件的安全以及加入数据接人保护保证固件的安全.此外,苹果公司对代码签名和完整性检测技术的应用本身提出了质疑7l.他们认为根据Kirchhoff准则,密钥是密码模块中需要唯一保护的要素.IBM公司认为FIPS1403DR中强制采用带密钥
22、的完整性检测技术完全可以在不降低安全性的前提下采用效率更高的不带密钥的完整性检测技术.综上所述,目前在软件/固件安全要求方面,我们对FIPS140.3DR指定的代码认证技术提供的安全保护是否充分仍存质疑,这也是NIST在最终颁布FIPS140.3前必须面对的问题.3.5工作环境密码模块的工作环境是指密码模块正确运行需要的所有软件,固件和硬件集合.硬件模块可以j_a_仃z-,而第2期周永彬等:密码模块安全测评标准的演进:现状,困境与趋势Il3软件和固件需要在一定的工作环境中执行.软件/固件的工作环境至少包括模块自身和计算平台,其中计算平台包括支持或控制软件/固件执行的操作系统.为了保证软件/固件
23、在工作环境中安全执行,需要为密码模块的工作环境制定安全要求.FIPS1401尚未提出工作环境安全的概念,只提出了针对操作系统的安全要求.具体地,FIPS140一l在安全等级2,3,4分别要求操作系统符合可信计算机系统评估准则(TrustedComputerSystemEvaluationCriteria,TCSEC)的C7,B1和B2级认证或者其他经NIST授权的等效认证.此外,对密码软件的格式,对密码模块的访问限制(用户数量限制和时间限制),对于CSP的访问控制等在安全等级L和2做出了安全要求.从安全等级3开始,FIPS1401要求GSP须经由可信路径传输,并要求操作系统提供对CSP以及控制
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- word 【word】 密码模块安全测评标准的演进:现状、困境与趋势 密码 模块 安全 测评 标准 演进 现状 困境 趋势
链接地址:https://www.31ppt.com/p-4168533.html