江西省委公文传输系统开发实践

2019-06-13 01:54王鹏薛静
网络空间安全 2019年1期
关键词:软件开发数据分析浏览器

王鹏 薛静

摘   要:文章为解决电子政务网络安全通信提供了一种新的安全解决方案。在利用现有互联网链路的基础上通过商密产品传输的数据进行加密、签名,既解决了网络链路费用和速度的问题,又提高了网络通信的安全性,并可以彻底保证传输信息的机密性、真实性、完整性和不可抵赖性。同时,为解决之前安全公文传输类软件大多为C/S架构,客户端维护压力大,同时无法适应逐渐增多的使用人群,逐渐增加的用户需求,跨平台移植性不好的缺点,专门为客户定制了基于安全浏览器的客户端专用公文传输软件模式,此模式为C/S、B/S混合模式,软件基本架构采用C/S模式,内容传输与展现采用B/S模式。

关键词:数据分析;软件开发;大数据;浏览器;国密算法

中图分类号:TP309.7          文献标识码:B

Abstract: This system provides a new security solution for solving e-government network security communication. On the basis of utilizing existing Internet links, encryption and signature of data transmitted through commercial secret products. It not only solves the problem of network link cost and speed, but also improves the security of network communication, and it can thoroughly ensure the confidentiality, authenticity, integrity and non-repudiation of transmission information. Moreover, in order to solve the problem that, most of the security documents transmission software used to be C/S architecture, high pressure of client maintenance, unable to adapt to the increasing number of users and increasing user demand also poor portability across platforms, we specially customize the software mode of client-specific document transmission software based on security browser for customers. This mode is C/S, B/S mixed mode. Software basic structure adopts C/S mode, content transmission and presentation adopts B/S mode.

Key words: the data analysis; software development; big data; browser; domestic cryptographic algorithm

1 引言

近幾年来,随着我国信息化建设的快速发展,各级党政机关的办公网络和电子政务网络建设初具规模,各类应用、管理软件日趋丰富、完善,通过网络处理的各类信息越来越多。在这些信息通过各种专用网络或公用网络传输处理过程中,信息的机密性、真实性、完整性、不可抵赖性等就显得越来越重要。在党政机关的办公网络和电子政务建设中普遍存在着资金少、人员少、终端节点分布地域广等问题。为了实现联网,传统县和乡镇、部门的办公网络大部分情况下采用了速度较慢的电话拨号或费用较高的专线方式,虽然在一定程度上解决了一些网络安全问题,但是缺点是显而易见的不是使用费用高就是网络速度低。尽管目前县、乡各级党委、政府和所属部门单位基本实现了互联网络的接入,可以用较低的费用提供较高速率的物理链路,但是作为办公网络使用则存在着安全的问题。

江西省委公文传输系统项目通过增加密钥管理子系统,利用商用密码产品提供的数据加密、数字签名、验证等功能,并结合国密算法安全浏览器开发了一套可以利用互联网络安全传输公文的系统。浏览器是基础的核心软件,是互联网系统生态环境的重要一环,也是用户访问互联网服务的主要入口,承载着各种网络应用的主要平台,也是最常使用的客户端软件。

2  江西省委公文传输系统的需求

原有江西省委公文传输系统为C/S结构设计,客户端维护压力大,同时无法适应逐渐增多的使用人群,逐渐增加的用户需求,跨平台移植性不好,专门为客户定制了基于安全浏览器的客户端专用公文传输软件软件模式,此模式为C/S、B/S混合模式,软件基本架构采用C/S模式,内容传输与展现采用B/S模式。

2.1 技术难点

(1) 国密安全浏览器结合

安全浏览器基于SM2、SM3、SM4算法及系列国家密码标准,实现国产密码算法SSL安全链接功能,其包含密码模块和安全协议模块两部分,实现了对国产密码算法和安全协议的完整支持。

(2)多平台兼容

考虑到实际应用的部署方式可能比较复杂,需要兼容用户主机的操作系统环境,因此本安全浏览器设计成可以在32位和64位的Windows、Linux、Mac等多个操作系统平台正常运行。

