一种基于文档和用户私钥的混合云架构下的电子签名方法与流程

文档序号:22125427发布日期:2020-09-04 17:14阅读:209来源:国知局
一种基于文档和用户私钥的混合云架构下的电子签名方法与流程

本发明涉及数据加密及电子签名技术领域,具体涉及一种基于文档和用户私钥的混合云架构下的电子签名方法。



背景技术:

人们在事项协议或交易过程中,需要有效的合同来保障多方签署人的权益,在以往,合同以纸质方式来进行传递、确认和签署,如果双方距离比较远,时效性比较差;随着经济的发展,各行各业节奏都在加快,我国也出台了《电子合同法》和《电子签名法》等法律法规,合同的电子化被提上日程,相比纸质合同电子合同更加方便快捷,更加符合当下及未来的发展节奏;

随着合同电子化的普及,在使用电子合同过程中,有一些问题慢慢衍生,例如:

一、用户的合同数据存在哪里?如何存储更加安全?

二、为了保障部分安全级别极高的合同,是否可以存储在用户本地?

三、用户数字证书及私钥怎么产生的?对应的私钥存在哪里,是否加密存储?如果加密,如何更好的保管和维护加密密钥?

四、用户内部已经对接了另一套证书系统,是否可以使用该证书系统中的证书及私钥进行后续的电子签名过程?

针对以上诸多问题,本发明提供了一种基于用户私钥和文档混合云架构下的电子签名方案,本发明将围绕于此进行深度方案描述。



技术实现要素:

本发明提供了一种基于文档和用户私钥的混合云架构下的电子签名方法,该方案是构建在混合云架构下,混合云架构是指用户私有云服务与公有云服务结合部署的方式,为用户私有云环境提供一套完善的服务体系,如文档混合云服务(bshdoc)、证书混合云服务(bshpki)和三级密钥管理中心(bshkmc)等。私有云多服务间采用单点登录授信机制,与公有云服务(bssaas)在ssl安全通道链路的基础上加入独立的密钥鉴权体系,双重加密保障数据的安全传输。

一种基于文档和用户私钥的混合云架构下的电子签名方法,包括以下步骤:

1)建立文档和用户私钥的混合云;

2)构建文档混合云服务(bshdoc)(即文档的公有云和私有云服务),采用文档混合云服务(bshdoc)对文档初始化,之后采用密钥管理中心加密;

3)构建数字证书的混合云服务(bshpki)(即数字证书的公有云和私有云服务),然后进行数字证书的初始化,所述的数字证书包括公钥证书和私钥;

4)采用文档混合云服务(bshdoc)提取步骤2)加密后的文档,采用密钥管理中心解密,获得可操作的电子文档数据,通过摘要算法(sha256、sm3等)计算电子文档数据的摘要值,调用数字证书的混合云服务(bshpki)的私钥签名接口,检索对应私钥,对电子文档数据的摘要值完成私钥签名,并将最终的签名值数据返回至文档混合云服务(bshdoc);

5)文档混合云服务(bshdoc)与公有云服务(bssaas)进行鉴权后,调用公有云服务的证书签名接口,公有云服务对步骤4)得到签名值进行证书链拼接和时间戳签名,得到最终数据,之后将最终数据返回至文档混合云服务(bshdoc)并完成文档合成,依赖密钥管理中心(bshkmc)加密写入存储引擎中,完成电子签名。

本发明中,用户的电子文档和证书私钥数据以加密的方式存储于用户私有云环境中,在电子签名过程中以上核心数据不会通过公网传输,保障有且仅能在用户私有云环境中使用原始数据,私有云服务与公有云服务通过加密通道及安全鉴权机制,数据以摘要值或签名值(都是不可逆的)形式进行交互,保障原始数据自始至终都在用户私有云环境内;公有云服务最终仅存文档的元数据(如文档id,文档大小,签署时间,合同名称等)和证书元数据(证数x.509数据和证书链数据),在无盗用核心文件风险的基础上,在混合云环境方便、快捷地完成电子签名流程。

