首页 / 专利库 / 资料储存系统 / 分布式账本 / 一种基于区块链和智能合约的电子文书签署方法

一种基于链和智能合约电子书签署方法

阅读:926发布:2020-09-27

专利汇可以提供一种基于链和智能合约电子书签署方法专利检索,专利查询,专利分析的服务。并且一种基于 区 块 链 和 智能合约 的 电子 文 书签 署方法,它采用业务平台 服务器 CS、多个区块链 节点 服务器TS和多个区块链智能合约脚本服务器JS,其中,业务平台服务器CS用于接受用户的 访问 和提供数据交互,CS与各区块链节点服务器TS连接通信,每个TS与对应的JS进行通信,各TS的 数据库 之间保持数据同步。本 发明 基于区块链的技术应用而提出,利用区块链的去中心化思想并结合其 分布式账本 和智能合约机制,实现了在不依赖于特定可信主体的 基础 上,解决了从技术层面保证电子合同签署可靠性问题。,下面是一种基于链和智能合约电子书签署方法专利的具体信息内容。

1.一种基于链和智能合约电子书签署方法,它采用业务平台服务器CS、多个区块链节点服务器TS和多个区块链智能合约脚本服务器JS,其中,业务平台服务器CS用于接受用户的访问和提供数据交互,CS与各区块链节点服务器TS连接通信,每个TS与对应的JS进行通信,各TS的数据库之间保持数据同步,其特征在于该方法的步骤包括:
S1、初始化的步骤:
S1.1、使用公钥密码算法,为CS颁发密钥对,其中公钥为PuKC,私钥为PrKc;
S1.2、使用公钥密码算法,为每一个TS颁发密钥对,公钥分别为PuKT1、PuKT2、PuKT3、…、PuKTn,私钥分别为PrKT1、PrKT2、PrKT3、…、PrKTn;
S1.3、设置CS、TS和JS使用统一的哈希运算规则;
S1.4、为每一个TS和JS分配唯一的通讯地址,表示为AdT1、AdT2、AdT3、…AdTn和AdJ1、AdJ2、AdJ3、…、AdJn;
S1.5、各用户登录CS进行注册,CS为各用户完成实名身份审核;
签署流程
S2、签约发起
S2.1、用户Alice登录CS,导入需要与Bob共同签署的电子文书M,CS通过用户数据库查询得到Alice的唯一身份信息XA和通信信息PA,以及Bob的唯一身份信息XB和通信信息PB,同时CS为此项签署任务生成唯一编号N,将Alice的XA和PA合并,标记为IDA,将Bob的XB和PB合并,标记为IDB;
S2.2、CS对M、IDA、IDB分别进行哈希运算,得到HCM、HCIDA、HCIDB,并将Alice的此项签署任务按照Bob的通信信息PB通知给Bob;
S2.3、CS将HCM、HCIDA、HCIDB连同任务编号N,向全网所有区块链节点服务器TS广播,请求响应;
S2.4、所有接收到广播的TS都将编号为N的加入任务表单,保存任务信息HCM、HCIDA、HCIDB,并根据服务器空闲程度决定是否响应;
S2.5、决定响应的区块链节点服务器TS将HCM、HCIDA、HCIDB连同任务编号N和自己的地址作为响应信息回复给CS;
S2.6、CS在接收到的所有TS的响应中随机选择一个作为有权节点TQ;
S2.7、CS将M、IDA、IDB使用该有权节点TQ的公钥PuKTQ加密,得到M’、IDA’、IDB’,通过地址AdTQ发送给该有权节点TQ;
S2.8、进行步骤2.7的同时,CS向全网TS发送经PuKTQ加密得到的M’、IDA’、IDB’,并通知编号N的任务已经被选由有权节点TQ处理,接收到通知的所有TS将M’、IDA’、IDB’、AdTQ记录于编号为N的任务表单;
S2.9、有权节点TQ收到步骤2.7发出的加密数据,使用私钥PrKTQ解密,还原出M、IDA、IDB,并对其分别进行哈希运算,以验证哈希值是否与之前的HCM、HCIDA、HCIDB相一致;验证不一致则通知CS重新发起任务,验证一致则进一步将IDA、IDB还原为XA、PA、XB、PB;
S2.10、有权节点TQ从所有连接的区块链智能合约脚本服务器JS中随机选择其中的一个作为有权服务器JQ;
S2.11、有权节点TQ将HCM、XA、PA、XB、PB连同唯一任务编号N和TQ的地址AdTQ发送给JQ的地址AdJQ;任务发送后,有权节点TQ将解密得到的M、IDA、IDB丢弃,只保存加密的M’、IDA’、IDB’进数据库;
S2.12、有权服务器JQ接收信息;
S2.13、有权服务器JQ将HCM、XA和当前时间tJQN作为参数,使用随机算法为Alice生成一个随机码RNA,通过通信信息PA发送给Alice;同时将RNA、tJQN存入编号为N的表单数据库;JQ将HCM、XB和当前时间tJQN作为参数,使用随机算法为Bob生成一个随机码RNB,通过通信信息PB发送给Bob;同时将RNA、tJQN存入编号为N的表单数据库;
S2.14、JQ分别对RNA和RNB进行哈希运算,得到哈希值H(RNA)和H(RNB),并连同任务编号N和JQ的地址AdJQ,向所有TS节点服务器广播,收到广播的节点服务器将H(RNA)、H(RNB)和AdJQ保存于编号为N的任务数据表单中;
S2.15、Alice登录CS,进入任务N查阅M,输入JQ发送的随机码RNA以确认对电子文书M的签署;Bob登录CS,进入任务N查阅M,输入JQ发送的随机码RNB以确认对电子文书M的签署;
S2.16、CS分别对RNA和RNB进行哈希运算,得到哈希值H(RNA)’和H(RNB)’,并将H(RNA)’和H(RNB)’连同任务编号N向全网所有TS广播,请求验证;
S2.17、收到步骤2.16验证请求的节点分别将H(RNA)’和H(RNB)’与之前保存任务N表单中的H(RNA)和H(RNB)进行比对,如果H(RNA)’与H(RNA)比对一致,则通知CS,H(RNA)’比对通过,如不一致则通知H(RNA)’比对不通过;如果H(RNB)’与H(RNB)比对一致,则通知CS,H(RNB)’比对通过,如不一致则通知H(RNB)’比对不通过;
S2.18、CS从多个节点收到的验证反馈结果H(RNA)’,比对通过超过阈值的,则Alice电子文书M的签署任务完成;比对通过不超过阈值的,则Alice签署失败;CS从多个节点收到的验证反馈结果H(RNB)’,比对通过超过阈值的,则Bob电子文书M的签署任务完成;比对通过不超过阈值的,则Bob签署失败;
S2.19、Alice与Bob电子文书M的签署任务均完成,则签署成功,CS从任意节点TS下载编号为N的任务表单的HCM、HCIDA、HCIDB、AdTQ、H(RNA)、H(RNB)和AdJQ,以及M’、IDA’、IDB’。
2.根据权利要求1所述的一种基于区块链和智能合约的电子文书签署方法,其特征是所述的各区块链智能合约脚本服务器JS均为部署在网络上的预设脚本执行代码的服务器,作为区块链上的智能合约脚本,能够接受预定格式的输入,并在接收到合格的输入后,完成运算输出。
3.根据权利要求1所述的一种基于区块链和智能合约的电子文书签署方法,其特征是所述的步骤S1.3中,CS、TS和JS使用统一的哈希运算规则为SHA256算法。
4.根据权利要求1所述的一种基于区块链和智能合约的电子文书签署方法,其特征是所述的步骤S2.1中,唯一身份信息XA是能够进行实名身份审核的信息,包括:身份证号码、护照号码或社会保障号码,通信信息PA包括手机号、地址、传真和电子邮箱。
5.根据权利要求1所述的一种基于区块链和智能合约的电子文书签署方法,其特征是所述的步骤S2.3中,CS将HCM、HCIDA、HCIDB使用私钥PrKc签名后,连同任务编号N,向全网所有区块链节点服务器TS广播,请求响应;对应地步骤S2.5中,决定响应的区块链节点服务器TS使用CS的公钥PuKC验证任务N的签名正确。
6.根据权利要求1所述的一种基于区块链和智能合约的电子文书签署方法,其特征是所述的步骤S2.5中,决定响应的区块链节点服务器TS使用各自的私钥对HCM、HCIDA、HCIDB进行签名后,连同任务编号N和自己的地址作为响应信息回复给CS;对应地步骤S2.6中,CS在接收到的所有TS的响应中随机选择一个进行签名验证,签名正确则将该区块链节点服务器TS作为有权节点TQ。
7.根据权利要求1或6所述的一种基于区块链和智能合约的电子文书签署方法,其特征是所述的步骤S2.6中,CS将接收到的所有TS的响应按照时间进行排序,并选择最先到达且签名验证正确的区块链节点服务器TS作为有权节点TQ。
8.根据权利要求1所述的一种基于区块链和智能合约的电子文书签署方法,其特征是所述的步骤S2.11中,有权节点TQ将HCM、XA、PA、XB、PB使用私钥PrKTQ签名后,连同唯一任务编号N和TQ的地址AdTQ发送给JQ的地址AdJQ;对应的步骤S2.12中,有权服务器JQ收到信息,使用TQ的公钥PuKTQ签名验证。
9.根据权利要求1所述的一种基于区块链和智能合约的电子文书签署方法,其特征是所述的步骤S2.12中,有权服务器JQ收到信息,判断HCM、XA、PA、XB、PB的输入格式是否与预设规则一致,格式错误则反馈给TQ,任务终止,格式一致则继续。
10.根据权利要求1所述的一种基于区块链和智能合约的电子文书签署方法,其特征是所述的该方法还包括验证步骤,当Bob需要验证电子文书M是否由Bob签署,则步骤如下:
S3.1、Bob登录CS提出对电子文书M的验证请求;
C C
S3.2、CS提供HM、HIDB、H(RNB)供Bob下载,并提供哈希运算工具;
S3.3、CS向任意TS节点提请编号为N的任务中Bob的验证请求;
S3.4、收到步骤3.3请求的节点根据编号N任务中记录的AdJQ地址,向JQ转述Bob的验证请求;
S3.5、JQ收到Bob的验证要求,从编号为N的任务数据库中提取RNB并发送至PB;
S3.6、Bob持有参数M、XB、PB、RNB以及HCM、HCIDB、H(RNB),Bob使用哈希运算工具分别对M、(XB+PB)、RNB进行哈希运算,并分别与HCM、HCIDB、H(RNB)进行比对,比对一致则验证完成,编号为N的签署任务由Bob完成,比对不一致则验证失败,编号为N的签署任务非Bob完成。

