云计算环境下的电子签名服务研究

2017-02-06 00:02徐祺崔久强
软件 2016年6期
关键词:电子签名服务模式云计算

徐祺+崔久强

摘要:针对传统电子签名建设成本高、维护成本高、资源利用率低等缺点,对云计算环境下的电子签名服务模式进行了研究,设计了云模式电子签名系统架构,详细研究了基于USB-key客户端私钥签名模式、基于服务端私钥托管的签名模式和基于私钥分割的签名模式的业务流程,分析了三种签名模式的优缺点和应用场景,最后说明未来电子签名资源的“云化”发展将成主流趋势。

关键词:云计算;电子签名;服务模式

引言

随着信息技术的快速发展和信息化应用的深入普及,信息安全问题也不断涌现。基于PKI的密码体系是解决信息安全问题的主要手段,电子签名是密码体系的主要内容之一。电子签名技术能够解决网络交易中用户的身份认证、交易数据的完整性鉴别、用户交易行为的不可抵赖性等问题,我国于2005年4月1日起正式实施的《电子签名法》为电子签名提供了法律基础和保障。在《电子签名法》中明确规定:本法所称电子签名,是指数据电文中以电子形式所含、所附用于识别签名人身份并表明签名人认可其中内容的数据;本法所称数据电文,是指以电子、光学、磁或者类似手段生成、发送、接收或者储存的信息。当前,以电子签名为技术的电子签名服务在电子政务、电子商务和社会公共服务等领域得到了广泛应用。

1传统电子签名服务

传统的电子签名大多数采用C/S的系统架构,具体如图1所示,包括电子签名服务端和电子签名客户端两部分,通过电子签名、密码信封、电子签章、可信时间戳等技术向用户和应用提供可靠电子签名服务。

电子签名客户端包括浏览器和应用客户端,通过SDK的方式调用。电子签名服务端包括签名验签服务器、电子签章服务器和时间戳服务器等,向用户提供签名验签名服务、电子签章服务和可信时间戳服务,当在应用系统中需要对交易数据进行确认时,业务应用可以通过SDK安全中间件来调用,用以解决传输数据的完整性鉴别、用户交易行为的不可抵赖性等问题。但随着应用业务和交易数据的不断增加,原有的电子签名模式也逐渐不能适应新的业务需要,具体如下:

1)建设成本高。目前通常是通过负载或集群的方式提高服务性能,需要增加大量的硬件设备,导致硬件投入、能源消耗和管理费用不断增加。

2)维护成本高。目前电子签名大多与应用系统之间是紧耦合,对原有业务系统的网络部署、系统集成带来较大的改动,需要专业的人员进行专业维护。

3)资源利用率低。传统的电子签名服务通过重复部署硬件设备来提高性能,不能实现硬件资源的自动调配和自适应扩展,导致资料利用率不高。

2云计算环境下电子签名服务

在云计算环境下传统的电子签名服务模式已经不能适应,需要根据云计算自身的特点和应用场景,对电子签名服务进行研究和设计,将电子签名作为一种云服务提供给用户。

2.1云模式电子签名系统架构

结合云计算环境的网络部署和业务应用情况,云计算环境下电子签名实现模型如图2所示,包括资源层、管理层和服务层。

各层次的主要内容及关系具体如下:

1)资源层。该层包括物理资源层和资源池层,向上层提供逻辑计算和资源存储。物理资源层包括提供电子签名服务的物理设备,包括签名验签服务器、电子签章服务器和时间戳服务器等安全产品。资源池层是将物理资源进行虚拟化整合形成虚拟化资源池,通过Xen、KVM或Docker等虚拟化技术对硬件设备进行虚拟化,形成电子签名服务池、电子签章服务池、时间戳服务池等,具有动态分配和自动调整功能。

2)管理层。管理层位于资源层与服务层之间,是云模式环境下电子签名的核心层,由业务管理、资源配置和监控审计等功能模块组成,实现云计算环境下的电子签名基础设施的资源管理,并通过资源调度完成对虚拟资源能力的动态分配,保障电子签名资源能够为业务应用提供服务。