步骤2)中,所述的文档混合云服务(bshdoc)为文档的公有云和私有云服务。

文档混合云服务(bshdoc)具体包括:

文档的初始化、版本更新、加密存储和使用等流程,其中,加密存储的数据依赖于三级密钥管理中心(bshkmc)加密写入用户私有云存储引擎中。

所述的密钥管理中心采用三级密钥管理中心,包括父密钥(fsk)、母密钥(fsk)和子密钥(fsk),多级密钥作业保障加密密钥的高随机性和安全性,最终子密钥(fsk)通过aes-256加密算法完成文档的加密,并落盘于相应的存储引擎中。

步骤3)中,所述的数字证书的混合云服务(bshpki)为数字证书的公有云和私有云服务。

进行数字证书的初始化,第一种方案具体包括:

a)用户使用已持有的数字证书(公钥证书和私钥数据完整体,包括且不仅限于pkcs12格式),调用公钥证书和私钥并导入,添加证书链接口,完成初始化;

或者,进行数字证书的初始化,第二种方案具体包括:

a)按照公私钥算法生成公钥和私钥,组装成证书请求数据(包括且不仅限于csr数据),证书请求数据结合申请证书人实名数据调用公有云服务申请数字证书接口,最终由公有云服务请求相关ca机构发放数字证书,并将数字证书返回给数字证书的混合云服务(bshpki),完成初始化;

步骤4)中,所述的摘要算法采用sha-256摘要算法或sm3摘要算法。

与现有技术相比,本发明具有如下优点:

本发明的方案是构建在混合云架构下,混合云架构是指用户私有云服务与公有云服务结合部署的方式,为用户私有云环境提供一套完善的服务体系,如文档混合云服务(bshdoc)、证书混合云服务(bshpki)和三级密钥管理中心(bshkmc)等。私有云多服务间采用单点登录授信机制,与公有云服务(bssaas)在ssl安全通道链路的基础上加入独立的密钥鉴权体系,双重加密保障数据的安全传输。

本发明中,用户的电子文档和证书私钥数据以加密的方式存储于用户私有云环境中,在电子签名过程中以上核心数据不会通过公网传输,保障有且仅能在用户私有云环境中使用原始数据,私有云服务与公有云服务通过加密通道及安全鉴权机制,数据以摘要值或签名值(都是不可逆的)形式进行交互,保障原始数据自始至终都在用户私有云环境内;公有云服务最终仅存文档的元数据(如文档id,文档大小,签署时间,合同名称等)和证书元数据(证数x.509数据和证书链数据),在无盗用核心文件风险的基础上,在混合云环境方便、快捷地完成电子签名流程。

附图说明

图1为本发明一种基于用于私钥和文档混合云架构下的电子签名方法的流程示意图;

图2为本发明一种基于用于私钥和文档混合云架构下的电子签名方法的架构图;

图3为本发明实施例提供基于私钥和文档混合云架构下的电子签名方法的私钥结构体;

图4为本发明实施例提供的用于私钥和文档混合云架构下的电子签名方法的证书导入时序图;

图5为本发明实施例提供的用于私钥和文档混合云架构下的电子签名方法的证书申请时序图;

图6为本发明实施例提供的用于私钥和文档混合云架构下的电子签名方法的数字签名时序图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

一种基于文档和用户私钥的混合云架构下的电子签名方法,包括以下步骤:

一、建立文档和用户私钥的混合云;

二、构建文档混合云服务(bshdoc)(即文档的公有云和私有云服务),采用文档混合云服务(bshdoc)对文档初始化,之后采用密钥管理中心加密;

文档混合云服务(bshdoc)具体包括:

文档的初始化、版本更新、加密存储和使用等流程,其中,加密存储的数据依赖于三级密钥管理中心(bshkmc)加密写入用户私有云存储引擎中;

三、构建数字证书的混合云服务(bshpki)(即数字证书的公有云和私有云服务),然后进行数字证书的初始化,所述的数字证书包括公钥证书和私钥;

进行数字证书的初始化,第一种方案具体包括:

