首页 / 专利库 / 银行与财务事项 / 智能合约 / 一种基于区块链的电子合同处理方法以及设备

一种基于链的电子合同处理方法以及设备

阅读:661发布:2020-05-11

专利汇可以提供一种基于链的电子合同处理方法以及设备专利检索,专利查询,专利分析的服务。并且本 申请 实施例 公开一种基于 区 块 链 的 电子 合同处理方法以及设备,其中方法包括:获取企业 服务器 发送的业务 请求 ,根据业务请求和 智能合约 中的合同模板生成初始业务电子合同;获取企业服务器对初始业务电子合同进行签名,得到的第一签名,将初始业务电子合同和第一签名确定为第一业务电子合同;采用企业证书,对第一签名进行验证,当第一签名通过验证时,将第一业务电子合同在区块链中存储;获取用户终端对第一业务电子合同进行签名得到的第二签名,将第一业务电子合同和第二签名确定为第二业务电子合同;采用用户证书,对第二签名进行验证,当第二签名通过验证时,将第二业务电子合同在区块链中存储。采用本申请,可以保证网络信息的数据可靠性。,下面是一种基于链的电子合同处理方法以及设备专利的具体信息内容。

1.一种基于链的电子合同处理方法,其特征在于,包括:
获取企业服务器发送的业务请求,根据所述业务请求和区块链智能合约中的合同模板生成初始业务电子合同;
获取所述企业服务器采用企业私钥对所述初始业务电子合同进行签名,得到的第一签名,将所述初始业务电子合同和所述第一签名确定为第一业务电子合同;
采用所述企业服务器所属企业对应的企业证书,对所述第一签名进行验证,当所述第一签名通过验证时,将所述第一业务电子合同在所述区块链中存储;
获取用户终端采用用户私钥对所述第一业务电子合同进行签名得到的第二签名,将所述第一业务电子合同和所述第二签名确定为第二业务电子合同;
采用所述用户终端所属用户对应的用户证书,对所述第二签名进行验证,当所述第二签名通过验证时,将所述第二业务电子合同在所述区块链中存储。
2.根据权利要求1所述的方法,其特征在于,所述获取企业服务器发送的业务请求,根据所述业务请求和区块链智能合约中的合同模板生成初始业务电子合同,包括:
获取企业服务器发送的业务请求,从所述业务请求携带的业务信息中提取业务关键字;
从区块链智能合约中获取所述业务请求对应的合同模板,将所述业务关键字添加至所述合同模板中,生成初始业务电子合同。
3.根据权利要求1所述的方法,其特征在于,还包括:
获取所述企业服务器发送的合同模板,基于所述合同模板添加至区块链智能合约中;
所述合同模板是所述企业服务器根据业务信息和企业的企业信息生成的。
4.根据权利要求1所述的方法,其特征在于,所述采用所述企业服务器所属企业对应的企业证书,对所述第一签名进行验证,当所述第一签名通过验证时,将所述第一业务电子合同在所述区块链中存储,包括:
从所述区块链中获取所述企业服务器所属企业对应的企业证书,从所述企业证书中获取所述企业对应的企业公钥;
采用所述企业公钥对所述第一业务电子合同的签名进行解密,生成第一签名对应的解密哈希值,将所述第一签名对应的解密哈希值与所述初始业务电子合同对应的哈希值进行对比;
若所述第一签名对应的解密哈希值与所述初始业务电子合同对应的哈希值相同,则确定所述第二签名通过验证,将所述第一业务电子合同在所述区块链中存储;
若所述第一签名对应的解密哈希值与所述初始业务电子合同对应的哈希值不相同,则发送第一提示信息。
5.根据权利要求1所述的方法,其特征在于,所述采用所述用户终端所属用户对应的用户证书,对所述第二签名进行验证,当所述第二签名通过验证时,将所述第二业务电子合同在所述区块链中存储,包括:
从所述区块链中获取所述用户终端的用户证书,从所述用户证书中获取用户公钥;
采用所述用户公钥对所述第二签名进行解密,生成第二签名对应的解密哈希值,将所述第二签名对应的解密哈希值与所述第一业务电子合同对应的哈希值进行对比;
若所述第二签名对应的解密哈希值与所述第一业务电子合同对应的哈希值相同,则确定所述第二签名通过验证,将所述第二业务电子合同在所述区块链中存储;
若所述第二签名对应的解密哈希值与所述第一业务电子合同对应的哈希值不相同,则发送第二提示信息。
6.根据权利要求1所述的方法,其特征在于,还包括:
获取所述企业服务器发送的企业证书,将所述企业证书存储至区块链中,所述企业证书是CA机构对企业服务器发送的企业信息进行验证,当所述企业信息通过验证时,根据所述企业信息和所述企业服务器发送的企业公钥生成的。
7.根据权利要求1所述的方法,其特征在于,还包括:
获取所述用户终端发送的用户证书,将所述用户证书存储至区块链中,所述用户证书是CA机构对用户终端发送的用户信息进行验证,当所述用户信息通过验证时,根据所述用户信息和所述用户终端发送的用户公钥生成的。
8.一种电子合同处理设备,其特征在于,包括:
请求获取单元,用于获取企业服务器发送的业务请求,根据所述业务请求和区块链智能合约中的合同模板生成初始业务电子合同;
企业签名单元,用于获取所述企业服务器采用企业私钥对所述初始业务电子合同进行签名,得到的第一签名,将所述初始业务电子合同和所述第一签名确定为第一业务电子合同;
企业验证单元,用于采用所述企业服务器所属企业对应的企业证书,对所述第一签名进行验证,当所述第一签名通过验证时,将所述第一业务电子合同在所述区块链中存储;
用户签名单元,用于获取用户终端采用用户私钥对所述第一业务电子合同进行签名得到的第二签名,将所述第一业务电子合同和所述第二签名确定为第二业务电子合同;
用户验证单元,用于采用所述用户终端所属用户对应的用户证书,对所述第二签名进行验证,当所述第二签名通过验证时,将所述第二业务电子合同在所述区块链中存储。
9.一种计算机可读存储介质,其特征在于,所述计算机存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时,执行如权利要求1-7任一项所述的方法。
10.一种计算机设备,其特征在于,其特征在于,包括:处理器和存储器;其中,所述存储器存储有计算机程序,所述计算机程序适于由所述处理器加载并执行如权利要求1-7任意一项的方法步骤。

