欢迎访问一起赢论文辅导网
本站动态
联系我们
 
 
 
 
 
 
 
 
 
 
 
QQ:3949358033

工作时间:9:00-24:00
SCI期刊论文
当前位置:首页 > SCI期刊论文
一种支持高并发的多人链下支付方案
来源:一起赢论文网     日期:2022-01-16     浏览数:859     【 字体:

 第44 第1 2021 年1 月计 算机 学 报CHINESEJOURNALOFCOMPUTERSVol .44No.1Jan. 2021一种支持高并发的多人链下支付方案葛钟慧”张 奕2 ) ’ 3 )龙 宇2 )刘 振2 )刘志强2 )谷大武^1 :)( 上海交通大学网络空间安全学院 上海 20 024 0)2)( 上海交通大学计算机科学与工程系 上海 2 002 40)3 )( 上海观源信息科技有限公司 上海 2002 41)摘 要 随着区块链技术研究与应用的快速发展, 可扩展性瓶颈对于其在大规模应用场景下的主要制约作用逐渐凸显. 作为解决区块链可扩展性问题的关键技术之一, 支付通道技术将交易清算从链上的全网矿工认证转移到链下通道内的支付双方认证, 从而实现了支付近乎即时确认; 结合路由算法构成的支付通道网络, 实现了任意两点间的链下支付, 极大地提升了区块链的可扩展性.然而, 目前的研究大多针对双人通道, 涉及到多方的链下支付无法在单个通道内或通过单条支付路径完成, 同时对于具有频繁、相互交易需求的多个人, 两两间建立通道或通过路由来完成链下支付的所需链上开销与复杂性较高. 现有的多人通道方案效率低下, 不适用于高并发的链下支付场景,且不能支持跨通道支付, 限制了链下支付的范围. 基于此, 本文在原有多人通道框架内改进了通道内状态更新机制, 将通道状态依据支付串行更新变为并行更新, 并引人支付有效期来减轻网络时延与高并发支付场景对支付有效性的影响, 从而实现通道内支付处理效率的提升和对链下高并发支付场景的支持, 此外在不关闭通道的前提下允许节点退出通道以提高通道可持续性; 将多人链下支付从通道内推广至跨通道, 具体地, 在多人通道内引人条件支付与赎回支付, 以支持安全的跨通道支付, 同时将原双人通道网络中的基于图嵌人的贪心路由算法应用至多人通道网络中, 以实现网络任意两点间的支付路径寻找. 分析表明, 多人通道网络具备可行性, 并可实现安全的链下支付; 我们对链下支付的路由情况进行模拟, 实验结果显示, 该方案链下支付成功率为88%, 且在静态场景下的路由开销相对双人通道网络降低了28%, 面对网络环境与设置变化路由性能更加稳定.由此, 此方案具有高效、支持高并发、稳定的特性, 满足实际应用中对链下支付的需求, 具有良好的应用前景.关键词 区块链; 多人通道; 链下支付; 高并发; 路由中图法分类号TP309DOI号10. 1 189 7/SP.J. 101 6. 2021 .00132AHigh-ConcurrencyMulti-PartyOff-ChainPaymentSchemeGEZhongHui1 5ZHANGYi2 ) , 3)LONGYu2)LIUZhen2 )Li uZhi Qi ang2 )GUDa Wu1 )1 :) {SchoolofCyberScienceandEngineering?ShanghaiJiaoTongUniversi ty^Shanghai200240)2){ DeparL menLofComput erScienceandEngineeri ng?ShanghaiJiaoTongUniversi ty^Shanghai200240)3 )(ShanghaiVi ewsourceInformai ionScience&-TechnologyCo. ?Li d^Shanghai200241)AbstractBl ockchai nhasrecei vedgreatattentioni nrecentyears.Duetoitsi nherentattri buteofdecentrali zati on,thel owthroughputi mpedesi tsl arge scal eappl i cati ons.Asoneofthemostpromisi ngsol uti onstothescalabi li tyi ssue,PaymentChannelNetworks( PCNs)movetheonchai npaymentsi ntooffchai npaymentchannel s,taki ngtheunderlyingbl ockchainasthearbitrati onpl atform.Whil eanonchai npaymentneedstobeveri fiedbyal lmi nesi nthebl ockchai nnetwork?anoffchai npaymentneedsonl ytobeapprovedbybothparti eswithi nthechannel ,leadingtonearl yi nstantpaymentconfirmati on.Incombinationwi throutingalgori thms,counterpartieswithouta收稿日期:20 19 12 01; 在线发布日期:2020 05 14. 本课题得到国家自然科学基金( 61672347 , 61672339 , 61872142 , 61932014 , 61572318)、“十三五”国家密码发展基金( MMJJ20170111) 、 上海市2019 年度“科技创新行动计划”( 19511101403 , 19511103900) 、 上海市闵行区中小企业技术创新计划(2018MI I 1 10) 资助. 葛钟慧, 博士研究生, 主要研究方向为区块链. Email : zhonghui.ge@sjtu. edu. cn. 张 奕, 硕士研究生, 主要研究方向为区块链. 龙 宇, 博士, 副教授, 主要研究方向为区块链、 信息安全与密码学. 刘 振, 博士, 副教授, 主要研究方向为应用密码学、 区块链安全与隐私保护.刘志强, 博士, 副教授, 主要研究方向为区块链、 信息安全与密码学.谷大武( 通信作者) , 博士, 教授, 主要研究领域为密码学与计算机安全. Emai l: dwgu@sjt u.edu.cn.葛钟慧等:一种支持高并发的多人链下支付方案 13 31 期directpaymentchannelcanaccomplishpaymentsi nthenetworkviaapathofi ntermediaries,whichbroadensthescopeofoff chai npayments. However,currentresearchesmai nlyfocusontwopartypaymentchannel s,paymentswithmul tipl epayersorpayeescannotbeaccomplishedwithi nonechannelorvi aasi ngl epaymentpath. Atthesameti me,foragroupofpeopl ewhomakepaymentsmutual l yandfrequentl y,l aunchi ngoff chai npaymentsei therbyestabl i shi ngtwopartychannel sbetweeneachpairorthroughi ntermediariesl eadstohighon chaincostandpaymentcompl exi ty. AsforGnocchi ,thecurrentmul tipartyoffchai npaymentscheme,therei salackofefficiencyandfai lstosupporthigh concurrencyi nchannelpayments.Besi des,thereisnosupportforcross channelpayments, whichli mitstherangeofoffchai npayments. Inthispaper,wei mprovedtheoperati onmechanismofGnocchitoachievetheenhancementofi nchannelpaymentprocessi ngeffi ci encyandthesupportofhigh concurrencyoff chai npayments.Si mi l arly,weconti nuedthei ntroducti onofsupervisorwithinthemul tipartychannelastheproposerofupdati ngchannelstatei neachround. Di fferentl y,wetransferredtheserialchannel stateupdatei ntotheparal l elupdateandregardpaymentsthesupervisorreceivesi nacertai ntimeperi odasi noneround. Toreducethei mpactofnetworkl atencyandhigh concurrencypaymentscenari osonpaymenteffecti veness,theroundnumbercontainedi nonepaymenti sregardedasvali difi ti si nacertai nintervalofthecurrentround.Besi des,thecaseofnodedepartsandwi thdrawhisval uefromthechannelwithnoneedtocl osethechannelisconsi deredtopromotechannel sustai nability.Moreover,weextendedtheoffchainpaymentsfromi nchanneltocross channel.Specifical l y,thecondi ti onalpaymentformat,whoseval uewi l lbetransferredtothepayeewhenheful fi l l sitsconditi on,isintroducedwithi nthechanneltoensurethesecureval uetransferal ongthecross channelpath.Accordi ngly,theredempti onpaymentformati mpl ementstheconditionfulfil l ment. Thegreedyembeddi ngbasedrouti ngalgori thmisdepl oyedtoachieveefficientpathfi ndi ngbetweenanypairofnodesi nthemul tipartyoffchai nnetwork.Weanal yzedthefeasibilityandsecurityofthenetwork,andeval uatedtheperformanceoftherouti ngalgorithmusingreal worl ddata.Astheresultsshow,i tachievesthepaymentssuccessrati oof88%andreducesroutingoverheadby28%comparedtothetwopartyPCNsi nthestaticscenari o. Facingchangesfromnetworkscenari oandnetworksettings,itachievesacomparabl ysteadierrouti ngperformance. Withtheproperti esofeffi ci ency,high concurrency,andstabi l ity,i ti sconcl udedthatthemultipartyoffchai npaymentschemeisdepl oyabl ei nreal worl dapplicati ons.Keywordsbl ockchai n,mul tipartypaymentchannel;offchai npayment;high concurrency;routi ngi 引 言自2008 年比特币[1]问世以来, 其底层区块链技术受到来自科研界与产业界的广泛关注. 以太坊[2]所提出的智能合约进一步拓宽了区块链技术的应用边界, 跳出了转账交易与简单业务脚本的框架. 然而, 由于区块链固有的分布式属性, 即每笔交易都要经过全网矿工节点的确认, 导致区块链的可扩展性较低. 理论上比特币吞吐率为7TPS, 以太坊为15TPS,远低于传统的中心化系统如Vi sa, 可支持每秒上千笔交易[3], 这极大地限制了区块链在大规模场景下的应用, 也使得区块链可扩展性成为亟待解决的问题.作为区块链可扩展性问题[4]的主流解决方案[5 8]之一■, 支付通道网络( PaymentChannelNetworks,PCNs)[5’8]内有两种支付形式, 通道内支付和跨通道支付. 通道内支付指具有高频、小额交易需求的两个节点在链上预存金额至链下支付通道中, 并将后续交易放在通道内执行, 在通道关闭或双方对通道内金额分配产生纠纷时, 将通道内最新状态提交至链上判决. 跨通道支付针对链下支付通道网络中无直1 34 计 算机 学 报 2021年接通道建立的交易方, 通过路由算法寻找一条连通双方、资金充足的路径以完成支付, 从而拓宽了链下支付的范围. 通过基于密码学的交互协议与惩罚机制, 并依靠区块链作为第三方仲裁平台, 链下支付的安全与效率得以保障.由于交易在链下执行、只需通道内双方确认而无需上链, 可实现即时确认. 由于交易信息与在某一时刻通道内金额分配仅为通道双方所知, 可实现交易隐私性保护. 与其它方案相比, 支付通道网络不涉及链本身的属性, 从而具有更强的兼容性.然而, 目前支付通道网络研究大多关注双人支付通道, 仅适用于两方, 对于涉及多个参与方的链下支付, 只能将此支付划分为多笔子支付, 在多个通道内或通过多条支付路径完成, 此时支付的复杂性提高. 同时对于具有频繁交易需求的/ 个人, 满足两两之间的交易需求需要建立〇(/2) 个通道或通过路由实现, 提高了所需的链上开销与交易复杂性. 已有的多人通道方案Gnocchi?将双人通道推广至多人通道, 但是存在两点显著问题. 首先, 通道内通信开销大, 且支付处理效率低, 不能应用于通道内高并发支付的场景下. 其次, 此方案缺乏对跨通道支付应用场景的考虑, 支付被局限在通道内部, 限制了链下支付的范围.针对以上问题, 本文提出了一种支持高并发的多人链下支付方案, 主要贡献有:(1) 在Gnocchi 的基础上改进了多人通道内部运行机制, 提高了通道内支付处理效率, 实现了通道内状态一致性的正确、快速达成, 满足对高并发支付的需求;(2) 将链下支付的范围从通道内扩展到跨通道. 在多人通道内部引人条件支付与赎回支付, 实现了安全的跨多人通道支付; 设计了基于多人通道网络的路由算法, 实现了分布式环境下网络中任意节点间的支付路径寻找;(3) 分析证明了多人通道网络的可行性与安全性, 并通过实验验证网络路由性能. 实验结果表明,多人通道网络实现了88%的链下支付成功率, 相比于双人通道网络实现了更低的路由开销与更稳定的路由性能, 满足实际应用需求.本文第2 节对支付通道网络的相关工作, 以及本文所需的预备知识进行介绍; 第3 节描述多人通道内支付方案; 第4 节阐释跨多人通道支付方案; 第5 节对多人通道网络的可行性与安全性进行分析;第6 节对多人通道网络的路由性能进行实验验证,并对结果进行分析; 第7 节总结本文的工作, 并展望下一步的研究方向.2 相关工作与预备知识2. 1相关工作对支付通道网络的研究主要分为单通道和跨通道两个方面. 在单个通道方面, 针对通道中支付的可链接性以及通道建立、 关闭过程中因信息上链而导致的隐私泄漏问题, Green等人[1°]提出了具有隐私保护性质的支付通道方案. Zhang 等人[ 1 1]基于Zerocash 构建了链下支付通道. Pan等人[ 9]提出了一种链下多人通道方案Gnocchi . 多人建立一个通道并预存金额至其中, 引人监管节点来处理通道内支付并广播更新的各节点余额. 通道的安全性通过监管节点预存的保证金以及相应的惩罚机制来保证, 具体细节将在第3 节介绍.在跨通道支付方面, 高效的路由算法是其核心.根据节点掌握资源的不同, 我们将路由算法划分为全局路由与局部路由两类. 全局路由中, 各节点维持链下支付网络的拓扑图. 对此, Pnhodko等人[1 2]提出了Fl are, 通过将到相邻节点与信标节点的路径保存在路由表中, 并结合交易双方的路由表找到公共节点来确定交易路径, 通过问询路径上各节点的可用金额与支付费用来判断路径的可用性. Mal avol ta等人[ 1 3 ]提出的Si l entWhi spers 采用Landmark路由算法[ 1 4], 选取网络中连通度高的节点作为l andmark,通过结合交易双方到landmark 的路径生成总交易路径, 通过安全多方计算确定路径上可转移金额, 并且保护通道内金额与交易双方的隐私. 局部路由中,节点仅掌握自身所在通道的信息. 对此, R〇〇s 等人[1 5]提出了SpeedyMurmurs, 采用基于图嵌人的贪心路由算法[ 1 6 ]实现分布式环境下的节点间路径寻找.除路由算法外, Mal avolta 等人?针对支付通道网络的隐私性问题提出了协议Fulgor, 针对并发性问题提出了协议Rayo, 同时刻画了网络隐私性与并发性之间的权衡. 针对通道内金额分布随着链下支付进行而失衡的问题, Khalil 等人[1 8]提出了链下均衡协议, 允许网络中节点依据其偏好来均衡通道内金额. Mi l l er 等人[ 1 9 ]改变了跨通道支付的完成确认方式, 沿路各节点可通过问询全局合约以获取支付完成情况, 从而降低所需时间成本. 此外Malavol ta等人[ 2 °]还针对跨通道支付时存在的虫洞攻击, 提出葛钟養等:一种戈替霄翁发微多A罐下袁付#儀 13 51 期了'g名多跳锁的密码学原语,2. 2 双人通道网络我们以塞于脚本的闪电网络[ 51和基于合约的Spntes[ 1 9 ]为例介绍双人逋道网络中的支付过程,2. 2.1 通道内支付双人通道运行M期包含通道建立, 通道状态吏新和通遒关闭三个过程,在W电网络中, 两个节点通过预存金额彥一个共词控制的多签名地址来逢立链下支付通道. 节点在通道内通过RSMC( R.co软tabl*Sfqtt雜cf. Mrturit:yG〇ntjrast)实亂敦向聋付, 通道内状―的蠢if蠻■乘:自双方的认证, 同时作废之前的通道状态*缉效方想关 通通时, 提交共同认可W最终通道内籴额分配至链 当4方提交通道状态至链上以取_通道内金额时, RSMC的时间锁使得通道关用发起方延时取回其金额, 保证另一方能在延时时间内焚现可能存在的作恶行为并提交证据至链上, 启动惩罚机制没收作恶方的金额, 进而保证链下支付的安全性.准Sprites中., 两"赁處幢存金顧至臂镏會翁乘建立链下支付通道.通道内每藥支付带有当前通道轮数r, 随着支付的进行轮数逐一递増. 链上对于通: 道状态的判断基于所提. 交通道状态轮数的大小, 即将轮数更裔的通道状态视为通. 道最新状态. 相对于闪电阕繁, Sprite* 中考点仅嫌存储最爵通道拔态,降低了春储开销.2. 2.2 跨通道内支付将双人通道: 网络抽象为无向有衩图G=, E>;V为两络中节蟲集tECVXV为支#通遒集. 用(?⑷来盡苏节盘^与於之丨 可鈴通處^轉^紙^春承艇通儀《《: 1 脅:)_货点《 和S 所拥有翁 ◎蠢示节点《的相邻节点* 即与其建立支付通道的节点.网络路由箅法即为发生在节点《和货间的支付寻找一条路凝>=丨 技《U£ nu]5'(u, +i)GE,Bf?S 礼+1=?,hM路?P可实现6§儀太支付金顧^} . i; G姐商1 所嫌:?付款方Aiks,和收雜方Emma揆嵐1 魏人蘧: 績网洛路If示雲图有直接通道* 但是可通过路径九BAlice ,Bob—Ejntaa和路輕|?2:AligeiCsirl KD:好id十ElTi ma;:楚成: 支付? 通过路径#i和办可实规陳: 驗大变付金顏分别: 为mi n'!:6,7}= 6和mi n(: 10 13,5I为保证跨通道支付的安全性*闪电网络莱用HTTLCCHashedTTi meLockContfaet) 协议锻住支付金额,ft有当收款方在规定时间内提供满足条件的哈希廬像时, 支付才会生敢. 如在路径介上进行跨通道袁付时, Alice 翁B.ob之间, Bob准Emma之间均綠立龙付I_以收款方Emma生成的哈讀篇蠢截;尺作为重付条件. 支付_立 Bob屬_麗像值以取回支付金额, Bob以此相同原像值从Al iee处完成支付? 跨通道支付的安?全性通过哈希的抗JE像攻击铮性将以保怔. 而对于构建:在图灵完备的K块链平台( 如以太坊') 上的支付通道, 对以利用智能合约设置叟: 为灵活故支付条件?2. 3 基于图嵌入的贪心路由算法由于通. 道内束付在儒下迸行并仅需遍. 道内欢方的确认, 即俾难网绪结构与各5ff歲■存金额已卸的情况下, 金额在通道内的即时分配仅为通道双方所知 此寻我一条资金满足条件的路径不棊^斗简'单间题.基于图'嵌人的贪心路曲算法是将祠络结构图映射到特定的坐标空■间中, 基于节点的'坐标表示以及艇离计算公式,实规住意两节点间的路控寻找? 此路由方法适用于点与点之间连接受限的网络*Speedy-Murmurs将: 其用管欺人通道网络中的路由 >在支付成功率、路径. 长度、路由开销等性能方面均有相对优越的性能.节点坐标标记基于网络中的生成掛结构, 根节点赋坐梂值为空矩阵, 子节点的坐标赋值为父节磊鐵标与 节,隹标: 识的绪合_ 对于__匈和、.2, 长: 度:分别为| i'l| 和| i'2|, 相厕前壤隹,度: 为 ,心)、其间的距离计算如下:MXl"A:2)=I i'lI +I | —ZcplXtl<Xs)Cl)在.分布式环境下, 节点收到路由信息时将其转鸯至符合支付条件的、距离目标节点更近的相邻首点, 从而保证网络中任意两点间距离递减、资金充足的路径的聲找.2. 4 区块链平台苹文工作基于图灵完.备的K块链平台. 我们假定雇层区? 块链为可#第三方平合, 任黧节点发送至区抉链魔络的有鍊信息!>: 均If在厶时间内: 上键, 任何敌手不能阻碍节点对交易信息的发送与矿工 交:13? 计導机攀报: _1苹易信息的验证.同时; 敌手不能对节点获取区块链上俸息造成干扰.3 多人通道内支付一个多人通道的运行周期包括通通建立、 通道:状蠢更新与节点退_出:, 本文延_3*6】徽(^方泰中在通道内部对监臂节点的引入' 监菅节点通过处理通:瀵内:食付面翁取手?養, 费率与重付方式可*各方在通道建立时自行商定, 我们在此将其忽略以介靖逋道塞本框架. 为保怔逋道内各节点的资金安全,癀谡置作恶判决功能对监管节点的行为进行监督.多人通道运行机制如图2所示, 每个通道、 均对应于链上的—个智能合约, 通道建来、拃恶判决与首. 点退出均Sr节:点触发合约功能完獻, 通道状态更新Etr#贊点参链下完戚_链上智能合约多人通道? 多A通:遺摄:行轨猶W图2-猶虛■框标:薪难文猶GnciccW方業霍础上的改进部分. 主赛有两处/其一为逋道状态吏新过程?GnoccW中的状态更新过程描述与缺陷分析々款碁体玻进方案将在:第U节霉细描述>其二为通道关闭过蘇由乎Gnocchi中通道内任一嘗点可发起通道关苗请求, 降低了多人通遣的可持续应甩性, *此我们将其改进为节点退出过程 监管节京可退出通道并摟现通道内余额, 監管节凉: 退出时逋道将关闭, 此时霈由链上合钧对节点退出通遵后的状态进行更新与认证, 黑体细节将在潫3.3 节描述? 此外. 通道建立与作恶判洪的核心思想%原方案相同, 我们分别在第3.1 节与第3.3节做统一叙述.3.1 通道建立:邋道中的成員, 以集會£?素示., 协甯鲁|r在此逋遵内的预存金额_, 并确定通道的监管节点s. 为保证芷确履职, 监管节点需额外缴纳保证金c?, 并且:满足关系式*G>\C\y^DlN〇,N{ec其中,_D[JV; ]表示节点JV《 的预存金额.在监管节*被判决作恶时4G会被罚没并分发给通道内的剩佘节点. 因此. 监管节点作恶代价至少是其作恶收益的I C| 倍, 且其余各节点所收莸的初金一定不少于其在通道内由于监管节点作恶所带来的损失由此激励节点积极监督这些监管节点, 从而约朿监管节点的行为, 保护通遣内交綦的安全性?通道建立过程如功能1 所示, 监管节点将各节京联合生. 成的通道建立请求与各节点对此1求的签名发往链上合约,由矿工对此请求的有效性?进行iftE.功能1. 通道_立.输人: 通道建立请求 con/= (C, S, D, G))输出: 通道建立/null1. 若C中节点对建立请求的签名错误, 则拋弃此请求2. 若C中节点在链上账户的金额小于其在D中的预存金额, 则拋弃此请求3. 计算箱SH赢:餘嬷小猶Gm?=|C:|N{ecG<Gmin,则拋弃此请求4. 若监管节点S在链上账户的金额小于其在D中预存金额与保证金之和, 则拋弃此请求5. 从节点的链上账户中扣除相应的预存金额, 从监管节点的链上账户中扣除其预存金额与保证金6. 初始化链上认证的通道最新状态5?akbest 为起始状态wa%, 其中的通道最新轮次rbes t 为0; 初始化通道总金额CV=^]D [凡]n.ecn 舞翱#节: 点馨減; 建立至此,一个可用的多人通道建立瓮毕, 节点可在该通道内执行多次链下支付_3. 2 通道状态更新在此节中我们.介缗通逋状态更新过程, 我们假定通道内各节点间通过加密可认证信道通信, 节点发送消息时均附带签名, 且签名可^其他方验证?B.2.1Giidcchi 通: 道狀寒:吏: 新准ftncsshi 中, 翠r 轮逋道状态:奉示對sMtsr—( r.Dr:nPr}t葛钟養等:一种戈替霄翁发微多A罐下袁付#儀 13 71 期其中,取表示r 轮后各节点通道: 内余额. 八_为第r轮遽道内支付?負起始狀态磁I細=(〇, D, 0):起, 缚轮遛處犹寒實蒙由寬付触貴.K付款方,与收:歲食如发起一笔聋付金顧:食#的京付为例, 此笔其付被确认曲过義如虜3所本,付款方沢pay=(pr, pe,a)监管节点 收織押pay= (j>r, pe,a)j{Pr, 〇s)^—- 〇r-lWpay_z^f(pay,Dr)THENPr={(r,j pr,pe, a)}对巧签名, 得勿ELSE拒绝此笔支付—(Pr^s)>^pr){Pri O'pe)stater=(r,Dr,Pr)?pr, pe ,5)pay-Vrf(pay,Dr)pay_updat e (pay, Dr)1. IFDr\pr]>aTHEN1. Dr\pr]=Dr\pr]-a2.RETURN L 2. i?r[ pe]=Dr\pe\-\-a3.ELSERETURN0厲3GftoechijtSftBSKitW袁付被?會迸難道状态时帯燦乘自袁付双方与监管节点三方的签名,作为: 通道状态更新的证明, 以供萁条,愈駿t3-2.2Gno#.c. hi方案分析Ckicfictii方寒具有如下缺處s( 1) 每笔支付需经历监管节点与支付双方共6次变互, 且#次交互只为确定支付所处轮数< 通債开销与冗余大;(2:),通道状态依据通道内龙付串#JM新, 每轮霖替仅包鲁一翁亥付, 每議:禽付的确认轉萑:雜道_上一荖支付完成的条件下进行, 支付处連效率低, 限制了在高并发场蕈下的应用缺芝对网络时延与支付方恶I意延长支付确认情况的考量_ 在此种情况下逋道状态堇霸陷入停滞, 造成通道堵露.S,2.3 遞遨状态更霸: 方案歲进针对上述缺点, 我们改进了通道状态更新方案,具体为(1) 支付方面. 每笔亥付所处的轮数由支付双方依据所收到的最新通道轮数确E, 降低通信次数Slits( 2,通道状态更新方面改进为并行建新蓝管彻:在眷轮状鍾: 薪时3f射的时间窗, _此时间段内收到的支付视为此轮支付, 并依据每ft有效重付变更通道状态*在此轮缙東时打包通道状态、:曹效支付集与此时的时间戳 广播堇通道内节点;ft)考*在网络时延if高并发场景下,一笔变付未能轉到及时处理而导致支付轮数失效的積况,引入支付有效斯PW: 当前轮数为r 时, 亥付中包含的揞数?)处. 于[r,r+?y]難视为'有鱗:; 为抵御重■玫击, 在逋道状态中引人 记敏各节点玄付次数, 同时筹亀袁付螫隹含#■方的重献支付喪数— 各节点支付次数在h中初始化为〇.通道状态窠_負起始状态SRJW,二(0,D, 0,1。,乃:) 始, 过程如算法1 所示.算法1. 逋道状态更新.输人: 第r一1 轮通道状态Wa以-i输出: 第r轮通道状态5?a仏1.Dr— Dr -i,Ir—lr  ̄\^ Pr =0#初始化第r轮通道状态信息2.WHILE在0 时间段内3 .UPON收到支付夕a: y=(?>, fr, 扣, a, ^c, %, #)4.IFpay_vrf_2(pay^ Dr y Ir )THEN5.pay_update_2(pay^ DryIr ^Pr )6.ENDWHILE7.RETURNstater=(ry Dry Iry Pr y Tr )函数1 ?户a;y_t;r/_2( fa3;,Dr ,Jr) .1.IF(fa3;_w/(》a:y))A(?6[,,,+”]) 八iidx==Ir lpr'] +l')THEN2.RETURN13.ELSERETURN0函数2. 户<23;_^(^<3介_2(户<23;,1^,1^^^) .1.pay_update ( pay,,Jr )2.Ir \_pr]=lr ^pr]+13.Pr =Pr [j{ pay}通过以上政进, 多人通道降低了通道内通信开?销* 擦高了支付处理敫率, 可实现高并发场景下逋遒状态的快斑靈蕭.3,a4 通道状: 纖怔若两个通道状态处于I轮次却不相同, 我们称这两个状态是冲突的. 对于相邻的逋道状态swm与 , 若可"依据 中的言点佘额与 中包含的支付集得到坏 中,则称状态是可达的t收到监管节点广播的通道状态伽 通道内管邊塞于链Ji曼翁状5S_麵>^翁状_验t萁正确性>郞IftUE猶/e, 是'否与血播best 冲_;H时验证状态是否可达. 若节点只存有状态 ,r<Ci?1, 则可向靡臂节羞: 问询Z+1轮至'?1 轮的通?状态, 并验证每对相邻状态, 若验证通过, 则1 38 计 算机 学 报 2021年同样称其为可达的, 将其记作state/\>stater.为方便后文描述, 我们不再区分/与r 之间的大小关系, 以此符号表示任意两个状态间的可达关系. 若通道状态不可达, 节点将不可达的通道状态提交至链上作恶判决功能, 对监管节点进行惩罚.3. 3 通道监管节点作恶判决监管节点对通道内状态更新行为受到通道内其它节点的监督.当节点接收到来自监管节点的最新通道状态并发现其作恶行为时, 即提交相关状态信息至链上合约做判决, 判决过程如功能2 所示.功能2. 作恶判决.输人: 作恶判决请求(/rawt i,5rarer., 伽以)输出: 通道关闭/nul l1. IFmin{ /,r} 〇bestTHEN拋弃此请求2. IF,5加 ,5mkbest 之间存在冲突THEN3. RETURNfraud supervi sor()4. IF/与r 不相邻, 且状态中的时间戳与此功能调用的时间差不超过ATHEN5. 通知监管节点提交处于之间轮次的通道状态6. 开启A的时间窗, 若在此期间内未有完整状态提交:7. RETURNfraud supervi sor(.)8. IF\ (_stat er't>stat er )THEN//通道状态不可达9. RETURNfraud supervi sor()10.RETURNnull函数3.fraud_supervisor().1. DlN^=(CV^G)/(\C\l), N, eC\S//将通道内金额和保证金分配给除监管节点外的剩余节点2. D[S]=0//将监管节点金额置〇3. 通道关闭, 按照D退还各节点余额若节点提交的状态未处在相邻轮次, 即针对监管节点未能递增轮数r 来更新通道状态的情况, 此时链上开启d的时间窗, 在此期间内监管节点需提交中间轮次的通道状态至链上, 若未能完成提交则判断为监管节点作恶. 为防止节点恶意发送已验证过的、不相邻的通道状态至链上, 因此需验证通道状态中的时间戳与合约调用时间的时间差是否在d范围内, 即此通道状态是否是在最近生成的, 从而要求节点在发现监管节点作恶的情况后及时提交状态至链上. 时间差的范围设定为A对应于最坏情况下此状态通过节点退出功能在链上获得, 具体在下一节中介绍.3.4 通道内节点退出通道内节点可退出通道并提现通道内金额至链上账户, 此时由链上来更新节点退出后的最新通道状态. 监管节点退出时还将取回其在通道内的保证金, 此外通道将被关闭, 通道内金额返还至各节点.在金额提现之前, 退出节点需接受通道内其它节点的监督. 若被判决为作恶, 则其金额被没收并分配至通道内剩余节点.收到退出请求, 链上节点退出功能向通道内各节点发送此请求, 并开启时长为d的等待窗口收集通道内最新状态, 以此来判断退出节点是否作恶, 并在链上更新通道状态. 时间窗的时长保证了节点在收到请求后, 提交的状态 可在窗口关闭前上链. 此时节点若发现其中存在冲突或者不可达的通道状态, 则可将其提交至链上作恶检测合约, 节点退出功能设定d 的等待窗口等待作恶判决的运行结果. 在两个时间窗关闭后, 合约依据收集到的状态进行通道状态更新.对于监管节点而言, 离开时需提交通道最新状态至链上.因此若收集到最新通道状态处于更高轮次, 则可判定为作恶. 同时, 若收到非监管节点的退出请求, 监管节点需将目前最新的、 与退出请求不同的通道状态提交至链上, 并暂停目前对于通道状态的更新, 直至收到链上发送的最新状态, 从而避免产生与链上最新状态相冲突的状态进而被判断为作恶. 对于非监管节点而言, 离开时需提交包含其最新余额的通道状态至链上. 因此若此节点在最新通道状态与提交的通道状态中的余额不同, 则可判定为作恶. 验证过程如功能3 所示.功能3. 节点退出.输人: 节点退出请求(办和rr wre wr ar e。, 队)输出: 通道关闭/通道最新状态5mrebes t1.IF?<rb estTHEN拋弃此请求2. 将节点退出请求发送至通道内其它节点, 在此请求完成前拋弃其余节点的退出请求3. 开启 的时间窗, 将此段时间内收到的状态伽'加人列表States 中4. 开启A的时间窗, 等待可能运行的作恶判决的结果5. 将5to^ebest 赋值为Stores 中具有最筒轮次的状态, 并分解为{"best, Dbest,Jbe st, Pbest,7\e st}6.IF(Nd==S)A(rd <rh (i St )THEN//监管节点提交过期状态7.RETURNfraud supervisor( )8.IF(Nd^S)A(DrdlNd ^Dr^t[N,])THEN//非监管节点提交过期余额信息9.RETURNdepart ure node(0)葛钟慧等:一种支持高并发的多人链下支付方案 13 91 期10.IFNd==STHEN//监管节点诚实11 .按 中集合Dy退还节点余额, 退还保证金12.ELSERETURNdeparture node{\')//非监管节点诚实函数4.departure一nodeQi)?1. C=C\Nd//移除退出节点2. Db 执=st at e updat eib, D’b esl, Nd )//依据退出节点诚实与否更新通道状态3. ^"best’be st+1, 尸best , 了best了now4.hM^iLlN^. N. ec5. st atehe st (rbest,Z)best,Jbest, Pbest,7\e st)//生成通道状态6.向各节点发送最新通道状态5mr eb est函数5.state_update( b^D,Nd) .1. IF6==0THEN//退出节点作恶2. amount =d^\ /\C \3. D’[N! ]=V[N! ]+ am〇unt , N2 G C//没收其余额, 并分配至剩余节点4. ELSE!/[凡]=D[凡], 凡eC5. CV=CV V[Nd]6. 退还D[A^] 至节点7.RETURNDf非监管节点在退出前需要确保自己所有已签名的支付均已被包含在状态信息中或已失效, 避免被判定为作恶. 非监管节点退出后, 监管节点在收到的链上最新状态的基础上继续链下通道更新.4 跨多人通道支付跨多人通道支付应用于付款方与收款方在不同通道内的支付场景. 具体而言, 通过同时存在于不同通道的共同节点作为支付中转点来完成支付. 由此,链下网络中支付不再局限于通道内, 支付范围得以扩展.为保证支付金额在通道间安全转移, 本文定义了通道内条件支付与赎回支付; 为实现节点跨通道支付的路径寻找, 本文提出了基于多人通道网络的高效、灵活路由算法. 在支付路径确定后, 沿路相邻节点可顺序建立条件支付并逆序发起赎回支付.4.1多人通道内支付条件支付为支付金额被某种条件和规定时间限锁住的支付.只有当收款方在规定时间内满足所包含的条件时, 才能赎回被锁住的支付金额. 因此一个完整的支付过程包括条件支付与赎回支付.4.1.1 条件支付验证与更新条件支付的格式为conpay=irp,pr,pe, a, idx, h, Bli, (ypr , (ype) ,其中, 哈希值& 作为支付条件, 底层区块链的区块高度 作为时间限, 表示收款方需在此时限之前赎回金额.监管节点对收到的条件支付进行验证, 包括对支付的有效性验证, 以及对支付有效时限的验证, 如函数6 所示, 其中 表示当前的区块链高度.函数6.conpay_vrficonpay? Dr?Jr).1.IF(,pay vrf2(x〇npay) ) !\ (BHl>BHc )THEN2.RETURN13.ELSERETURN0由于条件支付的赎回通常不在单轮内完成, 因此在通道状态 中增加G字段, 记录到第r 轮为止有效的、未被赎回的条件支付, 用以验证后续赎回支付. 针对有效条件支付的通道状态更新如函数7所示.函数7.conpay_update(xcmpay, Dr ,Ir , Pr , Cr)?1.Dr\^pr]=Dr\^pr] a2.J心r]=Jr[,]+l3.Pr=Pr [J{ conpay )4.Cr=Cr \ J{conpay}在每轮通道状态更新结束时, 监管节点需验证C中各条件支付的有效性, 如函数8 所示.函数8.conpay_return( Cr).1. FOReachconpayi nCr2. IFBH<BHCTHEN//条件支付失效3.[/? r]=[/? r]+ a//返还支付金额4. Cr=Cr\{conpay) //移除失效支付5. ENDFOR2 赎回支付验证与更新赎回支付的格式为redemp—(rp?conpay?img?idx^ ape)?其中, conpay为此赎回支付所针对的条件支付,为支付条件的哈希原像.监管节点验证收到的赎回支付, 包括此笔支付是否有效, 以及其针对的条件支付是否仍然有效且未被赎回, 如函数9 所示, 其中/mi表示抗前像攻击的哈希函数. 若赎回支付有效, 则支付金额将转移至收款方, 通道状态更新如函数10 所示.函数9.redemp_vrf(redemp, Dr山, Pr, Cr)?1.IF(rp^Aiconpay^Cr )A(hash(i mg)==h)A(i dx==Ir [pe]\ l)THEN2.RETURN13.ELSERETURN0140 计 算机 学 报 2021年函数10. redemp_update(redemp?Dr?Ir?Pr , Cr).1. Dr[pe]=Dr[pe]+ a//收款方赎回金额2. Ir'ipe]=Ir'ipe]+13. Pr=Pr [J{ redemp)4. Cr=Cr\{conpay)//移除完成的条件支付4.1.3 通道内节点退出由于条件支付的存在, 为保护收款方利益免因节点退出而受损, 链上节点退出功能需做如下检测:a) 当监管节点离开时, 在验证其诚实性的基础上, 若其提交的通道状态信息包含有效的、 尚未赎回的条件支付, 即C乒0, 退出请求被驳回;(2) 当非监管节点离开时, 在验证其诚实性的基础上, 若其作为收款方存在于有效的、未赎回的条件支付, 且同时提交相应的赎回支付并验证通过, 则将此条件支付金额退回至此节点账户; 若其作为收款方存在, 且未提交相应的赎回支付, 或者其作为付款方存在, 则将金额转移至此条件支付的另一方. 若节点被判决为作恶, 则转移此金额至条件支付的另一方. 根据以上情形, 合约生成对应的最新通道状态, 并发送至各节点.由于赎回支付需要得到监管节点的确认, 若经过多次发送尝试赎回支付仍未被包含在通道状态中, 节点可选择退出并提交赎回支付, 从而免遭因监管节点失联或恶意操作而导致利益受损.4. 2 多人通道网络模型多人通道网络由多人通道构成. 跨通道支付的实现依赖于支付双方间支付路径的寻找. 为最小化节点在路由时所需的资源, 我们采用目前局部路由算法中基于图嵌人的方式, 将多人通道映射到坐标空间中, 再对通道中的节点进行坐标赋值, 即将节点坐标的建立分为两个阶段, 通道坐标建立与节点坐标建立?4.2.1 通道坐标建立多人通道网络图嵌入.当两个多人通道具有共同节点时, 通道内的其它节点可以通过此共同节点作为中转点完成支付. 此时, 两个通道是连通的, 称为相邻通道.将多人通道网络抽象为无向图G=( V, E) , 其中V代表多人通道集, ECVXV代表相邻通道间的边集, 则n_pc(> q)={ 批2 1批z eV%( >ci , >c2 )e£}为通道和:: 的相邻通道集. 与相邻通道间的最大可转移金额即为通道共同节点在此通道内的金额之和.分布式环境下通道坐标建立.由于多人通道在建立阶段上链, 各通道内的成员列表及预存的初始金额在网络内是公开的. 作为通道监管节点, 需确定其相邻通道集.在分布式环境下的通道坐标建立过程中, 选取某个公认的通道作为根通道, 并设定其坐标为空矩阵. 从根通道开始, 每个通道的监管节点生成通道坐标, 并将其广播至相邻通道的监管节点. 收到相邻通道的通道坐标信息, 监管节点将其存储, 并从中选取坐标长度最短的通道作为父通道, 通过结合父通道坐标与自身独特标识生成通道坐标.当因节点退出而导致与父通道不再连通, 或者通道间可转移金额匮乏时, 子通道可选择存储的其它相邻通道作为父通道并重新生成通道坐标, 从而保证在动态网络环境下的路由准确性.4.2.2 节点坐标建立通道坐标确立后, 监管节点将其广播至通道内,各节点通过结合通道坐标与自身在通道内的独特标识生成节点坐标.网络中节点坐标具有以下性质:(1) 节点m处于/ 个通道内, 则具有/ 个坐标,用C(M)={ MC! ,…, MC, } 表亦其坐标集, 用JVJV( M) 表示在此/ 个通道内的剩余节点集, 称为M的相邻节点. 若与相邻节点W可分别通过坐标t与?^进行直接支付, 即两坐标在同一个通道中, 则称队为与TO或W的相邻坐标;( 2) 处于同一个通道内的坐标, 其长度与前缀相同, 且前缀即为通道坐标;(3) 坐标的长度反映其与根通道的距离, 即对于坐标:E, 可通过一条长为| | 1 的路径到达根通道内节点.4. 3多人通道网络路由在分布式环境下, 节点需将路由信息发送到距离目标地址更近的相邻节点, 而与节点的距离判断基于坐标距离计算.因此, 网络中每个节点需维持一个路由表, 表中记录此节点的相邻节点与它们的坐标集. 同时, 节点与坐标之间的距离计算基于坐标间的距离计算. 在此基础上, 路由算法实现了在分布式环境下网络节点间一条资金充足的连通路径寻找. 与双人通道网络中对路由算法的研究[1 4]相同, 我们忽略跨通道支付过程中, 中间节点对支付费用的收取.4.3. 1路由表各节点在确定坐标后将其坐标集广播至相邻节点, 同时储存收到的节点坐标信息至路由表中, 并依葛钟養等:一种戈替霄翁发微多A罐下袁付#儀 m 1 期据网络结构动态变化更新苗标以及路斑表.图4为多人通道网絡与其中节点A维持的路由表示意圈? 在左图所示的网'络结构与各通道节点坐标标识下, 节点a处于通道加:=□与的=a}中, 相邻节. 点有 故在路由表中记录每个相邻节点驗全鄯: 幽: 标>图4多人通遒厨翁_节点= 猶極示意滅5*表.为圏聲承意图,:节属A的路由_4, 3. , 2 节点与坐标距离计算为寻找一条离目标挫标距离递减的路径, 收到路由倩息的节点篇计算相邻节点与自标坐标之间的蹈离对于节'藏《'与坐顧集C(:?<) q如£:,? ? ?,>ar, U定义其与坐标¥问的距离为d (u, x)=mi nd( uc{ , x)( 2)uc■ GCC m)其中2为坐标间距离计算公式a u节虡和坐标间的距离定义为节点各坐标与坐标距离的最小值?4/3. 3 路由算法定义路由信, 息的格式为(付款地址,目标地址,支付金额) . 在分布式网络下, 对于节点《,愛起一笔变付或是攸到路由偾息* 霧进行如下四个阶段的路由,_fp{嫁巧(,?;<}为眞坐标_同时初始化路由失败节. 点集合?FF为空集.阶段1. 发起支付7选择收款坐标.ci) 若节点联为戈付付獒UJ辱收隸言协商_付金_a与收_地址rfs#_? 进人阶段2(2;3 着节点&从f点z 处收到路由鲁息<*r,<?>LJ验证J遍: 否为相邻节点,: 同时隹|示、的金额是否大于支付金额以ftD者骖怔通过, 则从与&的相邻坐标集中收款坐标 :①若如6£?(: ?:) , 即《海收款方, 则: 收: 款&fgtuti②鸯ft本暴收款方, 狐迸人f介庚々a)若验怔失败,同复节点£路由失败?阶段2. 选择下一跳路由节. 点..(1.) 定义 为距目梅坐标更近的相邻节点集.,( 2)有敏的1?—跳节点集合.为_FW=_FN\_Fi^Cf:) 若FW为空集, 当《齿付款方, 则路由失畋, 否则回复节点^路由失败;否则, 从中随机选取一节点作为下一跳路_,歲m: 迸: 人■庚3-阶段3. 逸择付款坐标?( 1) 从与a1_相雜坐标貪中筛逸出金额太于设的坐标蠢》 定义为FC.;(2) 若FC为空, 则_FF=_FFU:W, 返回阶段2r( 3〉 否则, 从FC 随机选取坐标M, 作为付款坐标, 进人t段4阶段4. 传递路由倩息?〇j_下一食 象暴路由費息£w:J?, 由t,s>f_从坐雜咚处预留蠢额&I( 幻若协在限定时间内围复路由信息,当《为付款方,路由成功, 否则風复《收款棄标M;CJ:) 若to未在限定时间内两复, 或者回复路由失败, 则恢复坐标《, 处的预留金额, FF=RFu>丨, 返回阶段2.1|付款方收到从下一跳节点返回的路S倩息时, 支:付路隹确立.4. 4 跨通道支付建立与完成路径确定后, 从跨通道支付的付款方开始, 路栓上'每个节点通过选定的付款坐标与下'一跳节点返回的收攀坐标f 以收款方S成的哈■翁谭作为'条件康愈寞付?条件支付建立后? 从收款方以哈希庳像完成赎回支付开始, 各节:点以此哈. 希原像顺. 序完成支付.至此,一笔跨通道支付完成.5 多人通道网络分析5. 1多人通道网络可行性分析多入通遣网络的可行性主鼕集中于通道内监管点的引人, 我们从其引人的必要往'与可行性两. 方面迸行分析.S,1.1 监管节点引人的必要性礙多人通道内等: 宴现通道状态一致性快速、准_达成, 率质上是一个共识问题■? 主流解决方案t2 1]有 典眞fT机制如PaxQS 壽ft和PBFT( PracticalByzantineFaul tTbteraiiee) 协议, 区缺链袭识机制如P0WCPf6(jf of ̄Work:) 和P〇S(Prcief bf-: Stake).然而在多人链下通道场景下, Pgos 算法不能容忍142 计 算机 学 报 2021年恶意节点, PBFT协议不支持节点动态退出且通信复杂度为〇( /2); 区块链共识机制则与建立链下通道的初衷相悖. 因此, 我们延续监管节点在多人通道中的引人, 由其做每轮通道状态更新的提议者, 以0(/) 的通信复杂度达成了多人通道内状态共识.5. 1. 2 监管节点引人的可行性对于通道内监管节点, 其通过处理通道内支付而收取手续费获利. 对应地, 其需要具有一定的资源与能力, 包括抵押在通道内一定数额的保证金, 处理通道内支付并存储每轮通道状态, 获取链上信息并更新通道状态. 此外监管节点无须受各节点信任, 因此选择方法较为灵活, 可由通道内各节点协商选定.对于通道内非监管节点, 监管节点的引人在保证通道安全性的基础上, 减轻了其计算负担与存储负担. 计算方面, 在现有双人链下通道中, 通道状态的更新需要双方共同完成, 并且为防止通道内另一方提交过期通道状态至链上造成自身利益受损, 节点需保持在线并检查链上信息. 在多人通道中, 通道状态更新由监管节点完成, 对通道状态的验证以及对链上通道信息的检测由通道内多参与方共同完成, 缓解了对于单个节点计算资源的要求, 同时即使在部分节点掉线的情况下依旧可以保证通道的正常运转. 存储方面, 在双人通道网络中, 节点需存储相邻节点的坐标以传递路由信息. 在多人通道网络中,非监管节点可仅保存自身坐标, 并在收到路由信息时向监管节点问询, 因此此方案对计算与存储资源受限的节点更为友好.5. 2 多人通道网络安全性分析我们定义网络中的恶意节点具有概率多项式时间计算能力, 即不能伪造消息签名与攻破哈希函数;并且可以加人任意通道, 控制网络中部分节点或与其余节点合谋.基于以上敌手模型, 多人通道网络安全性定义为敌手不能使网络中任一诚实节点利益受损. 下面我们从多人通道内支付与跨通道支付方面分析多人通道网络的安全性.(1) 在多人通道内, 敌手可通过发动两种攻击获利: 发起无效支付/生成不可达通道状态(敌手作为监管节点时) 和退出通道时提交过期或错误通道状态.此两项攻击在生效前均需接受通道内剩余节点监督与链上判决,一方面此攻击可使其余节点利益受损,另一方面作恶惩罚机制也为其监督提供了激励.此外, 敌手作为监管节点时可恶意拒绝对某笔有效支付的确认, 此时节点可选择退出通道并取回在通道内的金额, 敌手不能对其造成经济损失.(2) 在跨通道支付时, 敌手可通过恶意拒绝确认赎回支付却从中获取支付条件而获利, 此时节点可提交赎回支付至链上完成支付.综上所述, 惩罚机制与链上判决的存在与对自身利益的维护促使各节点诚实行事, 并监督其它节点的行为, 从而保证多人通道的安全性与正常运转.6 实验结果与分析基于安全的多人通道链下支付, 我们对多人通道网络的路由性能进行了实验验证, 以此衡量跨通道支付的效率. 将结果与双人通道网络进行对比, 以分析多人通道网络的实际可应用性.6. 1 实验设计为与双人通道网络形成对比, 实验采用相同的网络结构与支付数据集[1 5]. 首先我们将双人通道网络映射为多人通道网络, 随后搭建相同的实验环境,并设定相应测试指标.6.1.1 通道划分与网络建立在双人通道网络结构CNot1 6[ 1 544基础上, 为符合多人间高频支付的应用场景, 与保持双人通道网络中各节点间连接关系, 我们将可通过一跳到达的节点视为在同一个多人通道中, 以此将双人通道网络中的节点映射至多人通道网络中.对CNot1 6 中包含的67149 个节点按照连通度进行统计排序, 将度大于等于^ 的每个节点, 与其相邻节点划分至一个通道内, 并将此节点作为通道的监管节点.依据具有相应度的节点所占比例, 参数d取值为5/6/29 , 对应生成2068/1232/99 个通道. 对于通道划分后网络中存在的孤立节点, 将其划分至距离最近的通道.为保证多人通道网络的连通性, 对于通道划分后网络中存在的一个孤立通道, 设定其监管节点同时存在于离其最近的多人通道中. 为维持各节点在映射前后金额不变, 我们将节点在原网络中的金额平均分配至所处的各多人通道中.最终形成的多人通道网络结构如图5 所示. 其中圆圈代表通道, 圆圈的大小与通道中所包含节点个数的平方根成正比, 圆圈的颜色深浅代表通道的度的大小. 从图中可以看出, 通道之间关于所含节点数量的对比明显, 少数通道包含了网络中的大部分节点, 并且具有高连通度.网络设置 成功率 路径长度/跳 路由开销/个SilentWhispersSpeedyMurmursd=5d=629906875877匕1. 3 实验测试指标我们通过支付成功率、 路径长度和路由开誠化多人通道网络路由性能. 其中, 支付成功率定义为成功完成的支付数蠹与总支付数鸯的比?值, 路径长度定义齿支付平均在每棵树上所经历的节点跳数;路由开销. 定义为支付完成所需前路由信息个数.此外我们测量网络'稳、 定开销. 双人通道网络实验中将网絡稳定开销设定为因网络内支付而导敦的各节点状态变花,进商导致的生成树结构变化, 并以变动时所蕾波養的坐标数目來衡《? 由宁多人逋道网络中各通道间连通糜貪,因某藥支付、或某个节蟲离开而导致通道不连通的概. 率很小. 故我们定义多人通道网络的稳窣开销为阚络建立时的坐标广播数量, 也称网络初始化开销.6. 2 实验结果与分析6.2.1 静态实验结果分析与比较如慮.1 虜示, 多人逋道:网: 络的支付成功率敎焦在88%左右, 并且随食 的增大而蹭大_ J増大代表闱络内通道敷减少, 一方面', 节点平均分配在各通道内的_增加, 在跨通道亥付路由时可椹供的余额增大s 提貪駱由成功率.、另? 一:#W, 通遨数的减少使得同时.#存宁多个通道内的节点的个数减少, 即潜在的中转节. 点数减少, 从而降低了路由成功拿. 从_舉来義>两种斑化对'成功率拥p响相似且業一种变化的彰响效果略大.表1 静态实验结果在双人通道网络中,前L个连通度高的节点被选为樣生威i棵树, 支付余额被随机谢分至L棵树1:s=布每棵树上寻找路径以完成支付. 此时, 支付金额的隐私性得以提升, 即使敌手获取了一笔玄付在某条或1 某几条路径上的支付金额, 仍然无法确定此笔支付的总金额? 类似地, 在多人, 通道网络中,我们按顏通道连通虔逸取前L个通道作为根生成L棵树.6. 1. 2 实验环境搭建类比于双人通道网结, 我们假定各节点均为诚实节点, 忽略支付费用以及支付过程的密码学实现,并将实验划分为静态实验与动态实验.静态实验. 静态实验即在每笔支付完成后恢复网络至麼始状态, 窗而每笔. 支付的路由环境相同, 实现不茼路由方法间的可比性, 具体为( 1) 选取L=设置一笔支付时尝试次数?1細》芦=2:,着_霉一次路由fl5j■兴败,则_:对=2000笔支付后重试:(2) 傳敉运行■原实验中箱同的50000 笔: 寞付, 运行20次并将结果取平均, 结皋记录在: 表1 中.动态实验. 动态实验即在每笔支付完成后不再恢复网络状态? 相比静态实验吏能反应出网络在实际环壌中的可座甩牲.由于欢人通道网.中的动滋实验雛及节点动3i加人网络的过程, 不适甩于多人通道网络,因此我们在静态实验设定的基础上迸行动:态铡试. 此外.依据双人逋道网络中反映出的随着L的增加,. 支付隐私性提升而成功率下降的情况, 考虑、到在现实链下支付的K用场景.申节点对于成功率的更:强需求, 我们增加对L=1聚定下的网络?性能的测试? 为便于比较★ 不同设定下的动态实验络果均记录在表2中, 便宁比较.I 撰 葛辨驚等:一种熏雜寬并離?多A罐下袁付方_ 143w■■mW(a)d=51800600400J200%r600500400300200100图5(b)d=6以d为参数的多人通道网络结构图(c ) d=29180706050401302010人道络人道络双通网多通网144 计 算机 学 报 2021年多人通道网络路径长度稳定在1.9 跳左右, 网络结构对其影响较小, 原因在于网络中高连通度通道的存在使得任意两个节点所在的通道总是可以通过此类通道连通. 路由开销稳定在13 左右, 即每棵树上路由开销4.3 左右, 约为支付路径的两倍, 即寻路总是可以一次完成, 无需多次尝试.与双人通道网络相比, 多人通道网络的成功率高于Si l entWhi spers, 但是低于采用相同路由算法的SpeedyMurmurs 方案的9〇.6%的支付成功率?究其原因, 在双人通道网络映射至多人通道网络过程中, 监管节点的各相邻节点间被添加了连接关系,除监管节点外剩余节点间的部分相连关系被舍弃.添加连接关系的节点间原本即可通过监管节点相连, 故对支付成功率的影响较小. 而舍弃的连接关系导致在原网络中连通的节点在映射后的网络中在L=1 时, 各网络性能相对于L=3 时均有所提升, 路由开销均下降至三分之一. SpeedyMurmurs的支付成功率提升至94%, 相对提升了23 %, 路径长度略有下降; 多人通道网络的成功率提升至95%, 相对提升了7%. 相比之下, 网络设置对SpeedyMurmurs 的影响更大, 即多人通道网络的性能更加稳定.6.2.3 网络稳定开销在网络稳定开销方面, Si l entWhi spers 采用周期性更新方式, 即每邙〇4=1〇〇〇 笔交易后更新网络结构, 此时开销为598722.SpeedyMurmurs 采用按需更新方式, 当因支付导致节点间不连通时子节点重新选择父节点, 此时的网络开销平均到每个周期中为300 , 但是在网络变动剧烈时, 网络稳定开销达109.不再连通, 从而导致支付成功率的下降. 故成功率的下降是网络映射所致, 在实际应用场景下会有相应的提升.在支付路径跳数方面, 多人通道网络的性能近似于SpeedyMurmurs, 并优于Si l entWhi spers? 路由开销方面, 多人通道网络显著优于Si l entWhi spers,多人通道网络在通道建立时需广播的坐标数量约为6.4X 108. 理论上, 假设网络中共JV个节点, m个通道, 第z 个通道中节点数为JV, , 则需广播的坐标数量为YJNt( Ntl)=YJN2t N相对同样路由算法的SpeedyMurmurs, 路由开销降低了约28%, 原因为多人通道网络中路由一次性完成的概率高, 进而路由开销降低.6.2.2 动态实验结果分析与比较动态实验结果如表2 所示. L=3 时, 相对于静态实验结果, 多人通道网络在成功率上略有提升, 在路径长度和路由开销上结果近似. 而双人通道网络在成功率上具有较大下降, SpeedyMurmurs 下降至72%, 相对于多人通道网络降低了18%, 路由开销略有降低但仍高于多人通道网络.因此多人通道网络在动态环境下的性能更优, 且面对网络环境变化性能更加稳定.表2 动态实验结果网络设置 成功率 路径长度/跳 路由开销/个Silent WhispersSpeedyMurmursL=3d=5d=Sd=29881883Silent WhispersSpeedyMurmursL=1d=5d=Sd=29945946947s_ t.=i 1可得网络建立时的通信复杂度为0( N2) , 与实验结果相符. 在实际应用中, 网络稳定开销主要来源于新通道的加人. 由于通道间的相连关系主要基于连通度高的节点, 因此对于新加人的低连通度的通道, 其所需开销非常小. 若新加人的通道为高连通度通道,此时需对网络中的树结构有较大改变, 但此种情况发生的概率较小.7 总结与展望本文提出了一种支持高并发的多人链下支付方案. 首先, 在多人通道内部提高了支付处理效率, 有效解决了实际应用中对于高并发链下支付处理的需求. 其次, 实现了网络内跨通道支付与节点间支付路径的寻找, 扩展了链下支付的范围. 最后, 分析了多人通道网络的可行性与安全性, 验证了网络路由性能. 实验结果显示, 多人通道网络可实现88%的支付成功率, 在静态环境下相对于多人通道网络降低了约28 %的路由开销, 同时面对网络环境与设置变化路由性能更加稳定, 满足了实际应用场景中对于葛钟慧等:一种支持高并发的多人链下支付方案 1451 期多人链下支付的需求.在隐私保护方面, 跨通道支付的隐私保护特性类似于SpeedyMurmurs, 但尚缺乏对单个通道内节点的隐私保护. 由于支付信息与各节点的余额信息在通道内公开, 尽管在各频繁且相互交易的节点间存在一定的信任度, 仍然不能免去隐私泄漏的风险.因此如何实现通道内的隐私保护是下一步研究中需要重点考虑的问题.参 考 文 献[1]NakamotoS. Bit coin: Apeer topeerelect roniccashsyst em.WhitePaper,2008[2]WoodG. Et hereum: Asecuredecentralisedgeneralisedt ransact ionledger. EthereumProjectYel lowPaper?2014,151(2014): 1 32[3]CromanK, DeckerC, EyalI ,etal. Onscalingdecent ralizedblockchains//Proceedingsof t heInternat ionalConferenceonFinancialCryptographyandDataSecurity. Berlin? Germany?2016: 106 125[4]PanChen, LiuZhi Qiang?LiuZhen, etal. Researchonscalabili tyofblockchaintechnology: Problemsandmethods.JournalofComputerResearchandDevelopment ,2018 , 55(10) :2099 2110 ( inChinese)( 潘晨, 刘志强, 刘振等.区块链可扩展性研究: 问题与方法. 计算机研究与发展, 2018 ,55 ( 10): 2099 2110)[5]PoonJ , DryjaT. Thebit coinlight ningnet work: Scalableoff chaini nst antpayments. Whit ePaper?2016[6]EyalI , GencerAE,SirerEG, et al. Bit coinNG:Ascalableblockchainprotocol//Proceedingsofthe1 3thUSENIXSymposiumonNetworkedSystemsDesignandI mplementation( NSDF16) . Sant aClara,USA,201 6: 45 59[7]LuuL, NarayananV, ZhengC, etal. Asecureshardi ngprotocolforopenblockchains//Proceedingsof the2016ACMSIGSACConferenceonComput erandCommuni cationsSecurity. Vienna, Aust ria,201 6; 173 0[8]DeckerC, Wat tenhoferR. Afastandscalablepaymentnetworkwit hbi tcoinduplexmicropayment channels//ProceedingsoftheSympo siumonSel f St abilizi ngSyst ems.Edmonton, Canada , 2015: 3 18[9]PanC, TangS, GeZ,etal. Gnocchi: Multiplexedpaymentchannelsforcryptocurrencies//ProceedingsoftheNetworkandSystemSecuri ty?1 3t hInternat ionalConference. Sapporo,Japan,2019; 488 503[10] GreenM, Mi ersI. Bolt: Anonymouspayment channelsfordecent ralizedcurrencies//Proceedingsofthe2017ACMSIGSACConferenceonComput erandCommuni cat ionsSecurity. Dall as,USA, 2017: 473 489[11]ZhangY, LongY, LiuZ,etal . Z channel : Scalableandef fici entschemeinzerocash. Comput ers&-Security,2019,86; 112 131[12]Priho dkoP?ZhigulinS?SahnoM?et al. Flare:Anapproachtorout inginlight ningnetwork. Whit ePaper?2016[13]Malavolt aG,MorenoSanchezP,Kat eA,et al. SilentWhispers:Enforcingsecurityandprivacyindecent ralizedcredit networks//Proceedingsof t heNet workandDistribut edSystemSecuri tySymposium. SanDiego , USA, 20 17: 59 73[14]TsuchiyaPF. Thelandmarkhierarchy: Anewhierarchyforro uti ngi nverylargenetworks//Proceedingsoft heACMSIGCOMMComput erCommunicat ionRevi ew. St anford,USA, 1988 ,18(4) : 35 42[15]RoosS, Moreno SanchezP, KateA,et al. Set tlingpaymentsfast andprivat e: Efficientdecent ralizedrout ingforpat h basedt ransactions//Proceedingsoft heNetworkandDist ributedSyst emSecuritySymposium. SanDiego , USA,20 18; 991 100 5[16]RoosS, BeckM, StrufeT. Anonymousaddressesforef fici ent andresili ent rout inginF2Foverlays//ProceedingsoftheIEEEINFOCOM2016the35thAnnualIEEEInt ernationalConferenceonComputerCommuni cations. SanFrancisco?USA,2016; 1 9[17]MalavoltaG?Moreno SanchezP?Kat eA,et al. Concurrencyandprivacywithpayment channelnet works//Proceedi ngsofthe2017ACMSIGSACConferenceonComput erandCommunicat ionsSecurity. Dallas, USA,2017: 455 471[18]Khali lR, GervaisA. Revive: Rebalancingof f blockchainpaymentnet works//Proceedi ngsof the2017ACMSIGSACConferenceonComput erandCommunicationsSecurity.Dal las,USA,2017: 439453[19]MillerA, BentovI, BakshiS, etal. Sprit esandstat echannels: Paymentnet workst hatgofastert hanlightning//St . Kit ts, Neviseds. InternationalConferenceonFinanci alCryptographyandDat aSecurity. Cham,USA: Spri nger,2019; 508 5 26[20]Mal avolt aG?Moreno SanchezP,SchneidewindC, et al.Anonymousmult ihopl ocksforblockchainscalabilityandinteroperability/ /Proceedingsofthe26thAnnualNet workandDist ributedSyst emSecuritySymposium. SanDiego ,USA, 2019 ; 1186 1200[21]GaoZhengFeng? ZhengJi Lai , TangShu Yang? et al.St at e of the artsurveyof consensusmechanismsonDAGbaseddist ribut edledger. JournalofSoft ware,2 02 0, 31(4) :1124 1142( inChinese)(髙政风, 郑继来, 汤舒扬等. 基于DAG的分布式账本共识机制研究. 软件学报, 2020 ,31( 4): 1124 1142)146 计 算机 学 报 2021年GEZhong-Hui,Ph.D.candidate.Herresearchi nterestisblockchai n.MZHANGYi,M.S.candi date.Hisresearchinterestisblockchain.LONGYu, Ph.D., associateprofessor.Herresearchinterestsincl udeblockchain,informationsecurityandcryptography.LIUZhen, Ph.D. ,associateprofessor.Hisresearchinterestsincludeappliedcryptography,blockchainsecurityandprivacyprotection.LIUZhi-Qiang,Ph.D.,associateprofessor.Hi sre?searchinterestsincludeblockchain,informationsecurityandcryptography.GUDa-Wu,Ph.D.,professor.Hisresearchinterestsincl udecryptographyandcomputersecurity.BackgroundBlockchai nhaswitnessedrapi ddevelopmentinrecentyearssincethereleaseofBitcoin.TheemergingofEthereumbroadenstheappl icationofblockchain,basedonwhichsmartcontractscanaccompl ishacompl exlogic.Neverthel ess,thethroughputofBitcoinis7TPSandEthereumis15TPS,whichisfarfromreal-worldapplications.SolutionssuchasPaymentChannel Networks( PCNs) , shardingandBitcoin-NGhavebeenproposed,amongwhichPCNsmovetheon-chainpaymentsintooff-chainchannel sandsupportcross-channelpaymentsinthenetwork.SincePCNsdon’tinvolvepropertiesoftheunderlyingblockchainandregarditasanarbitrationpl atform,i tisofhighercompatibil ity.VariousresearcheshavebeendeployedinPCNs.Intermsofonesinglepaymentchannel , Greenetal .proposedBolttoconstructprivacy-preservingpaymentchannels.Zhangetal.constructedpaymentchannelsinzerocash.Asforroutingalgorithmsinpaymentchannelnetworks,Prihodkoetal.proposedFlareinLightningNetwork, whichachievesfastpathfindingbasedonthestorageofpathstoneighborandbeaconnodes.Mal avol taetal.presentedSil entWhispers,whichutilizesthelandmarkingroutingandsecuremulti-partycomputationprotocolinthedistributednetworktoachi evetheprivacy-preservingoff-chai npayments.Roosetal.proposedSpeedyMurmursonbasisofthegreedyembedding-basedroutingalgorithmandcomparedperformancesofdifferentroutingalgorithmsinthedistributednetwork.Moreover,Malavol taetal.studiedtheprivacyandconcurrencyissues,andcharacterizedtheirtradeoff.Khaliletal.presentedthesolutionfornodestorebalancetheiramountsinchannelswhenitisdepleted.Mil l eretal .proposedSpriteswhichutil izesaglobalcontracttoreducethecol lateralcostofamul ti-pathpayment.Mal avol taetal.constructedanonymousmulti-hoplocks(AMHLs)facingthewormhole attackinPCNs.However,al ltheseworksarebasedontwo-partyPCNs, whereanoff-chainpaymentwithmultipl epayersorpayeescannotbeaccomplishedviaasingl echannelorpath.Besides, formultipleuserswhomakepaymentsmutual lyandfrequently,establ ishingchannel sbetweeneachpairormakingpaymentsthroughintermediariesi scomplexandcostly.Panetal.extendedthepaymentchannelfromtwo-partyintomulti-party.Nevertheless,itisofinefficientpaymentsprocessingandpaymentsarel imitedtosingl echannel s ,whi chisfarfromreal-worldappl ications.Ourworkinthispaperenrichesresearchesonmulti-partyoff-chainpayments.Firstly,weimprovedtheefficiencyofin-channelpaymentprocessingandachievedsupportforhighconcurrentoff-chainpayments.Secondly, wei mpl ementedcross-channelpaymentsinthemulti-partyoff-chainnetwork.Final ly,weprovedthefeasibil ityandsecurityofthemulti?partyoff-chainnetwork.Theperformanceoftheroutingalgorithmunderreal-worlddatashowsthatitachievesacomparablygoodperformancetoPCNsinstaticscenariosandismorestableindynamicscenarios.Itisindi catedthatourworkisdeployabl einpracticalapplicati ons.ThisworkispartiallysponsoredbytheNationalNaturalScienceFoundationofChina(Nos.6 16723 47,61 6723 39,61 872142,6 1932014,61 57231 8) ,the“13thFive-Year’’National CryptographyDevelopmentFund(No.MMJJ2017011 1),theShanghaiScienceandTechnologyInnovationFund(Nos.19 51 1101403 ,195 11 103900) ,andtheMinhangTechnologyInnovationProgramforSMEs(No.2018MH110).

[返回]
上一篇:基于身份的可验证密钥的公钥内积函数加密算法
下一篇:一种基于融合重构的子空间学习的零样本图像分类方法