3)服务层。服务层与具体业务应用对接,实现电子签名的具体业务应用,包括服务接口、注册管理和访问控制等模块。

在云计算环境下电子签名模型的框架下,对用户的签名模式进行研究,包括基于USB-key客户端私钥签名模式、基于服务端私钥托管的签名模式和基于私钥分割的签名模式。

2.2基于USB-key客户端私钥签名模式

常规的电子签名模式是基于USB-key客户端私钥签名,该方式在USB-key介质芯片内完成数据加密解密、签名验证及身份认证的整个过程。目前常用的USB-Key是在其CPU内置加密算法的加密型USB-Key,利用内置的加密算法对用户的身份进行认证和数字签名。USB-key是智能卡和读卡器的结合体,它采用USB接口的连接方式,即插即用,体积也很小,与智能卡相比速度更快,使用更加简单方便。USB-key内部有一个安全存储区域,专门用来存放用户的数字证书和私钥,用户只能通过厂商编程接口访问内部数据,这样就保证了保存在USB-key中的数字证书无法被复制。而且,每一个USB-key都带有PIN码保护,用户必须同时拥有USB-key和PIN码才可以使用数字证书。

基于USB-key的数字签名过程是:用户通过USB-key产生密钥对,再向电子认证服务机构申请数字证书,将从电子认证服务机构处申请到的数字证书保存在USB-key中,CSP可以通过命令从USB-key中读取证书,但是任何命令都无法读出用户的私钥。在数字签名时,CSP向USB-key发送一个签名命令即可,USB-key内部便会自动进行签名运算,并将签名结果送出,这就保证了所有的运算都在USB-key内部进行,私钥永不出USB-key,可不限定签名次数,适用于对电子签名业务较多的场景。

2.3基于服务端私钥托管的签名模式

从以上分析可知,基于USB-key客户端私钥签名模式的优点在于私钥始终保存在用户的USB-key中,为用户安全的签署电子文件提供了保障。但是由于USB-key具有较高的成本,若用户只使用一次或少数的签名而购买USB-key从成本角度而言不便于应用推广,因此若用户仅使用一次性签名或少数次签名可采用基于服务端私钥托管的签名模式。

基于服务端私钥托管的签名模式是代理签名模式的一种演变形式。代理签名模式包括两个角色,原始签名人和代理签名人,原始签名人可以将他的数字签名权力委托给代理签名人,代理签名人代表原始签名人生成的数字签名,称为代理签名。

基于服务端私钥托管的签名模式中的原始签名人是用户自己,代理签名人是服务端签名验签服务器、代理签名是服务端签名验签服务器自身产生的私钥进行的数字签名,具体流程如图3所示:

(1)用户对某一业务应用系统交易数据进行一次性电子签名。

(2)待签名业务应用系统对用户进行身份认证(如人脸识别、口令认证等身份认证手段),通过认证后将用户认证信息及签名请求发送至签名验签服务端。

(3)签名验签服务端随机生成一对签名密钥对,将签名公钥与用户身份信息进行绑定,并发送再次确认消息(如短信、令牌信息等)给用户,以确认是由用户自身发出的对该笔业务的电子签名。

(4)用户手段收到签名验签服务端发来的确认信息后给予确认。

(5)签名验签服务端收到确认消息后利用该用户对应的私钥对该笔交易数据进行电子签名。

基于服务端私钥托管的签名模式优点是节省用户成本,签名速度快,缺点是私钥托管至服务端安全性降低,导致私钥安全可控性存在漏洞,但该模式能够确保用户私钥只能用户安全运算,无法导出算法卡被复制复用;私钥使用过一次后即立即进行销毁,防止用户私钥保护码使用后泄露导致的安全风险,每笔业务均对应唯一的私钥,采用此种模式时服务端签名验签服务器需由可信的第三方提供运营服务。同时为了保障私钥的安全性,确保电子签名的行为是由用户主动发起的,防止行为的不可抵赖性,在服务端还需要增加签名审计模块和策略配置模块,签名审计模块实现对用户电子签名的司法举证,策略配置模块用来提供用户确认签名行为的通讯机制,如使用短信、令牌信息或指纹等生物特征信息。