说明书全文

一种基于链的电子合同处理方法以及设备

技术领域

[0001] 本申请涉及电子技术领域,尤其涉及一种基于区块链的电子合同处理方法以及设备。

背景技术

[0002] 移动互联网时代的到来,改变了人们的生活方式,如今,互联网已经渗透到当今每一个行业和业务职能领域,成为重要的生产因素。很多贸易和商品交易都采用电子合同的方式进行签约,用户之间不再需要通过见面才能完成合同签约,电子合同节省了双方的时间,提高了工作的效率,但是电子合同带来便利的同时也存在隐患,例如,通过冒充或者窃取他人的电子签名,盗用他人的身份进行商业活动,导致他人的利益受损,使网络信息的可靠性大大降低。发明内容
[0003] 本申请实施例提供一种基于区块链的电子合同处理方法以及设备,可以保证网络信息的数据可靠性。
[0004] 本申请实施例一方面提供了一种基于区块链的电子合同处理方法,可包括:
[0005] 获取企业服务器发送的业务请求,根据业务请求和区块链智能合约中的合同模板生成初始业务电子合同;
[0006] 获取企业服务器采用企业私钥对初始业务电子合同进行签名,得到的第一签名,将初始业务电子合同和第一签名确定为第一业务电子合同;
[0007] 采用企业服务器所属企业对应的企业证书,对第一签名进行验证,当第一签名通过验证时,将第一业务电子合同在区块链中存储;
[0008] 获取用户终端采用用户私钥对第一业务电子合同进行签名得到的第二签名,将第一业务电子合同和第二签名确定为第二业务电子合同;
[0009] 采用用户终端所属用户对应的用户证书,对第二签名进行验证,当第二签名通过验证时,将第二业务电子合同在区块链中存储。
[0010] 其中,获取企业服务器发送的业务请求,根据业务请求和区块链智能合约中的合同模板生成初始业务电子合同,包括:
[0011] 获取企业服务器发送的业务请求,从业务请求携带的业务信息中提取业务关键字;
[0012] 从区块链智能合约中获取业务请求对应的合同模板,将业务关键字添加至合同模板中,生成初始业务电子合同。
[0013] 其中,还包括:
[0014] 获取企业服务器发送的合同模板,基于合同模板添加至区块链智能合约中;合同模板是企业服务器根据业务信息和企业的企业信息生成的。
[0015] 其中,采用企业服务器所属企业对应的企业证书,对第一签名进行验证,当第一签名通过验证时,将第一业务电子合同在区块链中存储,包括:
[0016] 从区块链中获取企业服务器所属企业对应的企业证书,从企业证书中获取企业对应的企业公钥;
[0017] 采用企业公钥对第一业务电子合同的签名进行解密,生成第一签名对应的解密哈希值,将第一签名对应的解密哈希值与初始业务电子合同对应的哈希值进行对比;
[0018] 若第一签名对应的解密哈希值与初始业务电子合同对应的哈希值相同,则确定第二签名通过验证,将第一业务电子合同在区块链中存储;
[0019] 若第一签名对应的解密哈希值与初始业务电子合同对应的哈希值不相同,则发送第一提示信息。
[0020] 其中,采用用户终端所属用户对应的用户证书,对第二签名进行验证,当第二签名通过验证时,将第二业务电子合同在区块链中存储,包括:
[0021] 从区块链中获取用户终端的用户证书,从用户证书中获取用户公钥;
[0022] 采用用户公钥对第二签名进行解密,生成第二签名对应的解密哈希值,将第二签名对应的解密哈希值与第一业务电子合同对应的哈希值进行对比;
[0023] 若第二签名对应的解密哈希值与第一业务电子合同对应的哈希值相同,则确定第二签名通过验证,将第二业务电子合同在区块链中存储;
[0024] 若第二签名对应的解密哈希值与第一业务电子合同对应的哈希值不相同,则发送第二提示信息。
[0025] 其中,还包括:
[0026] 获取企业服务器发送的企业证书,将企业证书存储至区块链中,企业证书是CA机构对企业服务器发送的企业信息进行验证,当企业信息通过验证时,根据企业信息和企业服务器发送的企业公钥生成的。
[0027] 其中,还包括:
[0028] 获取用户终端发送的用户证书,将用户证书存储至区块链中,用户证书是CA机构对用户终端发送的用户信息进行验证,当用户信息通过验证时,根据用户信息和用户终端发送的用户公钥生成的。
[0029] 本申请实施例一方面提供了一种电子合同处理设备,可包括:
[0030] 请求获取单元,用于获取企业服务器发送的业务请求,根据业务请求和区块链智能合约中的合同模板生成初始业务电子合同;
[0031] 企业签名单元,用于获取企业服务器采用企业私钥对初始业务电子合同进行签名,得到的第一签名,将初始业务电子合同和第一签名确定为第一业务电子合同;
[0032] 企业验证单元,用于采用企业服务器所属企业对应的企业证书,对第一签名进行验证,当第一签名通过验证时,将第一业务电子合同在区块链中存储;
[0033] 用户签名单元,用于获取用户终端采用用户私钥对第一业务电子合同进行签名得到的第二签名,将第一业务电子合同和第二签名确定为第二业务电子合同;
[0034] 用户验证单元,用于采用用户终端所属用户对应的用户证书,对第二签名进行验证,当第二签名通过验证时,将第二业务电子合同在区块链中存储。
[0035] 其中,请求获取单元具体用于:
[0036] 获取企业服务器发送的业务请求,从业务请求携带的业务信息中提取业务关键字;
[0037] 从区块链智能合约中获取业务请求对应的合同模板,将业务关键字添加至合同模板中,生成初始业务电子合同。
[0038] 其中,还包括:
[0039] 模板生成单元,用于获取企业服务器发送的合同模板,基于合同模板添加至区块链智能合约中;合同模板是企业服务器根据业务信息和企业的企业信息生成的。
[0040] 其中,企业验证单元具体用于:
[0041] 从区块链中获取企业服务器所属企业对应的企业证书,从企业证书中获取企业对应的企业公钥;
[0042] 采用企业公钥对第一业务电子合同的签名进行解密,生成第一签名对应的解密哈希值,将第一签名对应的解密哈希值与初始业务电子合同对应的哈希值进行对比;
[0043] 若第一签名对应的解密哈希值与初始业务电子合同对应的哈希值相同,则确定第二签名通过验证,将第一业务电子合同在区块链中存储;
[0044] 若第一签名对应的解密哈希值与初始业务电子合同对应的哈希值不相同,则发送第一提示信息。
[0045] 其中,用户验证单元具体用于:
[0046] 从区块链中获取用户终端的用户证书,从用户证书中获取用户公钥;
[0047] 采用用户公钥对第二签名进行解密,生成第二签名对应的解密哈希值,将第二签名对应的解密哈希值与第一业务电子合同对应的哈希值进行对比;
[0048] 若第二签名对应的解密哈希值与第一业务电子合同对应的哈希值相同,则确定第二签名通过验证,将第二业务电子合同在区块链中存储;
[0049] 若第二签名对应的解密哈希值与第一业务电子合同对应的哈希值不相同,则发送第二提示信息。
[0050] 其中,还包括:
[0051] 企业证书生成单元,用于获取企业服务器发送的企业证书,将企业证书存储至区块链中,企业证书是CA机构对企业服务器发送的企业信息进行验证,当企业信息通过验证时,根据企业信息和企业服务器发送的企业公钥生成的。
[0052] 其中,还包括:
[0053] 用户证书生成单元,用于获取用户终端发送的用户证书,将用户证书存储至区块链中,用户证书是CA机构对用户终端发送的用户信息进行验证,当用户信息通过验证时,根据用户信息和用户终端发送的用户公钥生成的。
[0054] 本申请实施例一方面提供了一种计算机可读存储介质,计算机存储介质存储有多条指令,指令适于由处理器加载并执行上述的方法步骤。
[0055] 本申请实施例一方面提供了一种计算机设备,包括处理器和存储器;其中,存储器存储有计算机程序,计算机程序适于由处理器加载并执行上述的方法步骤。
[0056] 在本申请实施例中,通过获取企业服务器发送的业务请求,根据业务请求和区块链智能合约中的合同模板生成初始业务电子合同;获取企业服务器采用企业私钥对初始业务电子合同进行签名,得到的第一签名,将初始业务电子合同和第一签名确定为第一业务电子合同;采用企业服务器所属企业对应的企业证书,对第一签名进行验证,当第一签名通过验证时,将第一业务电子合同在区块链中存储;获取用户终端采用用户私钥对第一业务电子合同进行签名得到的第二签名,将第一业务电子合同和第二签名确定为第二业务电子合同;采用用户终端所属用户对应的用户证书,对第二签名进行验证,当第二签名通过验证时,将第二业务电子合同在区块链中存储。通过企业证书和用户证书对身份进行验证,避免了信息被盗用导致利益受损的情况,保证了网络信息的数据可靠性。附图说明
[0057] 为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0058] 图1是本申请实施例提供的一种基于区块链的电子合同处理的系统架构图;
[0059] 图2是本申请实施例提供的一种基于区块链的电子合同处理方法的流程示意图;
[0060] 图3是本申请实施例提供的一种基于区块链的电子合同处理方法的流程示意图;
[0061] 图4是本申请实施例提供的一种基于区块链的电子合同处理的场景示意图;
[0062] 图5是本申请实施例提供的一种电子合同处理设备的结构示意图;
[0063] 图6是本申请实施例提供的一种计算机设备的结构示意图。

