欢迎来到知嘟嘟! 联系电话:13095918853 卖家免费入驻,海量在线求购! 卖家免费入驻,海量在线求购!
知嘟嘟
我要发布
联系电话:13095918853
知嘟嘟经纪人
收藏
专利号: 2021105432942
申请人: 湖北工业大学
专利类型:发明专利
专利状态:已下证
专利领域: 计算;推算;计数
更新日期:2024-01-05
缴费截止日期: 暂无
价格&联系人
年费信息
委托购买

摘要:

权利要求书:

1.一种许可区块链匿名交易背书系统,其特征在于:由客户端、背书节点、排序服务、记账节点和智能合约组成;

所述客户端,用于发起交易的背书请求以及收集背书结果和签名;

所述背书节点,用于负责交易的背书,会模拟执行智能合约,输出背书结果及相应的群签名;

所述排序服务包含排序节点和提交节点,排序节点负责验证客户端发送的交易是否满足背书策略,交易的完整性以及交易是否已经存在,还有对已验证的交易进行排序;提交节点负责将排序好的交易打包成块然后广播给网络内记账的节点;

所述记账节点包含所有在区块链网络中可以记账的节点,这些节点将排序好的交易按顺序写入本地账本,共同维护某一智能合约中的交易账本;

所述智能合约以链码形式安装在相关节点上,其拥有一个对应地背书策略,会自动对输入的交易进行处理输出一个读写结果集。

2.一种许可区块链匿名交易背书方法,其特征在于,包括以下步骤:步骤1:进行系统初始化及智能合约的安装;

具体实现包括以下子步骤:

步骤1.1:区块链用户,开发者及区块链管理者确定待安装的智能合约及所需要的背书策略,背书策略以(t,n)列表的形式进行存储,为所有拟加入背书的节点安装智能合约及配置背书策略门限要求t,并收集安装成功与否的反馈结果;其中,t表示背书策略通过所需要到达的背书节点权重和值,n表示背书节点的权重总和;

步骤1.2:区块链管理者生成一个匿名背书节点候选集群E,将所有安装成功的拟参与许可区块链背书的节点添加到该集群E中,为候选集E中的每一个背书节点分配参数pi,qi,设置背书权重ti;将pi,qi发送给候选背书节点,收集候选背书节点计算的参数yi,根据背书节点的身份ID记录关系对照表(ID,yi,ti);其中,pi,qi为区块链管理者为第i个背书节点生成的用于辅助群签名生成及验证的系统参数,yi表示群签名的计算公钥;

步骤1.3:区块链管理计算群签名的关键参数c,向区块链所有背书验证权限的节点公开参数(g,c,pi),将背书策略门限要求t发送给排序节点;其中,g表示匿名背书群签名所选用的参数,其是一个特殊的集合,满足密码学的群定义;c表示群签名所用到的中国剩余定理正整数解,其对于每一个特定的背书节点集群都是唯一确定的,计算公式为c≡y1P1P′1+y2P2P′2+…+ynPnP′5,Pi=p1p2…pn/pi,Pi′是PiPi′≡1(mod pi)的整数解;

步骤1.4:每经预定时间,区块链管理员从背书候选集合E选取子集F,保证F中的背书节点权限ti之和大于t,F作为当前时刻使用的背书节点集合列表发送给用户的客户端;

步骤2:为用户提供背书服务订阅,使用群签名实现的背书身份隐藏;

通过使用群签名隐藏每次背书中的背书者身份,保证验证者或者其它第三方只能验证背书是否由正确的背书节点集群中的节点完成,而不能获取背书者的具体身份;

步骤3:区块链管理员判断背书策略是否发生改变或者是否有收到背书节点加入或退出请求;

若是,则分别执行用户背书策略的更新或者候选背书节点的加入或退出操作,然后判断是否需要执行匿名交易背书,是则执行步骤4,不是,则判断是否需要进行溯源操作,是则执行步骤5,不是则等待下一个指令;

步骤4:使用匿名背书的许可区块链交易,实现背书者身份匿名及背书策略隐藏条件下的交易背书;然后判断是否需要溯源操作,是则执行步骤5,否则等待下一个指令;

步骤5:采用匿名背书条件下溯源及背书监管方法,实现匿名背书条件下争议交易的溯源及历史信息追踪,包含区块链管理中心支持下的历史交易溯源及历史交易背书中的参与者身份追踪,实现区块链应用中的监管要求,执行完成后等待下一个指令。

