CN112583598A - 一种复杂物联网联盟链***通信机制 - Google Patents

一种复杂物联网联盟链***通信机制 Download PDF

Info

Publication number
CN112583598A
CN112583598A CN202011245546.5A CN202011245546A CN112583598A CN 112583598 A CN112583598 A CN 112583598A CN 202011245546 A CN202011245546 A CN 202011245546A CN 112583598 A CN112583598 A CN 112583598A
Authority
CN
China
Prior art keywords
transaction
chain
alliance
consensus
nodes
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202011245546.5A
Other languages
English (en)
Inventor
乔蕊
连惠杰
秦泽华
王建国
周永跃
郭锦权
秦杰
白采莹
许天宇
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhoukou Normal University
Original Assignee
Zhoukou Normal University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Zhoukou Normal University filed Critical Zhoukou Normal University
Priority to CN202011245546.5A priority Critical patent/CN112583598A/zh
Publication of CN112583598A publication Critical patent/CN112583598A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • H04L9/3255Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures using group based signatures, e.g. ring or threshold signatures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/04Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16YINFORMATION AND COMMUNICATION TECHNOLOGY SPECIALLY ADAPTED FOR THE INTERNET OF THINGS [IoT]
    • G16Y40/00IoT characterised by the purpose of the information processing
    • G16Y40/50Safety; Security of things, users, data or systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1095Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Business, Economics & Management (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Development Economics (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Strategic Management (AREA)
  • Technology Law (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

本发明提供一种复杂物联网联盟链***通信模型及通信方法。该通信模型包括:联盟机构A、B、D,n个来自各联盟链的用于参与交易处理并确保***状态一致性的验证结点;其中:联盟机构A、B、D验证结点数分别为nA、nB、nD;联盟链的链间共识门限值为t,联盟链的链内共识门限值分别为tA、tB、tD;各联盟机构内部参与***运行的结点包括普通结点、机构预选的验证结点和链间协作相关结点;所述普通结点仅参与交易的生成和中继,所述机构预选的验证结点具备普通结点的功能且用于对交易进行验证,所述链间协作相关结点包括交易发起结点和交易响应结点;密钥管理机构为各联盟链中的每个验证结点生成一个公私钥对,并使用公钥唯一标识对应的验证结点。

Description

一种复杂物联网联盟链***通信机制
技术领域
本发明涉及联盟链技术领域,尤其涉及一种复杂物联网联盟链***通信机制。
背景技术
物联网是通过部署具有一定感知、计算、通信、控制、协同和自治特征的基础设施,获得物理世界的信息,通过网络实现信息的传输、协同和处理,从而实现人与物、物与物之间实时全面感知、动态可靠控制和智能信息服务的互联网络。物联网规模扩张后,多种物联网应用之间交互合作更加密切,以促进行业智能应用服务水平的进一步提升,设备间的协作和交互呈现爆发式增长,用户对隐私、安全、定制消费等需求将进一步加剧,迫切需要为功能受限的设备提供可扩展的安全性和动态自主通信机制。
常见的物联网解决方案依赖于云服务器-客户端架构,然而不同利益主体间很难实现完全信任,并进行基于机器数据的自主协作交互。另一种解决方案是将边缘计算作为云架构的补充,但边缘设备和云服务器之间的大量数据传输导致底层网络拥塞,且无法实现不同利益主体间智能设备的自主交互。
联盟链具有公有链固有的安全性,其许可准入机制允许对网络结点及规模进行控制,恰好迎合了物联网向规模化、智能化发展的需要,成为近期物联网研究的热点。目前,学术界和企业界已经在不同的物联网生态及价值体系下,构建了若干基于联盟链的物联网应用,然而由于联盟链的相互独立性,产生了多中心化的区块链生态体系,现存各联盟链之间的数据通信、价值转移等仍面临挑战,价值孤岛现象逐渐显现。此外,随着物联网***规模的扩大,实际通信场景的复杂化势必造成***性能和安全性的下降,对结点跨联盟链通信过程中访问控制机制的可扩展性也提出了新的挑战。
目前,有部分研究针对联盟链链间资产价值流动问题,实现有限的数据互连,然而未考虑跨链交易并发执行情况下***性能及资产安全等问题。一些研究通过改进区块链共识机制优化***安全性和性能。文献“Kogias E K,Jovanovic P,Gailly N,etal.Enhancing Bitcoin security and performance with strong consistency viacollective signing[C].Proceedings of the 25th USENIX Conference on SecuritySymposium,Austin,USA,2016:279-296”是实现可扩展BFT共识的首次尝试,但并未获得能够满足实际应用的可扩展性。与文献“Nakamoto S.Bitcoin:A peer-to-peer electroniccash system[EB/OL].https://bitcoin.org/bitcoin.pdf,2008.”相比,文献“Abraham I,Malkhi D,Nayak K,et al.Solidus:An incentive-compatible cryptocurrency basedon permissionless Byzantine consensus[J].Computer Science Published in ArXiv,2016:abs/1612.02916”能够降低交易提交时延,实现较高吞吐量,然而该方法要求所有验证者冗余地验证和处理所有交易,因此***总的交易处理能力不会随着参与者的增加而增加,实际上会由于协调开销的增加而逐渐减少。“Eyal I,Gencer A E,Renesse RV.Bitcoin-NG:A scalable blockchain protocol[C].Proceedings of the 13th USENIXSymposium on Networked Systems Design and Implementation,Santa Clara,USA,2016:45-59.”提出在不改变共识机制的前提下扩展比特币性能的方法Bitcoin-NG,但这导致了PoW共识速度较慢和交易验证速度较快的性能瓶颈问题,此外,尽管Bitcoin-NG提高了***吞吐量,但它仍然面临与比特币类似的安全问题。基于PoS的共识机制在实际应用中也存在多种不同的扩展方式,例如基于链的权益证明机制,典型代表是以太坊计划采用的Casper及Ouroboros。尽管与PoW共识机制相比,PoS共识机制及其扩展机制可以有效降低能源消耗,避免算力集中问题,但同时也衍生出新的“富者更富”的马太效应等安全性问题。
另一类提高区块链***性能的常见方法是采用新型的区块链架构,比较典型的研究有闪电网络、SegWit、IOTA、分片机制等。“Poon J,Dryja T.The Bitcoin lightningnetwork:Scalable off-chain instant payments[EB/OL].https://lightning.network/lightning-network-paper.pdf,2016.”提出了基于比特币的链下支付协议闪电网络,通过将大量交易放到区块链外进行处理提高了***吞吐量,然而它限制了提交给区块链的信息量。SegWit是为解决***交易延展性问题而提出的,用于保障闪电网络与侧链的安全性,然而其对***的性能提升有限。基于DAG的IOTA区块链***通过改进交易验证机制,在交易之间建立网状关联,构成交易的有向无环图,从而提高了***效率,然而该***下交易时长不可控,安全性还有待验证。分片机制的思想是通过将***状态划分为多个分片,分配给不同的验证者子集并行处理以减少每个验证者的交易处理负担,这样***的总处理能力能够随着验证者数量的增加而增强。文献“Buchman E.Tendermint:Byzantine fault tolerancein the age of blockchains[EB/OL].https://atrium.lib.uoguelph.ca/xmlui/bitstream/handle/10214/9769/Buchman_Ethan_201606_MAsc.pdf,2016.”提出基于PBFT的分片级共识协议Tendermint,但其可扩展性受限。文献“Danezis G,MeiklejohnS.Centrallybanked cryptocurrencies[C].Proceedings ofthe 23rd Annual Network&Distributed System Security Symposium,San Diego,USA,2016:1-15”提出通过提供可靠的随机源进行分片和审计,将分片机制用于中央银行的加密货币,然而,该机制使用简单的两阶段提交交易验证方式,每个分片都必须与客户端交互,效率难以提升。文献“Luu L,Narayanan V,Zheng C,et al.A secure sharding protocol for open blockchains[C].Proceedings of the 23rd ACM SIGSAC Conference on Computer and CommunicationsSecurity,Vienna,Austria,2016:17-30”中Elastico使用PoW哈希的最低有效位将矿工分配到不同的分片,然后各分片运行PBFT以达成共识,然而,Elastico无法确保各分片间交易的原子性。此外,上述基于分片机制的区块链架构均引入了新的安全性假设,即假设***能够安全地将验证结点分配给分片,且周期性分片划分使其它分片受影响的可能性非常小,这无疑降低了***安全性。
复杂跨联盟链交互场景对***共识效率和安全性提出更高的要求,例如,如果跨链交易涉及的部分联盟链因共识失败或遭受51%攻击等原因而无法正常运转,将导致由跨链操作的异步性带来的交易阻塞和失效蔓延攻击等安全问题,从而使跨链失效在多联盟链合作网络结构中大面积蔓延,造成严重损失。此外,复杂物联网智能协作场景下,对结点跨联盟链通信过程中访问控制机制的可扩展性也提出了新的挑战。
发明内容
目前的联盟链通信机制存在当跨链交易涉及的部分联盟链因共识失败或遭受51%攻击等原因而无法正常运转,将导致由跨链操作的异步性带来的交易阻塞和失效蔓延攻击的安全问题,以及结点跨联盟链通信过程中访问控制机制的可扩展性较差的问题,本发明提供一种复杂物联网联盟链***通信模型及通信方法。
一方面,本发明提供一种复杂物联网联盟链***通信模型,包括:联盟机构A、B、D,n个来自各联盟链的用于参与交易处理并确保***状态一致性的验证结点;其中:
联盟机构A、B、D验证结点数分别为nA、nB、nD;联盟链的链间共识门限值为t,联盟链的链内共识门限值分别为tA、tB、tD
各联盟机构内部参与***运行的结点包括普通结点、机构预选的验证结点和链间协作相关结点;所述普通结点仅参与交易的生成和中继,所述机构预选的验证结点具备普通结点的功能且用于对交易进行验证,所述链间协作相关结点包括交易发起结点和交易响应结点;
密钥管理机构为各联盟链中的每个验证结点生成一个公私钥对,并使用公钥唯一标识对应的验证结点。
另一方面,本发明提供一种复杂物联网联盟链***通信模型的通信方法,包括:
将物联网结点间授权协作行为进行细粒度划分,分为有偿-请求授权协作行为和无偿-主动授权协作行为;
针对无偿-主动授权协作行为,采用智能合约自主授权机制,具体为:
授权方构造授权码,提供自身身份证明,并指定被授权方;所述授权码包括授权方所在的联盟机构公钥、访问控制策略使能标志、授权类型及授权方公钥;
若授权方通过身份验证,将授权方身份证明和授权码经过三次加密得到新授权交易,并在物联网联盟链***网络广播;
利用联盟链群公钥和被授权方公钥对接收到的新授权交易进行签名实现自主定向路由。
进一步地,所述将授权方身份证明和授权码经过三次加密得到新授权交易,具体包括:
授权方使用自身私钥对授权方身份证明和授权码进行签名,得到第一签名信息;
授权方使用被授权方公钥对授权方公钥和第一签名信息进行签名,得到第二签名信息;
授权方使用联盟链群公钥对第二签名信息进行签名,得到第三签名信息;
将第三签名信息、授权方所在联盟机构子群验证证明作为第一新授权交易,在物联网联盟链***网络广播所述第一新授权交易。
进一步地,所述利用联盟链群公钥和被授权方公钥对接收到的新授权交易进行签名实现自主定向路由,具体包括:
被授权方所在联盟链接收到第一新授权交易后,由被授权方所在联盟机构子群生成群私钥对第一新授权交易中的第三签名信息进行解密,得到第二签名信息;被授权方使用自身私钥对第二签名信息进行解密,得到第一签名信息;将第一签名信息、授权方公钥和授权方所在联盟机构子群验证证明作为第二新授权交易,在物联网联盟链***网络广播所述第二新授权交易;
建立合作关系的各联盟链内其他结点接收到第一新授权交易后,将所述第一新授权交易发送至其所在联盟机构的子群验证结点,生成群私钥对第一授权交易中的第三签名信息进行解密,得到第二签名信息;将能且仅能从第二签名信息中提取到的授权方公钥及授权方所在联盟机构子群验证证明发送到授权状态链上对授权方所有权进行验证,若群中超过链间共识门限值以上结点通过验证,本地保存授权方公钥;否则,作为惩罚,将授权方加入***黑名单,验证结点将拒绝对黑名单中结点参与的交易进行验证;
建立合作关系的各联盟链内其他结点接收到第二新授权交易后,利用本地保存的授权方公钥解密第二新授权交易,得到第四签名信息;将第四签名信息与第二新授权交易中的第一签名信息进行比对,若相等,验证被授权方对第二新授权交易中授权码指定资产的操作类型和授权码中允许的授权类型是否一致,若一致,该结点本地验证通过,若群中超过共识门限值以上结点通过验证,打包授权交易,更新授权状态链;否则返回授权失败;
非合作联盟链内的结点若接收到第一新授权交易,无法对密文部分解密,忽略该交易;若收到第二新授权交易,无法对密文部分解密,忽略该交易。
进一步地,还包括:将交易划分为不同的类型,针对不同类型的交易,采取不同的TDS共识方式;其中:
按照式(2)将交易划分为不同的类型,若式(2)成立,该交易为非跨链交易,否则,为跨链交易:
Figure BDA0002769904940000051
其中,TX表示交易,CX表示联盟链,X∈{A,B,D},ui、uj表示联盟链内的结点,
Figure BDA0002769904940000052
表示交易TX从发起到完成执行路径上的结点的集合。
进一步地,所述针对不同类型的交易,采取不同的TDS共识方式,具体包括:
对于非跨链交易中的低价值交易,由链内验证结点按照式(3)对其进行第一级共识:
Figure BDA0002769904940000053
其中,
Figure BDA0002769904940000061
表示使用群私钥
Figure BDA0002769904940000062
进行加密;
Figure BDA0002769904940000063
表示使用群公钥
Figure BDA0002769904940000064
进行解密。
进一步地,还包括:
对于非跨链交易中的低价值交易,在低价值交易用户选择接受第一级共识结果后,对低价值交易数据区块进行第二级共识,当第二级共识结果与第一级共识结果不一致时,结点所在的联盟机构将对第一级共识列表中签署了非法区块的验证结点进行识别并追责。
进一步地,所述针对不同类型的交易,采取不同的TDS共识方式,具体包括:
对于非跨链交易中的高价值交易,采用多级混合共识中的两级验证机制,即:由交易发送者所在联盟链内VNL验证结点构成第一级共识列表,根据群签名门限值随机生成来自不同联盟链VNL验证结点的第二级共识列表,按照式(4)对其进行共识:
Figure BDA0002769904940000065
其中,
Figure BDA0002769904940000066
表示使用群私钥
Figure BDA0002769904940000067
进行加密;
Figure BDA0002769904940000068
表示使用群公钥
Figure BDA0002769904940000069
进行解密。
进一步地,所述针对不同类型的交易,采取不同的TDS共识方式,具体包括:
对于跨链交易,采用基于存在特权子群TDS机制的多级混合共识方式,即:根据结点所在的联盟机构为各结点所在联盟链设定的共识门限值由链内验证结点子群对接收或发出的交易进行链内共识,由最终的交易响应结点所在联盟链验证结点子群对PPTI路径证明中各门限子群签名进行合成,按照式(5)对其进行共识:
Figure BDA00027699049400000610
其中,
Figure BDA00027699049400000611
表示使用群私钥
Figure BDA00027699049400000612
进行加密;
Figure BDA00027699049400000613
表示使用群公钥
Figure BDA00027699049400000614
进行解密。
进一步地,还包括:跨联盟链通信交易原子提交协议:包括交易初始化、锁定和解锁三个阶段;
初始化阶段:由用户账户创建并向网络广播跨联盟链交易,设定跨联盟链交易的输入为来自两个不同联盟链的最新授权证明和交易执行逻辑,输出为对另一联盟链的实体-资产授权关系或新生成资产的权属分配;
锁定阶段:在输入联盟链内部验证交易中身份证明的有效性,若有效,将交易锁定在该联盟链账本中,并广播对该交易的锁定,允许结点访问输入联盟链账本进行交易锁定验证;反之,在联盟链内创建验证未通过证明;
解锁阶段:根据交易执行结果,将对该交易的解锁分为交易提交解锁和交易终止解锁;其中:
交易提交解锁具体为:若***中所有联盟链均广播了交易验收通过证明,则可以提交相应的交易,用户账户创建并广播解锁该交易的交易,包括与该交易对应的锁定交易和用户账户身份证明;然后,各联盟链验证解锁交易,并将原交易输出包含在输出联盟链账本的下一个块中;
交易终止解锁具体为:若某输入联盟链发出验证未通过证明,则所有联盟链终止该交易;若存在多个输入联盟链,用户账户向其它输入联盟链发送包含另一输入联盟链验证未通过证明的、解锁并终止该交易的请求,其它输入联盟链收到并验证解锁请求后,将资产标记为可再次使用。
本发明的有益效果:
本发明给出了复杂场景下物联网联盟链***自主交互理论模型及方法,从自主路由的链间动态授权机制、多级混合可选信任-验证机制及防止异步授权的跨链原子通信机制三方面对现有物联网联盟链通信机制进行改进,是一种在异步授权状态下兼顾***效率和安全性,且能够抵御复杂跨联盟链通信***失效蔓延攻击的新型物联网联盟链通信机制。
附图说明
图1为本发明实施例提供的复杂物联网联盟链跨链交互场景图;
图2为本发明实施例提供的复杂物联网联盟链***通信模型:(a)链间协作请求;(b)基于TDS共识机制的自主响应;
图3为本发明实施例提供的授权协作行为的细粒度划分:(a)有偿-请求(跨链)授权情形;(b)无偿-主动(跨链)授权情形;
图4为本发明实施例提供的智能合约自主授权机制示意图;
图5为本发明实施例提供的基于多级混合共识的信任-验证机制示意图;
图6为本发明实施例提供的跨联盟链通信交易原子提交协议示意图;
图7为本发明实施例提供的低价值交易共识时延示意图:(a)Δ=10ms;(b)Δ=5ms;
图8为本发明实施例提供的高价值交易共识时延示意图:(a)tA(tB/tC)=10;(b)tA(tB/tC)=70;
图9为本发明实施例提供的跨链交易共识时延示意图:(a)CA to CB;(b)CA to CBto CD
图10为本发明实施例提供的低价值交易压力测试示意图;
图11为本发明实施例提供的高价值交易压力测试示意图;
图12为本发明实施例提供的跨链交易压力测试示意图:(a)CA to CB;(b)CA to CBto CD
图13为本发明实施例提供的授权交易自适应路由可靠性测试示意图:(a)Δ=10ms;(b)Δ=5ms;(c)Δ=2ms;d)Δ=1ms。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
PPTI:Path Proof with Trusted Identity,结点跨链通信身份可信性路径证明;
TDS:Threshold Digital Signature,门限数字签名;
实施例1
建立在物联网联盟链数据及操作授权不可篡改和可追溯特性基础上的物联网自主协作,将大大提升物联网商业价值。如图1所示的复杂情况下物联网联盟链链间协作场景,该场景中,医院、外部停车场、征信机构为已建立合作的联盟机构,均采用联盟链存储和管理各自的数据。患者驾车去医院就诊前,可使用智能手机等终端输入个人信息进行就诊预约,并授权医院从征信机构自主获取该患者的信用评估信息,医院根据该患者信用状况决定是否授权,及授权其在约定的时间内使用停车场及部分智能医疗监测设备的程度,获得医院授权的患者可在就诊当日自助完成车辆识别、常规检查、病史记录等,快速准确地建立就诊档案。上述场景中,存在资产所有者、发布者、访问者和交易验证者四类角色。
对通信模型做出如下假设:
(1)连接至不同***的感知设备始终在线,为了达到一定程度的对等通信,将感知数据发送至网关,由网关作为发布者发布感知数据,实体和资产间关系采用一对多范式,拥有资产所有权的实体可随时监控***设备及数据,对其进行操作并对其他实体进行除所有权外的自治授权,被授权实体可以访问者身份进行特定操作。
(2)通过联盟链机构审核机制为验证者建立的身份足以抵御Sybil攻击。
(3)验证者之间的通信通道是同步的,即如果某验证者广播了一条消息,则所有验证者都会在已知的最大通信时延Δ内接收到该消息。
针对上述应用场景和基于上述通信模型假设,本发明实施例提供的复杂物联网联盟链***通信模型如图2所示,包括:联盟机构A、B、D,n个来自各联盟链的用于参与交易处理并确保***状态一致性的验证结点;其中:
联盟机构A、B、D验证结点数分别为nA、nB、nD;联盟链的链间共识门限值为t,联盟链的链内共识门限值分别为tA、tB、tD;各联盟链验证结点集内,实际通过当前验证的结点数(例如图2(b)中的环形结点)分别为t′A、t′B、t′D,实际通过当前验证的总结点数为t′=t′A+t′B+t′D;需要说明的是,t不一定等于tA、tB、tD三者之和;
各联盟机构内部参与***运行的结点包括普通结点(例如图2(a)中的灰色结点)、机构预选的验证结点(例如图2(a)中的条纹结点)和链间协作相关结点(例如图2(a)中的黑色填充结点);所述普通结点仅参与交易的生成和中继,所述机构预选的验证结点具备普通结点的功能且用于对交易进行验证,所述链间协作相关结点包括交易发起结点(例如图2(a)中的有向箭头尾部结点)和交易响应结点(例如图2(a)中的有向箭头指向结点);
密钥管理机构为各联盟链CX(X∈{A,B,D,…})中的每个验证结点i生成一个公私钥对
Figure BDA0002769904940000091
并使用公钥
Figure BDA0002769904940000092
唯一标识对应的验证结点。
复杂通信情况下,***中的一次请求需要由若干个交易协作完成,如该模型联盟机构B中某结点
Figure BDA0002769904940000093
需要相继获得另两联盟机构A和D中结点
Figure BDA0002769904940000094
协作才能继续执行当前任务,当实际通过验证结点数目满足群签名机制门限要求时,
Figure BDA0002769904940000095
响应来自
Figure BDA0002769904940000096
的请求。
实施例2
基于上述的复杂物联网联盟链***通信模型下,需要将一次交互过程涉及的多个交易发送给多个联盟链进行处理;在跨链形成的链联网结构中,如果部分联盟链共识失败或遭受51%攻击,则可能出现部分联盟链接受交易而其它联盟链中止交易的情况,链联网中错综复杂的跨链通信则会因为部分死链导致连锁式的交互失败,如果不添加可利用的竞争条件,将无法直接撤销已提交交易,造成资产损失等严重后果。
因此,本发明实施例提供一种复杂物联网联盟链***通信方法,应用于上述的复杂物联网联盟链***通信模型。该通信方法提供一种智能合约自主授权机制,具体如下:通过对物联网***运行逻辑进行调研,将物联网结点间授权协作行为进行细粒度划分,如图3所示,将物联网结点间协作分为有偿-请求(跨链)授权协作行为和无偿-主动(跨链)授权协作行为。
有偿-请求授权协作行为是指请求者通过提供授权请求、可信身份证明等,并在智能合约中托管一定数额承诺转移的资产,获得目标响应者授权的方式,如图3(a)所示。关于有偿-请求授权协作行为,可以通过基于VTM机制的智能合约实现结点间有偿-请求授权,本发明不再赘述。
无偿-主动授权协作行为是指由于结点间协作需要,拥有某项权限的结点需要主动授权给目标结点的情况,如图3(b)所示。例如,联盟链CA中结点
Figure BDA0002769904940000101
需要向联盟链CB中结点
Figure BDA0002769904940000102
授权,并与
Figure BDA0002769904940000103
一起完成某项任务。在上述无偿-主动授权过程中,结点
Figure BDA0002769904940000104
需向结点
Figure BDA0002769904940000105
自主提供可信身份证明(图3(b)中灰色箭头),
Figure BDA0002769904940000106
验证通过后,才会对
Figure BDA0002769904940000107
进行授权(图3(b)中黑色箭头)。显然,无偿-主动授权过程由于缺乏价值激励无法通过VTM机制实现。基于此,本发明实施例利用存在特权子群的TDS共识算法和非对称密码学原理实现对智能合约授权交易自适应路由,进而实现结点间跨链无偿-主动授权,具体为:
S101:授权方构造授权码,提供自身身份证明,并指定被授权方;所述授权码包括授权方所在的联盟机构公钥、访问控制策略使能标志、授权类型及授权方公钥;
具体地,授权码(Authorization Code,Acode)由授权交易的授权方生成,用于提供授权证明、进行授权验证。
S102:若授权方通过身份验证,将授权方身份证明和授权码经过三次加密得到新授权交易,并在物联网联盟链***网络广播;
作为一种可实施方式,包括以下内容:授权方使用自身私钥对授权方身份证明和授权码进行签名,得到第一签名信息;授权方使用被授权方公钥对授权方公钥和第一签名信息进行签名,得到第二签名信息;授权方使用联盟链群公钥对第二签名信息进行签名,得到第三签名信息;将第三签名信息、授权方所在联盟机构子群验证证明作为第一新授权交易,在物联网联盟链***网络广播所述第一新授权交易。
S103:利用联盟链群公钥和被授权方公钥对接收到的新授权交易进行签名实现自主定向路由。
作为一种可实施方式,包括以下内容:被授权方所在联盟链接收到第一新授权交易后,由被授权方所在联盟机构子群生成群私钥对第一新授权交易中的第三签名信息进行解密,得到第二签名信息;被授权方使用自身私钥对第二签名信息进行解密,得到第一签名信息;将第一签名信息、授权方公钥和授权方所在联盟机构子群验证证明作为第二新授权交易,在物联网联盟链***网络广播所述第二新授权交易;
建立合作关系的各联盟链内其他结点接收到第一新授权交易后,将所述第一新授权交易发送至其所在联盟机构的子群验证结点,生成群私钥对第一授权交易中的第三签名信息进行解密,得到第二签名信息;将能且仅能从第二签名信息中提取到的授权方公钥及授权方所在联盟机构子群验证证明发送到授权状态链上对授权方所有权进行验证,若群中超过链间共识门限值以上结点通过验证,本地保存授权方公钥;否则,作为惩罚,将授权方加入***黑名单,验证结点将拒绝对黑名单中结点参与的交易进行验证;
建立合作关系的各联盟链内其他结点接收到第二新授权交易后,利用本地保存的授权方公钥解密第二新授权交易,得到第四签名信息;将第四签名信息与第二新授权交易中的第一签名信息进行比对,若相等,验证被授权方对第二新授权交易中授权码指定资产的操作类型和授权码中允许的授权类型是否一致,若一致,该结点本地验证通过,若群中超过共识门限值以上结点通过验证,打包授权交易,更新授权状态链;否则返回授权失败;
非合作联盟链内的结点若接收到第一新授权交易,无法对密文部分解密,忽略该交易;若收到第二新授权交易,无法对密文部分解密,忽略该交易。
为使不存在依赖关系的交易能够在异构联盟链中并发处理,本发明实施例中,可以采用物联网动态数据多维授权DAG存储结构构造授权状态链,以维护所有公开授权记录、投票表决表及由实体构成的成员表。一般情况下,两个相邻的授权状态区块的DAG结构的大部分应该是相同的,因此,可以利用指针(即子树哈希)方便地实现对已经获得授权的引用,利用授权码***和删除结点更新授权状态链。
实施例3
本发明建立的通信模型中,群
Figure BDA0002769904940000121
内存在3个特权子群
Figure BDA0002769904940000122
链间PPTI路径证明群签名协议标记为(tA,nA;tB,nB;tD,nD;t,n)。为得到
Figure BDA0002769904940000123
授权,除PPTI路径证明外,
Figure BDA0002769904940000124
还需要向***提供联盟链链间合作共识证明。由于响应结点对请求结点的授权过程具有相似性,本发明实施例以
Figure BDA0002769904940000125
Figure BDA0002769904940000126
的授权过程为例。
由PPTI路径证明规则,包含
Figure BDA0002769904940000127
请求的交易
Figure BDA0002769904940000128
经由
Figure BDA0002769904940000129
中继至
Figure BDA00027699049400001210
Figure BDA00027699049400001211
表示。
Figure BDA00027699049400001212
对式(1)中交易
Figure BDA00027699049400001213
进行验证,通过后,构造包含身份证明
Figure BDA00027699049400001214
及对资产
Figure BDA00027699049400001215
授权类型的授权码。
Figure BDA00027699049400001216
式(1)中,
Figure BDA00027699049400001217
表示结点
Figure BDA00027699049400001218
以明文方式构造的对另一结点
Figure BDA00027699049400001219
的交互请求;
Figure BDA00027699049400001220
表示
Figure BDA00027699049400001221
对交易
Figure BDA00027699049400001222
的群签名;
图4给出了结点
Figure BDA00027699049400001223
构造授权码,运行智能合约交易实现对结点
Figure BDA00027699049400001224
自主授权的过程(不包括所有权)。
Figure BDA00027699049400001225
提供在授权状态链上拥有资产
Figure BDA00027699049400001226
所有权的最新证明,置授权码中访问控制策略使能标志,并调用随机函数产生随机数nonce,用于计数及区分不同的授权;
Figure BDA00027699049400001227
用自己的私钥
Figure BDA00027699049400001228
对授权码及随机数加密,得到密文m1,用
Figure BDA00027699049400001229
的公钥
Figure BDA00027699049400001230
对密文m1
Figure BDA00027699049400001231
的公钥
Figure BDA00027699049400001232
加密,得到密文m2,用群公钥
Figure BDA00027699049400001233
对m2加密得到m3,然后将m3、机构子群验证证明
Figure BDA00027699049400001234
等作为交易
Figure BDA00027699049400001235
在物联网联盟链***网络广播。
被授权结点
Figure BDA00027699049400001236
所在联盟链接收到交易
Figure BDA00027699049400001237
(真实通信过程可能出现传输干扰、攻击等导致接收端信息异常,因此为检测其与原始发送信号
Figure BDA00027699049400001238
是否一致,接收端用
Figure BDA0002769904940000131
表示,后面的情况类似),由
Figure BDA0002769904940000132
所在机构子群生成群私钥
Figure BDA0002769904940000133
对m′3解密,得到m′2
Figure BDA0002769904940000134
使用其私钥
Figure BDA0002769904940000135
对密文m′2解密,得到密文m′1,将密文m′1
Figure BDA0002769904940000136
等作为交易
Figure BDA0002769904940000137
(即
Figure BDA0002769904940000138
提供的被授权证明)在物联网联盟链***网络广播。
建立合作关系的各联盟链内其他结点接收到
Figure BDA0002769904940000139
将其发送给所在机构的子群验证结点,生成群私钥
Figure BDA00027699049400001310
对m′3解密,得到m′2,但被授权结点外的其他结点无法对密文m′2解密,仅能提取交易中除密文外的发送者公钥及机构证明信息,到授权链上对授权方所有权进行验证,若群中超过链间共识门限值以上结点通过验证,本地保存
Figure BDA00027699049400001311
的公钥
Figure BDA00027699049400001312
否则,作为惩罚,将交易发送者
Figure BDA00027699049400001313
加入***黑名单,验证结点将拒绝对黑名单中结点参与的交易进行验证(包括
Figure BDA00027699049400001314
作为授权操作的被授权方或授权方)。
建立合作关系的各联盟链内其他结点接收到
Figure BDA00027699049400001315
利用本地保存的
Figure BDA00027699049400001316
公钥
Figure BDA00027699049400001317
解密
Figure BDA00027699049400001318
中m′1,同时与利用
Figure BDA00027699049400001319
中包含的
Figure BDA00027699049400001320
解密
Figure BDA00027699049400001321
中m′1,若相等,验证
Figure BDA00027699049400001322
对交易
Figure BDA00027699049400001323
中授权码指定资产的操作类型和授权码中允许的授权类型是否一致,若一致,该结点本地验证通过,若群中超过共识门限值以上结点通过验证,打包授权交易,更新授权状态链;否则返回授权失败。
非合作联盟链内的结点接收到交易
Figure BDA00027699049400001324
无法对密文部分解密,忽略该交易,若收到交易
Figure BDA00027699049400001325
因本地没有
Figure BDA00027699049400001326
仍无法对密文部分解密,忽略该交易。
智能合约自主授权算法如算法1所示。
算法1智能合约自主授权算法
Figure BDA00027699049400001327
Figure BDA0002769904940000141
Figure BDA0002769904940000151
实施例4
为提高***安全性,通常将***划分为数量少、规模大的联盟链,而大规模的联盟链又带来交易共识时延较长的问题。基于此,在上述各实施例的基础上,本发明实施例提供的通信方法还包括:根据交易涉及的实体范围,将交易划分为不同的类型,采取不同的TDS共识方式,下面给出交易类型的判别式。
Figure BDA0002769904940000152
若式(2)成立,该交易为非跨链交易,否则,为跨链交易。其中,TX表示交易,CX表示联盟链,X∈{A,B,D},ui、uj表示联盟链内的结点,
Figure BDA0002769904940000153
表示交易TX从发起到完成执行路径上的结点的集合,也称交易路径;
***根据上述判别式识别跨链与非跨链交易,基于多级混合共识的信任-验证机制对交易进行验证,共识架构如图5所示。
对于非跨链交易中的低价值交易,由链内验证结点按照式(3)对其进行第一级共识(也称为快速共识):
Figure BDA0002769904940000161
其中,
Figure BDA0002769904940000162
表示使用群私钥
Figure BDA0002769904940000163
进行加密;
Figure BDA0002769904940000164
表示使用群公钥
Figure BDA0002769904940000165
解密;
低价值交易用户可以选择接受快速共识结果并获得实时的处理效率。然而,这并不意味着对***低价值交易处理完毕,为保证***长期运行的安全性,***在低价值交易用户接受快速共识结果后仍需要对低价值交易数据区块进行第二级共识,当第二级共识结果与第一级共识结果不一致时,结点所在的联盟机构将对第一级共识列表中签署了非法区块的验证结点进行识别并追责。
具体地,第二级共识完成时间距离用户接受第一级共识的时间并不会太久,可以较快甄别虚假共识并尽可能挽回损失,理性参与结点的目标是最大化自己的收益函数,对于低价值交易,机构通过引入惩罚机制,对恶意验证结点采取剔除出VNL或其它形式惩罚,降低结点作恶的可能性。详细的惩罚机制本发明不做讨论。
对于非跨链交易中的高价值交易,采用多级混合共识中的两级验证机制,即:由交易发送者所在联盟链内VNL验证结点构成第一级共识列表,根据群签名门限值随机生成来自不同联盟链VNL验证结点的第二级共识列表,按照式(4)对其进行共识:
Figure BDA0002769904940000166
其中,
Figure BDA0002769904940000167
表示使用群私钥
Figure BDA0002769904940000168
进行加密;
Figure BDA0002769904940000169
表示使用群公钥
Figure BDA00027699049400001610
解密。
对于跨链交易,采用基于存在特权子群TDS机制的多级混合共识方式,即:根据结点所在的联盟机构为各结点所在联盟链设定的共识门限值由链内验证结点子群对接收或发出的交易进行链内共识,由交易的最终响应结点所在联盟链验证结点子群对PPTI路径证明中各门限子群签名进行合成,按照式(5)对其进行共识:
Figure BDA0002769904940000171
其中,
Figure BDA0002769904940000172
表示使用群私钥
Figure BDA0002769904940000173
进行加密;
Figure BDA0002769904940000174
表示使用群公钥
Figure BDA0002769904940000175
解密。
本发明实施例提供的多级混合可选信任-验证共识机制通过将交易区分处理,充分利用链内共识速度较快,有利于提高***吞吐量,第二级共识(跨链)过程较慢,但可获得更高安全性的处理特性,可在不牺牲***吞吐量和安全性的情况下,实现低价值交易的实时确认,同时保障跨链交易和高价值交易的安全性。因此,上述机制在微观上提升了链内验证和二次验证并发执行的程度,宏观上最大程度的提高了***验证资源利用率,从而提升了***共识效率。
实施例5
为解决复杂情况下跨链通信过程***状态不一致问题,在上述个实施例的基础上,本发明实施例提供的通信方法还包括:跨联盟链通信交易原子提交协议,如图6所示,包括交易初始化、锁定和解锁三个阶段,用于原子地处理跨联盟链交易,以防止双重支出攻击或未成功转移的价值被永久锁定,确保各联盟链之间交易状态的一致性。
根据本发明提供的通信模型假设,联盟链在许可准入机制下是集体诚实的,各联盟链始终诚实地处理有效交易,每个跨链交易最终都会返回且仅返回一个响应:验收通过证明或拒绝证明。对于任意理性结点
Figure BDA0002769904940000176
(1)如果作为该结点输入的所有联盟链交易都发出验收通过证明,则作为该结点输出的各联盟链交易都会解锁以提交;
(2)如果作为该结点输入的至少一个联盟链交易发出验收未通过证明,则作为该结点输入的所有联盟链交易都会解锁以中止;
(3)如果作为该结点输入的至少一个联盟链交易发出验收未通过证明,则作为该结点输出的各联盟链交易都不会解锁提交。
初始化阶段:如图6所示,由用户账户(实体用户或智能合约用户)创建并向网络广播跨联盟链交易TXcross,假设其输入为来自两个不同联盟链的最新授权证明和交易执行逻辑,输出为对另一联盟链的实体-资产授权关系或新生成资产的权属分配。
锁定阶段:与交易TXcross相关的输入联盟链运行方式如下:在输入联盟链内部验证交易中身份证明的有效性,若有效,将交易锁定在该联盟链账本中,并广播对该交易的锁定,允许结点访问输入联盟链账本进行交易锁定验证(图6.2a);反之,在联盟链内创建验证未通过证明(图6.2b)。
解锁阶段:根据交易执行结果,将对该交易的解锁分为交易提交解锁和交易终止解锁。交易提交解锁具体为:若***中所有联盟链都广播了交易验收通过证明,则可以提交相应的交易,用户账户创建并广播解锁该交易的交易,包括与该交易对应的锁定交易和用户账户身份证明,然后,各联盟链验证解锁交易,并将原交易输出包含在输出联盟链账本的下一个块中(图6.3a)。
交易终止解锁具体为:若某输入联盟链发出验证未通过证明,则所有联盟链终止该交易;此外,若存在多个输入联盟链,为了回收在其它联盟链锁定的资产,用户账户必须向其它输入联盟链发送包含另一输入联盟链验证未通过证明的、解锁并终止该交易的请求,其它输入联盟链收到并验证解锁请求后,将资产标记为可再次使用(图6.3b)。
本发明实施例提供的跨链原子通信协议中,由于解锁交易要包含其它输入联盟链验证未通过证明,因此通常比常规交易大。在群签名共识机制下,当超出门限值数目的联盟链验证结点在包含已提交交易的区块上达成共识时,***将为该交易生成群签名,其大小与验证结点数量无关,因此可以获得较小的解锁交易,有助于降低存储成本并实现快速处理。并且可以以防止异步授权导致的双重支出攻击或未成功转移的价值被永久锁定,确保各联盟链之间交易状态的一致性。
为对本发明提出的复杂场景下物联网联盟链***通信机制性能进行测试。
实验设置:在7台服务器上构建了由300个虚拟验证结点组成的Ethereum仿真测试环境,实验平台如下:CPU为Xeon-E5、内存大小为64G、操作***为Ubuntu-64bit。构造联盟链CA、CB、CD,验证结点数nA=nB=nD=100,验证结点总数n=300,链内共识门限值记为tA,tB,tD,跨链共识门限值记为t。
一、时延测试
基于存在特权子群TDS的共识过程主要包括结点密钥生成、密钥重构计算、共识签名以及共识签名验证四个部分。预先计算结点密钥,无需计入网络时延,实际的网络时延主要受密钥重构计算、共识签名以及共识签名验证计算的影响。因此,基于存在特权子群TDS的一次完整共识的实际网络时延开销计算方法为将这三者的时间开销求和处理。此外,使用Python设计了一个脚本,以产生具有随机地址和足够数量的交易,使用网络仿真模块NetEm手动向网络添加链路传播延迟Δ,用于模拟现实世界的交易发生频率。
(1)低价值交易共识时延
单链环境下,***以Δ=10ms为时间间隔构造交易TX,当门限值tA(tB/tC)以10为步长在区间[10,70]内取不同值,单次共识的交易数量τ=1,20,30时,单个低价值交易平均共识时延随门限值变化情况如图7(a)所示,可以看出,当tA∈(40,70]时,交易共识时延显著上升;增加单次共识的交易数量有利于提高***吞吐量,然而,将导致单个交易平均共识时延的增加。
将上述实验中构造交易TX的时间间隔设置为Δ=5ms,得到单个低价值交易平均共识时延随门限值变化情况如图7(b)所示,可以看出,相比Δ=10ms时,降低Δ值显著降低了单次共识的交易数量较多时的共识时延,例如τ=20时共识时延减少的平均值约为72ms,τ=30时共识时延减少的平均值约为118ms;但是对于单次共识的交易数量较少时的共识时延影响较小,例如τ=1时共识时延减少的平均值约为17ms。此外,当Δ=5ms,τ=1时网络共识时延较小,随着门限值tA(tB/tC)在区间[10,70]内变化,网络共识时延在约16ms至127ms之间线性增加,因此,实时性要求较高的***,可通过降低Δ和τ值减少网络时延,以获得较短的响应时间。
(2)高价值交易共识时延
测试用例高价值交易为非跨链交易,采用两级共识方式:由交易所在联盟链内验证结点构成第一级共识列表,根据群签名门限值t随机生成来自群内各联盟链验证结点的第二级共识列表。***以Δ=10ms为时间间隔构造交易TX,取第一级共识门限值tA(tB/tC)=10,当第二级共识门限值t以10为步长在区间[80,200]内取不同值,单次共识的交易数量τ=1,20,30时,单个高价值交易平均共识时延随门限值t变化情况如图8(a)所示。可以看出,单个高价值交易平均共识时延随着二次共识门限值的增大线性增加,单次共识的交易数量越多,单个交易的共识时延越大,因此在***负载恒定的情况下,对于处理实时性要求比较高的***可通过减少单次共识交易数量的方法降低共识时延。
将上述实验中第一级共识门限值设置为tA(tB/tC)=70,当第二级共识门限值t以10为步长在区间[80,200]内取不同值时,得到单个高价值交易平均共识时延随门限值t变化情况如图8(b)所示。相比图8(a),τ=1,20,30时图8(b)中单个高价值交易平均共识时延均有所增加,多次测试获得的共识时延增幅均值分别为196ms,339ms及349ms。可以看出,τ取较大值时,单个交易的平均共识时延对链内门限值tA(tB/tC)的取值表现出一定的鲁棒性。
(3)跨链交易共识时延
***以Δ=10ms为时间间隔构造仅联盟链CA、CB结点参与的跨链交易TX,验证结点数分别为nA=nB=100,验证结点总数n=200,tA、tB分别取(25,25)、(50,50)、(25,75),由于跨链交易数目较链内交易少,单次共识的交易数量取τ=1,门限值t以5为步长在区间[100,140]内取不同值时,单个跨链交易平均网络时延随门限值t的变化情况如图9(a)所示。可以看出,当两联盟链内共识门限值均取较小值时能够获得较低的交易共识时延;共识门限结点总数相等时,参与共识验证的结点在各联盟链均匀分布时能够获得比非均匀分布更低的交易共识时延。
以Δ=10ms为时间间隔构造联盟链CA、CB、CD结点参与的跨链交易TX,验证结点数nA=nB=nD=100,验证结点总数n=300,tA、tB、tD分别取(25,25,25)、(50,50,50)、(60,0,60),tB≠0表示联盟链CB参与测试用例中由CA发送至CD交易TX的验证,tB=0表示CB仅作为CA中结点与CD中结点跨链通信的中继结点,不参与交易验证。单次共识的交易数量取τ=1,门限值t以5为步长在区间[150,200]内取不同值时,单个跨链交易平均网络时延随门限值t变化情况如图9(b)所示。
可以看出,链内共识门限值较低时,随群共识门限值变化的单个跨链交易共识时延也较低,tB=0时单个跨链交易共识时延与链内共识门限值取50时有部分重叠且波动较大,这是由于一方面增大链内共识门限值会引起交易共识时延增加,另一方面,为满足联盟链CA、CB、CD群共识门限t,tB=0时来自CB实际参与群共识的验证结点数目呈现随机性,且变化幅度较大,从而引起来自CA、CD实际参与群共识的验证结点数目的变化较大。
二、压力测试
通过修改环境参数,对低价值、高价值、跨链三类交易在不同构造交易时间间隔Δ、共识门限取值下进行压力测试,也称为吞吐量测试。
(1)低价值交易压力测试
单联盟链环境下,结点数目nA(nB/nC)=100,***分别以Δ=10ms、Δ=0(本发明将***中存在足够多待处理交易的情况看做Δ=0)为时间间隔构造交易TX,链内共识门限值分别取tA(tB/tC)=10、tA(tB/tC)=70,低价值交易共识吞吐量随单次共识的交易数量τ变化情况如图10所示。可以看出,图中四种参数取值下交易吞吐量均随着单次共识的交易数量τ的增加而增加,τ=1,tA(tB/tC)=70时,***吞吐量仅为8tps,略高于比特币,τ=1,tA(tB/tC)=10时,***吞吐量达到37tps,是比特币吞吐量的约5倍;τ=30,tA(tB/tC)=70,Δ=0时,***吞吐量达到241tps,是比特币吞吐量的约34倍,是以太坊吞吐量的约16倍,τ=30,tA(tB/tC)=10,Δ=0时,***吞吐量达到1108tps,是比特币吞吐量的约158倍,是以太坊吞吐量的约74倍。
测试结果表明,Δ=0时,***吞吐量受共识门限值影响较大,Δ=10ms时,***吞吐量对链内共识门限值的变化呈现一定程度的鲁棒性;链内共识门限值较小时共识吞吐量受Δ影响较大。
(2)高价值交易压力测试
测试用例高价值交易为非跨链交易,与时延测试相同,采用两级共识方式:由交易所在联盟链内验证结点构成第一级共识列表,根据群签名门限值t随机生成来自群内各联盟链验证结点的第二级共识列表。取第一级共识门限值tA(tB/tC)=70,***分别以Δ=10ms、Δ=0为时间间隔构造交易TX,第二级共识门限值取t=100、t=200,高价值交易共识吞吐量随单次共识的交易数量τ变化情况如图11所示。
可以看出,图中四种参数取值下交易吞吐量均随着单次共识的交易数量τ的增加而增加,t=200,τ=30时,***吞吐量达到24tps,略高于比特币和以太坊的吞吐量,t=100,τ=30时,***吞吐量达到69tps,是比特币吞吐量的约10倍,是以太坊吞吐量的约5倍。测试结果表明,跨链共识门限值t较小时,***获得较高吞吐量,t较大时,***吞吐量对Δ值的变化呈现一定程度的鲁棒性。
(3)跨链交易压力测试
***以Δ=10ms、Δ=0为时间间隔构造仅联盟链CA、CB结点参与的跨链交易TX,验证结点数分别为nA=nB=100,验证结点总数n=200,tA、tB分别取(25,25)、(50,50),单次共识的交易数量取τ=1,群共识门限值t以10为步长在区间[100,140]内取不同值时,在Δ和tA、tB四种不同参数取值下***共识吞吐量随群共识门限值t变化情况如图12(a)所示。可以看出,四种不同参数取值下交易吞吐量均随群共识门限值t的增加而减少,Δ=0,tA=tB=25,t=100时,***吞吐量最高达到50tps,是比特币吞吐量的约7倍,是以太坊吞吐量的约3倍。
实验结果表明,Δ的取值对跨链交易吞吐量影响较大,这说明当前机器计算水平下执行密码算法占交易总周转时间比重较少,Δ取较大值时,***吞吐量显著减少,且***吞吐量对链内共识门限值的变化呈现一定的鲁棒性。
考虑交易涉及多个联盟链CA、CB、CD时的情形。群共识门限值取t=200,链内共识门限值tA、tB、tD分别取(25,25,25)、(50,50,50)、(60,0,60),单次共识的交易数量取τ=1,构造跨联盟链CA、CB、CD交易TX的时间间隔Δ以2ms为步长在区间[0,10]内取不同值时,***吞吐量随Δ变化的情况如图12(b)所示。可以看出,设定的三种不同链内共识门限取值下,吞吐量均随着Δ的增大而减小,特别是,当Δ→10+,***吞吐量显著减少,Δ=0,t=200,tA=tB=tD∈[25,50]时,***吞吐量约为18tps,略高于比特币和以太坊吞吐量。实验表明,群共识门限值取较大值t=200时,链内共识门限值的变化对***吞吐量呈现一定程度的鲁棒性。
综上,本发明方案在测试环境给定参数下,处理低价值交易的***吞吐量达到1108tps,是比特币吞吐量的约158倍,是以太坊吞吐量的约74倍,可以满足大部分物联网轻量级、低价值交易的效率需求。处理高价值交易的***吞吐量达到69tps,是比特币吞吐量的约10倍,是以太坊吞吐量的约5倍,处理两联盟链跨链交易***吞吐量约为50tps,是比特币吞吐量的约7倍,是以太坊吞吐量的约3倍,处理多联盟链跨链交易***吞吐量为18tps,略高于比特币和以太坊吞吐量,相比处理低价值交易的***吞吐量,处理高价值交易和跨链交易的***吞吐量有所降低,但大大提升了***安全性。此外,上述性能是在较强的安全约束条件下得到的,在实际物联网应用环境中,通过设置合理的共识门限值、单次共识交易数量等参数,本发明方案将可以获得更好的性能。
三、可靠性测试
将联盟链CA中结点
Figure BDA0002769904940000223
作为授权结点,联盟链CB中结点
Figure BDA0002769904940000221
作为被授权结点,构造授权交易TX,对无偿-主动跨链授权交易自适应路由的可靠性进行测试。发送方
Figure BDA0002769904940000222
分别以Δ=10ms,5ms,2ms,1ms为时间间隔周期性发送交易TX,发送方/接收方累计发送/接收交易数量随时间变化情况如图13所示。
可以看出,当交易发送时间间隔Δ值较大时,接收端一段时间内识别并接收到的交易数量等于或接近发送端发送的交易数量,如图13(a)、13(b)所示,这证明无偿-主动跨链授权交易自适应路由机制具有高可靠性;进一步降低交易发送时间间隔Δ,对Δ=2ms,1ms分别进行测试,接收端一段时间内识别并接收到的交易数量略低于发送端发送的交易数量,如图13(c)、13(d)所示,这是由于接收端计算并识别授权交易花费时间占比提升导致接收延迟。因此,当Δ取值较小时,应设置适度的接收时间窗,以确保自适应路由转发的高可靠性。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

Claims (10)

1.一种复杂物联网联盟链***通信模型,其特征在于,包括:联盟机构A、B、D,n个来自各联盟链的用于参与交易处理并确保***状态一致性的验证结点;其中:
联盟机构A、B、D验证结点数分别为nA、nB、nD;联盟链的链间共识门限值为t,联盟链的链内共识门限值分别为tA、tB、tD
各联盟机构内部参与***运行的结点包括普通结点、机构预选的验证结点和链间协作相关结点;所述普通结点仅参与交易的生成和中继,所述机构预选的验证结点具备普通结点的功能且用于对交易进行验证,所述链间协作相关结点包括交易发起结点和交易响应结点;
密钥管理机构为各联盟链中的每个验证结点生成一个公私钥对,并使用公钥唯一标识对应的验证结点。
2.基于权利要求1所述的复杂物联网联盟链***通信模型的通信方法,其特征在于,包括:
将物联网结点间授权协作行为进行细粒度划分,分为有偿-请求授权协作行为和无偿-主动授权协作行为;
针对无偿-主动授权协作行为,采用智能合约自主授权机制,具体为:
授权方构造授权码,提供自身身份证明,并指定被授权方;所述授权码包括授权方所在的联盟机构公钥、访问控制策略使能标志、授权类型及授权方公钥;
若授权方通过身份验证,将授权方身份证明和授权码经过三次加密得到新授权交易,并在物联网联盟链***网络广播;
利用联盟链群公钥和被授权方公钥对接收到的新授权交易进行签名实现自主定向路由。
3.根据权利要求2所述的方法,其特征在于,所述将授权方身份证明和授权码经过三次加密得到新授权交易,具体包括:
授权方使用自身私钥对授权方身份证明和授权码进行签名,得到第一签名信息;
授权方使用被授权方公钥对授权方公钥和第一签名信息进行签名,得到第二签名信息;
授权方使用联盟链群公钥对第二签名信息进行签名,得到第三签名信息;
将第三签名信息、授权方所在联盟机构子群验证证明作为第一新授权交易,在物联网联盟链***网络广播所述第一新授权交易。
4.根据权利要求3所述的方法,其特征在于,所述利用联盟链群公钥和被授权方公钥对接收到的新授权交易进行签名实现自主定向路由,具体包括:
被授权方所在联盟链接收到第一新授权交易后,由被授权方所在联盟机构子群生成群私钥对第一新授权交易中的第三签名信息进行解密,得到第二签名信息;被授权方使用自身私钥对第二签名信息进行解密,得到第一签名信息;将第一签名信息、授权方公钥和授权方所在联盟机构子群验证证明作为第二新授权交易,在物联网联盟链***网络广播所述第二新授权交易;
建立合作关系的各联盟链内其他结点接收到第一新授权交易后,将所述第一新授权交易发送至其所在联盟机构的子群验证结点,生成群私钥对第一授权交易中的第三签名信息进行解密,得到第二签名信息;将能且仅能从第二签名信息中提取到的授权方公钥及授权方所在联盟机构子群验证证明发送到授权状态链上对授权方所有权进行验证,若群中超过链间共识门限值以上结点通过验证,本地保存授权方公钥;否则,作为惩罚,将授权方加入***黑名单,验证结点将拒绝对黑名单中结点参与的交易进行验证;
建立合作关系的各联盟链内其他结点接收到第二新授权交易后,利用本地保存的授权方公钥解密第二新授权交易,得到第四签名信息;将第四签名信息与第二新授权交易中的第一签名信息进行比对,若相等,验证被授权方对第二新授权交易中授权码指定资产的操作类型和授权码中允许的授权类型是否一致,若一致,该结点本地验证通过,若群中超过共识门限值以上结点通过验证,打包授权交易,更新授权状态链;否则返回授权失败;
非合作联盟链内的结点若接收到第一新授权交易,无法对密文部分解密,忽略该交易;若收到第二新授权交易,无法对密文部分解密,忽略该交易。
5.根据权利要求2所述的方法,其特征在于,还包括:将交易划分为不同的类型,针对不同类型的交易,采取不同的TDS共识方式;其中:
按照式(2)将交易划分为不同的类型,若式(2)成立,该交易为非跨链交易,否则,为跨链交易:
Figure FDA0002769904930000031
其中,TX表示交易,CX表示联盟链,X∈{A,B,D},ui、uj表示联盟链内的结点,
Figure FDA0002769904930000032
表示交易TX从发起到完成执行路径上的结点的集合。
6.根据权利要求5所述的方法,其特征在于,所述针对不同类型的交易,采取不同的TDS共识方式,具体包括:
对于非跨链交易中的低价值交易,由链内验证结点按照式(3)对其进行第一级共识:
Figure FDA0002769904930000033
其中,
Figure FDA0002769904930000034
表示使用群私钥
Figure FDA0002769904930000035
进行加密;
Figure FDA0002769904930000036
表示使用群公钥
Figure FDA0002769904930000037
进行解密。
7.根据权利要求6所述的方法,其特征在于,还包括:
对于非跨链交易中的低价值交易,在低价值交易用户选择接受第一级共识结果后,对低价值交易数据区块进行第二级共识,当第二级共识结果与第一级共识结果不一致时,结点所在的联盟机构将对第一级共识列表中签署了非法区块的验证结点进行识别并追责。
8.根据权利要求5所述的方法,其特征在于,所述针对不同类型的交易,采取不同的TDS共识方式,具体包括:
对于非跨链交易中的高价值交易,采用多级混合共识中的两级验证机制,即:由交易发送者所在联盟链内VNL验证结点构成第一级共识列表,根据群签名门限值随机生成来自不同联盟链VNL验证结点的第二级共识列表,按照式(4)对其进行共识:
Figure FDA0002769904930000038
其中,
Figure FDA0002769904930000039
表示使用群私钥
Figure FDA00027699049300000310
进行加密;
Figure FDA00027699049300000311
表示使用群公钥
Figure FDA00027699049300000312
进行解密。
9.根据权利要求5所述的方法,其特征在于,所述针对不同类型的交易,采取不同的TDS共识方式,具体包括:
对于跨链交易,采用基于存在特权子群TDS机制的多级混合共识方式,即:根据结点所在的联盟机构为各结点所在联盟链设定的共识门限值由链内验证结点子群对接收或发出的交易进行链内共识,由最终的交易响应结点所在联盟链验证结点子群对PPTI路径证明中各门限子群签名进行合成,按照式(5)对其进行共识:
Figure FDA0002769904930000041
其中,
Figure FDA0002769904930000042
表示使用群私钥
Figure FDA0002769904930000043
进行加密;
Figure FDA0002769904930000044
表示使用群公钥
Figure FDA0002769904930000045
进行解密。
10.根据权利要求2所述的方法,其特征在于,还包括:跨联盟链通信交易原子提交协议:包括交易初始化、锁定和解锁三个阶段;
初始化阶段:由用户账户创建并向网络广播跨联盟链交易,设定跨联盟链交易的输入为来自两个不同联盟链的最新授权证明和交易执行逻辑,输出为对另一联盟链的实体-资产授权关系或新生成资产的权属分配;
锁定阶段:在输入联盟链内部验证交易中身份证明的有效性,若有效,将交易锁定在该联盟链账本中,并广播对该交易的锁定,允许结点访问输入联盟链账本进行交易锁定验证;反之,在联盟链内创建验证未通过证明;
解锁阶段:根据交易执行结果,将对该交易的解锁分为交易提交解锁和交易终止解锁;其中:
交易提交解锁具体为:若***中所有联盟链均广播了交易验收通过证明,则可以提交相应的交易,用户账户创建并广播解锁该交易的交易,包括与该交易对应的锁定交易和用户账户身份证明;然后,各联盟链验证解锁交易,并将原交易输出包含在输出联盟链账本的下一个块中;
交易终止解锁具体为:若某输入联盟链发出验证未通过证明,则所有联盟链终止该交易;若存在多个输入联盟链,用户账户向其它输入联盟链发送包含另一输入联盟链验证未通过证明的、解锁并终止该交易的请求,其它输入联盟链收到并验证解锁请求后,将资产标记为可再次使用。
CN202011245546.5A 2020-11-10 2020-11-10 一种复杂物联网联盟链***通信机制 Pending CN112583598A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011245546.5A CN112583598A (zh) 2020-11-10 2020-11-10 一种复杂物联网联盟链***通信机制

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011245546.5A CN112583598A (zh) 2020-11-10 2020-11-10 一种复杂物联网联盟链***通信机制

Publications (1)

Publication Number Publication Date
CN112583598A true CN112583598A (zh) 2021-03-30

Family

ID=75122507

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011245546.5A Pending CN112583598A (zh) 2020-11-10 2020-11-10 一种复杂物联网联盟链***通信机制

Country Status (1)

Country Link
CN (1) CN112583598A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113824742A (zh) * 2021-11-23 2021-12-21 湖南兆物信链科技集团有限公司 一种基于区块链的跨链通信授权***
CN114362996A (zh) * 2021-12-01 2022-04-15 山大地纬软件股份有限公司 一种动态的跨链消息转发方法及***
CN118138379A (zh) * 2024-05-07 2024-06-04 南京信息工程大学 基于交易包切片和节点动态调整的多验证组协同验证方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107038639A (zh) * 2017-03-07 2017-08-11 杭州公链网络技术有限公司 一种兼容多资产类型快速交易的联盟链构建方法
CN110008720A (zh) * 2019-03-19 2019-07-12 周口师范学院 基于联盟链的物联网动态数据溯源方法及装置
US20190251199A1 (en) * 2018-02-14 2019-08-15 Ivan Klianev Transactions Across Blockchain Networks
CN110457926A (zh) * 2019-08-13 2019-11-15 重庆邮电大学 一种工业物联网中基于数据加密存储的数据共享方法
CN110993044A (zh) * 2019-11-28 2020-04-10 周口师范学院 一种医疗联盟链轻量级动态自主跨链交互方法
US20200265516A1 (en) * 2019-02-20 2020-08-20 55 Global, Inc. Trusted tokenized transactions in a blockchain system

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107038639A (zh) * 2017-03-07 2017-08-11 杭州公链网络技术有限公司 一种兼容多资产类型快速交易的联盟链构建方法
US20190251199A1 (en) * 2018-02-14 2019-08-15 Ivan Klianev Transactions Across Blockchain Networks
US20200265516A1 (en) * 2019-02-20 2020-08-20 55 Global, Inc. Trusted tokenized transactions in a blockchain system
CN110008720A (zh) * 2019-03-19 2019-07-12 周口师范学院 基于联盟链的物联网动态数据溯源方法及装置
CN110457926A (zh) * 2019-08-13 2019-11-15 重庆邮电大学 一种工业物联网中基于数据加密存储的数据共享方法
CN110993044A (zh) * 2019-11-28 2020-04-10 周口师范学院 一种医疗联盟链轻量级动态自主跨链交互方法

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
HONGYANG LIU等: "《A Secure and Practical Blockchain Scheme for IoT》", 《IEEE》 *
乔蕊等: "复杂物联网联盟链***通信机制研究", 《中国知网》 *
张健毅等: "基于区块链的可监管数字货币模型", 《计算机研究与发展》 *
高文涛等: "基于联盟区块链和IPFS的音乐共享模型", 《天津师范大学学报(自然科学版)》 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113824742A (zh) * 2021-11-23 2021-12-21 湖南兆物信链科技集团有限公司 一种基于区块链的跨链通信授权***
CN114362996A (zh) * 2021-12-01 2022-04-15 山大地纬软件股份有限公司 一种动态的跨链消息转发方法及***
CN114362996B (zh) * 2021-12-01 2024-03-19 山大地纬软件股份有限公司 一种动态的跨链消息转发方法及***
CN118138379A (zh) * 2024-05-07 2024-06-04 南京信息工程大学 基于交易包切片和节点动态调整的多验证组协同验证方法

Similar Documents

Publication Publication Date Title
Bentov et al. Tesseract: Real-time cryptocurrency exchange using trusted hardware
Choudhuri et al. Fairness in an unfair world: Fair multiparty computation from public bulletin boards
TWI770022B (zh) 電腦實施之控制方法、系統及控制系統
Chen et al. A survey on blockchain systems: Attacks, defenses, and privacy preservation
CN110288480B (zh) 一种区块链的私密交易方法及装置
Huang et al. Scalable and redactable blockchain with update and anonymity
JP7296596B2 (ja) ブロックの迅速な生成用の分散コンセンサスのアルゴリズム、デバイス及びコンピュータ可読記憶媒体
JP2022180596A (ja) ブロックチェーンで実施されるイベントロック暗号化の方法及びシステム
CN110380847B (zh) 一种区块链共识方法和装置
JP2021507564A (ja) 低エントロピーパスワードを用いてブロックチェーントランザクションを許可するためのコンピュータ実装されたシステム及び方法
CN112583598A (zh) 一种复杂物联网联盟链***通信机制
CN110785782A (zh) 使用区块链网络的多轮令牌分发***和方法
Lin et al. Ppchain: A privacy-preserving permissioned blockchain architecture for cryptocurrency and other regulated applications
Gayvoronskaya et al. Blockchain
Sayadi et al. Blockchain challenges and security schemes: a survey
Aumayr et al. Sleepy channels: Bi-directional payment channels without watchtowers
Alexopoulos et al. Towards secure distributed trust management on a global scale: An analytical approach for applying distributed ledgers for authorization in the IoT
Das Toward next generation of blockchain using improvized bitcoin-ng
Mao et al. A survey on cross-chain technology: Challenges, development, and prospect
Swarnkar et al. Security, privacy, trust management and performance optimization of blockchain technology
Hatefi et al. A conditional privacy-preserving fair electronic payment scheme based on blockchain without trusted third party
Zhang et al. A novel privacy protection of permissioned blockchains with conditionally anonymous ring signature
Liu et al. A blockchain-based cross-domain authentication management system for IoT devices
Singh et al. Blockchain applications, opportunities, challenges and risks: a survey
Barbàra et al. MP‐HTLC: Enabling blockchain interoperability through a multiparty implementation of the hash time‐lock contract

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20210330