商用密码应用于安全性评估(Word版)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
商用密码应用与安全性评估
2020年1月
法律、行政法规和国家有关规定要求使用商用密码进行保护的关键信息基础设施,其运营者应当使用商用密码进行保护,自行或者委托商用密码检测机构开展商用密码应用安全性评估。
关键信息基础设施的运营者采购涉及商用密码的网络产品和服务,可能影响国家安全的,应当按照《中华人民共和国网络安全法》的规定,通过国家网信部门会同国家密码管理部门等有关部门组织的国家安全审查。
——摘自《中华人民共和国密码法》第二十七条
PREFACE序当今,数字化、网络化、智能化深入发展,网络空间与物理空间的边界正在逐渐消融,以网络安全为代表的非传统安全威胁与传统安全威胁融合交织,深刻改变网络安全需求,深刻影响网络安全格局。
公共通信和信息服务、能源、交通、水利、金融、公共服务、电子政务等重要行业和领域的网络与信息系统是经济社会运行的神经中枢,是网络安全的重中之重,其安全稳定运行关乎国家安全、国计民生、公共利益,一旦遭到破坏、丧失功能或者数据泄露,后果不堪设想。
物联网、大数据、云计算等技术的飞速发展激发了前所未有的科技创新动力,正在重塑世界科技创新版图,万物互联、天地一体成为必然趋势。
网络威胁泛在化和复杂化程度不断加深,被动式防御、增量式修补、局部式治理已不能适应严峻多变的网络安全形势,必须建立一个足够强大的自主可控安全防御体系。
密码是国之重器,是保障网络安全的核心技术和基础支撑,在网络安全防护中具有不可替代的重要作用。
利用密码在安全认证、加密保护、信任传递等方面的重要作用,构建网络空间安全保障体系、实现国家网络空间安全自主可控,必须坚持以密码为基石,推动密码全面规范应用,有效控制或消除网络安全问题,实现从被动防御向主动免疫的战略转变。
当前,我国重要网络与信息系统密码应用仍存在不科学、不规范等突出问题,给国家安全和社会发展造成重大隐患。
《密码法》对密码应用和安全性评估作出了规范。
落实该法有关要求,确保密码在网
络与信息系统中安全、规范使用,亟需提升密码测评能力,完善密码应用安全性评估审查机制,构建自主可控的密码应用安全性评估体系。
商用密码应用安全性评估,是指对网络与信息系统中密码应用的合规性、正确性、有效性进行科学评估,是《密码法》提出的具体要求,是有效应对我国网络安全严峻形势的迫切需要,是落实国务院“放管服"改革要求和国家关键信息基础设施防护责任的重要举措,是商用密码管理的一项基础性、开创性工作。
为便于商用密码从业人员开展相关工作,国家密码管理局组织专家、学者和业务骨干编写了《商用密码应用与安全性评估》一书,这是我国第一部系统介绍商用密码应用和安全评估工作的著作。
希望本书的出版能够对密码从业者有所启迪,能够吸引和集结更多的产学研用等各方力量,研究密码、使用密码、推广密码,为构筑密码强国夯实基础。
党的十九大提出了新时代坚持和发展中国特色社会主义的战略任务,开启了实现中华民族伟大复兴的新征程。
站在新的历史方位,密码从业者更须砥砺前行,坚定不移推进密码应用和创新发展,为建设网络强国做出新的贡献。
中国工程院院士
FOREWORD前言本书围绕商用密码应用与安全性评估这一主线,注重理论联系实际,通过密码算法、产品标准讲解和实际案例分析,给出了商用密码应用安全性评估的基本原理和实施要点,指导测评人员正确开展商用密码应用安全性评估,帮助商用密码从业人员培训了解商用密码政策、知识和安全性评估工作。
全书共5章。
第1章介绍密码的基础知识,主要包括密码概念、作用、技术和功能等;第2章介绍商用密码应用与安全性评估相关政策法规,主要阐述我国商用密码管理、应用法律政策要求和商用密码应用安全性评估体系;第3章介绍商用密码标准与产品应用,描述密码产品的类型及检测框架,并对主要商用密码产品的基本形态、标准规范、应用要点等进行解读;第4章介绍密码应用安全性评估实施要点,对密码应用方案设计、密评标准进行解读,明确测评实施过程中相关要求,并给出相应的实现和测评方法;第5章介绍重要领域具有代表性的密码应用典型案例,通过对案例进行剖析,从密码应用需求、系统架构和业务功能等方面入手,解析具体的密码应用方案和评估实施指南,以解读和说明相关标准和测评实施关键点。
附录列出与密评相关的政策法规和标准规范,方便读者查阅。
由于编者认识的局限,书中不妥和错漏之处在所难免,同时,商用密码发展一直在路上,《密码法》刚刚完成立法工作,很多规章和制度还在逐渐完善和健全中,恳请读者提出宝贵意见,帮助本书不断改进和完善。
《商用密码应用与安全性评估》编写
目录
1.密码基础知识 (10)
1.1.密码应用概述 (10)
1.1.1.密码的概念与作用 (10)
1.1.2.密码功能与密码应用 (13)
1.1.3.密码应用中的安全性问题 (15)
1.2.密码应用安全性评估基本原理 (16)
1.2.1.信息安全管理过程 (16)
1.2.2.信息安全风险评估 (19)
1.2.3.密码应用安全性评估的定位 (22)
1.3.密码技术发展 (26)
1.3.1.密码技术创新 (26)
1.3.2.我国商用密码发展历程 (32)
1.3.3.密码技术发展趋势 (33)
1.4.密码算法 (38)
1.4.1.对称密码算法 (39)
1.4.2.公钥密码算法 (51)
1.4.3.密码杂凑算法 (60)
1.4.4.密码算法分析概要 (67)
1.5.密钥管理 (69)
1.5.1.密钥生命周期管理 (69)
1.5.2.对称密钥管理 (74)
1.5.3.公钥基础设施 (78)
1.6.密码协议 (83)
1.6.1.密钥交换协议 (83)
1.6.2.实体鉴别协议 (86)
1.6.3.综合密码协议举例 (88)
1.6.4.密码协议分析概要 (98)
1.7.密码功能实现示例 (99)
1.7.1.保密性实现 (100)
1.7.2.完整性实现 (100)
1.7.3.真实性实现 (102)
1.7.4.不可否认性实现 (106)
2.商用密码应用与安全性评估政策法规 (109)
2.1.网络空间安全形势与商用密码工作 (109)
2.1.1.国际国内网络空间安全形势 (109)
2.1.2.商用密码的由来与发展 (113)
2.1.3.商用密码应用问题及安全性评估的重要性 (114)
2.2.商用密码管理法律法规 (116)
2.2.1.《密码法》实施前商用密码法律法规体系 (116)
2.2.2.商用密码法律法规体系建设展望 (121)
2.3.商用密码应用法律政策要求 (125)
2.3.1.国家法律法规有关密码应用的要求 (125)
2.3.2.国家政策文件中有关密码应用政策 (129)
2.3.3.国家战略和规划有关密码应用的要求 (132)
2.3.4.行业和地区有关密码应用要求 (137)
2.4.商用密码应用安全性评估工作 (140)
2.4.1.商用密码应用安全性评估体系发展历程 (140)
2.4.2.商用密码应用安全性评估的主要内容 (143)
2.4.3.商用密码应用安全性评估政策法规和规范性文件 (144)
2.4.4.商用密码应用安全性评估各方职责 (159)
3.商用密码标准与产品应用 (162)
3.1.密码标准框架 (162)
3.1.1.密码标准化概况 (162)
3.1.2.密码标准体系概要 (165)
3.2.商用密码产品类别 (171)
3.2.1.商用密码产品类型 (171)
3.2.2.商用密码产品型号命名规则 (175)
3.2.3.商用密码产品检测认证制度安排 (177)
3.3.商用密码产品检测 (180)
3.3.1.商用密码产品检测框架 (181)
3.3.2.密码算法合规性检测 (183)
3.3.3.密码模块检测 (189)
3.3.4.安全芯片检测 (198)
3.4.商用密码标准与产品 (201)
3.4.1.智能IC卡标准与产品 (202)
3.4.2.智能密码钥匙标准与产品 (207)
3.4.3.密码机标准与产品 (213)
3.4.4.VPN标准与产品 (225)
3.4.5.电子签章系统标准与产品 (239)
3.4.6.动态口令系统标准与产品 (245)
3.4.7.电子门禁系统标准与产品 (250)
3.4.8.数字证书认证系统标准与产品 (257)
4.密码应用安全性评估实施要点 (267)
4.1.密码应用方案设计 (267)
4.1.1.设计原则 (267)
4.1.2.设计要点 (268)
4.2.密码应用基本要求与实现要点 (270)
4.2.1.标准介绍 (271)
4.2.2.总体要求解读 (272)
4.2.3.密码技术应用要求与实现要点 (274)
4.2.4.密钥管理要求与实现要点 (286)
4.2.5.安全管理要求 (292)
4.3.密码测评要求与测评方法 (294)
4.3.1.总体要求测评 (295)
4.3.2.典型密码产品应用的测评方法 (296)
4.3.3.密码功能测评 (298)
4.3.5.密钥管理测评 (313)
4.3.6.安全管理测评 (320)
4.3.7.综合测评 (326)
4.4.密码应用安全性评估测评过程指南 (326)
4.4.1.概述 (327)
4.4.2.密码应用方案评估 (330)
4.4.3.测评准备活动 (332)
4.4.4.方案编制活动 (335)
4.4.5.现场测评活动 (339)
4.4.6.分析与报告编制活动 (342)
4.5.密码应用安全性评估测评工具 (349)
4.5.1.测评工具使用和管理要求 (349)
4.5.2.测评工具体系 (350)
4.5.3.典型测评工具概述 (352)
4.6.测评报告编制报送和监督检查 (355)
4.6.1.测评报告管理要求 (355)
4.6.2.测评报告体例 (359)
4.6.3.测评相关信息报送 (360)
4.6.4.测评报告监督检查 (362)
4.6.5.测评报告编制常见问题 (363)
5.商用密码应用安全性评估案例 (367)
5.1.密钥管理系统 (368)
5.1.1.密码应用方案概述 (369)
5.1.2.密码应用安全性评估测评实施 (376)
5.2.身份鉴别系统 (381)
5.2.1.密码应用方案概述 (382)
5.2.2.密码应用安全性评估测评实施 (386)
5.3.金融IC卡发卡系统和交易系统 (390)
5.3.1.密码应用方案概述 (390)
5.3.2.密码应用安全性评估测评实施 (398)
5.4.网上银行系统 (403)
5.4.1.密码应用方案概述 (404)
5.4.2.密码应用安全性评估测评实施 (409)
5.5.远程移动支付服务业务系统 (412)
5.5.1.密码应用方案概述 (412)
5.5.2.密码应用安全性评估测评实施 (418)
5.6.信息采集系统 (422)
5.6.1.密码应用方案概述 (423)
5.6.2.密码应用安全性评估测评实施 (429)
5.7.智能网联汽车共享租赁业务系统 (433)
5.7.1.密码应用方案概述 (433)
5.7.2.密码应用安全性评估测评实施 (439)
5.8.综合网站群系统 (444)
5.8.2.密码应用安全性评估测评实施 (450)
5.9.政务云系统 (454)
5.9.1.密码应用方案概述 (455)
5.9.2.密码应用安全性评估测评实施 (464)
附录A 中华人民共和国密码法 (471)
附录B 商用密码应用安全性评估管理办法(试行) (478)
附录C 商用密码应用安全性测评机构管理办法(试行) (481)
附录D 商用密码应用安全性测评机构能力评审实施细则(试行) (485)
附录E 信息系统密码应用基本要求(摘录) (490)
附录F 国外密码管理政策 (507)
缩略语表 (520)
名词解释 (524)
后记 (526)
1. 密码基础知识
密码学是一门古老而又年轻的学科。
几千年来,密码技术主要用于军事和外交的保密通信。
1949年后,随着美国数学家、信息论创始人香农《保密系统的通信理论》论文的发表,密码技术逐渐建立起完善的理论基础,密码技术逐渐成为一门学科。
二世纪末期,大量的信息开始使用计算机系统处理、存储,并通过公共通信设施和计算机网络进行交换,信息的保密性1、信息来源的真实性、数据的完整性和行为的不可否认性需求迫切。
因此,密码技术应用已不再局限于军事、政治和外交,其商用价值和社会价值越来越得到重视。
密码技术与应用融合,呈现多样性和复合型。
当前,密码应用已渗透到社会生产生活的各个方面,从维护国家安全的保密通信、军事指挥,到保护国民经济的金融交易、防伪税控,再到保护公民权益的电子支付、社会保障等,密码都发挥着十分重要的关键作用本章首先简要介绍密码的概念和作用,指出密码需要合规、正确、有效地使用,引出密码应用安全性评估的必要性,并从信息安全管理过程的角度,阐述密码应用安全性评估的基本原理。
其次,在总结密码技术发展历史和趋势之后,对密码技术的三个核心内容---密码算法、密钥管理和密码协议分别进行介绍。
最后,介绍密码保密性、完整性、真实性和不可否认性等四项功能的典型实现示例。
1.1. 密码应用概述
密码技术在网络空间安全防护中发挥着重要的基础支撑作用,是关键核心技术。
如果密码技术没有得到合规、正确、有效应用,那么密码提供的安全功能就无法发挥,也就无法解决应用系统面临的安全问题。
1.1.1. 密码的概念与作用
1.密码的概念
密码是指使用特定变换的方法对信息等进行加密保护、安全认证的技术、产1保密性(confidentiality):又称机密性,本书统一称为保密性
品和服务。
其中特定变换是指明文和密文相互转化的各种数学方法和实现机制;加密保护是指使用特定变换,将原始信息变成攻击者不能识别的符号序列,简单地说,就是将明文变成密文,从而保护信息的保密性;安全认证是指使用特定变换,确认信息是否被篡改、是否来自可靠信息源以及确认信息发送行为是否真实存在等,简单地说,就是确认主体和信息的真实可靠性,从而保护信息来源的真实性、数据的完整性和行为的不可否认性。
技术是指利用物项实现加密保护或安全认证的方法或手段,产品是指以实现加密保护或安全认证为核心功能的设备与系统,服务是指基于密码专业技术、技能和设施,为他人提供集成、运营、监理等密码支持和保障的活动,是基于密码技术和产品,实现密码功能的行为。
在我国,密码分为核心密码、普通密码和商用密码,其中商用密码用于保护不属于国家秘密的信息。
从内容上看,密码技术包括密码编码、实现、协议、安全防护、分析破译,以及密钥产生、分发、传递、使用、销毁等技术。
典型的密码技术包括密码算法、密钥管理和密码协议。
密码算法是实现密码对信息进行“明”“密”变换、产生认证“标签”的一种特定规则。
不同的密码算法实现不同的变换规则:加密算法实现从明文到密文的变换;解密算法实现从密文到明文的变换;数字签名算法实现类似于手写签名的功能;杂凑算法实现任意长消息压缩为固定长摘要的功能。
密钥管理是指根据安全策略,对密钥的产生、分发、存储、更新、归档、撤销、备份、恢复和销毁等密钥全生命周期的管理。
密钥是密码算法中控制密码变换的关键参数,它相当于一把“钥匙”。
只有掌握了密钥,密文才能被解密,恢复成原来的明文。
同样,为了能够产生独一无二的数字签名,也需要签名人拥有相应的密钥,以确保签名不能被伪造。
密码协议是指两个或两个以上参与者使用密码算法,为达到加密保护或安全认证目的而约定的交互规则。
密码协议是将密码算法等应用于具体使用环境的重要密码技术,具有十分丰富的内容。
2.密码的重要作用
密码的重要作用是保护网络和信息的安全。
密码直接关系国家政治安全、经济安全、国防安全和网络安全,直接关系社会组织和公民个人的合法权益,在网
络空间安全防护中发挥着重要的基础支撑作用,是维护网络安全最有效、最可靠、最经济的技术手段。
虽然密码不能解决网络空间的所有安全问题,也不是保障网络安全的唯一手段,但密码是保障网络与信息安全的核心技术和基础支撑。
通常来讲,密码的作用可概括为以下三个方面。
第一,密码是“基因”,是网络安全的核心技术和基础支撑。
密码可以完整实现网络空间身份防假冒、信息防泄密、内容防篡改、行为抗抵赖等功能,满足网络与信息系统对保密性、完整性、真实性和不可否认性等安全需求。
密码是网络免疫体系的内置基因,是实现网络从被动防御向主动免疫转变的关键元素。
没有密码,就不能真正解决网络安全问题。
第二,密码是“信使”,是构建网络信任体系的重要基石。
信任是世界上任何价值物转移、交易、存储和支付的基础,是社会发展的润滑剂和助推器。
最初人类社会依靠血缘和宗族关系建立信任,后来主要依靠法律和合同建立信任。
信息时代,万物互联、人机互认、天地、体,网络空间的信任至关重要,密码算法和密码协议可解决人、机、物的身份标识、身份鉴别、统一管理、信任传递和行为审计问题,是实现安全、可信、可控的互联互通的核心技术手段。
密码是网络空间传递价值和信任的重要媒介和手段。
第三,密码是“卫士”,密码技术与核技术、航天技术并称为国家的三大“撒手锏”技术,是国之重器,是重要的战略性资源。
近年来,我国密码算法设计分析能力达到国际先进水平,我国自主设计的商用密码算法ZUC、SM2、SM3和SM9已成为国际标准,这是与世界最领先的密码算法同台竞争、反复论证的结果。
密码无处不在,时时刻刻守卫着国家、公民、法人和其他组织的安全。
有人比喻,如果把网络与信息系统比作大楼,密码就好比看门的卫士,如果没有卫士或者用别人的卫士,就等同于门洞大开或者雇佣“小偷”看门,没有任何安全可言。
随着信息化快速发展,在万物互联成为趋势、信息孤岛逐渐消弭的态势下,密码在保护国家安全、促进经济社会发展的重要战略性资源、保护公民合法权益和个人隐私等方面的重要性和战略地位将更为凸显。
合规、正确、有效使用密码,使用自主、安全、可控的密码,既是对国家安全和经济社会发展的有力护航,也是对公民合法权益和个人隐私的有力保障。
1.1.
2. 密码功能与密码应用
1.密码的功能
在20世纪70年代之前,密码仅用于实现信息的加密保护,这是密码最原始、最基本的功能。
随着技术的发展,密码不仅可以实现加密保护,还可以实现实体身份和信息来源的安全认证等功能。
信息安全的基本含义有多种定义,其中最为通用的定义是“CI A”,即信息安全的主要目标是保障信息的保密性(Confidentiality)、完整性(Integrity)和可用性(Availability)。
近年来,随着信息处理分工的发展,真实性(Authenticity)成为信息安全的主要目标。
例如,在云计算、移动互联网等环境中,计算通常由专业分工明确的多方共同完成,相互之间必须要确保身份真实性。
另外,随着网络交易的迅速发展,不可否认性(Non-repudiation)的重要性也日益凸显。
在上述目标中,除了可用性(指确保信息访问和信息服务在任何时候都是有效的,主要基于可生存、容灾备份等技术实现)外,其他特性都与密码技术密切相关。
相对于其他类型的安全手段,如人力保护、设备加固、物理隔离、防火墙、监控技术、生物技术等,密码技术最关键、最核心、最基础。
总的来说,密码可以实现信息的保密性、信息来源和实体身份的真实性、数据的完整性和行为的不可否认性,这也是密码具有的四个功能。
信息的保密性是指保证信息不被泄露给非授权的个人、进程等实体的性质。
采用密码技术中的加密和解密技术,可以方便地实现信息的保密性。
信息来源的真实性是指保证信息来源可靠、没有被伪造和篡改的性质。
实体身份的真实性是指信息收发双方身份与声称的相一致。
采用密码技术中的安全认证技术,可以方便地实现信息来源和实体身份的真实性。
数据的完整性是指数据没有受到非授权的篡改或破坏的性质。
数据完整性与信息来源的真实性的区别在丁,数据完整性并不要求数据来源的可靠性,但数据真实性一般要依赖于数据完整性。
采用密码杂凑算法可以很方便地实现数据的完整性。
不可否认性也称抗抵赖性,通常是指一个已经发生的操作行为无法否认的性质。
采用数字签名算法可以很方便地实现行为的不可否认性。
2.密码应用技术框架
实现密码的功能,需要密码应用技术体系支撑。
密码应用技术框架包括密码资源、密码支撑、密码服务、密码应用四个层次,以及提供管理服务的密码管理
基础设施,如图1-1所示。
密码资源层提供基础性的密码算法资源,底层提供序列、分组、公钥、杂凑、随机数生成等基础密码算法;上层以算法软件、算法IP核、算法芯片等形态对底层的基础密码算法进行封装。
密码支撑层提供密码资源调用,由安全芯片类、密码模块类、密码整机类等各类商用密码产品组成,如可信密码模块、智能IC卡、密码卡、服务器密码机等。
密码服务层提供密码应用接口,分为对称密码服务、公钥密码服务及其他一人类,为上层应用提供数据的保密性保护、身份鉴别、数据完整性保护、抗抵赖等功能。
密码应用层调用密码服务层提供的密码应用接口,实现所需的数据加密和解密、数字签名和验签等功能,为信息系统提供具有安全功能的应用业务。
典型应用如安全电子邮件系统、电子印章系统、安全公文传输、桌面安全防护、权限管理系统、可信时间戳系统等。
密码管理基础设施作为一个相对独立的组件,为上述四层提供运维管理、信任管理、设备管理、密钥管理等功能。
密码应用技术框架为密码技术研发、产品研制、应用服务和管理提供了重要
理论指导,为构建典型密码应用技术体系发挥了重要作用。
1.1.3. 密码应用中的安全性问题
密码技术只有得到合规、正确、有效应用,才能发挥安全支撑作用,否则应用系统的安全问题就没有真正解决。
在实际应用中,由于各种原因,各类用户(特别是信息系统应用开发商)有可能弃用、乱用、误用密码技术,导致应用系统的安全性得不到有效保障,甚至一些不合规、不安全的密码产品和实现还会遭受攻击者的入侵和破坏,造成比不用密码技术更广泛、更严重的安全问题。
①密码技术被弃用。
只有被上层应用调用,密码技术才有机会发挥作用。
如果信息系统应用开发商对密码在安全防护中的重要地位缺乏认识,为节省资源或贪图便利,在开发工作中故意忽视密码技术,那么此类应用中信息的保密性、信息来源的真实性、数据的完整性和行为的不可否认性等必然会缺乏相应密码算法、协议等的支撑,整个系统会毫无安全可言。
②密码技术被乱用。
如果信息系统应用开发商对密码在信息互联互通中的重要作用缺乏认识,不严格执行密码标准,不规范调用密码技术,就会导致系统无法对接,甚至出现安全漏洞。
常见案例包括未明确约定协议底层使用的算法名称及参数,擅自修改数据接口及数据格式,简化使用标准所规定的密码协议等。
例如,现有研究发现,大量的SSL软件并没有正确地验证网络实体与公钥/数字证书的绑定关系,在数字证书验证过程中没有检查根证书配置和实体身份标识,即使启用了SSL协议,仍然会存在中间人攻击的风险。
③密码技术被误用。
如果信息系统应用开发商对密码应用缺乏技能和经验,不了解密码算法的类型、协议参与方的角色要求、关键参数的类型和规模等基本知识,错误调用密码技术,就会不可避免地产生安全漏洞。
常见的案例包括颠倒分组密码中密钥和明文的位置,使用固定值而不是随机数作为加密算法初始向量,使用计数器代替数字签名中的随机数,颠倒身份鉴别中的挑战者与响应者角色等。
还有一些系统中支持了已被实际破解的密码算法(如MD5、SHA-1等),导致密码支撑资源被错误调用。
在实际SSL协议使用中,存在密码算法配置错误、密码协议配置错误、证书配置错误等情况。
在利用随机数生成密钥时,使用不安全的随机数发生器,或者不正确地使用随机数发生器,会导致产生大量重复密钥或重复。