(3)基于PKI技术的数字签名和验签的实现

浏览器中使用了PKI技术,用户的身份用X.509证书表示,认证过程基于数字签名和验签的实现,并且在算法上使用了国密局发布的SM2非对称密钥算法。

(4)SSL VPN协议

SSL VPN协议目前已经被广泛用于浏览器网页通讯,其最大的优势就在于可以很方便地建立安全的HTTPS,在B/S应用模式下建立服务器网关和浏览器之间的安全通信,适合在需要密码性和完整性的网页应用。由于浏览器在应用时也需要为业务系统服务、与业务系统集成,因此采用SSL模式的通信。对应用系统来说,由于SSL工作在网络层,对应用层是透明的,因而非常容易进行应用系统升级,以提升客户端和服务器的通信安全性。

(5)安全的密钥管理方案

基于PKI技术的密钥管理方案,通过引入离线运行(物理隔离)的密钥管理子系统,在密钥管理中心和安全通信中心采用相对独立的密码钥匙、在客户端采用了双密钥机制的方案,明显地提高了系统的安全性。

(6)离线处理信息明文

考虑到数据安全性和操作方便性,系统提供了自动离线、上线功能。在处理信息明文时,系统自动将客户端与网络逻辑断开,处理完毕后自动恢复连接。

(7)综合安全防护体系

通过服务器端和客户端配置软件或硬件的防火墙、防病毒软件、服务器存储加密数据、所有客户端私钥不可导出智能密码钥匙等措施,提供了一个完整的安全通信平台。

2.2 功能特色

(1)整合国密算法安全浏览器

江西省委公文传输系统基于海泰方圆红莲花安全浏览器开发,支持国产密码算法,支持我国网络自主信任体系,支持我国关于密码的相关规范。基于SM2、SM3、SM4算法及系列国家密码标准,实现国产密码算法SSL链接功能;支持国产算法证书,并原生支持国内各大CA根证书及相应证书链; 提供对USB Key等多种形态身份认证设备、使用环境及相关控件的管理,打造安全省心的业务使用环境,保障重要业务系统的安全可靠,提升安全性;提高系统使用率,多平台支持,提高系统覆盖率。

(2)实时通信

采用了基于数据库存储的信息发送接收方式,具有良好的实时性能,彻底避免了电子邮件系统传输的延迟和误差。

(3)实时完善的监控、统计功能

对于所发信息可以进行实时监控,查看签收情况;基于数据库系统的统计功能,可以方便统计指定时间内的发送、签收、签收延误时间等数据。

(4)网络安全存储

作为扩展功能,可以为每个用户在服务器上提供可控容量的安全存储空间,用户可以将个人敏感数据加密保存在服务器上。由于服务器上可以提供完善的Raid、UPS、磁带备份等硬件冗余技术,可以明显地减轻客户端数据备份的负担。

(5)数据统计检索

由于采用数据库存储的方式,明显地提高了数据统计和查询功能,完成高效、准确的数据统计、数据检索功能。

(6)严密、安全的审计功能

对所有用户的操作进行详细登记,可以对用户操作行为进行查询和验证。

(7)业务模块扩展

整个系统设计采用了开放的结构,可以根据用户需求增加新的电子政务模块,包括网站架构、公文处理、信息处理、督查处理等许多业务模块,也可以方便地和第三方应用模块挂接。

3 江西省委公文传输系统的设计

3.1 架构设计

江西省委公文传输系统由保密安全服务子系统、公文流转系统、消息服务子系统、移动客户端四部分组成,如图1所示。其中,保密安全服务子系统由安全通信中心和安全通信客户端组成。系统中服务器端和客户端均使用智能密码钥匙作为密码运算设备。

(1)保密安全服务子系统

保密安全服务子系统可以单机或者在独立的局域网中以C/S方式运行,与安全通信子系统所在网络必须物理隔离。密钥管理子系统负责完成安全通信子系统中服务器端和客户端密钥的生成、分发、备份、恢复等管理任务(密钥载体选用海泰公司的HAIKEY智能密码钥匙)。保密安全服务子系统需要有密钥管理中心密码钥匙才能登录使用。Key中含有签名密钥对,该密钥对是系统初始化时产生的,需要脱机备份并妥善保管;为了方便起见,其中的公钥在下文中统称为签名公钥。

