商用密码在政务外网的应用思考
2018-02-19国家信息中心国信卫士网络空间安全研究院北京00045卫士通信息产业股份有限公司北京00070
(.国家信息中心国信卫士网络空间安全研究院,北京00045;.卫士通信息产业股份有限公司,北京00070)
密码技术是网络安全的基础和核心,商用密码技术作为国家自主可控的核心技术,在维护国家安全、促进经济发展、保护人民群众利益中发挥着不可替代的重要作用。
1 背景
党的十八大以来,党和国家一直致力于在金融和重要领域推进商用密码应用。特别是“棱镜门”等事件的出现,暴露出信息化基础设施主要依赖国外产品和技术所面临的巨大隐患。长期以来,我国一些重要领域和行业广泛采用国际通用密码算法,如DES、3DES、AES、RSA、SHA-1、MD5等,且在很多算法已经被攻克被证明是不安全的情况下仍然长期使用,给信息和网络安全造成巨大隐患。因此,加快实现商用密码首先在关键重要领域的全面落地,是迫在眉睫的事情。
国家电子政务外网(以下简称“政务外网”)作为我国电子政务重要公共基础设施,是国家关键信息基础设施之一。政务外网运行了很多关系国计民生的业务系统,存储、流转的很多数据较敏感或涉及个人隐私信息。因此,保障政务外网安全对我国政治、经济、生产和生活等各方面至关重要。
目前政务外网在网络、应用和数据等方面均在一定程度上采用了密码技术进行防护,增强了网络安全。但仍存在采用国际通用密码算法的情况,特别是有些应用开发商对网络和信息安全特别是密码技术的认识和理解不足,仍在采用RSA、MD5已被披露有重大安全隐患的密码算法,甚至是不采用密码算法。
随着政务外网的基础作用越来越明显,必须以商用密码作为基础支撑和核心能力,切实提升政务外网网络安全保障能力,才能有效支撑国家在经济调节、市场监管、社会管理和公共服务等方面的需要,为政府深化“放管服”改革、开展“互联网+政务服务”、提升国家治理能力等保驾护航。
2 政务外网商用密码应用现状
2.1 商用密码发展历程
党中央、国务院高度重视商用密码工作,成立了专业管理机构、协调小组等,出台了一系列政策法规、制度文件。关键节点包含:
· 1999年10月国务院颁布《商用密码管理条例》。
· 2002年成立了国家密码管理局商用密码管理办公室。
· 2007年发布了《信息安全等级保护商用密码管理办法》。
· 2012年,国家成立了“金融领域商用密码应用推进工作协调小组”,金融领域先后开展了两批试点专项,取得了良好的成效,为在重要领域推进商用密码应用奠定了重要基础。
· 2016年《网络安全法》正式颁布,2017年出台了《密码法(草案征求意见稿)》。《密码法》第十二条规定“关键信息基础设施应当依照法律、法规的规定和密码相关国家标准的强制性要求使用密码进行保护,同步规划、同步建设、同步运行密码保障系统。”,第十八条规定“国家对关键信息基础设施的密码应用安全性进行分类分级评估,按照国家安全审查的要求对影响或者可能影响国家安全的密码产品、密码相关服务和密码保障系统进行安全审查。”。
· 2017年发布了《商用密码管理条例》(修订稿),强化了密码应用要求,突出对关键信息基础设施及网络安全等级保护三级以上信息系统的密码应用监管,实施商用密码应用安全性评估和安全审查制度。
· 2017年6月协调小组调整为“国家金融和重要领域商用密码应用推进工作协调小组”,并同步起草《关键信息基础设施安全保护条例》。
《网络安全法》、《密码法》、《商用密码管理条例》、《网络安全等级保护条例》、《关键信息基础设施安全保护条例》等法律法规,使得商用密码使用由行政推进向依法规范应用转变。
目前,国家层面、各省、各部门正紧紧围绕“力争到2020年实现商用密码在面向公众的政务信息系统、基础信息网络、重要信息系统和重要工业控制系统中的全面应用”的总体目标推进各项工作。
2.2 商用密码技术基本情况
为保障商用密码安全,国家密码管理局商用密码管理办公室制定了一系列的密码标准,包 括 SSF33、SM1(SCB2)、SM2、SM3、SM4、SM7、SM9、祖冲之密码算法等。其中,SSF33、SM1、SM4、SM7、祖冲之密码算法是对称算法,SM2、SM9是非对称算法,SM3是杂凑算法。
目前已公布的算法包括SM2椭圆曲线公钥密码算法、SM3密码杂凑算法、SM4分组密码算法、SM9标识密码算法等。
(1)SM2椭圆曲线公钥密码算法
SM2算法是一种基于椭圆曲线原理实现的非对称算法,是国际ECC算法的优化。SM2算法总体安全性和性能方面与ECC算法一样,是目前已知的公钥体制中加密强度最高的一种算法。SM2密钥长度为256比特,与RSA1024相比安全性具有明显优势。
(2)SM3密码杂凑算法
SM3杂凑算法功能与SHA-1、MD5相同,杂凑值长度256比特。此算法对输入长度小于2的64次方比特的消息,经过填充和迭代压缩,生成长度为256比特的杂凑值,其中使用了异或、模、模加、移位、与、或、非运算,由填充、迭代过程、消息扩展和压缩函数所构成。该算法适用于数字签名和认证、消息认证码的生成与验证以及随机数的生成。
(3)SM4分组密码算法
该算法是分组对称算法,分组长度为128比特,密钥长度128比特。加密算法和密钥扩展算法均采用32轮非线性迭代结构。解密算法与加密算法结构相同,知识轮密钥使用顺序相反,是加密轮密钥的逆序。
(4)SM9标识密码算法
SM9是一种基于身份标识的公钥密码算法,与传统公钥密码体系相比,标识密码将用户的标识(如邮件地址、手机号码、QQ号码等)作为公钥,省略了交换数字证书和公钥过程。
在国家密码管理局商用密码管理办公室的推动下,经过多方共同努力,SM2、SM3、SM4和SM9算法已向成为国际标准实质性迈进。
2.3 政务外网商用密码应用基本情况
政务外网一直积极响应国家商用密码的推进计划,在不少方面已经实现了商用密码改造和业务推进。比如政务外网公共安全基础支撑方面,政务CA自2007年建设,目前已基本覆盖全国各省、自治区和直辖市。除此之外,部分省市还部署有地方CA系统。政务CA在建设之初,仅支持RSA密码算法。经过技术发展,1024位RSA算法的安全性面临极大挑战。根据国家政策要求,政务外网升级建设了支持商用密码算法的密钥管理中心基础设施,并对政务CA的密码算法进行了改造,目前政务CA支持RSA1024、RSA2048和SM2多种密码算法,并已协调部分应用完成算法升级工作。
随着斯诺登事件和“邮件门”事件的曝光,我国党政部门也越来越意识到邮件安全的重要性。政务外网部署的安全邮件系统,采用新的SM9标识密码算法实现邮件的安全交互,为政务部门人员之间的邮件往来增加了安全保障。
在政务外网移动接入办公系统中,也同样使用了商用密码进行人员的安全认证和传输通道的安全防护,为政务外网的扩展和移动业务提供了安全保障。
很多公共应用和部门专有应用系统,均采用了商用密码算法进行保护,为应用安全和数据安全提供了有力的支撑。
政务外网虽然在商用密码应用和推进上取得了不少成绩,但由于网络庞大、建设管理主体相对分散、技术实现差异、建设进度不一等因素,目前离商用密码的全面应用尚有很大一段差距。
3 商用密码在政务外网深入应用的思考
随着新技术的发展,全国一体化大工程的建设,如政务云的全面建设和使用、政务信息资源整合共享、“互联网+政务服务”、大数据战略等行动计划的实施落地,商用密码也将会发挥越来越大的作用,同时一些传统的密码解决方案和思路已不能完全满足新形势和新技术应用的需求。因此,有必要再次从密码这个基础出发,探讨在政务外网全面应用推广的思路。以下就探讨如何构建政务外网密码基础支撑能力,以及政务外网几种典型应用场景下,商用密码如何发挥最大效能。
3.1 密码基础支撑能力思考
中央政务外网已构建了密钥管理基础设施,但部分地方省份尚未构建本省的密钥管理基础设施,因此,尚未建设本省密钥管理基础设施的省份需要进行统一规划,统一建设实施。密钥管理基础设施包括对称密钥管理子系统、非对称密钥管理子系统、密码合规性管理子系统、密码应用有效性管理子系统等,所配用的密码算法应包括SM2椭圆曲线密码算法、SM3杂凑算法、SM4分组密码算法等。
同时,由于政务外网云平台、各接入网络、业务应用等都需要使用身份认证、权限管理、访问控制、加解密等安全的密码服务。面对广泛的密码服务需求,可在密钥管理基础设施和电子认证基础设施基础上,设计建设统一的可信密码服务,提供可信时间、认证服务等信任服务、应用密钥管理服务以及签名/验签/加密/解密等基础密码运算服务。考虑到虚拟化的发展趋势,可信密码服务也应支撑虚拟化部署方式,实现密码服务资源的按需分配、弹性调整、密钥隔离等。
3.2 政务云密码应用思考
政务云建设完成后,可能面临大量的网络攻击,面临数据窃取、身份假冒等常规安全威胁和云应用带来的新型安全威胁和挑战,需要采用密码技术解决边界接入认证、数据加解密和可信身份认证。
政务云业务平台密码应用应遵从《信息安全技术 网络安全等级保护基本要求 第2部分:云计算安全扩展要求》、《信息安全技术 网络安全等级保护安全设计技术要求 第2部分:云计算安全要求》及结合政务云平台的实际情况,从资源层、服务层、云业务平台密码应用(云计算环境安全)、云安全管理密码应用、政务云可信接入(区域边界)密码应用、安全通信网络、用户层安全密码应用、政务云灾备中心密码应用等几个层面分别对不同层次中的主机、网络、数据存储安全等进行考虑。
3.2.1 云业务平台密码应用
云业务平台密码应用即等级保护中的计算环境安全密码应用,是政务云密码应用的重点,依据云平台的相关规范,将云平台划分为资源层和服务层。
1) 资源层包括物理资源层安全密码应用、资源抽象层(虚拟资源)安全密码应用两部分。
物理资源层安全密码应用指云平台的物理资源底层密码应用,包括但不限于物理网络安全密码应用、主机安全密码应用、数据及灾备安全密码应用等几个方面。
网络安全密码应用须依据政务云不同的安全需求,实现以下部分或全部功能要求:
· 实现不同云租户之间网络资源的隔离;
· 避免虚拟机通过网络非授权访问宿主机;
· 在虚拟化网络边界部署访问控制机制,并设置访问控制规则;
· 对远程执行特权命令进行限制;
· 根据承载的业务系统安全保护等级划分不同安全级别的资源池区域,并实现资源池之间的安全隔离。
主机安全密码应用涉及到身份鉴别、数据加解密、日志保护等方向,根据不同的安全需求,部分或全部包含以下功能:
· 确保只有在云租户授权下,云服务方或第三方才具有云租户数据的管理权限;
· 提供云计算平台管理用户权限分离机制,为网络管理员、系统管理员建立不同账户并分配相应的权限;
· 防止或及时处理非授权新建虚拟机或重新启用虚拟机的情况;
· 提供虚拟机镜像、快照完整性校验功能,防止虚拟机镜像被恶意篡改;
· 采取加密或其他技术手段防止虚拟机镜像、快照中可能存在的敏感资源被非法访问。
数据安全密码应用泛指用于在数据读取、使用或存储时对数据的机密性和完整性等进行保护的密码应用。部分或全部包含以下功能:
· 经过授权的云租户才能进行数据读取或存储操作;
· 实现数据的加密存储,避免数据泄露;
· 确保数据在使用中的安全性和完整性。
资源抽象层(虚拟资源)安全密码应用在物理层之上,由云平台将物理层资源抽象层虚拟资源提供政务云用户使用的密码应用。包括但不限于云操作系统安全、虚拟网络资源安全、虚拟主机资源安全及分布式存储安全等多个层面的密码应用。
云操作系统安全密码应用泛指用于在云平台资源抽象层保护云操作系统的系统安全和数据安全,以及管理安全等的密码应用。
政务云平台组成多个虚拟网络,对虚拟网络主要采用数字签名技术、完整性保护技术,对云平台管理指令进行鉴别,防止非授权管理指令更改虚拟网络设备配置。对虚拟网络的安全密码应用可采用基于虚拟机设备证书的认证技术,对接入虚拟网络设备的虚拟机进行鉴别,防止非授权虚拟机接入虚拟网络。
虚拟主机资源安全密码应用泛指对虚拟机镜像文件生成、迁移和存储进行安全保护的密码应用。根据安全需求不同,应做到以下部分或全部安全功能:
· 屏蔽虚拟资源故障,某个虚拟机崩溃后不影响虚拟机监视器及其他虚拟机;
· 保证虚拟机仅能迁移至相同安全等级的资源池;
· 提供虚拟机镜像、快照完整性校验功能,防止虚拟机镜像被恶意篡改;
· 采取加密或其他技术手段防止虚拟机镜像、快照中可能存在的敏感资源被非法访问。
云环境下的数据存储一般采用分布式存储,涉及到的安全问题有网络传输安全、存储节点安全以及数据加密存储。网络传输安全通过构建安全传输通道;存储节点安全是指避免存储数据的节点被非授权访问,这一点通过加密、身份鉴别、访问控制等手段实现;数据加密存储是指数据在写进磁盘前,需要对敏感数据进行加密,这样即使磁盘中的数据被盗,也不会造成关键信息泄露。
2) 服务层将其划分为三个子层:IaaS层安全密码应用、PaaS层安全密码应用、SaaS层安全密码应用三个层面。
IaaS层安全密码应用:在资源层将物理资源抽象后,以基础设施的形式提供给政务云用户使用,在IaaS层的密码应用包括但不限于用户虚拟网络安全、用户虚拟主机安全、用户虚拟存储安全、IaaS层服务用户接入安全等几个层面。
PaaS层安全密码应用:在PaaS层需要使用的密码应用包括但不限于分布式数据库安全、可信应用支撑中间件、可信应用的注册与验证、云密码服务中间件等。
SaaS层安全密码应用:在SaaS层需要使用的密码应用包括但不限于政务云用户访问业务应用时的身份认证、访问控制、电子印章、云用户数据安全、访问业务应用时的远程传输安全、SaaS层服务用户接入安全等。
3.2.2 区域边界安全密码应用
政务云可信接入密码应用是泛指用于保护用户与云平台之间、用户与用户之间、云平台不同数据中心之间的接入安全的密码应用,保障访问者身份可信、权限合法,以及资源节点可信。政务云可信接入密码应用产品根据所保护对象的不同,一般部署在用户网络出/入口、云平台网络出/入口以及云平台各个数据中心出/入口。
政务云可信接入密码应用产品应根据不同的安全需求,实现以下部分或全部功能要求:
· 避免虚拟机直接通过网络非授权访问宿主机;
· 在虚拟化网络边界部署访问控制机制,并设置访问控制规则;
· 对远程执行特权命令进行限制。
3.2.3 安全通信网络密码应用
政务云安全通信网络密码应用是泛指用于保护用户与云平台之间、用户与用户之间、云平台不同数据中心之间的数据传输安全性的密码应用。安全通信网络密码应用产品根据所保护对象的不同,一般部署在用户网络出/入口、云平台网络出/入口以及云平台各个数据中心出/入口。
3.2.4 云安全管理密码应用
对云平台自身,以及云平台运营维护管理人员操作时,使用密码保障管理、运营和运维过程中的全过程安全,主要通过身份认证、授权管理、权限控制、数据远程传输安全及密码合规性管理等方面实现。
3.2.5 用户层安全密码应用
政务云中包括两种主要的应用场景,即各委办厅局接入单位终端用户密码应用、政务云同城备份中心密码应用以及政务云异地灾备中心密码应用。下面分别对这三种场景进行介绍:
1) 委办厅局接入单位终端用户密码应用:各委办厅局将业务应用迁移到政务云环境后,或各委办厅局直接访问云端统一的业务应用,均通过用户终端或廋客户端访问政务云业务。在此种环境下其密码应用主要考虑委办厅局网络的边界安全、远程传输安全、终端保存的数据安全等。
2) 政务云同城备份中心密码应用:需要考备份中心数据和政务云交互时的远程传输安全、数据在备份中心存储时的数据保密性、完整性。
3) 政务云异地灾备中心密码应用:政务云灾备中心建设于异地,此场景下主要考灾备中心数据和政务云交互时的远程传输安全、数据在灾备中心存储时的数据保密性、完整性。
在密码应用设计的同时,应当考虑云平台架构的特殊性,尽量考虑虚拟化密码应用模式。
3.3 信息资源整合共享密码应用思考
信息资源整合共享的全面推进,政务外网接入部门各信息系统之间要实现全国一体化的数据共享交换,在打破信息孤岛的情况下,也打破了原有信息系统防护边界和责任相对独立和明确的状况。因此,既要实现数据交互的畅通,又要明确数据安全责任边界,保障数据共享交换的安全,是政务信息资源整合共享全面推进和落实的基础。
在依托商用密码支撑政务信息资源整合共享全面落地方面,我们认为应当从以下几个角度重点考虑:
(1)依托商用密码在政务外网平台构建统一的数据安全支撑服务体系。在数据全面共享交换和大数据应用背景下,各接入部门自成数据安全体系虽然可以保障数据在部门内的安全防护,但不同的数据安全体系已经不能实现数据的有效打通。因此,依托商用密码在政务外网平台构建统一的数据安全支撑服务体系就成为解决数据共享交换安全的唯一有效途径。通过统一的数据安全支撑服务体系,为数据在共享交换环节实现统一的加解密、签名/验签、时间戳、授权访问控制和数据脱敏等方面提供平台化支撑服务。
(2)依托商用密码明确数据的责任主体。数据是一种资产,同时因为数据的特殊性,数据资产的权属一直难以有效界定,因此也难以在数据共享交换环节分清责任边界,明晰责权利关系。通过商用密码技术,给数据加上“身份”,从技术角度让数据在发布、交换和使用等环节主体身份明确,提升数据溯源和追责能力。
(3)依托商用密码加强数据流转和使用管控。对于有条件共享的数据,可结合数据安全支撑服务体系实现数据有效的流转管控和使用管控,防止数据滥用和数据泄露,特别是要加强敏感数据和个人隐私数据的有效管控和防护。
(4)依托商用密码支撑数据的分类分级防护。政务外网数据类型、敏感程度各异,泄露后造成的影响不一。因此,需要针对不同的数据安全级别提供不同的密码保护措施,防止数据的过保护或欠保护。
通过加强以上几点,同时各部门按照等级保护防护要求加强内部安全,可以解决信息资源整合共享的绝大部分数据安全隐患。
3.4 “互联网+政务服务”密码应用思考
“互联网+政务服务”的全面推进,将政务外网从较为单纯的政务人员办公网络转变为面向普通民众的服务型网络。因此,不仅需要考虑政务系统自身的安全需求,更应从技术上保障普通民众网上办事的安全需求。
在依托商用密码支撑“互联网+政务服务”全面落地方面,我们认为应当从以下几个角度重点考虑:
(1)依托商用密码实现民众企业可信身份的认证。民众企业网上办事最关键的就是身份可信,这直接关系到业务办理是否成功。因此,通过商用密码实现民众企业可信身份的认证是“互联网+政务服务”需要解决的第一环。可采取安全可信又便利的身份认证和实名验证手段,同时应实现“前端匿名、后端实名”。
(2)依托商用密码实现个人信息的安全防护。“互联网+政务服务”的推进,不能以牺牲民众个人隐私为代价。因此,通过商用密码加签个人身份信息、身份凭证信息以及其他个人隐私信息是防护的重点。可采取数据加密和脱敏手段防止个人信息的泄露。
(3)依托商用密码实现电子材料的有效签名。民众和企业网上办事需要提交的各种文件需要确保真实性和有效性,同时要抗抵赖。民众和企业需要通过商用密码技术实现文件签名。企业可通过电子印章或认可的其它企业数字证书实现电子文件的有效签名或盖章,个人可通过申请基于密钥分割技术的移动软证书实现个人文件的有效签名。
4 结语
政务外网的网络环境复杂、应用众多、数据庞大,网络安全防护难度大,面对越来越复杂的网络环境,应该统一思想、统一体系,依托商用密码,构建全国一体化的网络安全防护体系,打造健康有序的政务外网网络环境,切实保障业务安全、数据安全和网络安全。