说明书全文

一种基于链和智能合约电子书签署方法

技术领域

[0001] 本发明涉及智能合约技术领域,尤其是一种基于区块链和智能合约的电子文书签署方法。

背景技术

[0002] 目前,随着电子商务的不断发展,传统的纸质合同正在被电子合同所取代。但现有的电子合同签署方法都不可避免的至少需要一个推定可被信任的主体进行参与,比如维护数字证书的CA中心,或者基于特定公信身份的公证处的介入,虽然基于公钥基础设施的CA中心在技术上是可靠的,但可靠的使用必须采用硬件介质的Ukey,导致使用便捷性严重欠缺,而基于公证处的介入虽然在法理上可以解决电子合同平台的客观可信的身份问题,但这只能完全出于对公证处的道德信任,并不能从技术上实现可靠保证;实务中即能使用便捷,又技术可靠的解决方案非常少见。

发明内容

[0003] 本发明的目的是针对上述问题,提出一种基于区块链和智能合约的电子文书签署方法。
[0004] 本发明的技术方案是:
[0005] 一种基于区块链和智能合约的电子文书签署方法,它采用业务平台服务器CS、多个区块链节点服务器TS和多个区块链智能合约脚本服务器JS,其中,业务平台服务器CS用于接受用户的访问和提供数据交互,CS与各区块链节点服务器TS连接通信,每个TS与对应的JS进行通信,各TS的数据库之间保持数据同步,该方法的步骤包括:
[0006] S1、初始化的步骤:
[0007] S1.1、使用公钥密码算法,为CS颁发密钥对,其中公钥为PuKC,私钥为PrKc;
[0008] S1.2、使用公钥密码算法,为每一个TS颁发密钥对,公钥分别为PuKT1、PuKT2、PuKT3、…、PuKTn,私钥分别为PrKT1、PrKT2、PrKT3、…、PrKTn;
[0009] S1.3、设置CS、TS和JS使用统一的哈希运算规则;
[0010] S1.4、为每一个TS和JS分配唯一的通讯地址,表示为AdT1、AdT2、AdT3、…AdTn和AdJ1、AdJ2、AdJ3、…、AdJn;
[0011] S1.5、各用户登录CS进行注册,CS为各用户完成实名身份审核;
[0012] 签署流程
[0013] S2、签约发起
[0014] S2.1、用户Alice登录CS,导入需要与Bob共同签署的电子文书M,CS通过用户数据库查询得到Alice的唯一身份信息XA和通信信息PA,以及Bob的唯一身份信息XB和通信信息PB,同时CS为此项签署任务生成唯一编号N,将Alice的XA和PA合并,标记为IDA,将Bob的XB和PB合并,标记为IDB;
[0015] S2.2、CS对M、IDA、IDB分别进行哈希运算,得到HCM、HCIDA、HCIDB,并将Alice的此项签署任务按照Bob的通信信息PB通知给Bob;
[0016] S2.3、CS将HCM、HCIDA、HCIDB连同任务编号N,向全网所有区块链节点服务器TS广播,请求响应;
[0017] S2.4、所有接收到广播的TS都将编号为N的加入任务表单,保存任务信息HCM、HCIDA、HCIDB,并根据服务器空闲程度决定是否响应;
[0018] S2.5、决定响应的区块链节点服务器TS将HCM、HCIDA、HCIDB连同任务编号N和自己的地址作为响应信息回复给CS;
[0019] S2.6、CS在接收到的所有TS的响应中随机选择一个作为有权节点TQ;
[0020] S2.7、CS将M、IDA、IDB使用该有权节点TQ的公钥PuKTQ加密,得到M’、IDA’、IDB’,通过地址AdTQ发送给该有权节点TQ;
[0021] S2.8、进行步骤2.7的同时,CS向全网TS发送经PuKTQ加密得到的M’、IDA’、IDB’,并通知编号N的任务已经被选由有权节点TQ处理,接收到通知的所有TS将M’、IDA’、IDB’、AdTQ记录于编号为N的任务表单;
[0022] S2.9、有权节点TQ收到步骤2.7发出的加密数据,使用私钥PrKTQ解密,还原出M、IDA、IDB,并对其分别进行哈希运算,以验证哈希值是否与之前的HCM、HCIDA、HCIDB相一致;验证不一致则通知CS重新发起任务,验证一致则进一步将IDA、IDB还原为XA、PA、XB、PB;
[0023] S2.10、有权节点TQ从所有连接的区块链智能合约脚本服务器JS中随机选择其中的一个作为有权服务器JQ;
[0024] S2.11、有权节点TQ将HCM、XA、PA、XB、PB连同唯一任务编号N和TQ的地址AdTQ发送给JQ的地址AdJQ;任务发送后,有权节点TQ将解密得到的M、IDA、IDB丢弃,只保存加密的M’、IDA’、IDB’进数据库;
[0025] S2.12、有权服务器JQ接收信息;
[0026] S2.13、有权服务器JQ将HCM、XA和当前时间tJQN作为参数,使用随机算法为Alice生成一个随机码RNA,通过通信信息PA发送给Alice;同时将RNA、tJQN存入编号为N的表单数据库;JQ将HCM、XB和当前时间tJQN作为参数,使用随机算法为Bob生成一个随机码RNB,通过通信信息PB发送给Bob;同时将RNA、tJQN存入编号为N的表单数据库;
[0027] S2.14、JQ分别对RNA和RNB进行哈希运算,得到哈希值H(RNA)和H(RNB),并连同任务编号N和JQ的地址AdJQ,向所有TS节点服务器广播,收到广播的节点服务器将H(RNA)、H(RNB)和AdJQ保存于编号为N的任务数据表单中;(此时,所有的TS节点服务器在编号N的任务表单中已经同步记录了HCM、HCIDA、HCIDB、AdTQ、H(RNA)、H(RNB)和AdJQ,以及经TQ公钥PuKTQ加密过的M’、IDA’、IDB’)
[0028] S2.15、Alice登录CS,进入任务N查阅M,输入JQ发送的随机码RNA以确认对电子文书M的签署;Bob登录CS,进入任务N查阅M,输入JQ发送的随机码RNB以确认对电子文书M的签署;
[0029] S2.16、CS分别对RNA和RNB进行哈希运算,得到哈希值H(RNA)’和H(RNB)’,并将H(RNA)’和H(RNB)’连同任务编号N向全网所有TS广播,请求验证;
[0030] S2.17、收到步骤2.16验证请求的节点分别将H(RNA)’和H(RNB)’与之前保存任务N表单中的H(RNA)和H(RNB)进行比对,如果H(RNA)’与H(RNA)比对一致,则通知CS,H(RNA)’比对通过,如不一致则通知H(RNA)’比对不通过;如果H(RNB)’与H(RNB)比对一致,则通知CS,H(RNB)’比对通过,如不一致则通知H(RNB)’比对不通过;
[0031] S2.18、CS从多个节点收到的验证反馈结果H(RNA)’,比对通过超过阈值的,则Alice电子文书M的签署任务完成;比对通过不超过阈值的,则Alice签署失败;CS从多个节点收到的验证反馈结果H(RNB)’,比对通过超过阈值的,则Bob电子文书M的签署任务完成;比对通过不超过阈值的,则Bob签署失败;
[0032] S2.19、Alice与Bob电子文书M的签署任务均完成,则签署成功,CS从任意节点TS下载编号为N的任务表单的HCM、HCIDA、HCIDB、AdTQ、H(RNA)、H(RNB)和AdJQ,以及M’、IDA’、IDB’。
[0033] 进一步地,所述的各区块链智能合约脚本服务器JS均为部署在网络上的预设脚本执行代码的服务器,作为区块链上的智能合约脚本,能够接受预定格式的输入,并在接收到合格的输入后,完成运算输出。
[0034] 进一步地,所步骤S1.3中,CS、TS和JS使用统一的哈希运算规则为SHA256算法。
[0035] 进一步地,所步骤S2.1中,唯一身份信息XA是能够进行实名身份审核的信息,包括:身份证号码、护照号码或社会保障号码,通信信息PA包括手机号、地址、传真和电子邮箱。
[0036] 进一步地,所述的步骤S2.3中,CS将HCM、HCIDA、HCIDB使用私钥PrKc签名后,连同任务编号N,向全网所有区块链节点服务器TS广播,请求响应;对应地步骤S2.5中,决定响应的区块链节点服务器TS使用CS的公钥PuKC验证任务N的签名正确。
[0037] 进一步地,所述的步骤S2.5中,决定响应的区块链节点服务器TS使用各自的私钥对HCM、HCIDA、HCIDB进行签名后,连同任务编号N和自己的地址作为响应信息回复给CS;对应地步骤S2.6中,CS在接收到的所有TS的响应中随机选择一个进行签名验证,签名正确则将该区块链节点服务器TS作为有权节点TQ。
[0038] 进一步地,所述的步骤S2.6中,CS将接收到的所有TS的响应按照时间进行排序,并选择最先到达且签名验证正确的区块链节点服务器TS作为有权节点TQ。
[0039] 进一步地,所述的步骤S2.11中,有权节点TQ将HCM、XA、PA、XB、PB使用私钥PrKTQ签名后,连同唯一任务编号N和TQ的地址AdTQ发送给JQ的地址AdJQ;对应的步骤S2.12中,有权服务器JQ收到信息,使用TQ的公钥PuKTQ签名验证。
[0040] 进一步地,所述的步骤S2.12中,有权服务器JQ收到信息,判断HCM、XA、PA、XB、PB的输入格式是否与预设规则一致,格式错误则反馈给TQ,任务终止,格式一致则继续。
[0041] 进一步地,该方法还包括验证步骤,当Bob需要验证电子文书M是否由Bob签署,则步骤如下:
[0042] S3.1、Bob登录CS提出对电子文书M的验证请求;
[0043] S3.2、CS提供HCM、HCIDB、H(RNB)供Bob下载,并提供哈希运算工具;
[0044] S3.3、CS向任意TS节点提请编号为N的任务中Bob的验证请求;
[0045] S3.4、收到步骤3.3请求的节点根据编号N任务中记录的AdJQ地址,向JQ转述Bob的验证请求;
[0046] S3.5、JQ收到Bob的验证要求,从编号为N的任务数据库中提取RNB并发送至PB;
[0047] S3.6、Bob持有参数M、XB、PB、RNB以及HCM、HCIDB、H(RNB),Bob使用哈希运算工具分别对M、(XB+PB)、RNB进行哈希运算,并分别与HCM、HCIDB、H(RNB)进行比对,比对一致则验证完成,编号为N的签署任务由Bob完成,比对不一致则验证失败,编号为N的签署任务非Bob完成;Alice的需要验证电子文书M是否由其签署的步骤同上。
[0048] 本发明的有益效果:
[0049] 本发明基于区块链的技术应用而提出,利用区块链的去中心化思想并结合其分布式账本和智能合约机制,实现了在不依赖于特定可信主体的基础上,解决了从技术层面保证电子合同签署可靠性问题。
[0050] 相对于传统的电子合同签署方法,具有如下特点:
[0051] 1、去中心化,系统不再依赖于某个推定可信的主体;
[0052] 2、分布式数据库部署,无需再担心出现数据的容灾备份问题;
[0053] 3、数据真实性用户可自助验真,不用依赖于特定主体提供的报告;
[0054] 4、平台不能冒充某个用户向另一个用户发起签约请求,可靠性好。附图说明
[0055] 图1是本发明的结构示意图。

