一种联盟链资源整合方法及系统与流程
未命名
09-13
阅读:99
评论:0
1.本发明涉及资源整合技术领域,更具体的说是涉及一种联盟链资源整合方法及系统。
背景技术:
2.随着区块链行业的蓬勃发展,出现了多种联盟链框架,基于不同联盟链框架产生了许多联盟链网络,由于这些联盟链的底层协议各不相同,使得联盟链网络上存储的海量资源成为一个个的数据孤岛。
3.而且,无论这些孤立的岛屿是基于相同还是不同的联盟链框架,数据之间很难相互连通。
4.因此,迫切需要一种能够系统解决不同类型联盟链资源整合问题的解决方案,以实现不同链之间的数据资源定位和获取。
技术实现要素:
5.有鉴于此,本发明提供了一种联盟链资源整合方法和系统,通过定义域名规范,对用户注册的域名进行规范化、统一化的管理,并能使用户注册的域名指向用户自定义的链上资源,进一步,用户可通过域名进行访问,获取所需链上资源,本发明公开的方法,使联盟链资源具有统一的域名标识,并能通过域名进行快速准确的定位,获取资源,从而实现不同联盟链框架下资源的整合、互通。
6.为了实现上述目的,本发明采用如下技术方案:
7.一方面,本发明提供了一种联盟链资源整合方法,包括如下步骤:
8.域名所有者根据定义的域名规范注册域名,并添加所述联盟链资源信息,生成所述联盟链资源信息对应的地址,将所述联盟链资源信息和对应的所述地址存储上链,并将所述地址进行拼接,得到拼接地址,将所述拼接地址返回给所述域名所有者,所述域名所有者将所述拼接地址与注册的所述域名进行绑定,
9.用户填写域名一,经验证后根据所述域名一解析对应的地址一,根据所述地址一从资源链上获取相应的信息。
10.优选的,所述域名规范包括域名组成、域名长度和域名含义。
11.优选的,所述联盟链资源信息包括业务链信息、节点信息和合约信息。
12.优选的,所述所需信息还包括组织信息。
13.优选的,将所述地址进行拼接,是按照业务链的类型进行拼接。
14.优选的,所述验证是由所述域名所有者使用公钥对所述域名一进行验证,所述公钥由所述域名所有者逐级向上级获取,直至根域名。
15.优选的,根据所述地址一从资源链上获取相应的信息,还包括:所述用户根据所述地址一下载对应的寻址sdk,保存所述寻址sdk,并通过所述寻址sdk访问所述相应的信息。
16.优选的,解析的所述地址一获取的信息包括:域名、记录类、记录类型、生存时间、
消息内容以及权重。
17.另一方面,本发明还公开了一种联盟链资源整合系统,具体应用如上所述的一种联盟链资源整合方法,所述系统包括客户端和用户端,
18.客户端,包括域名注册模块、信息添加编制模块以及信息绑定模块;
19.用户端,包括域名填写模块,以及资源获取模块。
20.优选的,所述域名注册模块,内部存有所述定义的域名规范,用于使所述域名所有者按照所述域名规范进行注册;
21.所述信息添加编制模块,用于添加信息,生成所述信息对应的地址,并将所述信息和对应的所述地址存储上链,以及将所述地址进行拼接后返回至所述信息绑定模块;
22.所述信息绑定模块,用于将返回的所述地址与注册的所述域名进行绑定;
23.所述域名填写模块,用于为所述用户提供域名填写窗口,便于所述用户填写所述域名一;
24.所述资源获取模块,用于根据所述域名一解析所述地址一,并根据所述地址一从资源链上获取相应的数据。
25.经由上述的技术方案可知,与现有技术相比,本发明公开的联盟链资源整合方法及系统,通过定义统一的域名规范,并将按照域名规范进行注册的域名与所需联盟链资源进行绑定,可基于域名对联盟链框架下的资源进行访问,从而实现了不同类型区块链下智能合约资源的整合,克服了链孤岛、链异构、难记忆、链地址变更困难等问题。
附图说明
26.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
27.图1附图为本发明提供的联盟链资源整合流程示意图;
28.图2附图为本发明提供的信息地址生成绑定流程示意图;
29.图3附图为本发明提供的域名管理结构示意图;
30.图4附图为本发明提供的域名签发过程示意图;
31.图5附图为本发明提供的域名验证过程示意图。
具体实施方式
32.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
33.本发明实施例公开了一种基于域名的联盟链资源整合方法及系统,旨在将不同类型的区块链智能合约资源有效的进行整合。
34.实施例一:
35.一种联盟链资源整合方法,具体流程如图1,并包括如下步骤:
36.域名所有者根据定义的域名规范注册域名,并添加联盟链资源信息,生成联盟链资源信息对应的地址,将联盟链资源信息和对应的地址存储上链,并将地址进行拼接,得到拼接地址,将拼接地址返回给域名所有者,域名所有者将拼接地址与注册的域名进行绑定,
37.用户填写域名一,经验证后根据域名一解析对应的地址一,根据地址一从资源链上获取相应的信息。
38.首先,域名的目标是提供稳定的、人类可读的标识符,并用于指定区块链上的资源。域名和资源之间的映射可能会随着时间推移而改变,比如业务链的信息可能会更改、节点的状态可能会变更、或者链上的合约可能会不断更新版本,但是其对应的域名不会改变。
39.通过定义域名规范,可将将杂乱无章的多种联盟链类型的资源进行统一化管理,从而使不同区块链网络上的链上资源获得全球唯一的域名标识,以便快速地定位到该资源。其中,域名规范包括域名组成、域名长度、域名含义等规范。
40.进一步,用户首先输入一个自定义的字符串,如图1,通过注册器注册域名,并将该域名指向某一区块链资源。在一种实施例中,将注册域名上链保存。
41.具体的,先根据实际情况添加联盟链资源信息,包括:业务链信息、节点信息和合约信息;同时,通过编址服务分别生成对应的业务链地址、节点地址和合约地址,并将个地址与其对应的信息存储上链,如图1所示,
42.在一种实施例中,联盟链资源信息还包括组织信息,生成的对应的地址为组织地址,地址生成流程如图2所示,进一步,根据业务链的类型,将各地址进行拼接,以形成完整的地址,并将最终拼接的地址返回给域名所有者,由域名所有者将拼接后的地址与注册的域名进行绑定。
43.其中,拼接的地址,格式如下:
44.业务链类型.业务链.组织.节点.智能合约
45.包括,业务链类型、业务链、组织、节点以及智能合约五个部分,对于不同类型的地址,格式也不完全相同,其中,业务链类型、业务链、节点、智能合约四部分为必需字段,组织为非必需字段。
46.其中,业务链字段是根据用户输入(或选择)的业务链id自动生成的哈希值;组织字段是根据用户输入(或选择)的组织mspid自动生成的哈希值;节点字段是根据用户输入(或选择)的节点ip和端口列表自动生成的哈希值;智能合约字段是根据用户输入(或选择)的智能合约信息(包括智能合约名称、智能合约版本、智能合约方法列表及参数示例等信息)自动生成的哈希值。其中,哈希值为生成的信息对应的地址。
47.在一种实施例中,为方便识别每段哈希值的具体含义,编址服务在每段哈希值前增加标志位,具体信息如下:
48.01:业务链字段;
49.02:组织字段;
50.03:节点字段;
51.04:智能合约字段。
52.至此,通过将域名进行规范化、统一化管理,使得域名所有者能够通过注册域名并与自定义的链上资源进行绑定,即只有经过统一规范命名的域名,才能实现联盟链框架下的资源互通。
53.进一步,需要获取链上资源时,只需用户填写域名一,经验证后根据所述域名一解析对应的地址一,根据所述地址一从资源链上获取相应的信息。
54.当用户输入域名一时,首先由域名所有者使用公钥对域名一进行验证,而公钥由域名所有者逐级向上级获取,直至根域名。
55.为使上述内容更加明显易懂,首先对域名及其管理进行详细的说明。
56.域名又叫网域,是互联网内的标识符,其管理是通过倒置的树状结构来完成,这个倒置的树状结构被称之为命名空间。树状结构类似unix的文件系统,树中每个枝干被称为域名,枝干的枝干被称为子域名,子域名可以有自己的子域名,这个关系可以继续递归下去。域名和子域名是一个相对关系,子域名是相对于它上级(父亲)被成为子域名,相对自己孩子被称为父域名。
57.如图3所示,alliance1、credit.alliance1、chain1.credit.alliance1都被称为域名,alliance1是credit.alliance1的父域名,credit.alliance1是alliance1的子域名;credit.alliance1是chain1.credit.alliance1的父域名,chain1.credit.alliance1是credit.alliance1的子域名。
58.在域名生成时,每一级域名都应当包含签名密钥(sk,signing key),即一个密钥对,包含公钥和私钥,其中,私钥用于对域名进行签名,签名(signature)是只有信息的发送者才能产生的、别人无法伪造的一段数字串,这段数字串同时也是对信息的发送者发送信息真实性的一个有效证明;而公钥用于对域名签名进行验证。
59.当某一级域名所有者颁发其子域名时,父级域名需对其颁发的子域名进行签名,域名签发过程如下图4所示;当域名所有者需要对域名进行验证时,需向父级域名获取公钥进行签名验证,父级域名再向其父级域名获取公钥,验证其签名,以此类推,直至顶级域名,域名验证过程如下图5所示。
60.基于域名的该管理结构,域名所有者可在任一级域名下注册并与指定资源进行绑定。并且在任一级域名下注册,所遵循的域名规范是统一的。
61.进一步,用户将域名填写至解析服务中,验证通过后,寻址服务将域名解析为对应的地址,并从链上获取地址对应的资源详细信息返回给用户。
62.在一种实施例中,用户可根据地址一下载对应的寻址sdk,保存寻址sdk,并通过寻址sdk访问所述相应的信息。
63.在该过程中,解析后的地址格式,主要由六部分组成,即:域名(name)、记录类(class)、记录类型(type)、记录被服务器缓存的时间,即生命周期(ttl)、消息内容(rdata)和权重(weight);其中,权重可空,具体如下:
[0064][0065]
(1)对于解析记录类,包括:cb类和in类,
[0066]
缩写全称解释cbconsortium联盟链inlkinhterinet互联网,为传统dns预留
[0067]
(2)对于解析记录类型(type),包含的内容如下表:
[0068]
缩写全称解释cchain业务链信息nnode节点信息ccchaincode智能合约信息wbwebservice服务信息aaddressipv4类型aaaa-ipv6类型rsvresolver解析器标识cnamecanonicalname规范名字/域名的别名
[0069]
其中,
[0070]
1)c记录类型
[0071]
c(chain)记录是用来指定业务链信息的记录。用户可以将该域名指向自己的业务链,同时在该域名下添加对应的业务链详细信息。通俗来讲c记录就是业务链的详细信息。目前bns支持的链类型枚举值有:chainmaker、fabric、bcos,此外bns支持其他链类型的扩展。
[0072]
2)n记录类型
[0073]
n(node)记录是用来指定节点信息的记录。用户可以将该域名指向自己的节点,同时在该域名下添加对应的节点详细信息,以及节点所在业务链的详细信息。通俗来讲n记录就是节点的详细信息。
[0074]
3)cc记录类型
[0075]
cc(chaincode)记录是用来指定智能合约信息的记录。用户可以将该域名指向自己的智能合约,同时在该域名下添加对应的智能合约详细信息,以及智能合约所安装的节点的详细信息。通俗来讲cc记录就是智能合约的详细信息。
[0076]
4)wb记录类型
[0077]
wb(web service)记录是用来指定服务信息的记录。用户可以将该域名指向自己的服务,同时在该域名下添加所对应的服务的详细信息。通俗来讲wb记录就是服务的相信信息。
[0078]
5)a记录类型
[0079]
a(address)记录是用来指定主机名(或域名)对应的ip地址记录,这里的ip为ipv4。
[0080]
6)aaaa记录类型
[0081]
aaaa(aaaa record)记录是类似a记录,用来指定主机名(或域名)对应的ip地址记录,只不过这里的ip为ipv6。
[0082]
7)rsv记录类型
[0083]
rsv(resolver),在当前域名空间下,如果需要寻找下级域名时,所需要询问的解析器。
[0084]
8)cname记录
[0085]
cname是canonical name的缩写,用于从一个域名匹配到另外一个域名。cname有着重要的作用,它能把区块链多层次的地址匹配到人类方便记忆的简单域名,使得客户端
缓存的记录能够能够重用。例如两个合约域名,同属于一个联盟链和同一个区块链节点群,对于同一个客户端,当向服务器询问了第一个合约地址后,它便知道了联盟链和区块链节点信息,并缓存起来;当客户端访问第二个合约时,就不需要访问这些信息了,仅仅获取合约数据即可。既减少服务器的压力,同时也节省了时间。
[0086]
(1)对于解析记录生存时间(ttl),
[0087]
生存时间(ttl,time to live),服务器向客户端承诺的一个时间长度,用户通知客户端在该时间长度内,客户端可以安全缓存,并重复使用该记录,无需重复向服务器发送请求。时间单位为秒。根据资源变化的频率,用户可以设置不同的ttl时长。如:对于加盟链的链信息,变化频率很低,推荐设置更长的时间;相反链上的合约是动态变化的,所以合约的ttl需要设置更短的时间。联盟和业务链ttl默认为2天;节点的ttl默认为1天;合约的ttl默认为1分钟。
[0088]
(2)解析记录消息内容(rdata)
[0089]
消息内容(rdata)是连续的字符串,对于不同的记录类型展示不同的内容,例如n类型记录,展示的是节点的ip地址或者域名;c类型记录,展示的是业务链信息。
[0090]
(3)解析记录权重(weight)
[0091]
权重(weight)是用来表示当前记录的重要程度或者优先度,在同种类型的资源有多个资源时,用于给客户端提供一些帮助信息,方便寻找更优的资源。
[0092]
本发明通过定义一套域名和地址规范,使域名所有者在域名注册成功后,可与所需区块链智能合约资源进行绑定,用户只要记住域名,即可利用寻址sdk访问对应的区块链智能合约资源。该方法实现了不同类型的区块链智能合约资源的整合,解决了链孤岛、链异构、难记忆、链地址变更困难等问题。
[0093]
实施例二
[0094]
本发明实施例还公开了一种联盟链资源整合系统,该系统应用如上所述的一种联盟链资源整合方法,且该系统包括客户端和用户端,
[0095]
客户端,包括域名注册模块、信息添加编制模块以及信息绑定模块;
[0096]
用户端,包括域名填写模块,以及资源获取模块。
[0097]
进一步,域名注册模块,内部存有定义的域名规范,用于使域名所有者按照域名规范进行注册;
[0098]
信息添加编制模块,用于添加联盟链资源信息,生成联盟链资源信息对应的地址,并将联盟链资源信息和对应的地址存储上链,以及将地址进行拼接后返回至信息绑定模块;
[0099]
信息绑定模块,用于将返回的拼接地址与注册的域名进行绑定;
[0100]
域名填写模块,用于为用户提供域名填写窗口,即便于用户填写域名一;
[0101]
资源获取模块,用于根据域名一解析地址一,并根据地址一从资源链上获取相应的数据。
[0102]
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
[0103]
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
技术特征:
1.一种联盟链资源整合方法,其特征在于,包括如下步骤:域名所有者根据定义的域名规范注册域名,并添加联盟链资源信息,生成所述联盟链资源信息对应的地址,将所述联盟链资源信息和对应的地址存储上链,并将所述地址进行拼接,得到拼接地址,将所述拼接地址返回给所述域名所有者,所述域名所有者将所述拼接地址与注册的所述域名进行绑定,用户填写域名一,经验证后根据所述域名一解析对应的地址一,根据所述地址一从资源链上获取相应的信息。2.根据权利要求1所述的一种联盟链资源整合方法,其特征在于,所述域名规范包括域名组成、域名长度和域名含义。3.根据权利要求1所述的一种联盟链资源整合方法,其特征在于,所述联盟链资源信息包括业务链信息、节点信息和合约信息。4.根据权利要求3所述的一种联盟链资源整合方法,其特征在于,所述联盟链资源信息还包括组织信息。5.根据权利要求1所述的一种联盟链资源整合方法,其特征在于,将所述地址进行拼接,是按照业务链的类型进行拼接。6.根据权利要求1所述的一种联盟链资源整合方法,其特征在于,所述验证是由所述域名所有者使用公钥对所述域名一进行验证,所述公钥由所述域名所有者逐级向上级获取,直至根域名。7.根据权利要求1所述的一种联盟链资源整合方法,其特征在于,根据所述地址一从资源链上获取相应的信息,还包括:所述用户根据所述地址一下载对应的寻址sdk,保存所述寻址sdk,并通过所述寻址sdk访问相应的信息。8.根据权利要求1所述的一种联盟链资源整合方法,其特征在于,解析的所述地址一获取的信息包括:域名、记录类、记录类型、生存时间、消息内容以及权重。9.一种联盟链资源整合系统,其特征在于,执行权利要求1-8任一所述的一种联盟链资源整合方法,所述系统包括客户端和用户端,客户端,包括域名注册模块、信息添加编制模块以及信息绑定模块;用户端,包括域名填写模块,以及资源获取模块。10.根据权利要求9所述的一种联盟链资源整合系统,其特征在于,所述域名注册模块,内部存有所述定义的域名规范,用于使所述域名所有者按照所述域名规范进行注册;所述信息添加编制模块,用于添加信息,生成所述信息对应的地址,并将所述信息和对应的所述地址存储上链,以及将所述地址进行拼接后返回至所述信息绑定模块;所述信息绑定模块,用于将返回的所述地址与注册的所述域名进行绑定;所述域名填写模块,用于为所述用户提供域名填写窗口,便于所述用户填写所述域名一;所述资源获取模块,用于根据所述域名一解析所述地址一,并根据所述地址一从资源链上获取相应的数据。
技术总结
本发明公开了一种联盟链资源整合方法和系统,方法包括:域名所有者根据定义的域名规范注册域名,并添加所述联盟链资源信息,生成所述联盟链资源信息对应的地址,将所述联盟链资源信息和对应的所述地址存储上链,并将所述地址进行拼接,得到拼接地址,将所述拼接地址返回给所述域名所有者,所述域名所有者将所述拼接地址与注册的所述域名进行绑定,用户填写域名一,经验证后根据所述域名一解析对应的地址一,根据所述地址一从资源链上获取相应的信息。本发明公开的方法,能使联盟链资源具有统一的域名标识,并能通过域名进行准确的定位,获取资源,从而实现不同联盟链框架下资源的整合、互通。互通。互通。
技术研发人员:张晰 骆亦飞 贾晓丰 李天颖 孟佶
受保护的技术使用者:北京市大数据中心
技术研发日:2023.06.09
技术公布日:2023/9/12
版权声明
本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
飞行汽车 https://www.autovtol.com/