(2)公文流转系统和消息服务子系统

公文流转系统是整个系统的功能子系统,由安全通信中心和安全通信客户端两部分组成。具体实现了安全通信功能,包括身份认证、信息加密、签名、发送、接收、验证、解密、统计、查询、网络加密存储等。该子系统采用了B/S架构设计,客户端使用微软IE7.0以上版本浏览器。

1) 安全通信中心

安全通信中心在县级中心运行,逻辑上可分为Web服务器和数据库服务器两部分组成,在实际应用中,可以根据用户规模大小和业务需求,部署在一个或多个物理服务器上。Web服务器上包含有应用程序代码,完成服务器端代码的运行,数据库服务器负责加密数据的存储。

安全通信服务中心Web服务器,需要使用服务器密码钥匙才能运行,密码钥匙由密钥管理中心初始化并生成有关信息,包括服务器认证密钥对,该密钥对中的公钥简称为服务器认证公钥。安全通信服务器是整个系统的功能核心,利用服务器密码钥匙完成安全通信客户端的身份认证,以及信息发送、信息请求的验证等操作。

2) 安全通信客户端

安全通信客户端主要由驱动程序和安全接口控件构成,通过专用安全浏览器客户端运行从服务器下载的代码网页模块,实现客户端所有的应用功能,如图2所示。在运行过程中,必须使用密码钥匙作为身份识别和密码运算的硬件设备,客户端密码钥匙中含有客户身份信息、客戶端签名和加密密钥对、签名公钥、服务器认证公钥等内容,同时还包含对上述部分信息的签名和对全部信息的签名。这些信息和签名都是由 KMC 在进行客户端钥匙初始化时写入的。

为了保证数字签名的唯一性,系统采用了双密钥的方式。安全通信客户端密码钥匙中包含有两对密钥对,分别称作客户端签名密钥对和客户端加密密钥对。KMC在初始化客户端密码钥匙时,客户端签名密钥是在密码钥匙内部产生,私钥保存在密码钥匙内,公钥导给KMC备份;加密密钥对则由KMC产生后灌入客户端密码钥匙,同时进行了备份,如图3所示。

3.2 安全通信客户端设计原则

3.2.1 自主可控

基于信息安全对国家安全的敏感性和重要性,提供具有完全自主产权的安全产品是符合国家利益的。为此,江西省委公文传输系统安全通信客户端明确提出必须研制自主可控的产品,在设计中应采用自主安全芯片、自主硬件产品、支持SM2/SM3/SM4算法的设计原则而研制的。因此,采用开放源代码浏览器框架Chromium作为基础,安全通道模块为自行设计开发,握手协议和记录协议遵循密码行业规范。

3.2.2 先进性

通过对国外同类技术的跟踪和对国内具体应用的研究,支持SM2/SM3/SM4算法的江西省委公文传输系统安全通信客户端不但在功能上能够满足要求,而且通过在安全功能、性能优化等方面进行特殊的设计,该系统在国内同类系统中具有一定的先进性。

3.2.3 安全性

在安全性方面,建立安全通道所用的密钥均位于受保护内存中,非安全通道进程无法访问受保护内存,因而提高了安全特性。通过加壳技术,实现了客户端的反跟踪,消解代码注入攻击的危险。另外,SSL认证协议的设计方面除了全面采用国产算法之外,还充分考虑了认证过程的安全,让浏览器具有证书防篡改、认证过程抗重放等安全特性。

3.2.4 可靠性

为了保证系统可靠运行,江西省委公文传输系统安全通信客户端采用了支持多线程的安全内核,将渲染操作的运行置于安全沙箱之中,保证复杂工作或者有意攻击在渲染过程中发生的异常都处于浏览器的上层线程管理之下,有效地提高了系统的可扩展性和可靠性。