用户使用已持有的数字证书(公钥证书和私钥数据完整体,包括且不仅限于pkcs12格式),调用公钥证书和私钥并导入,添加证书链接口,完成初始化;

或者,进行数字证书的初始化,第二种方案具体包括:

按照公私钥算法生成公钥和私钥,组装成证书请求数据(包括且不仅限于csr数据),证书请求数据结合申请证书人实名数据调用公有云服务申请数字证书接口,最终由公有云服务请求相关ca机构发放数字证书,并将数字证书返回给数字证书的混合云服务(bshpki),完成初始化;

四、采用文档混合云服务(bshdoc)提取步骤2)加密后的文档,采用密钥管理中心解密,获得可操作的电子文档数据,通过摘要算法(sha256、sm3等)计算电子文档数据的摘要值,调用数字证书的混合云服务(bshpki)的私钥签名接口,检索对应私钥,对电子文档数据的摘要值完成私钥签名,并将最终的签名值数据返回至文档混合云服务(bshdoc);

五、文档混合云服务(bshdoc)与公有云服务(bssaas)进行鉴权后,调用公有云服务的证书签名接口,公有云服务对步骤4)得到签名值进行证书链拼接和时间戳签名,得到最终数据,之后将最终数据返回至文档混合云服务(bshdoc)并完成文档合成,依赖密钥管理中心(bshkmc)加密写入存储引擎中,完成电子签名。

基于用于私钥和文档混合云架构下的电子签名方案是构建在混合云架构下,混合云架构是指用户私有云服务与上上签公有云服务结合部署的方式,上上签为用户私有云环境提供一套完善的服务体系,如文档混合云服务(bshdoc)、证书混合云服务(bshpki)和三级密钥管理中心(bshkmc)等,具体划分请参照图2,其中,具体包括:bshdoc(合同文档混合云服务)、bshpki(证书混合云服务,即ca证书/私钥服务)、上上签三级密钥管理体系服务(bshkmc)、文件存储引擎(disk/dss/cassandra)以及上上签电子签约平台(bssaas,即公有云服务)、合同管理服务、电子签名服务、云证书服务。

如图1所示,结合用户私有云服务与上上签公有云服务结合部署,一种基于用于私钥和文档混合云架构下的电子签名方法,包括以下步骤:

1)bshdoc(文档混合云服务)对用户电子文档数据进行全生命周期管理,如文档的初始化、版本更新、加密存储和使用等流程,数据依赖于bshkmc(三级密钥管理中心)加密写入用户私有云存储引擎中;

2)bshpki(证书混合云服务)提供两套方案完成用户证书和私钥数据初始化,一是用户使用已持有的数字证书(公钥证书和对应私钥数据完整体,如pkcs12格式)方案,调用bshpki提供的证书/私钥导入和添加证书链接口完成初始化;二是bshpki生成公私钥并调用bssaas(上上签公有云服务)申请证书方案,bshpki按照标准的公私钥算法生成公私钥对,并组装成csr数据,结合申请证书人实名数据和csr数据调用bssaas申请数字证书接口,最终由bssaas调用相关ca机构发放数字证书返回给bshpki;

3)bshdoc提取已经完成初始化的电子文档数据,并依赖bshkmc完成解密操作,获得最终的可操作电子文档数据;通过标准的摘要算法(包括且不仅限于sha-256、sm3等)计算电子文档数据的摘要值,调用bshpki私钥签名接口,bshpki检索对应私钥数据,对以上摘要值完成私钥签名,并将最终的签名值数据返回至bshdoc;

4)bshdoc与bssaas进行安全鉴权后,调用bssaas证书签名接口,bssaas对私钥签名后的数据做进一步数据组装,如证书链拼接、时间戳签名等操作,将组装后的数据返回至bshdoc,最终由bshdoc完成文档合成并依赖bshkmc加密写入存储引擎中,至此,完成了整套电子签名方案流程。

步骤1)中,bshdoc对用户电子文档数据进行全生命周期管理,所述的文档数据全生命周期管理包括以下:

a1.电子文档的初始化:bshdoc提供了两种方案完成文档的初始化;

