System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种基于访问控制机制的联盟链跨链方法技术_技高网

一种基于访问控制机制的联盟链跨链方法技术

技术编号:40318255 阅读:13 留言:0更新日期:2024-02-07 21:01
本发明专利技术属于区块链技术领域,具体涉及一种基于访问控制机制的联盟链跨链方法,包括:构建跨链联盟系统群,分别对联盟链进行系统初始化,并向各联盟链部署跨链用户注册合约、跨链合约、存证合约、服务接入组件以及跨链网关系统;服务接入组件运行例程表征该联盟链允许的跨链用户ID与其允许访问合约集合的对应关系,在该例程执行过程中调用联盟链的跨链用户注册合约,联盟链运行共识算法,将合法跨链用户上链存证;在跨链联盟系统群中,联盟链上的合法用户跨链调用联盟链上的跨链合约;本发明专利技术可以提高跨链系统的安全性,杜绝了非法跨链请求的滥用,同时保证了跨链数据不可篡改性,以及跨链数据的可审计性。

【技术实现步骤摘要】

本专利技术属于区块链,具体涉及一种基于访问控制机制的联盟链跨链方法


技术介绍

1、近年来,区块链技术得到了前所未有的快速发展。在这个过程中,世界范围内涌现出了大量的在架构、共识算法、通信协议等基础组件上各不相同的区块链系统。联盟链是介于公有链和私有链之间,具备部分去中心化的特性。联盟链是由若干机构联合发起,由盟友共同来维护,它只针对特定某个群体的成员和有限的第三方开放。联盟链的参与者是被提前筛选出来的,或者直接指定的,联盟链内部指定一些节点记账节点,每个区块的生成由指定的排序节点共同决定,用户可以参与交易,但不直接参与记账过程。跨链就是将同构或异构的区块链系统连接起来,实现资产、数据互操作,是区块链向外拓展和连接的桥梁。

2、现有技术中,如:跨链交互方法和跨链交互的审计方法,202111663493.3,2021.12.31,支付宝(杭州)信息技术有限公司。该专利在区块链主网建立有多个区块链子网的场景下,针对区块链子网之间具有跨链交互的需求,提供了一种跨链交互方法和跨链交互的审计方法,虽然该方法能够保证区块链子网之间跨链交互的合法性、有效性,防止节点作恶,但存在跨链请求无认证限制的问题。如:基于中继链的跨链资产交易方法、系统及设备,202211208434.1,2022.09.30,杭州云象网络技术有限公司。该专利针对异构区块链资产交易中可能存在的实用性、安全性问题,提出了交易上链流程、交易验证方法、多层次中继链架构以及跨链资产交易流程,能够满足面向多链场景下的资产跨链交易需求,能够实现多方数据共享与算力共享,但是存在过度依赖中继链的架构的问题。

3、以上现有技术情况都存在以下问题:对于跨链的行为没有做出相应的限制,使得参与跨链的联盟链系统存在安全性问题。现有方案大多依赖中继链系统作为跨链中间,存在资源消耗大,架构复杂的问题。


技术实现思路

1、为解决现有技术问题,本专利技术提出一种基于访问控制机制的联盟链跨链方法,其特征在于,包括:

2、根据需要参加跨链的联盟集合sconsortium构建跨链联盟系统群ccs={bi,i∈sconsortium},分别对联盟链bi进行相应的系统初始化bi,init,并向各联盟链bi部署跨链用户访问控制注册合约cregisi、跨链合约ccrossi、存证合约csavei、服务接入组件spi以及跨链网关系统gi;

3、服务接入组件spi运行访问控制注册例程register(id,scontract={ci,ci∈

4、{ccrossi}n}),将(id,scontract)键值对上链,用于表征该联盟链允许的跨链用户id与其允许访问合约集合scontract的对应关系,在该访问控制注册例程执行过程中调用联盟链bi的跨链用户访问控制注册合约cregisi,联盟链运行共识算法consensusi,将合法跨链用户上链存证;

5、在跨链联盟系统群ccs中,联盟链ba上的合法用户ida跨链调用联盟链bb上的跨链合约contractb;

6、s1:用户ida构造跨链请求q=(ida,contractb)发送给跨链网关ga,跨链网关ga调用服务接入组件spa的访问控制用户验证函数{0/1}<-check(ida),进行跨链发起方访问控制合法性检查,若返回值为假,流程终止;否则继续进行后续跨链流程;

7、s2:检查通过后,跨链网关ga运行find算法,找到目标网关gb,并将跨链请求q=(ida,contractb)转发交付给目标网关gb;

8、s3:目标网关gb将跨链请求q=(ida,contractb)解析完后调用服务接入组件spb,等待服务接入组件spb的返回结果;

9、s4:服务接入组件spb调用跨链请求访问控制函数{0/1}<-checkcross(id,contract)对跨链请求进行跨链目标方访问控制合法性检查,若返回值为假,流程终止;否则运行r<-exec(contract)函数,得到结果r,并将结果r返回给服务接入组件spb;

10、s5:服务接入组件spb再将结果r交付给目标网关gb,目标网关gb运行find算法,找到跨链网关ga,并将跨链结果r转发交付给跨链网关ga;

11、s6:服务接入组件spa调用r<-save(id,timestamp,r)函数将跨链结果存证到联盟链ba上;

12、s7:用户ida通过跨链网关ga调用服务接入组件spa的r<-read(id,timestamp)函数读取跨链结果r。

13、本专利技术的有益效果:

14、本专利技术联盟链在构建之初,需要经过各联盟链机构协商,各个联盟链得到一个跨链用户id与跨链合约集合setcross的访问控制映射关系,也就是键值对,然后各联盟链将这些映射关系数据上链;在跨链阶段,每个跨链网关接收到跨链请求q=(ida,contractb)之后,将跨链请求下发至服务接入组件,在服务接入组件中会调用checkcross访问控制验证函数进行ida和contractb访问控制验证,验证流程就是读取初始化阶段链上写入的合法跨链用户id与跨链合约集合setcross映射关系,然后遍历这些键值对,查找是否这次跨链请求中的跨链用户ida有与之对应的跨链合约contractb对应,若能够找到,表示对这次跨链请求放行,若没有找到,则表示认为该跨链请求非法,拒绝此次跨链请求。采用这种访问控制机制添补了联盟链跨链方案中对跨链行为进行访问控制的空白,提高了联盟链跨链方法的安全性,起到了对参与跨链的联盟链合约与数据的隐私保护;

15、本专利技术通过跨链用户通过跨链网关系统发起跨链请求,跨链网关系统询问跨链服务接入组件该跨链请求发起者跨链用户是否允许其发起跨链,验证通过后跨链网关系统对跨链请求进行解析,并转发到目标联盟链的跨链网关系统,目标跨链网关收到请求后将请求移交给目标跨链服务接入组件,组件通过轮询从接入的联盟链中获取的合法跨链控制列表进行跨链请求的验证,验证通过后调用跨链的具体业务合约,调用结束后将结果返回给目标跨链网关,目标跨链网关将结果再返回给跨链请求发起方的跨链网关,发起方跨链网关调用发起方服务接入组件进行跨链结果上链,保存跨链结果,可以提高跨链系统的安全性,杜绝了非法跨链请求的滥用,同时保证了跨链数据不可篡改性,以及跨链数据的可审计性。

本文档来自技高网...

【技术保护点】

1.一种基于访问控制机制的联盟链跨链方法,其特征在于,包括:

2.根据权利要求1所述的一种基于访问控制机制的联盟链跨链方法,其特征在于,对联盟链Bi进行相应的系统初始化Bi,init,包括:部署网络节点,部署共识协议,初始化链证书,生成创世区块,启动区块链网络。

3.根据权利要求1所述的一种基于访问控制机制的联盟链跨链方法,其特征在于,所述跨链用户访问控制注册合约Cregisi,包括:Setregisteduser<-registUser(ID)跨链用户访问控制注册函数、(ID,Setcontract)<-mapUserContracts(ID,S(contract))跨链用户-跨链合约访问控制注册函数、{0/1}<-check(ID)跨链用户访问控制验证函数、{0/1}<-checkCross(ID,Contract)跨链请求访问控制验证函数以及(ID,Setcontract)<-readAll()访问控制信息读取函数;

4.根据权利要求1所述的一种基于访问控制机制的联盟链跨链方法,其特征在于,所述跨链合约Ccrossi为联盟链Bi中可选的能被外部联盟链系统跨链访问的合约。

5.根据权利要求1所述的一种基于访问控制机制的联盟链跨链方法,其特征在于,所述存证合约Csave为专门用于存证跨链结果R的合约,其主要函数为save(ID,timestamp,R)和read(ID,timestamp)。

6.根据权利要求1所述的一种基于访问控制机制的联盟链跨链方法,其特征在于,服务接入组件SPi,包括:register(ID,Set(contract))访问控制注册函数、(ID,Setcontract)<-init()访问控制初始化读取函数、跨链合约调用R<-exec(Contract)函数、跨链结果存证R<-save(ID,timestamp,R)函数以及跨链结果读取R<-read(ID,timestamp)函数;

7.根据权利要求1所述的一种基于访问控制机制的联盟链跨链方法,其特征在于,所述跨链网关系统Gi用于向跨链用户提供跨链接口、转发跨链请求到目标联盟链网关以及在跨链联盟链系统群CCS初始化时协商互联的跨链网关系统连接信息Connection={Datai,(联盟链名,(跨链网关系统IP地址:端口))},并保存在网关系统Gi中。

8.根据权利要求1所述的一种基于访问控制机制的联盟链跨链方法,其特征在于,目标网关Gb运行find算法,找到跨链网关Ga,包括:

...

【技术特征摘要】

1.一种基于访问控制机制的联盟链跨链方法,其特征在于,包括:

2.根据权利要求1所述的一种基于访问控制机制的联盟链跨链方法,其特征在于,对联盟链bi进行相应的系统初始化bi,init,包括:部署网络节点,部署共识协议,初始化链证书,生成创世区块,启动区块链网络。

3.根据权利要求1所述的一种基于访问控制机制的联盟链跨链方法,其特征在于,所述跨链用户访问控制注册合约cregisi,包括:setregisteduser<-registuser(id)跨链用户访问控制注册函数、(id,setcontract)<-mapusercontracts(id,s(contract))跨链用户-跨链合约访问控制注册函数、{0/1}<-check(id)跨链用户访问控制验证函数、{0/1}<-checkcross(id,contract)跨链请求访问控制验证函数以及(id,setcontract)<-readall()访问控制信息读取函数;

4.根据权利要求1所述的一种基于访问控制机制的联盟链跨链方法,其特征在于,所述跨链合约ccrossi为联盟链bi中可选的能被外部联盟链系统跨链访问的合约。

5.根据权利要求1所述的一种基于访问控制机制...

【专利技术属性】
技术研发人员:唐飞陈栎名牟俊宇姜迎朱辉辉龚洁马馨婷邱强
申请(专利权)人:重庆邮电大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1