为满足上述基本原则,江西省委公文传输系统安全通信客户端实现了目標:SM2等密码运算完全在受保护内存中完成,既提高效率,又满足密钥安全性要求;认证模块所用的密钥均位于密钥加密密钥的保护之下;采用成熟的Blink内核内核架构,让各种渲染和攻击产生的渲染引擎异常不会导致浏览器崩溃,解决过去浏览器长期存在的稳定性问题。

3.2.5 可扩展性

支持SM2/SM3/SM4算法的江西省委公文传输系统安全通信客户端采用功能列表设计,在每一个功能类均应支持相应扩展能力,给出了算法列表、证书列表、网关协议列表等内置扩展的功能类管理机制。除了内置的功能支持之外,系统可以在功能模块的加载记录和功能支持列表之间建立绑定关系,通过模块加载和列表更新来进行客户端功能的扩展。

3.3 其他说明

由于采用了B/S、C/S混合结构,所有的应用代码均保存在Web服务器上,客户端仅需要安装必要的密码钥匙驱动和安全接口控件即可,其应用功能代码则是通过浏览器实时下载到客户端浏览器内运行,明显地减轻了客户端的管理、维护、升级的工作量,提高了系统的安全性。

在完成发送、接收、统计等客户端操作时,县级中心客户端和乡镇、部门处于同等的地位,通过相同流程步骤进行信息的发送和接收操作。

此外,在县级安全通信中心配有专门的系统管理模块,该模块负责安全通信子系统的参数设置、客户端密码钥匙登记注册等功能,只有通过登记注册的客户端才能正常使用系统。

3.4 可维护性

系统的构成应易于维护和维修。应用系统采用构件化设计思想,系统框架与业务逻辑锋利,具备开发的技术体系架构。

应用系统支持可视化管理方式,通过统一的图形化界面进行系统的管理。

应用系统支持主要功能模块的可配置化,用户在无需代码或脚本编程的情况下,可实现功能、界面、表单和流程等的客户化设计,在需求发生新增或变更时,能够对系统进行灵活的调整。

应用系统出现异常错误报告时,能够提供详细的异常信息和明确的错误编号,并能在系统的相应维护手册中查到错误处理方法与步骤。

当系统负荷加大时,可在不更改整个系统架构的前提下,对系统进行线性的扩充。

应用系统支持各构件的单独升级,可实现在线升级功能。应用系统中的任一模块更新、加载时,在不改变与上下模块接口的前提下,能够不影响正常运转和服务。

4  江西省委公文传输系统的关键技术

先进的多层应用体系结构应用技术架构在增强了系统扩展能力和适应能力的基础上,明显地降低了终端客户操作使用和维护的难度,也为系统功能扩展留下巨大空间。

支持面向服务的应用架构协议(SOAP),支持XML方式的数据交换、数据验证、元数据存储等功能。

4.1 双SSL协议支持

对于重要的信息系统,国家明确要求必须支持国密算法,针对信息系统网络安全传输制定了国密SSL协议支持国密算法。江西省委公文传输系统安全通信客户端全面支持国密SSL协议和国际SSL(SSL3.0、TLS1.0、TLS1.1、TLS1.2)协议,可以根据服务器支持的协议类型进行自适应切换,根据客户安全需求及业务需要,对国际SSL协议的支持程度进行定制化配置。

4.2 双网络信任体系支持

基于国际上四大浏览器(IE、Firefox、Chrome、Safari)的四大证书库,形成了目前的国际网络信任体系,只有经过四大证书库认可的CA颁发的证书,浏览器才默认为是可信的证书。基于国内的CA体系,可以构建我国自主的网络信任体系,支持国产密码算法证书。

江西省委公文传输系统安全通信客户端同时支持我国自主的网络信任体系和国际网络信任体系,原生支持国内各大CA根证书及相应证书链。

猜你喜欢
软件开发数据分析浏览器
微软发布新Edge浏览器预览版下载换装Chrome内核
信息安全环境下的计算机软件开发研究
新常态下集团公司内部审计工作研究
浅析大数据时代对企业营销模式的影响
核电厂定期试验管理软件开发
FPGA软件开发过程中编码规范的作用
浏览器
lE8设置技巧大放送