2.4基于私钥分割的签名模式

密钥分解是近代密码学讨论的一个重要问题,旨在解决如何将密钥合理划分成几个子密钥,分配给参与保密工作的每个人,使得只有其中达到指定个数的任意几个人出示其所持子密钥才能将原密钥恢复,从而解密出明文。文件安全分割则是指将一个文件分割成n个子文件,规定必须完全具备其中任意m(1≤m≤n)个子文件才能将原文件恢复,而从其中任意不足m个子文件都不能恢复原文件。这样就保证了当其中任意n-m个子文件损坏时仍能将原文件恢复,而其中任意不足m个子文件泄密时也不足以使原文件暴露。

基于私钥分割的签名模式是在密钥分解的基础上而来的,在云计算环境下,签名验签服务器是分布式部署在网络中,用户的签名密钥可由多台虚拟签名验签服务器提供,根据密钥分解的原理,将用户签名密钥分割成n个子签名密钥,规定必须完全具备其中任意m(1≤m≤n)个子签名密钥才能将原密钥恢复,而从其中任意不足m个子签名密钥都不能恢复原签名密钥。

(1)用户对某一业务应用系统交易数据进行电子签名业务。

(2)待签名业务应用系统对用户进行身份认证(如人脸识别、口令认证等身份认证手段),通过认证后将用户认证信息及签名请求发送至签名验签服务集群。

(3)签名验签服务集群随机生成一对签名密钥对,并将私钥按照密钥分解的方式进行存储,将签名公钥与用户身份信息进行绑定,并发送再次确认消息(如短信、令牌信息等)给用户,以确认是由用户自身发出的对该笔业务的电子签名。

(4)用户手段收到签名验签服务端发来的确认信息后给予确认。

(5)签名验签服务集群收到确认消息后查找用户对应的子私钥,并按照密钥分解的理论,将任意m(1≤m≤n)个子签名密钥根据算法将原密钥恢复,再利用该密钥对交易数据进行电子签名。

基于私钥分割的签名模式是基于USB-key客户端私钥签名模式和基于服务端私钥托管的签名模式折中方案,用户可不用具备客户端的USB-key介质,也能够实现电子签名服务,即节约了经济成本又实现多签名服务,同时保障了用户私钥存在单一签名验签服务设备上的安全性。同时为了保障私钥的安全性,确保电子签名的行为是由用户主动发起的,防止行为的不可抵赖性,在服务端也需要增加签名审计模块和策略配置模块。

3结论

云计算具有计算能力强、按需提供服务、高可靠性和IT基础设施投入低等优点,对企业商业模式创新、技术创新和应用创新上都带来了很大的机遇,越来越受到政府、学术界和产业界等各领域的重视。本文分析了云计算环境下基于USB-key客户端私钥签名模式、基于服务端私钥托管的签名模式和基于私钥分割的签名模式,三种签名模式的优缺点如表1所示。云计算环境下的电子签名服务模式是通过动态分配电子签名服务、电子签章服务和可信时间戳服务等,向最终用户提供随时可用、安全可靠的电子签名云服务。在该模式下,电子签名具有按需使用、随时使用,电子签名资源能够动态调整、自动扩展,电子签名设备能够资源共享、集约管理,电子签名管理能够动态管理、远程监控等诸多优点,为云计算环境下的电子政务、电子商务、社会公共服务和企业内部应用提供电子认证服务基础,实现云计算环境下用户身份认证、授权管理和责任认定等功能,为我国电子认证服务产业向云计算模式跨越提供技术参考和服务咨询,也为我国云计算产业的跨越式发展提供电子认证安全服务支撑。

猜你喜欢
电子签名服务模式云计算
两级模式视域下有效电子签名认定规则的检视与构建
文化馆总分馆制服务模式的实施探索
实验云:理论教学与实验教学深度融合的助推器
电子签名在建筑设计的应用探索