本申请涉及计算机技术领域,具体涉及一种在线文档多人联合数字签名的方法及系统。
背景技术:
在电子文件应用中,经常会有多人对同一份电子文档进行数字签名操作的需求,比如:多名专家审查投标书,双方或多方签订电子合同,多单位联合下发电子公文等,诸如此类的应用场景还有很多。
传统的方法是在客户端进行数字签名操作,因此所有需要进行数字签名的客户端都需要将整个电子文档下载到本地,由于所有客户端都需要操作同一个文档,因此必须保证本地的数字签名操作及时更新至服务端并推送至其他客户端。基本流程如下:
1.1最先提出签名申请的客户端下载电子文档到本地并进行数字签名,此时其他客户端只能处于等待状态,操作完成后该客户端把其数字签名后的文档上传至服务端。
1.2服务端收到后对电子文档进行更新,然后把文档更新通知推送至下一个等待中的客户端。
1.3该客户端收到服务端文档更新通知后,下载更新后的电子文档。
1.4重复1.1、1.2和1.3,直至所有客户端全部完成数字签名操作。
技术实现要素:
本申请的目的是提供一种在线文档多人联合数字签名的方法及系统。为了对披露的实施例的一些方面有一个基本的理解,下面给出了简单的概括。该概括部分不是泛泛评述,也不是要确定关键/重要组成元素或描绘这些实施例的保护范围。其唯一目的是用简单的形式呈现一些概念,以此作为后面的详细说明的序言。
根据本申请实施例的一个方面,提供一种在线文档多人联合数字签名的方法,包括:
接收各客户端所发送的针对电子文档的数字签名请求;
调度各所述数字签名请求,并根据所述电子文档的状态和所述数字签名请求进行过滤;
对电子文档进行数字签名操作,并在操作完成之后,根据操作结果更新处理数字签名请求队列;
当所述数字签名请求队列更新时,检查所述数字签名请求队列,并在所述数字签名请求队列为空时发送数字签名请求已全部完成的通知;
推送文档更新通知到各个客户端。
进一步地,在所述对电子文档进行数字签名操作之前,所述方法还包括调用数字签名控制中间件;
所述对电子文档进行数字签名操作,并在操作完成之后,根据操作结果更新处理数字签名请求队列,包括:通过数字签名控制中间件对电子文档进行数字签名操作,并在操作完成之后把操作结果通知所述数字签名控制中间件,由所述数字签名控制中间件根据操作结果更新处理数字签名请求队列;
所述当所述数字签名请求队列更新时,检查所述数字签名请求队列,并在所述数字签名请求队列为空时发送数字签名请求已全部完成的通知,包括:当所述数字签名请求队列更新时,所述数字签名控制中间件检查所述数字签名请求队列,并在所述数字签名请求队列为空时发送数字签名请求已全部完成的通知。
根据本申请实施例的另一个方面,提供一种在线文档多人联合数字签名的方法,包括:
各客户端向服务端发送数字签名请求;
服务端核心服务程序调用数字签名控制中间件,该控制中间件用于调度各个请求,并根据当前文档状态和请求信息进行过滤,然后调用数字签名控制中间件;
数字签名控制中间件对电子文档进行数字签名操作,并在操作完成之后把操作结果通知数字签名控制中间件,由其根据操作结果更新处理数字签名请求队列;
当数字签名请求队列更新时,数字签名控制中间件检查该队列,并在队列为空时通知服务端核心服务程序数字签名请求已全部完成;
服务端核心服务程序收到全部完成的消息后推送文档更新通知到各个客户端;
各个客户端收到服务端推送通知,访问服务器更新文档,获取所有客户端数字签名后的电子文档。
根据本申请实施例的另一个方面,提供一种在线文档多人联合数字签名的系统,包括客户端和服务端;
所述客户端用于向所述服务端发送数字签名请求;
所述服务端包括服务端核心服务程序和数字签名控制中间件;
服务端核心服务程序用于调用数字签名控制中间件,该数字签名控制中间件用于调度各个请求,并根据当前文档状态和请求信息进行过滤,然后调用数字签名控制中间件;
数字签名控制中间件用于对电子文档进行数字签名操作,并在操作完成之后把操作结果通知数字签名控制中间件,由其根据操作结果更新处理数字签名请求队列;
当数字签名请求队列更新时,数字签名控制中间件用于检查该队列,并在队列为空时通知服务端核心服务程序数字签名请求已全部完成;
服务端核心服务程序用于在收到全部完成的消息后推送文档更新通知到各个客户端;
所述客户端用于接收所述服务端推送通知,访问服务器更新文档,获取数字签名后的电子文档。
根据本申请实施例的另一个方面,提供一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述程序,以实现上述的方法。
根据本申请实施例的另一个方面,提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行,以实现上述的方法。
本申请实施例的其中一个方面提供的技术方案可以包括以下有益效果:
本申请实施例提供的在线文档多人联合数字签名的方法,有效地解决了多客户端同时在线打开同一电子文档进行数字签名时存在的签名操作顺序难以控制、数据传输和更新机制复杂、效率低下及用户体验差等诸多问题,整个过程中,流程和操作简单,数据传输量小,且可极大降低电子文档在上传下载过程中的数据泄露风险。
本申请的其他特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者,部分特征和优点可以从说明书中推知或毫无疑义地确定,或者通过实施本申请实施例了解。本申请的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出了本申请的一个实施例的在线文档多人联合数字签名的方法流程图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,下面结合附图和具体实施例对本申请做进一步说明。应当理解,此处所描述的具体实施例仅用以解释本申请,并不用于限定本申请。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语),具有与本申请所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语,应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样被特定定义,否则不会用理想化或过于正式的含义来解释。
如图1所示,本申请的一个实施例提供了一种在线文档多人联合数字签名的方法。该方法包括以下步骤:
s1、各客户端向服务端发送数字签名请求。
s2、服务端核心服务程序调用数字签名控制中间件,该控制中间件用于调度各个请求,并根据当前文档状态和请求信息进行过滤,然后调用数字签名控制中间件。
s3、数字签名控制中间件对电子文档进行数字签名操作,并在操作完成之后把操作结果通知数字签名控制中间件,由其根据操作结果更新处理数字签名请求队列。
s4、当数字签名请求队列更新时,数字签名控制中间件会检查该队列,并在队列为空时通知服务端核心服务程序数字签名请求已全部完成。
s5、服务端核心服务程序收到全部完成的消息后推送文档更新通知到各个客户端。
s6、各个客户端收到服务端推送通知,访问服务器更新文档,获取所有客户端数字签名后的电子文档。
当多客户端在线打开同一个电子文档进行数字签名时,由客户端向服务端发起数字签名请求,服务端在收到客户端数字签名请求时,调用数字签名控制中间件采用队列机制对各个客户端的数字签名顺序进行控制,获取队列中第一个客户端的数字签名请求及其客户端用户信息,然后调用数字签名控制中间件对电子文档进行数字签名,当数字签名控制中间件操作完毕后,会通过回调机制通知数字签名控制中间件,后者会根据通知结果来处理请求队列中对应的请求信息,并调度下一个请求进行数字签名操作。在到队列中所有请求都处理之后,数字签名控制中间件会通知服务端核心服务程序,向各个客户端推送文档更新消息,每个客户端只需进行一次数据更新,即可完成更新所有客户端数字签名操作后的电子文档。
本申请另一个实施例提供了一种在线文档多人联合数字签名的方法,包括:
在某些实施方式中,在所述对电子文档进行数字签名操作之前,所述方法还包括调用数字签名控制中间件;
本申请另一个实施例提供了一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述程序,以实现上述的方法。
本申请另一个实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行,以实现上述的方法。
本发明的实施例提供的方法,采用服务端数字签名方案,客户端只需发起一次请求且无需进行电子文档上传下载操作即可实现多个数字签名请求的按序处理,以解决客户端数字签名存在的传输数据量大、数据传输和更新操作复杂、签名顺序难以控制、效率低下等诸多问题,提升多用户在线联合签名的用户体验。操作的请求者是多人,同一个在线文档作为操作对象,同时进行操作,操作的主要动作是数字签名(包含电子签章),在客户端进行请求,在服务端执行操作,请求次数只有一次,操作中无需上传下载电子文档。
将对同一个文档同时进行数字签名的多用户操作从客户端移到服务端,通过数字签名控制中间件和数字签名控制中间件的调用和回调配合,客户端只需发起一次请求且无需进行电子文档上传下载操作即可实现多个数字签名请求的按序处理。本发明的方法有效地解决了多客户端同时在线打开同一电子文档进行数字签名时存在的签名操作顺序难以控制、数据传输和更新机制复杂、效率低下及用户体验差等诸多问题,整个过程中,流程和操作简单,数据传输量小,用户体验良好,且可极大降低电子文档在上传下载过程中的数据泄露风险。
需要说明的是:
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本申请的示例性实施例的描述中,本申请的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本申请要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本申请的单独实施例。
应该理解的是,虽然附图的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,其可以以其他的顺序执行。而且,附图的流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,其执行顺序也不必然是依次进行,而是可以与其他步骤或者其他步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
以上所述实施例仅表达了本申请的实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。