具体实施方式

[0056] 下面结合附图和实施例对本发明作进一步的说明。
[0057] 如图1所示,一种基于区块链和智能合约的电子文书签署方法,它采用业务平台服务器CS、多个区块链节点服务器TS和多个区块链智能合约脚本服务器JS,其中,业务平台服务器CS用于接受用户的访问和提供数据交互,CS与各区块链节点服务器TS连接通信,每个TS与对应的JS进行通信,各TS的数据库之间保持数据同步,所述的各区块链智能合约脚本服务器JS均为部署在网络上的预设脚本执行代码的服务器,作为区块链上的智能合约脚本,能够接受预定格式的输入,并在接收到合格的输入后,完成运算输出,该方法的步骤包括:
[0058] S1、初始化的步骤:
[0059] S1.1、使用公钥密码算法,为CS颁发密钥对,其中公钥为PuKC,私钥为PrKc;
[0060] S1.2、使用公钥密码算法,为每一个TS颁发密钥对,公钥分别为PuKT1、PuKT2、PuKT3、…、PuKTn,私钥分别为PrKT1、PrKT2、PrKT3、…、PrKTn;
[0061] S1.3、设置CS、TS和JS使用统一的哈希运算规则,可采用SHA256算法;
[0062] S1.4、为每一个TS和JS分配唯一的通讯地址,表示为AdT1、AdT2、AdT3、…AdTn和AdJ1、AdJ2、AdJ3、…、AdJn;
[0063] S1.5、各用户登录CS进行注册,CS为各用户完成实名身份审核;
[0064] 签署流程
[0065] S2、签约发起
[0066] S2.1、用户Alice登录CS,导入需要与Bob共同签署的电子文书M,CS通过用户数据库查询得到Alice的唯一身份信息XA和通信信息PA,以及Bob的唯一身份信息XB和通信信息PB,同时CS为此项签署任务生成唯一编号N,将Alice的XA和PA合并,标记为IDA,将Bob的XB和PB合并,标记为IDB;唯一身份信息XA是能够进行实名身份审核的信息,包括:身份证号码、护照号码或社会保障号码,通信信息PA包括手机号、地址、传真和电子邮箱。
[0067] S2.2、CS对M、IDA、IDB分别进行哈希运算,得到HCM、HCIDA、HCIDB,并将Alice的此项签署任务按照Bob的通信信息PB通知给Bob;
[0068] S2.3、CS将HCM、HCIDA、HCIDB使用私钥PrKc签名后,连同任务编号N,向全网所有区块链节点服务器TS广播,请求响应;
[0069] S2.4、所有接收到广播的TS都将编号为N的加入任务表单,保存任务信息HCM、HCIDA、HCIDB,并根据服务器空闲程度决定是否响应;
[0070] S2.5、决定响应的区块链节点服务器TS使用CS的公钥PuKC验证任务N的签名正确,使用各自的私钥对HCM、HCIDA、HCIDB进行签名后,连同任务编号N和自己的地址作为响应信息回复给CS;
[0071] S2.6、CS在接收到的所有TS的响应中随机选择一个进行签名验证,签名正确则将该区块链节点服务器TS作为有权节点TQ;
[0072] S2.7、CS将M、IDA、IDB使用该有权节点TQ的公钥PuKTQ加密,得到M’、IDA’、IDB’,通过地址AdTQ发送给该有权节点TQ;
[0073] S2.8、进行步骤2.7的同时,CS向全网TS发送经PuKTQ加密得到的M’、IDA’、IDB’,并通知编号N的任务已经被选由有权节点TQ处理,接收到通知的所有TS将M’、IDA’、IDB’、AdTQ记录于编号为N的任务表单;
[0074] S2.9、有权节点TQ收到步骤2.7发出的加密数据,使用私钥PrKTQ解密,还原出M、IDA、IDB,并对其分别进行哈希运算,以验证哈希值是否与之前的HCM、HCIDA、HCIDB相一致;验证不一致则通知CS重新发起任务,验证一致则进一步将IDA、IDB还原为XA、PA、XB、PB;
[0075] S2.10、有权节点TQ从所有连接的区块链智能合约脚本服务器JS中随机选择其中的一个作为有权服务器JQ;
[0076] S2.11、有权节点TQ将HCM、XA、PA、XB、PB使用私钥PrKTQ签名后,连同唯一任务编号N和TQ的地址AdTQ发送给JQ的地址AdJQ;任务发送后,有权节点TQ将解密得到的M、IDA、IDB丢弃,只保存加密的M’、IDA’、IDB’进数据库;
[0077] S2.12、有权服务器JQ接收信息,使用TQ的公钥PuKTQ签名验证,判断HCM、XA、PA、XB、PB的输入格式是否与预设规则一致,格式错误则反馈给TQ,任务终止,格式一致则继续。
[0078] S2.13、有权服务器JQ将HCM、XA和当前时间tJQN作为参数,使用随机算法为Alice生成一个随机码RNA,通过通信信息PA发送给Alice;同时将RNA、tJQN存入编号为N的表单数据库;JQ将HCM、XB和当前时间tJQN作为参数,使用随机算法为Bob生成一个随机码RNB,通过通信信息PB发送给Bob;同时将RNA、tJQN存入编号为N的表单数据库;
[0079] S2.14、JQ分别对RNA和RNB进行哈希运算,得到哈希值H(RNA)和H(RNB),并连同任务编号N和JQ的地址AdJQ,向所有TS节点服务器广播,收到广播的节点服务器将H(RNA)、H(RNB)和AdJQ保存于编号为N的任务数据表单中;(此时,所有的TS节点服务器在编号N的任务表单C C C中已经同步记录了HM、HIDA、HIDB、AdTQ、H(RNA)、H(RNB)和AdJQ,以及经TQ公钥PuKTQ加密过的M’、IDA’、IDB’)
[0080] S2.15、Alice登录CS,进入任务N查阅M,输入JQ发送的随机码RNA以确认对电子文书M的签署;Bob登录CS,进入任务N查阅M,输入JQ发送的随机码RNB以确认对电子文书M的签署;
[0081] S2.16、CS分别对RNA和RNB进行哈希运算,得到哈希值H(RNA)’和H(RNB)’,并将H(RNA)’和H(RNB)’连同任务编号N向全网所有TS广播,请求验证;
[0082] S2.17、收到步骤2.16验证请求的节点分别将H(RNA)’和H(RNB)’与之前保存任务N表单中的H(RNA)和H(RNB)进行比对,如果H(RNA)’与H(RNA)比对一致,则通知CS,H(RNA)’比对通过,如不一致则通知H(RNA)’比对不通过;如果H(RNB)’与H(RNB)比对一致,则通知CS,H(RNB)’比对通过,如不一致则通知H(RNB)’比对不通过;
[0083] S2.18、CS从多个节点收到的验证反馈结果H(RNA)’,比对通过超过阈值的,则Alice电子文书M的签署任务完成;比对通过不超过阈值的,则Alice签署失败;CS从多个节点收到的验证反馈结果H(RNB)’,比对通过超过阈值的,则Bob电子文书M的签署任务完成;比对通过不超过阈值的,则Bob签署失败;
[0084] S2.19、Alice与Bob电子文书M的签署任务均完成,则签署成功,CS从任意节点TS下载编号为N的任务表单的HCM、HCIDA、HCIDB、AdTQ、H(RNA)、H(RNB)和AdJQ,以及M’、IDA’、IDB’。
[0085] 具体实施时:
[0086] 该方法还包括验证步骤,
[0087] 当Bob需要验证电子文书M是否由Bob签署,则步骤如下:
[0088] S3.1、Bob登录CS提出对电子文书M的验证请求;
[0089] S3.2、CS提供HCM、HCIDB、H(RNB)供Bob下载,并提供哈希运算工具;
[0090] S3.3、CS向任意TS节点提请编号为N的任务中Bob的验证请求;
[0091] S3.4、收到步骤3.3请求的节点根据编号N任务中记录的AdJQ地址,向JQ转述Bob的验证请求;
[0092] S3.5、JQ收到Bob的验证要求,从编号为N的任务数据库中提取RNB并发送至PB;
[0093] S3.6、Bob持有参数M、XB、PB、RNB以及HCM、HCIDB、H(RNB),Bob使用哈希运算工具分别对M、(XB+PB)、RNB进行哈希运算,并分别与HCM、HCIDB、H(RNB)进行比对,比对一致则验证完成,编号为N的签署任务由Bob完成,比对不一致则验证失败,编号为N的签署任务非Bob完成;Alice的需要验证电子文书M是否由其签署的步骤同上。
[0094] 当Alice需要验证电子文书M是否由Alice签署,则步骤如下:
[0095] S4.1、Alice登录CS提出对电子文书M的验证请求;
[0096] S4.2、CS提供HCM、HCIDA、H(RNA)供Alice下载,并提供哈希运算工具;
[0097] S4.3、CS向任意TS节点提请编号为N的任务中Alice的验证请求;
[0098] S4.4、收到步骤4.3请求的节点根据编号N任务中记录的AdJQ地址,向JQ转述Alice的验证请求;
[0099] S4.5、JQ收到Alice的验证要求,从编号为N的任务数据库中提取RNA并发送至PA;
[0100] S4.6、Alice持有参数M、XA、PA、RNA以及HCM、HCIDA、H(RNA),Alice使用哈希运算工具分别对M、(XA+PA)、RNA进行哈希运算,并分别与HCM、HCIDA、H(RNA)进行比对,比对一致则验证完成,编号为N的签署任务由Alice完成,比对不一致则验证失败,编号为N的签署任务非Alice完成。
[0101] 本发明基于区块链的技术应用而提出,利用区块链的去中心化思想并结合其分布式账本和智能合约机制,实现了在不依赖于特定可信主体的基础上,解决了从技术层面保证电子合同签署可靠性问题。
[0102] 本发明未涉及部分均与现有技术相同或可采用现有技术加以实现。
高效检索全球专利

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

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

申请试用

分析报告

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

申请试用

QQ群二维码
意见反馈