i.通过api接口方式完成:调用文件上传接口来完成文件的初始化,该方式适合用户内部已有一套或多套内部程序,多套系统间需要自动化和无感知对接,并有大量文件需要此操作;

ii.通过web页面方式完成:通过文档管理页面中文件上传操作进行手动上传,上传成功后,页面中可及时预览文档内容,确保数据的完整性,该方式适合用户暂无其他内部程序,文件需求量相对较小,操作员在操作过程中需要验证文件的完整性;

a2.电子文档的版本更新:文档完成初始化后,可作为后续的电子合同签署流程提供初始合同文件(未进行任何一方签署人数字签名前的文档,可以理解为模板文档),后续多方签署人在该合同文件中完成电子签名操作,合同文档内容会随着多方签署签署人的电子签名操作而进行迭代更新,每次更新操作需要留存相应版本文件,所有签署人完成电子签名操作后,形成最终合同文档。

a3.电子文档的存储,电子文档无论初始化还是迭代更新,最终都需要存储于磁盘,bshdoc支持多套存储引擎驱动,如本地磁盘、阿里云oss、cassandra等。bshdoc依赖于上上签三级密钥体系(bshkmc),bshkmc包括父密钥(fsk)、母密钥(fsk)和子密钥(fsk),多级密钥作业保障加密密钥的高随机性和安全性,最终fsk通过aes-256加密算法完成文档的加密,并落盘于相应的存储引擎中。

a4.电子文档的使用,在电子文档的更新(a2)中提到,在电子签名过程中需要对电子文档进行更新。在使用文档前,bshdoc需要依赖bshkmc对文档进行解密处理,bshkmc内部会存有加解密的操作日志,保障后续的安全审计。

步骤2)中,bshpki提供两套方案完成用户证书和私钥数据初始化,最终证书私钥数据依赖于bshkmc加密写入用户私有云存储引擎中,所述的两套方案如下:

一是用户使用已持有的数字证书(公钥证书和对应私钥数据完整体,如pkcs12格式)方案,证书的来源可以由以下方式:用户内部系统对接了一套证书发放系统(如国内的ca机构的系统),或用户向ca机构购买了数字证书;用户可对已持有的证书调用bshpki提供的证书/私钥导入和添加证书链接口完成初始化,具体时序交互请参考图4;

二是bshpki生成公私钥并调用bssaas申请证书方案,bshpki按照标准的公私钥算法生成公私钥对,并组装成csr数据,结合申请证书人实名数据和csr数据调用bssaas申请数字证书接口,最终由bssaas调用相关ca机构发放数字证书返回给bshpki,具体时序交互请参考图5;

以上两种方案用户证书对应的私钥数据均在用户私有云环境中完成初始化,并通过bshkmc加密写入存储引擎中,排除私钥数据的外漏或盗用的隐患,引擎中存储的数据结构体请参考图3的证书私钥结构体,证书私钥结构体具体包括母密钥的序列索引(refrencekeyld)、密文子钥匙数据(enctyptedkey)、使用明文子密钥加密后的私钥数据(encryptdata)、磁盘写入时间戳(createtime)、磁盘更新时间戳(updatetime)。

步骤3)中,bshdoc提取已经完成初始化的电子文档数据,并依赖bshkmc完成解密操作,获得最终的可操作电子文档数据;通过标准的摘要算法(sha-256、sm3等)计算电子文档数据的摘要值,调用bshpki私钥签名接口,bshpki检索对应私钥数据,对以上摘要值完成私钥签名,并将最终的签名值数据返回至bshdoc。

步骤4)bshdoc与bssaas进行安全鉴权后,调用bssaas证书签名接口,bssaas对私钥签名后的数据做进一步数据组装,如证书链拼接、时间戳签名等操作,将组装后的数据返回至bshdoc,最终由bshdoc完成文档合成并依赖bshkmc加密写入存储引擎中,至此,完成了整套电子签名方案流程,具体时序图例请参考图6。

以上,仅为本申请较佳的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应该以权利要求的保护范围为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1