3.根据权利要求2所述的许可区块链匿名交易背书方法,其特征在于,步骤2的具体实现包括以下子步骤:

步骤2.1:区块链的已注册用户向区块链管理员申请加入交易;

步骤2.2:申请通过后区块链管理员向其发送公开参数(g,c,pi),当前时刻的背书节点集合F,为其安装交易智能合约及配置背书策略门限要求t。

4.根据权利要求2所述的许可区块链匿名交易背书方法,其特征在于:步骤3中,当需要进行背书策略更新时,区块链管理员更新背书策略门限要求t,将其发送给用户客户端和排序节点;

当新的背书节点需要加入时,区块链管理员将新生成的pi+1,qi+1发送给新的候选背书节点,收集候选背书节点计算的参数yi+1,根据背书节点的身份ID将新的身份关系(ID,yi+1,ti+1)添加到关系对照表(ID,yi,ti),重新计算c并公布,将新的候选节点添加集合E中;

将退出的候选背书节点从集合E中移除,根据退出时的时间time,将旧的参数c′,及退出节点的身份对照关系(ID,yi′,ti′)记录到表(time,c′ID,yi′,ti′),此表留作后续溯源时打开旧签名用;然后区块链管理替换yi′为一个不同的随机数,保证该数满足yi生成时的要求,重新计算参数c并公布;其中yi′,ti′分别表示已退出背书节点的历史群签名公钥及背书权重。

5.根据权利要求2所述的许可区块链匿名交易背书方法,其特征在于,步骤4的具体实现包括以下子步骤:

步骤4.1:当区块链用户需要执行交易时,通过其客户端根据自己已有的背书节点集合列表F向背书节点发送广播交易请求m,以及自己对m的签名sc;

步骤4.2:背书节点收到后先验证客户端的签名sc,然后用智能合约进行模拟执行,输出执行结果读写集resi,然后根据统一的哈希函数H生成相应的读写集resi的哈希值H(resi),使用自己的签名密钥xi对H(resi)生成相应的签名si,最终签名为(si,ei,pi),其中ei为签名中计算出来的中间参数;

步骤4.3:各背书节点将上步中产生的签名si及读写哈希值H(resi)发送回提交交易请求的客户端;

步骤4.4:客户端在本地进行模拟执行,然后根据统一哈希函数对结果进行哈希,生成本地读写集res′的哈希值H(res′),收集背书结果;判断H(res′)=H(res)是否成立,成立则验证该群签名si,验证通过后将{m,H(resi),si}加入待发送的结果集合F中,不通过则将此背书结果丢弃;判断是否已经收集到集合F中所有背书节点的签名,或者时间超过背书时限Te,是则准备将其发送给排序节点,否则继续等待新的背书结果;

步骤4.5:将上一步的结果集合F及客户端自己的签名sc发送给区块链排序节点;

步骤4.6:排序节点收到客户端发送的背书节点集合后,依次进行以下验证,任意一项不满足则拒绝这项交易:首先检查客户端的签名sc是否正确;然后通过验证pi检查签名是否存在同一背书节点多签的情况,在区块链管理员的辅助下验证是否满足背书策略要求t,进行每个群签名si的验证,然后检查交易m是否完整,该交易是否已经存在于链上;以上验证全部通过后进行交易排序,输出排序后的交易TX,否则拒绝这项交易;

步骤4.7:当排序完成后,排序节点用排序后的交易TX生成区块,发送给提交节点,提交节点发布新的世界状态,并广播给区块链内的所有节点,让它们进行复制,写入各节点的账本。

6.根据权利要求2‑5任意一项所述的许可区块链匿名交易背书方法,其特征在于,步骤

5具体实现包括以下子步骤:

步骤5.1:当交易出现争议或问题时,首先使用区块链查询争议交易的历史记录,当需要核实某一具体交易的背书者身份时跳入步骤5.2,否则结束;

步骤5.2:区块链中心判断追踪签名对应的密钥参数yi是否仍然有效时,有效则计算yi≡c(mod pi),查询yi在现有关系对照表(ID,yi,ti)中的对应ID即可获取该背书节点身份,否则进入步骤5.3;

步骤5.3:追踪签名对应的yi失效时,区块链中心根据历史yi′失效记录时间time查询历史关系对照表(time,c′,ID,yi′,ti′),计算yi′≡c′(mod pi)获取签名者身份ID。