具体实施方式

[0064] 下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
[0065] 请参见图1,是本发明实施例提供的一种基于区块链的电子合同处理的系统架构图。区块链网络10h通过通信总线10d与用户终端集群建立连接,用户终端集群可包括:用户终端10a、用户终端10b、...、用户终端10c。区块链网络10h中包括区块链节点10f、...、区块链节点10g,区块链网络10h获取企业服务器10e发送的业务请求,根据所述业务请求和区块链智能合约中的合同模板生成初始业务电子合同;区块链网络10h获取所述企业服务器采用企业私钥对所述初始业务电子合同进行签名,得到的第一签名,将所述初始业务电子合同和所述第一签名确定为第一业务电子合同;区块链网络10h从区块链中获取企业服务器所属企业对应的企业证书,根据企业证书中的企业公钥对所述第一签名进行验证,当所述第一签名通过验证时,将所述第一业务电子合同在所述区块链中存储;区块链网络10h获取用户终端采用用户私钥对所述第一业务电子合同进行签名得到的第二签名,将所述第一业务电子合同和所述第二签名确定为第二业务电子合同;区块链网络10h从区块链中获取用户终端所属用户对应的用户证书,根据用户证书中的用户公钥对所述第二签名进行验证,当所述第二签名通过验证时,将所述第二业务电子合同在所述区块链中存储。
[0066] 本申请实施例涉及的服务器可以包括具有数据传输和存储的服务器,用户终端包括:平板电脑、智能手机、个人电脑(PC)、笔记本电脑、掌上电脑等终端设备。
[0067] 本申请实施例中涉及到的区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层。
[0068] 区块链底层平台可以包括用户管理、基础服务、智能合约以及运营监控等处理模块。其中,用户管理模块负责所有区块链参与者的身份信息管理,包括维护公私钥生成(账户管理)、密钥管理以及用户真实身份和区块链地址对应关系维护(权限管理)等,并且在授权的情况下,监管和审计某些真实身份的交易情况,提供险控制的规则配置(风控审计);基础服务模块部署在所有区块链节点设备上,用来验证业务请求的有效性,并对有效请求完成共识后记录到存储上,对于一个新的业务请求,基础服务先对接口适配解析和鉴权处理(接口适配),然后通过共识算法将业务信息加密(共识管理),在加密之后完整一致的传输至共享账本上(网络通信),并进行记录存储;智能合约模块负责合约的注册发行以及合约触发和合约执行,开发人员可以通过某种编程语言定义合约逻辑,发布到区块链上(合约注册),根据合约条款的逻辑,调用密钥或者其它的事件触发执行,完成合约逻辑,同时还提供对合约升级注销的功能;运营监控模块主要负责产品发布过程中的部署、配置的修改、合约设置、适配以及产品运行中的实时状态的可视化输出,例如:告警、监控网络情况、监控节点设备健康状态等。
[0069] 平台产品服务层提供典型应用的基本能和实现框架,开发人员可以基于这些基本能力,叠加业务的特性,完成业务逻辑的区块链实现。应用服务层提供基于区块链方案的应用服务给业务参与方进行使用。
[0070] 请参见图2,为本申请实施例提供了一种基于区块链的电子合同处理方法的流程示意图。如图2所示,本申请实施例的方法可以包括以下步骤S101-步骤S105。
[0071] S101,获取企业服务器发送的业务请求,根据业务请求和区块链智能合约中的合同模板生成初始业务电子合同;
[0072] 具体的,电子合同处理设备获取企业服务器发送的业务请求,根据业务请求和区块链智能合约中的合同模板生成初始业务电子合同,可以理解的是,业务请求是用户针对具体的业务发起的请求,具体可以是物品的交易请求,用户终端将业务请求发送至企业服务器,企业服务器将企业信息和业务请求发送至电子合同处理设备,电子合同处理设备根据业务请求生成初始业务电子合同,初始电子合同是根据业务请求中携带的业务数据以及区块链中的合同模板生成的初始业务电子合同,初始业务电子合同中包括业务数据以及签署合同双方的信息,具体的,签署合同双方的信息可以是甲方和乙方的信息,初始电子合同中没有签署合同双方的签名信息。
[0073] S102,获取企业服务器采用企业私钥对初始业务电子合同进行签名,得到的第一签名,将初始业务电子合同和第一签名确定为第一业务电子合同;
[0074] 具体的,电子合同处理设备获取企业服务器采用企业私钥对初始业务电子合同进行签名,得到的第一签名,将初始业务电子合同和第一签名确定为第一业务电子合同,可以理解的是,企业服务器采用企业的企业私钥对初始业务电子合同进行签名,得到第一签名,企业私钥为非对称密钥密码系统中非公开的秘钥,是通过非对称的加密算法生成的,加密算法包括:RSA加密算法、椭圆曲线加密算法等,第一签名是企业服务器根据初始业务电子合同生成的摘要进行加密得到的信息,区块链可以根据第一签名验证企业服务器所属企业的身份,电子合同处理设备获取企业服务器采用企业私钥对初始业务电子合同进行签名,得到的第一签名,将初始业务电子合同和第一签名确定为第一业务电子合同,区块链可以采用企业对应的企业证书,对第一签名进行验证,企业证书中包括企业私钥对应的企业公钥。
[0075] S103,采用企业服务器所属企业对应的企业证书,对第一签名进行验证,当第一签名通过验证时,将第一业务电子合同在区块链中存储;
[0076] 具体的,电子合同处理设备采用企业服务器所属企业对应的企业证书,对第一签名进行验证,当第一签名通过验证时,将第一业务电子合同在区块链中存储,可以理解的是,电子合同处理设备从区块链中获取企业的企业证书,从企业证书中获取企业私钥对应的企业公钥,采用企业公钥对第一业务电子合同的第一签名进行解密生成解密哈希值,将解密哈希值和第一电子合同的哈希值进行对比,对第一签名进行验证,当第一签名通过验证时,将第一业务电子合同在区块链中存储。
[0077] S104,获取用户终端采用用户私钥对第一业务电子合同进行签名得到的第二签名,将第一业务电子合同和第二签名确定为第二业务电子合同;
[0078] 具体的,电子合同处理设备获取用户终端采用用户私钥对第一业务电子合同进行签名得到的第二签名,将第一业务电子合同和第二签名确定为第二业务电子合同,可以理解的是,用户终端采用用户私钥对第一业务电子合同进行签名得到第二签名,用户私钥为非对称密钥密码系统中非公开的秘钥,是通过非对称的加密算法生成的,加密算法包括:RSA加密算法、椭圆曲线加密算法等,第二签名是用户终端根据第一业务电子合同生成的摘要进行加密得到的信息,区块链可以根据第二签名验证用户终端所属用户的身份,电子合同处理设备获取用户终端采用用户私钥对第一业务电子合同进行签名得到的第二签名,将第一业务电子合同和第二签名确定为第二业务电子合同,区块链可以采用用户对应的用户证书,对第二签名进行验证,用户证书中包括用户私钥对应的用户公钥。
[0079] S105,采用用户终端所属用户对应的用户证书,对第二签名进行验证,当第二签名通过验证时,将第二业务电子合同在区块链中存储。
[0080] 具体的,电子合同处理设备采用用户终端所属用户对应的用户证书,对第二签名进行验证,当第二签名通过验证时,将第二业务电子合同在区块链中存储,可以理解的是,电子合同处理设备从区块链中获取用户的用户证书,从用户证书中获取用户私钥对应的用户公钥,采用用户公钥对第二业务电子合同的第二签名进行解密生成解密哈希值,将解密哈希值和第二电子合同的哈希值进行对比,对第二签名进行验证,当第二签名通过验证时,将第二业务电子合同在区块链中存储。
[0081] 在本申请实施例中,通过获取企业服务器发送的业务请求,根据业务请求和区块链智能合约中的合同模板生成初始业务电子合同;获取企业服务器采用企业私钥对初始业务电子合同进行签名,得到的第一签名,将初始业务电子合同和第一签名确定为第一业务电子合同;采用企业服务器所属企业对应的企业证书,对第一签名进行验证,当第一签名通过验证时,将第一业务电子合同在区块链中存储;获取用户终端采用用户私钥对第一业务电子合同进行签名得到的第二签名,将第一业务电子合同和第二签名确定为第二业务电子合同;采用用户终端所属用户对应的用户证书,对第二签名进行验证,当第二签名通过验证时,将第二业务电子合同在区块链中存储。通过企业证书和用户证书对身份进行验证,避免了信息被盗用导致利益受损的情况,保证了网络信息的数据可靠性。
[0082] 请参见图3,为本申请实施例提供了一种基于区块链的电子合同处理方法的流程示意图。如图3所示,本申请实施例的方法可以包括以下步骤S201-步骤S208。
[0083] S201,获取企业服务器发送的企业证书,将企业证书存储至区块链中,企业证书是CA机构对企业服务器发送的企业信息进行验证,当企业信息通过验证时,根据企业信息和企业服务器发送的企业公钥生成的。
[0084] 具体的,电子合同处理设备获取企业服务器发送的企业证书,将企业证书存储至区块链中,可以理解的是,CA机构是电子商务交易中受信任的第三方,承担公钥体系中公钥的合法性检验的责任,CA机构为每个使用公开密钥的用户发放一个数字证书,数字证书的作用是证明证书中列出的用户合法拥有证书中列出的公开密钥。企业服务器将企业的企业公钥,以及企业的企业信息发送至CA机构,CA机构对企业信息进行验证,当企业信息通过验证时,CA机构根据企业信息和企业公钥生成企业证书,将企业证书发送至企业服务器,电子合同处理设备获取企业服务器发送的企业证书,根据企业证书生成对应的区块,并将区块添加至区块链中。
[0085] S202,获取用户终端发送的用户证书,将用户证书存储至区块链中,用户证书是CA机构对用户终端发送的用户信息进行验证,当用户信息通过验证时,根据用户信息和用户终端发送的用户公钥生成的。
[0086] 具体的,电子合同处理设备获取用户终端发送的用户证书,将用户证书存储至区块链中,可以理解的是,用户终端将用户的用户公钥,以及用户的用户信息发送至CA机构,用户信息包括手机号码,身份证信息等,CA机构对用户信息进行验证,当用户信息通过验证时,CA机构根据用户信息和用户公钥生成用户证书,将用户证书发送至用户终端,电子合同处理设备获取用户终端发送的用户证书,根据用户证书生成对应的区块,并将区块添加至区块链中。
[0087] S203,获取企业服务器发送的合同模板,基于合同模板添加至区块链智能合约中;合同模板是企业服务器根据业务信息和企业的企业信息生成的。
[0088] 具体的,电子合同处理设备获取企业服务器发送的合同模板,基于合同模板添加至区块链智能合约中,可以理解的是,合同模板是根据业务信息和企业的企业信息,合同模板用于快速生成初始业务电子合同,企业服务器将合同模板发送至电子合同处理设备,电子合同处理设备合同模板添加至区块链智能合约中。
[0089] S204,获取企业服务器发送的业务请求,从业务请求携带的业务信息中提取业务关键字;从区块链智能合约中获取业务请求对应的合同模板,将业务关键字添加至合同模板中,生成初始业务电子合同。
[0090] 具体的,电子合同处理设备获取企业服务器发送的业务请求,从业务请求携带的业务信息中提取业务关键字;从区块链智能合约中获取业务请求对应的合同模板,将业务关键字添加至合同模板中,生成初始业务电子合同,可以理解的是,企业服务器获取用户终端发送的业务请求,业务请求携带有用户信息和业务信息,企业服务器将业务请求和企业信息发送至电子合同处理设备,电子合同处理设备从业务信息中提取业务关键字,业务关键字为业务中的数值信息,具体可以为交易的金额、时间、日期等,根据业务请求和企业信息获取对应的合同模板,将业务关键字添加至合同模板中,生成初始业务电子合同。
[0091] S205,获取企业服务器采用企业私钥对初始业务电子合同进行签名,得到的第一签名,将初始业务电子合同和第一签名确定为第一业务电子合同;
[0092] 具体的,电子合同处理设备获取企业服务器采用企业私钥对初始业务电子合同进行签名,得到的第一签名,将初始业务电子合同和第一签名确定为第一业务电子合同,可以理解的是,企业服务器采用企业的企业私钥对初始业务电子合同进行签名,得到第一签名,企业私钥为非对称密钥密码系统中非公开的秘钥,是通过非对称的加密算法生成的,加密算法包括:RSA加密算法、椭圆曲线加密算法等,第一签名是企业服务器根据初始业务电子合同生成的摘要进行加密得到的信息,区块链可以根据第一签名验证企业服务器所属企业的身份,电子合同处理设备获取企业服务器采用企业私钥对初始业务电子合同进行签名,得到的第一签名,将初始业务电子合同和第一签名确定为第一业务电子合同,区块链可以采用企业对应的企业证书,对第一签名进行验证,企业证书中包括企业私钥对应的企业公钥。
[0093] S206,采用企业服务器所属企业对应的企业证书,对第一签名进行验证,当第一签名通过验证时,将第一业务电子合同在区块链中存储;
[0094] 具体的,电子合同处理设备从区块链中获取企业服务器所属企业对应的企业证书,从企业证书中获取企业对应的企业公钥,采用企业公钥对第一业务电子合同的签名进行解密,生成第一签名对应的解密哈希值,将第一签名对应的解密哈希值与初始业务电子合同对应的哈希值进行对比,若第一签名对应的解密哈希值与初始业务电子合同对应的哈希值相同,则确定第二签名通过验证,将第一业务电子合同在区块链中存储;若第一签名对应的解密哈希值与初始业务电子合同对应的哈希值不相同,则发送第一提示信息,第一提示信息可以是文字提示信息和语音提示信息。
[0095] S207,获取用户终端采用用户私钥对第一业务电子合同进行签名得到的第二签名,将第一业务电子合同和第二签名确定为第二业务电子合同;
[0096] 具体的,电子合同处理设备获取用户终端采用用户私钥对第一业务电子合同进行签名得到的第二签名,将第一业务电子合同和第二签名确定为第二业务电子合同,可以理解的是,用户终端采用用户私钥对第一业务电子合同进行签名得到第二签名,用户私钥为非对称密钥密码系统中非公开的秘钥,是通过非对称的加密算法生成的,加密算法包括:RSA加密算法、椭圆曲线加密算法等,第二签名是用户终端根据第一业务电子合同生成的摘要进行加密得到的信息,区块链可以根据第二签名验证用户终端所属用户的身份,电子合同处理设备获取用户终端采用用户私钥对第一业务电子合同进行签名得到的第二签名,将第一业务电子合同和第二签名确定为第二业务电子合同,区块链可以采用用户对应的用户证书,对第二签名进行验证,用户证书中包括用户私钥对应的用户公钥。
[0097] S208,采用用户终端所属用户对应的用户证书,对第二签名进行验证,当第二签名通过验证时,将第二业务电子合同在区块链中存储。
[0098] 具体的,电子合同处理设备从区块链中获取用户终端的用户证书,从用户证书中获取用户公钥;采用用户公钥对第二签名进行解密,生成第二签名对应的解密哈希值,将第二签名对应的解密哈希值与第一业务电子合同对应的哈希值进行对比;若第二签名对应的解密哈希值与第一业务电子合同对应的哈希值相同,则确定第二签名通过验证,将第二业务电子合同在区块链中存储;若第二签名对应的解密哈希值与第一业务电子合同对应的哈希值不相同,则发送第二提示信息,第二提示信息可以是文字提示信息和语音提示信息。请参见图4,为本申请实施例提供了一种基于区块链的电子合同处理方法的场景示意图,如图4所示;
[0099] 在进行电子合约签约之前,企业通过注册“至信链控制台”,完成企业身份实名认证及企业身份绑定,在本地生成公私钥并在“至信链控制台”做公钥及签名的绑定,私钥可用于签署电子合同。企业将企业公钥及企业信息发送至CA机构,申请企业CA证书,CA机构对企业信息进行验证,验证通过后颁发证书,企业将企业证书存储至区块链。企业在“至信链控制台”定义好合同模板,将合同添加至区块链智能合约中。
[0100] 用户通过“至信链SDK”在本地生成用户公私钥,用于用户对电子合同做签名,用户将用户公钥及相关用户信息(姓名+身份证号+手机号)给CA机构申请用户证书。CA机构对用户信息进行验证,验证通过后颁发证书,用户将用户证书存储至区块链智能合约中。
[0101] 用户向企业发送业务请求,企业将业务请求和企业信息发送至区块链,区块链提取业务请求中的关键字段,根据关键字段和区块链智能合约中的合同模板生成初始业务电子合约,企业对初始业务电子合约进行签名生成第一签名,将初始业务电子合同和第一签名确定为第一业务电子合同,并根据企业证书中的企业公钥对第一业务电子合同中的第一签名进行验证;当第一签名通过验证时,对合同进行存储,用户可以在区块链上读出第一业务电子合同并使用秘钥进行解密,查看合同明文,若用户同意签约,可以在客户端上点击“下一步”或“签署”,并对用户下发短信验证码验证用户签约意愿;用户通过用户私钥对区块链上第一业务电子合同进行签名,生成第二签名,区块链将初始业务电子合同和第二签名确定为第二业务电子合同,并根据用户证书中的用户公钥对第二业务电子合同中的第二签名进行验证,当第一签名通过验证时,用户和企业正式完成链上合同的签署,并对合同进行存储,同时,区块链可以将签署的合同通过邮件下发给到企业和用户。
[0102] 合同通过邮件下发给到用户:未避免用户签约合同与链上合同不符,在用户完成合同签约后至信链平台将对应的合同通过邮箱形式发给用户在本申请实施例中,通过获取企业服务器发送的业务请求,根据业务请求和区块链智能合约中的合同模板生成初始业务电子合同;获取企业服务器采用企业私钥对初始业务电子合同进行签名,得到的第一签名,将初始业务电子合同和第一签名确定为第一业务电子合同;采用企业服务器所属企业对应的企业证书,对第一签名进行验证,当第一签名通过验证时,将第一业务电子合同在区块链中存储;获取用户终端采用用户私钥对第一业务电子合同进行签名得到的第二签名,将第一业务电子合同和第二签名确定为第二业务电子合同;采用用户终端所属用户对应的用户证书,对第二签名进行验证,当第二签名通过验证时,将第二业务电子合同在区块链中存储。通过企业证书和用户证书对身份进行验证,避免了信息被盗用导致利益受损的情况,保证了网络信息的数据可靠性。
[0103] 请参见图5,为本申请实施例提供了一种服务器1的结构示意图。如图5所示,本申请实施例的服务器1可以包括:请求获取单元11、企业签名单元12、企业验证单元13、用户签名单元14、用户验证单元15。
[0104] 请求获取单元11,用于获取企业服务器发送的业务请求,根据业务请求和区块链智能合约中的合同模板生成初始业务电子合同;
[0105] 请求获取单元11具体用于:
[0106] 获取企业服务器发送的业务请求,从业务请求携带的业务信息中提取业务关键字;
[0107] 从区块链智能合约中获取业务请求对应的合同模板,将业务关键字添加至合同模板中,生成初始业务电子合同。
[0108] 企业签名单元12,用于获取企业服务器采用企业私钥对初始业务电子合同进行签名,得到的第一签名,将初始业务电子合同和第一签名确定为第一业务电子合同;
[0109] 企业验证单元13,用于采用企业服务器所属企业对应的企业证书,对第一签名进行验证,当第一签名通过验证时,将第一业务电子合同在区块链中存储;
[0110] 企业验证单元13具体用于:
[0111] 从区块链中获取企业服务器所属企业对应的企业证书,从企业证书中获取企业对应的企业公钥;
[0112] 采用企业公钥对第一业务电子合同的签名进行解密,生成第一签名对应的解密哈希值,将第一签名对应的解密哈希值与初始业务电子合同对应的哈希值进行对比;
[0113] 若第一签名对应的解密哈希值与初始业务电子合同对应的哈希值相同,则确定第二签名通过验证,将第一业务电子合同在区块链中存储;
[0114] 若第一签名对应的解密哈希值与初始业务电子合同对应的哈希值不相同,则发送第一提示信息。
[0115] 用户签名单元14,用于获取用户终端采用用户私钥对第一业务电子合同进行签名得到的第二签名,将第一业务电子合同和第二签名确定为第二业务电子合同;
[0116] 用户验证单元15,用于采用用户终端所属用户对应的用户证书,对第二签名进行验证,当第二签名通过验证时,将第二业务电子合同在区块链中存储。
[0117] 用户验证单元15具体用于:
[0118] 从区块链中获取用户终端的用户证书,从用户证书中获取用户公钥;
[0119] 采用用户公钥对第二签名进行解密,生成第二签名对应的解密哈希值,将第二签名对应的解密哈希值与第一业务电子合同对应的哈希值进行对比;
[0120] 若第二签名对应的解密哈希值与第一业务电子合同对应的哈希值相同,则确定第二签名通过验证,将第二业务电子合同在区块链中存储;
[0121] 若第二签名对应的解密哈希值与第一业务电子合同对应的哈希值不相同,则发送第二提示信息。
[0122] 请参见图5,本申请实施例的服务器1可以还包括:模板生成单元16、企业证书生成单元17、用户证书生成单元18。
[0123] 模板生成单元16,用于获取企业服务器发送的合同模板,基于合同模板添加至区块链智能合约中;合同模板是企业服务器根据业务信息和企业的企业信息生成的。
[0124] 企业证书生成单元17,用于获取企业服务器发送的企业证书,将企业证书存储至区块链中,企业证书是CA机构对企业服务器发送的企业信息进行验证,当企业信息通过验证时,根据企业信息和企业服务器发送的企业公钥生成的。
[0125] 用户证书生成单元18,用于获取用户终端发送的用户证书,将用户证书存储至区块链中,用户证书是CA机构对用户终端发送的用户信息进行验证,当用户信息通过验证时,根据用户信息和用户终端发送的用户公钥生成的。
[0126] 在本申请实施例中,通过获取企业服务器发送的业务请求,根据业务请求和区块链智能合约中的合同模板生成初始业务电子合同;获取企业服务器采用企业私钥对初始业务电子合同进行签名,得到的第一签名,将初始业务电子合同和第一签名确定为第一业务电子合同;采用企业服务器所属企业对应的企业证书,对第一签名进行验证,当第一签名通过验证时,将第一业务电子合同在区块链中存储;获取用户终端采用用户私钥对第一业务电子合同进行签名得到的第二签名,将第一业务电子合同和第二签名确定为第二业务电子合同;采用用户终端所属用户对应的用户证书,对第二签名进行验证,当第二签名通过验证时,将第二业务电子合同在区块链中存储。通过企业证书和用户证书对身份进行验证,避免了信息被盗用导致利益受损的情况,保证了网络信息的数据可靠性。
[0127] 请参见图6,为本申请实施例提供了一种计算机设备的结构示意图。如图6所示,计算机设备1000可以包括:至少一个处理器1001,例如CPU,至少一个网络接口1004,用户接口1003,存储器1005,至少一个通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。其中,用户接口1003可以包括显示屏(Display),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以是高速RAM存储器,也可以是非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。存储器1005可选的还可以是至少一个位于远离前述处理器1001的存储装置。如图6所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及数据处理应用程序。
[0128] 在图6所示的计算机设备1000中,网络接口1004可提供网络通讯功能,用户接口1003主要用于为用户提供输入的接口;而处理器1001可以用于调用存储器1005中存储的数据处理应用程序,具体执行以下操作:
[0129] 获取企业服务器发送的业务请求,根据所述业务请求和区块链智能合约中的合同模板生成初始业务电子合同;
[0130] 获取所述企业服务器采用企业私钥对所述初始业务电子合同进行签名,得到的第一签名,将所述初始业务电子合同和所述第一签名确定为第一业务电子合同;
[0131] 采用所述企业服务器所属企业对应的企业证书,对所述第一签名进行验证,当所述第一签名通过验证时,将所述第一业务电子合同在所述区块链中存储;
[0132] 获取用户终端采用用户私钥对所述第一业务电子合同进行签名得到的第二签名,将所述第一业务电子合同和所述第二签名确定为第二业务电子合同;
[0133] 采用所述用户终端所属用户对应的用户证书,对所述第二签名进行验证,当所述第二签名通过验证时,将所述第二业务电子合同在所述区块链中存储。
[0134] 以实现上述图2-图4任一个所对应实施例中对电子合同处理方法的描述,在此不再赘述。
[0135] 应当理解,本申请实施例中所描述的计算机设备1000可执行前文图2-图4任一个所对应实施例中对电子合同处理方法的描述,也可执行前文图5所对应实施例中对电子合同处理设备的描述,在此不再赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。
[0136] 此外,这里需要指出的是:本申请实施例还提供了一种计算机可读存储介质,且计算机可读存储介质中存储有前文提及的电子合同处理设备所执行的计算机程序,且计算机程序包括程序指令,当处理器执行程序指令时,能够执行前文图2-图4任一个所对应实施例中对电子合同处理方法的描述,因此,这里将不再进行赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。对于本申请所涉及的计算机可读存储介质实施例中未披露的技术细节,请参照本申请方法实施例的描述。
[0137] 本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random Access Memory,RAM)等。
[0138] 以上所揭露的仅为本申请较佳实施例而已,当然不能以此来限定本申请之权利范围,因此依本申请权利要求所作的等同变化,仍属本申请所涵盖的范围。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