張 謙 曹 晟,2 張小松,2
1(電子科技大學(xué)計算機科學(xué)與工程學(xué)院 成都 611731) 2(電子科技大學(xué)(深圳)高等研究院 廣東深圳 518110)
自比特幣誕生以來,區(qū)塊鏈技術(shù)憑借其新穎的數(shù)據(jù)結(jié)構(gòu)及去中心化、透明度和可審計性等重要特性,逐漸在金融、供應(yīng)鏈管理、醫(yī)療保健和能源電力等應(yīng)用領(lǐng)域顯示出重要潛力[1].
由于比特幣、以太坊等公鏈平臺為保障交易的安全性,嚴(yán)格限制鏈上出塊速度,導(dǎo)致其交易吞吐量低[2].其現(xiàn)有應(yīng)用大都局限在同一區(qū)塊鏈網(wǎng)絡(luò)覆蓋下的存證、審計等低頻交易場景.為滿足實時支付等場景的高頻交易需求,研究人員開展了對于區(qū)塊鏈擴容技術(shù)的研究.相比于主要從共識算法、區(qū)塊擴容等方面進(jìn)行研究的鏈上擴容技術(shù),鏈下擴容技術(shù)一般不修改區(qū)塊鏈底層數(shù)據(jù)或網(wǎng)絡(luò)結(jié)構(gòu),通過將耗時的鏈上數(shù)據(jù)操作轉(zhuǎn)移至鏈下,將交易的有效性驗證放在鏈上進(jìn)行,在滿足小額高頻、復(fù)雜計算等交易處理需求的同時支持了區(qū)塊鏈之間的跨鏈操作.
作為鏈下擴容技術(shù)的重要手段,支付通道[3]以其鏈下支付的快速、低成本等特點得到了廣泛應(yīng)用.利用哈希時間鎖定合約(Hash time lock contract, HTLC)技術(shù)[4],通過在交易發(fā)生頻繁的2個參與者之間建立共享的鏈下虛擬通道,控制交易資金的鎖定與釋放,將交易從鏈上轉(zhuǎn)移到鏈下的虛擬通道進(jìn)行,待交易結(jié)束后將交易添加至區(qū)塊鏈中,從而提高了區(qū)塊鏈節(jié)點間的交易效率.由于支付通道的建立需要一定成本,對于不直接共享通道的各方,需要通過沿現(xiàn)有支付通道組成的圖中的一個或多個節(jié)點組成多跳路徑,由中繼節(jié)點的轉(zhuǎn)發(fā)來促成區(qū)塊鏈內(nèi)或區(qū)塊鏈間交易.在多跳跨鏈交易中,對于每筆待處理的付款交易,交易中繼節(jié)點在付款完成之前需要提供資金抵押[5].交易過程中,尋找合適節(jié)點構(gòu)成支付路徑的過程稱為路由.典型的支付通道網(wǎng)絡(luò)有閃電網(wǎng)絡(luò)[6]、雷電網(wǎng)絡(luò)[7]、InterLedger[8]等.
當(dāng)前針對支付通道網(wǎng)絡(luò)路由方法的研究主要聚焦在2個方面:1)提高所選擇路徑的隱私與安全性,避免由于各種攻擊造成交易的失敗,文獻(xiàn)[9-12]分別提出基于秘密共享、大蒜路由等具備隱私保護(hù)的路由方案,加強路由選擇中節(jié)點通信內(nèi)容與節(jié)點身份信息的隱私性;2)優(yōu)化改進(jìn)路由選擇與調(diào)度算法,以提高交易處理效率,文獻(xiàn)[13-17]分別提出了基于信標(biāo)節(jié)點的靜態(tài)路由方案、基于圖嵌入的貪心路由方案、基于流量算法的Flash動態(tài)路由方案和基于資金偏度的混合路由方案等.
以上方法缺乏交易手續(xù)費對于交易路由選擇影響的分析與手段.跨鏈路由路徑越長,中繼服務(wù)的中繼節(jié)點跳數(shù)越多,用戶向中繼節(jié)點支付的手續(xù)費就越高.在小額支付的場景中,潛在的高額節(jié)點手續(xù)費對于跨鏈支付發(fā)起者來說是不可忽視的[5].文獻(xiàn)[18]中,Zhang等人提出了一種基于服務(wù)拍賣的中繼節(jié)點選擇方案,可以降低交易手續(xù)費.如果支付通道中存在低信譽的中繼節(jié)點,其掉線或拒絕服務(wù)等行為可能會引起跨鏈交易的失敗.此外,拍賣過程容易受到某些隱私攻擊[19].例如,隨著交易次數(shù)的增多,惡意節(jié)點可以通過長期監(jiān)測網(wǎng)絡(luò)中的交易結(jié)果,發(fā)起推理攻擊[20].通過嘗試不同的詢價/出價組合,推理歷史獲勝節(jié)點報價,以預(yù)測路由拍賣的相應(yīng)結(jié)果,控制路由選擇過程,進(jìn)而干擾或破壞跨鏈交易.
為了避免惡意節(jié)點被選中參與跨鏈交易,并保護(hù)中繼節(jié)點的報價不被監(jiān)測,本文將中繼節(jié)點的路由選擇抽象成交易服務(wù)提供者拍賣過程,提出了一種基于熵權(quán)法的多因素反向拍賣(multi-factor reverse auction, MFRA)的路由方案,綜合評估候選中繼節(jié)點的歷史信譽、路徑距離、手續(xù)費報價等因素,以選擇最優(yōu)的中繼節(jié)點參與跨鏈交易.本文提出了多因素反向Vickrey拍賣模型,建立節(jié)點的等價報價函數(shù),用于將候選中繼節(jié)點的其他非價格屬性因素轉(zhuǎn)換為價格屬性.MFRA方案引入以2為基數(shù)的指數(shù)型差分隱私機制,以保障中繼節(jié)點的報價不被泄露.
本文的主要貢獻(xiàn)包括4個方面:
1)提出了基于多因素反向Vickrey拍賣的路由機制MFRA,為跨鏈支付提供了節(jié)點手續(xù)費報價、節(jié)點信譽、路徑距離的多重因素綜合下的路由中繼節(jié)點選擇方案.
2)引入反向Vickrey拍賣的思想,根據(jù)獲勝節(jié)點的非價格屬性值,建立候選節(jié)點的等價競標(biāo)函數(shù).MFRA促進(jìn)了候選節(jié)點的誠實投標(biāo),減少了交易發(fā)起者支付的跨鏈?zhǔn)掷m(xù)費.
3)在獲勝候選節(jié)點最終手續(xù)費的確定過程中,引入了以2為基數(shù)的指數(shù)機制差分隱私,保障候選中繼節(jié)點的報價隱私.
4)設(shè)計基于MFRA的支付通道網(wǎng)絡(luò)跨鏈交易方案,并進(jìn)行了安全性分析和性能評估,表明MFRA路由方案可有效用于跨鏈支付.

Fig.1 Payment channel networks based on HTLC
保障多跳支付路徑的安全、快速參與節(jié)點的隱私是支付通道網(wǎng)絡(luò)的研究熱點.SilentWhispers[9]使用地標(biāo)路由算法選擇網(wǎng)絡(luò)中連接性最高的節(jié)點來生成總交易路徑,并為節(jié)點自身信息提供隱私保護(hù).文獻(xiàn)[10]提出了一種基于本地知識的隱私保護(hù)路由算法SpeedyMurmurs,可在完全分布式的環(huán)境中保護(hù)節(jié)點隱私,并在有效性和效率方面優(yōu)于SilentWhispers.文獻(xiàn)[11]在支付通道交易過程中引入大蒜路由,保障發(fā)送方/接收方的個人信息隱私.文獻(xiàn)[12]設(shè)計了一種名為Boomerang的多路徑路由方案,可以建立冗余通道以消除參與者不執(zhí)行交易協(xié)議的風(fēng)險.文獻(xiàn)[21]研究了隱私和實用性之間的權(quán)衡,以實現(xiàn)最短路徑路由機制的噪聲信道平衡.
在提高交易吞吐量方面,文獻(xiàn)[13]利用信標(biāo)節(jié)點,提出了Flare靜態(tài)路由方案.節(jié)點只需要維護(hù)了信標(biāo)節(jié)點的本地路由表,通過將它們的路徑組合到信標(biāo),發(fā)送者和接收者可以獲得交易的完整路徑.文獻(xiàn)[14]利用基于圖嵌入的貪心路由算法,實現(xiàn)分布式環(huán)境中節(jié)點之間的路徑查找.文獻(xiàn)[15]將基于圖嵌入的貪心路由算法從雙人通道網(wǎng)絡(luò)進(jìn)一步推廣至多人通道網(wǎng)絡(luò)中.文獻(xiàn)[16]提出了Flash動態(tài)路由方案,根據(jù)交易金額將交易分為大象支付和老鼠支付.然后,使用修改后的最大流量算法進(jìn)行大象支付來尋找資金充足的路徑,而老鼠支付則直接通過存儲在路由表中的路徑發(fā)送.文獻(xiàn)[17]使用基于資金偏度的路徑選擇方案,利用靜態(tài)和動態(tài)路由來減少資金偏度,提高交易成功概率并降低延遲.
相比于上述路由方法分別重點關(guān)注路由安全與路由效率,低估了交易費用、反映節(jié)點歷史行為的節(jié)點信譽等關(guān)鍵因素.文獻(xiàn)[18]提出基于拍賣的路由選擇方案,以最小化手續(xù)費開銷為目的,但容易受到推理攻擊泄露節(jié)點報價隱私.文獻(xiàn)[22]提出了一種綜合度量路徑距離、手續(xù)費價格的路由選擇方案AMPS,但缺乏對于候選中繼節(jié)點手續(xù)費報價這一動態(tài)可調(diào)整的因素進(jìn)行隱私保護(hù).作為共同的缺陷,文獻(xiàn)[18,22]提出的2個方案中的惡意節(jié)點可以通過掌握的節(jié)點報價信息,調(diào)整個人節(jié)點手續(xù)費報價,控制路由選擇結(jié)果進(jìn)而控制或破壞跨鏈交易.
基于HTLC的支付通道包括建立通道的兩方所需支付的金額等要素,通過HTLC合約來控制參與雙方抵押資金的鎖定與釋放,每個支付通道可以執(zhí)行通道建立、交易執(zhí)行以及通道關(guān)閉等3種操作,實現(xiàn)節(jié)點間的鏈下資金轉(zhuǎn)移交易.
HTLC的核心是時間鎖和哈希鎖,利用時間鎖限制了交易約定時間,迫使交易雙方在規(guī)定期限內(nèi)完成轉(zhuǎn)賬支付的接受與確認(rèn);利用哈希鎖給交易雙方提供交易接受與確認(rèn)機制.只有在時間鎖的規(guī)定時間內(nèi),完成哈希鎖Hash(R)=H的驗證,交易才算成功,否則交易參與雙方可以收回各自鎖定的抵押資金.其中,R是交易接受者生成的隨機哈希原像值,H為R的哈希值,在交易開始前將哈希值H發(fā)送至交易發(fā)起者.哈希鎖和時間鎖的結(jié)合保障跨鏈交易的原子性,避免參與節(jié)點因欺詐或交易失敗造成抵押資金損失.
基于HTLC的支付通道網(wǎng)絡(luò)如圖1所示,由m+1段支付通道組成,通過m個中繼節(jié)點的交易中轉(zhuǎn)實現(xiàn)資金的轉(zhuǎn)移.在支付過程中,隨著交易跳數(shù)的增加以及延遲波動時間的累計,各段通道中合約設(shè)置的截止日期自后向前依次遞增,即t1>t2>…>tm+1,以滿足多跳交易可在限制時間內(nèi)完成.
反向Vickrey拍賣模型[23]是反向定價機制和Vickrey拍賣模型的結(jié)合.反向定價機制指的是通過服務(wù)提供者(中繼節(jié)點)的出價投標(biāo)來確定任務(wù)的服務(wù)價格(中繼手續(xù)費),通常由出價較低的服務(wù)提供者中標(biāo).為了防止投標(biāo)人在實際場景中夸大真實成本和惡意低價競爭,在定價過程中廣泛引入了Vickrey拍賣機制[24],也稱為次高價密封拍賣,可以確保每個投標(biāo)人真實出價.在競拍過程中,每個參與者都在不知道別人的出價的情況下秘密出價.在投標(biāo)結(jié)束時,所有當(dāng)前的報價都被計算在內(nèi),出價最高的人獲勝,但只支付第二高的出價.投標(biāo)人沒有理由錯報其報價,因為他/她不知道對手的報價,并且他/她的報價不能影響最終價格.
由于反向定價機制和Vickrey拍賣模式的結(jié)合,在密封規(guī)則和次低交易規(guī)則下,反向Vickrey拍賣可以保證中繼節(jié)點手續(xù)費出價的真實性,保證跨鏈交易請求者和中繼節(jié)點都獲得更高的回報.
Dwork等人提出了差分隱私[25]的概念,用于保護(hù)統(tǒng)計數(shù)據(jù)集的隱私.差分隱私確保觀察者查詢的結(jié)果不應(yīng)該透露個人信息.當(dāng)前基于差分隱私的隱私保護(hù)方案大多基于指數(shù)機制與拉普拉斯機制2種基礎(chǔ)模型.區(qū)別于拉普拉斯機制只能針對數(shù)值型數(shù)據(jù)進(jìn)行隱私保護(hù),McSherry等人[26]提出的指數(shù)機制適用于非數(shù)值型數(shù)據(jù),例如選舉、投票、拍賣等實體對象.
在拍賣等場景中,對于所有可能的輸出集合O,指數(shù)機制的目的是使輸出結(jié)果滿足某種概率分布的隨機性.可用性函數(shù)u(D,o)用來衡量每一個輸出項的價值,其中D為輸入的數(shù)據(jù)集,o為可能的輸出集合O中的項.可用性函數(shù)u返回一個實數(shù)來表示o的價值,返回的u值越高,表示該項的價值越大,其被輸出的概率也越大.

差分隱私在實際場景下易受到一些基于浮點的攻擊,攻擊者利用浮點算術(shù)舍入和截斷特性破壞差分隱私效果,使得隱私數(shù)據(jù)無法得到保護(hù).Christina Ilvento將以e為基數(shù)切換到以2為基數(shù),從而使差分隱私過程中能夠執(zhí)行以2為基數(shù)的精確運算.
定義2.基數(shù)為2的指數(shù)機制[27].設(shè)隨機算法M輸入為數(shù)據(jù)集D,輸出為實體對象集合O中的某一對象o,u(D,o)為可用性函數(shù),Δu為可用性函數(shù)u的敏感度.以2為基數(shù)的指數(shù)機制根據(jù)如下概率從對象集合O中選取一個元素:
Pr(o)
(1)
假設(shè)在發(fā)起者Alice發(fā)起的跨鏈交易過程中,需要沿著由m個提供交易中繼服務(wù)的中繼節(jié)點組成的支付通道鏈路path={Alice→C1→C2→…→Cj→…→Cm→Bob}完成跨賬本的轉(zhuǎn)移.在通道中,對于通道path中的任意一跳交易中繼服務(wù)節(jié)點,都有一個由n個候選節(jié)點組成的集合cdj={cdj1,cdj2,…,cdjn},可以滿足第j跳節(jié)點的路由要求,例如資金儲備和網(wǎng)絡(luò)連通.每j跳中選出的候選節(jié)點cdji作為提供中繼跨鏈交易的中繼節(jié)點Cj參與支付通道path的交易轉(zhuǎn)移.
將中繼節(jié)點的選擇過程抽象為服務(wù)提供者的選擇過程,提出了一種基于多因素反向拍賣的跨鏈支付路由方案MFRA,以從候選節(jié)點中選擇中繼節(jié)點.
在節(jié)點選擇過程中,基于反向拍賣的思想,將節(jié)點選擇看作一次“路由服務(wù)拍賣”,各候選節(jié)點提交各自報價,然后收集各節(jié)點記錄在區(qū)塊鏈中的節(jié)點位置、歷史信譽因素.通過建立的基于熵權(quán)法的多因素節(jié)點質(zhì)量評價函數(shù)計算各節(jié)點綜合得分,其中函數(shù)涵蓋中間手續(xù)費報價、節(jié)點間路徑距離、節(jié)點歷史信譽等3個因素.選擇總分最高的候選節(jié)點作為第j跳中繼節(jié)點.
在計算支付給第j跳中繼節(jié)點的最終手續(xù)費的過程中,本文構(gòu)造了候選節(jié)點的等價報價函數(shù),以中標(biāo)節(jié)點的非價格屬性值為標(biāo)準(zhǔn)屬性值,將其他候選節(jié)點的多因素質(zhì)量評分轉(zhuǎn)換為標(biāo)準(zhǔn)屬性值下的等價物,計算并收集各節(jié)點非價格屬性標(biāo)準(zhǔn)值下的等效報價,組成等效池.在各候選節(jié)點的等效報價池中剔除最低價格.以一定的差分隱私預(yù)算ε和可用性函數(shù)u(D,o),對當(dāng)前的等效報價池BO進(jìn)行以2為基數(shù)的差分隱私,生成等效價格池BO的概率分布.在生成等效價格的指數(shù)概率分布后,使用隨機機制選擇一個臨時價格,進(jìn)一步檢查所有約束條件,例如所選價格應(yīng)滿足非負(fù)效用、正收益等.如果所選價格滿足所有要求,該臨時價格最終被確定并視為第j跳中繼節(jié)點應(yīng)得的最終手續(xù)費.
在第j跳節(jié)點的路由選擇中,令υji為候選節(jié)點cdji的出價,γji為候選節(jié)點cdji想要獲得的報酬,min(υ-Cj)是除Cj之外的所有投標(biāo)人的最低出價.那么中繼節(jié)點Cj的收益ηji表示為
(2)
如果υji>γji,則投標(biāo)人獲得負(fù)收益;如果υji<γji,當(dāng)υji 根據(jù)上面的分析,在中繼節(jié)點投標(biāo)報價與選擇過程中,直接給出自己的實際價格是每個候選中繼節(jié)點的最優(yōu)策略.綜合節(jié)點信譽、路徑距離等公開因素后,選擇每一跳得分最高的候選節(jié)點為獲勝者.除去最低報價的等效報價池作為第j跳節(jié)點的最終應(yīng)得手續(xù)費的基礎(chǔ)價格集合,從中隨機選擇得到一個滿足非負(fù)效益等約束的vj作為實際支付給第j跳中繼節(jié)點的最終交易手續(xù)費.在報價確定過程中,每個候選中繼節(jié)點的出價組成報價池,MFRA路由方案中的差分隱私策略,能夠從報價池中隨機地選擇一個報價,這種隨機性確保沒有對手可以知道候選中繼節(jié)點對交易服務(wù)價值的原始報價.因此,以2為基數(shù)的指數(shù)型差分隱私機制為參與候選節(jié)點提供了隱私保證. 然后通過m個提供跨鏈交易服務(wù)的中繼節(jié)點組成的支付通道path,Alice需要支付的總交易手續(xù)費用Ptotal表示為 (3) 其中υj為第j個中繼節(jié)點的出價. 在支付通道path的第j跳節(jié)點的選擇過程中,有n個候選節(jié)點滿足第j跳節(jié)點的要求.在n個候選節(jié)點選擇第j跳中繼節(jié)點時應(yīng)考慮多個評估因子.本文主要考慮3個因素:候選節(jié)點的歷史信譽、節(jié)點間路徑距離及節(jié)點的中間手續(xù)費報價.其中,節(jié)點間路徑距離和歷史信譽記錄在區(qū)塊鏈上,所有節(jié)點都可以看到;節(jié)點出價由各候選節(jié)點提交.第j跳的候選節(jié)點集合cdj={cdj1,cdj2,…,cdjn}中的任意一個節(jié)點有3個因子xik,k∈{0,1,2},其中xik代表第i個候選節(jié)點的第k個因子的實際值.本文中k=0時表示為報價因素,k=1時表示為路徑距離因素,k=2時表示為節(jié)點信譽因素. MFRA路由方案的中繼節(jié)點選擇如圖2所示,包括5個步驟. Fig.2 Relay node selection of MFRA routing scheme 步驟1.交易發(fā)起者Alice或上一跳節(jié)點Cj-1檢測其鄰居節(jié)點之間的連接,提取節(jié)點所在公鏈中記錄的每個鄰居節(jié)點的數(shù)據(jù)信息,更新節(jié)點路由信息表RT.數(shù)據(jù)信息包括節(jié)點坐標(biāo)、節(jié)點歷史信譽、賬戶金額等.根據(jù)更新后的路由表RT,上一跳節(jié)點Cj-1通過多播路由表RT向鄰居節(jié)點發(fā)送跨鏈交易請求.第j-1跳節(jié)點Cj-1建立智能合約SCj,負(fù)責(zé)候選節(jié)點cdji的選擇并監(jiān)控與目標(biāo)節(jié)點Bob的跨區(qū)塊鏈交易.該請求包含交易金額coin、目標(biāo)區(qū)塊鏈B和響應(yīng)期限t. 步驟2.滿足Alice要求的節(jié)點響應(yīng)Alice的請求,將服務(wù)費υji提交給智能合約SC.收集整理來自每個相鄰候選節(jié)點cdji的中間服務(wù)費投標(biāo),計算每個候選節(jié)點到目標(biāo)節(jié)點的路徑距離.智能合約SC根據(jù)候選節(jié)點出價、路徑距離和歷史信譽生成候選信息表Candi. 步驟3.根據(jù)候選節(jié)點信息表Candi中的信息,智能合約SC計算每個候選節(jié)點的質(zhì)量評分,根據(jù)總分Score[i]從高到低對候選節(jié)點表Candi進(jìn)行排序,并選擇得分最高的候選節(jié)點cdji作為跨鏈交易的中繼節(jié)點Cj,提供交易中繼服務(wù). 在步驟3中,本文引入熵值法確定路徑距離、交易手續(xù)費報價和節(jié)點歷史信譽等因素的權(quán)重,并建立路由節(jié)點質(zhì)量評分函數(shù).MFRA路由方案避免了現(xiàn)有支付通道跨鏈研究僅依靠最短路由距離或最小手續(xù)費來選擇跨鏈交易路由節(jié)點.步驟3的詳細(xì)過程有4點: ① 通過分析路徑距離、交易手續(xù)費報價和節(jié)點歷史信譽同跨鏈路由整體開銷的正負(fù)相關(guān)關(guān)系確定積極因子和消極因子,利用候選節(jié)點各指標(biāo)的參數(shù)值建立指標(biāo)集合; ② 使用臨界值法對因子分別進(jìn)行歸一化,得到每個因子的歸一化形式,每個因子的無量綱形式為 (4) (5) 其中,xik是第i個候選節(jié)點的第k個因子的實際值,max(xk)是第k個因子的最大值,min(xk)是第k個因子的最小值. ③ 建立跨鏈路由節(jié)點打分的線性加權(quán)和公式,得到各指標(biāo)的信息熵,通過熵權(quán)法確定線性加權(quán)和公式中的各個權(quán)重系數(shù),并列出系數(shù)集合. 第k個因子的信息熵形式為 (6) 第k個因子的權(quán)重wk表示為 (7) ④ 根據(jù)因子的權(quán)重wk計算出每個候選節(jié)點的綜合得分.將所有候選節(jié)點的節(jié)點質(zhì)量得分Score[i]從高到低重新排序,選擇得分最高的候選節(jié)點cdji作為獲勝中繼節(jié)點Cj參與跨鏈交易的中繼服務(wù). (8) 針對步驟1~3,設(shè)計具體算法1. 算法1.獲勝候選節(jié)點的確定. 輸入:需要交易的金額coin、報價響應(yīng)截止時間t、當(dāng)前所在區(qū)塊鏈Ledgerj-1、下一跳區(qū)塊鏈Ledgerj; 輸出:第j跳的中繼節(jié)點Cj. /*第1階段:收集節(jié)點報價*/ ① Initialize:Bidding={0,…,0},CandiID={0,…,0}; ② sendtask(coin,t,Ledgerj-1,LedgerjtoSC; /*智能合約向Ledgerj-1網(wǎng)絡(luò)廣播需求*/ ③ whiledatetime.now()intdo ④getResponse(υji,cdji); ⑤Bidding[i]=υji; ⑥CandiID[i]=cdji; ⑦ end while ⑧ Stop Bidding Process /*第2階段:計算各候選節(jié)點綜合得分*/ ⑨ SetRT=getRoutingTablefromLedgerj; Table 1 Comparison and Analysis of Routing Schemes Table 2 Comparison of Transaction Latency of Multi-hop Cross-blockchain ⑩ forCandiIDinBidderIDdo /*計算熵值*/ /*計算各因素權(quán)重*/ /*計算各候選節(jié)點的得分*/ /*返回得分最高節(jié)點,即為第j跳中繼節(jié)點*/ 算法2.第j跳中繼節(jié)點的手續(xù)費. 輸出:最終支付給第j跳中繼節(jié)點的手續(xù)費υj. ②EB=[]; ③ foriinScore[]do ⑤EB.add(feesi);/*計算各候選節(jié)點等效報價,組成等效報價池*/ ⑥ end for ⑦EB.remove(min(EB)); /*去除最低價格*/ ⑧ Δu=1/Score[].length(); /*設(shè)置隱私敏感度*/ ⑨ foriinEB ⑩u(D,i)=max(EB)-EB.i; /*設(shè)置可用性函數(shù)*/ /*生成概率分布集*/ 在步驟4中,本文引入了反向Vickrey拍賣,以避免候選節(jié)點的不誠實投標(biāo).通常反向Vickrey拍賣只考慮價格指標(biāo),沒有考慮路徑距離和節(jié)點歷史信譽等多個指標(biāo).本文以獲勝節(jié)點的非價格屬性值為標(biāo)準(zhǔn),將其他候選節(jié)點的價格轉(zhuǎn)換為標(biāo)準(zhǔn)屬性值的等價價格,從而用于將節(jié)點質(zhì)量中的非價格屬性因素轉(zhuǎn)化為價格屬性.根據(jù)Vickrey支付功能的特點,剔除最低等效價格,利用以2為基數(shù)的指數(shù)型差分隱私計算出最終支付給第j跳中繼節(jié)點的手續(xù)費.具體來說: ① 根據(jù)步驟3中選中的中繼節(jié)點Cj的非價格因素的值,計算非價格因素評分標(biāo)準(zhǔn)和V; (9) ② 根據(jù)非價格評分標(biāo)準(zhǔn)總和V計算每個節(jié)點的等價出價feesi, (10) ③SC將所有選中節(jié)點的等價出價從低到高排序,生成不包括最低出價min(fees)的等效報價池BO; ④SC秘密向上一條節(jié)點Cj-1臨時獲取隱私參數(shù)ε和可用性函數(shù)u,對等效報價池BO進(jìn)行以2為基數(shù)的差分隱私,生成等效價格池BO的概率分布. Pr(o) (11) ⑤ 在生成等效價格的指數(shù)概率分布后,SC使用隨機機制選擇一個臨時價格temp(fees),進(jìn)一步檢查所有約束條件,例如所選價格應(yīng)滿足非負(fù)效用、正收益等.驗證臨時價格temp(fees)是否大于獲勝節(jié)點的價格.如果滿足,SC宣布獲勝節(jié)點Cj和中間價格υj,其中υj=temp(fees). 定理1.MFRA滿足ε-差分隱私. (12) 根據(jù)文獻(xiàn)[26-27]中的差分隱私證明,如果輸入集合BO值改變了一個元素,式(12)滿足ε-差分隱私,那么輸出變化不超過exp(ε).可以表示為 Pr[output(BO)=x]≤exp(ε)× Pr[output(BO′)=x]. (13) 根據(jù)上述分析可以得出結(jié)論,步驟4中對等效報價池設(shè)計的以2為基數(shù)的指數(shù)差分機制滿足ε-差分隱私. 步驟5.獲勝的中繼節(jié)點Cj與上一跳中繼節(jié)點Cj-1或跨鏈交易發(fā)起者Alice建立連接.Cj-1或Alice授權(quán)中繼節(jié)點Cj幫助她完成跨區(qū)塊鏈交易并預(yù)先提交等于手續(xù)費υj的保證金.跨區(qū)塊鏈交易完成后,則υj將自動支付給Cj. 基于HTLC的支付通道網(wǎng)絡(luò)實現(xiàn)跨鏈支付,一般通過在跨鏈支付發(fā)起方與接收方之間建立一條跨區(qū)塊鏈網(wǎng)絡(luò)的單跳或多跳支付通道path={Alice→C1→C2→…→Cj→…→Cm→Bob},從而完成Alice與Bob間跨鏈交易.其中,Cj← 為了解決上述的跨鏈方案中,選擇路由節(jié)點的因素單一而造成跨鏈支付發(fā)起者可能承擔(dān)高昂交易手續(xù)費的問題,本文提出了基于MFRA路由方法的跨鏈支付方案,使得只有貨幣A的交易發(fā)起者Alice能夠與只接受貨幣B的接受者Bob進(jìn)行交易結(jié)算.通過引入面向跨鏈中繼服務(wù)的反向拍賣機制,在保障跨鏈交易順利進(jìn)行的同時,很大程度上降低了多跳支付通道累計的中間手續(xù)費開銷.并引入以2為基數(shù)的指數(shù)差分隱私機制,避免了在線支付過程中中繼節(jié)點的報價隱私泄露,提高了路由過程的抗推理攻擊能力.基于上述跨鏈路由方案,整體跨鏈支付過程具體步驟為: 步驟1.交易發(fā)起者Alice向接受者Bob的區(qū)塊鏈網(wǎng)絡(luò)節(jié)點秘密發(fā)送支付請求,以確定本次交易的金額、交易時限以及哈希證明. 步驟2.使用智能合約SC.Alice發(fā)送一個準(zhǔn)備數(shù)據(jù)包,包含Bob的帳戶地址、交易金額、共享密鑰的哈希值和到期時間.SC遵循3.2節(jié)中的步驟執(zhí)行算法1與算法2,選擇C1作為第一個提供跨鏈交易中繼服務(wù)的節(jié)點.中繼節(jié)點C1的服務(wù)手續(xù)費由SC鎖定,待交易完成后智能合約自動將獎勵支付給中繼節(jié)點C1. 步驟3.Cj檢查Alice帳戶中的金額是否足以支付交易費用.如果足夠,Cj將減少Alice賬戶中的余額,否則交易被拒絕.Cj在許可下構(gòu)建和使用智能合約SC. 步驟4.與步驟2類似,智能合約SC使用算法1與算法2,Cj的本地路由表確定下一跳和過期時間,根據(jù)匯率改變包量,將包發(fā)送到下一跳.對于每個Cj,執(zhí)行步驟3~步驟4. 步驟5.當(dāng)數(shù)據(jù)包到達(dá)Bob節(jié)點時,Bob首先檢查數(shù)據(jù)包的有效性,如超時、金額等.如果有效,則將具有共享秘密數(shù)據(jù)包的履行數(shù)據(jù)包發(fā)送到Cm,這可以看作是一個開具收據(jù)的過程;否則,交易被拒絕. 步驟6.Cj收到Cj+1發(fā)送的共享秘密后,利用哈希計算檢查秘密是否正確.如果正確,則在到期前將秘密發(fā)送到Cj-1,此時,為Cj+1托管的轉(zhuǎn)賬被執(zhí)行;否則,Cj將拒絕發(fā)送給Cj-1.每個Cj都執(zhí)行步驟6,直到消息傳遞給Alice.當(dāng)檢測到Alice的確認(rèn)時,所有中繼節(jié)點的獎勵自動由智能合約SC支付. 至此,僅持有貨幣A的交易發(fā)起者Alice已成功向僅接受貨幣B的交易接受者Bob完成了多跳支付通道下的跨鏈支付. 本節(jié)詳細(xì)分析引入拍賣機制的MFRA路由方案可能面臨的安全威脅. 在介紹了拍賣機制的路由選擇過程之后,可能會出現(xiàn)2個誠實報價相關(guān)的問題. 問題1.在中繼節(jié)點的選擇中,候選節(jié)點是否可以提交虛假價格在交易結(jié)束后獲得更高的費用,即拍賣機制是否滿足激勵相容(incentive-compatibility, IC)[28]約束. IC定義為:參與者如實申報自己的估值所獲得的利潤不低于虛報自己的估值所獲得的利潤.在拍賣理論中,IC通常被稱為“真實性”,這使得每個投標(biāo)人更傾向于提交真實的報價. 根據(jù)本文中對3.1節(jié)的方程(2)的分析,在反向Vickrey拍賣機制下,如實提交自己的估價作為報價是所有投標(biāo)人的最優(yōu)策略.由于每個投標(biāo)人都是自我的和理性的,他們會保持其投標(biāo)的真實性,即υi=γi.因此,MFRA路由方案滿足激勵相容性. 問題2.如何避免理性的低信譽投標(biāo)人以不誠實的低價中標(biāo)后不提供相應(yīng)的跨鏈服務(wù). 為了避免這種情況影響拍賣過程,設(shè)計了押金機制和信譽機制.投標(biāo)時,每個投標(biāo)人提交一定的保證金,這可能高于節(jié)點的投標(biāo).如果投標(biāo)人中標(biāo)但未履行義務(wù),則該節(jié)點的這種惡意行為會導(dǎo)致其提交的押金被扣除,該節(jié)點的信譽評分被降低.當(dāng)信譽分?jǐn)?shù)下降到一個定義的值(如0)時,該節(jié)點被判斷為惡意節(jié)點并拒絕參與拍賣.將交易發(fā)起者Alice的損失lossj定義為惡意節(jié)點的利潤,表示為: (14) 其中,a=1表示中繼節(jié)點Cj發(fā)生了惡意行為;a=0表示中繼節(jié)點Cj被選中后確實誠實地提供了相應(yīng)的跨鏈服務(wù);min(υ-Cj)是交易發(fā)起者Alice需要花費的跨鏈?zhǔn)掷m(xù)費用;dj是中繼節(jié)點Cj提交的押金,其中dj?min(υ-Cj). 假設(shè)惡意投標(biāo)者是自私和理性的.由于dj?min(υ-Cj),當(dāng)中繼節(jié)點Cj選擇作惡時,押金將扣除,其收益lossj=(min(υ-Cj)-dj)為負(fù)數(shù),遠(yuǎn)小于0.因此,放棄作惡是其最優(yōu)策略.如果惡意投標(biāo)者是非理性的,且a=1時,則中繼節(jié)點Cj的信用Crj=Crj-h,其中h是一個大于0的常數(shù).當(dāng)Crj-num(a=1)×h為小于0時,中繼節(jié)點Cj將失去投標(biāo)資格,其中num(a=1)表示出現(xiàn)惡意行為的次數(shù).可改變h的取值調(diào)節(jié)單次惡意行為對信譽減小的影響程度,并且由于dj?min(υ-Cj),在這個過程中惡意節(jié)點的行為不會對交易發(fā)起者節(jié)點造成損失. 在4.1節(jié)的惡意報價分析中,假設(shè)候選節(jié)點總是自私與理性的,無法通過非誠實報價獲取更多自身利益.對于以破壞跨鏈交易為目的的惡意攻擊者來說,他們通常不在乎資金的損失.在跨鏈路由選擇過程中,攻擊者可以通過監(jiān)測到的拍賣公布結(jié)果,推斷獲勝候選節(jié)點的初始服務(wù)報價,并利用獲取的歷史獲勝報價信息,實現(xiàn)對于下一筆跨鏈交易到來時中繼節(jié)點服務(wù)拍賣的選擇結(jié)果預(yù)測,通過惡意調(diào)低自身報價取得中繼交易的資格,從而控制跨鏈交易的中間路由,進(jìn)而達(dá)成破壞跨鏈交易的目的,也被稱為推理攻擊[20]. 在本文提出的MFRA路由方法中,首先使用熵權(quán)法的候選節(jié)點最終評分分別計算各節(jié)點的等效報價,并組成等效報價池BO;然后采用基于基數(shù)2的指數(shù)機制,對等效報價池BO進(jìn)行差分隱私,生成等效價格集BO的概率分布.為了進(jìn)行報價的隱私分析,在3.2節(jié)中,定理1已經(jīng)證明MFRA方案確定的節(jié)點手續(xù)費報價能夠滿足差分隱私定義1、定義2的隱私界限.在基于拍賣理論的中繼節(jié)點跨鏈路由服務(wù)選擇過程中,本文提出的MFRA路由方案滿足了ε-差分隱私的理論含義,能夠維護(hù)參與節(jié)點投標(biāo)隱私的有效機制,并具備基于基數(shù)2的指數(shù)機制抗浮點攻擊的能力. 根據(jù)交易流程,中繼節(jié)點只有在接收方確認(rèn)后回復(fù)確認(rèn),才能從資金接收方操作獲得條件原像,即資金發(fā)送方和資金接受方在發(fā)起交易前確定的密鑰.在獲得條件原像后該中繼節(jié)點向上一跳中繼節(jié)點繼續(xù)發(fā)送帶有條件原像的數(shù)據(jù)包后才能得到來自上一節(jié)點的轉(zhuǎn)賬.那么中繼節(jié)點就有可能去嘗試破解條件原像,因為一旦破解成功,中繼節(jié)點不用付出任何代價就可以獲得來自上一節(jié)點的資金.攻擊方法有2種:1)通過條件去逆推條件原像;2)通過監(jiān)聽資金收發(fā)雙方的網(wǎng)絡(luò)通信獲得條件原像. 針對逆推條件原像的攻擊方法,當(dāng)前條件原像使用SHA-256算法和AES-256算法生成.SHA-256暫無明顯有效的破解方法;在不知道加密密鑰的情況下,AES-256加密算法也幾乎無法破解;整個交易過程具有時間限制.在這樣三重條件下,要在短時間內(nèi)通過條件逆推出條件原像幾乎是不可能的,所以條件原像的安全性可以得到保證. 針對通過網(wǎng)絡(luò)監(jiān)聽獲取條件原像的攻擊方法,有2種方案可以保障其通信中密鑰的安全性: 1)交易雙方在正式開啟交易之前會通過HTTPS使用Diffie-Hellman密鑰交換算法生成共享密鑰(即條件原像),然后通過HTTPS傳輸交易必要數(shù)據(jù),包括共享密鑰以及接收方的賬戶地址.HTTPS通過數(shù)字證書、對稱加密算法以及非對稱加密算法來保證數(shù)據(jù)傳輸過程中的安全性,而Diffie-Hellman進(jìn)一步保障了共享密鑰的安全性. 2)中繼節(jié)點嘗試通過監(jiān)聽資金收發(fā)雙方的網(wǎng)絡(luò)通信獲得條件原像,需要知道自己將要參與的交易中的資金收發(fā)雙方的信息.但是,在交易雙方正式開啟交易之前,是不知道自己將作為哪兩個交易雙方的中繼節(jié)點,也就是中繼節(jié)點在交易開啟之前是找不到監(jiān)聽目標(biāo)的,所以中繼節(jié)點想要通過監(jiān)聽資金收發(fā)雙方的網(wǎng)絡(luò)通信以獲得條件原像的方法行不通.故條件原像的安全性可以得到保證. 實驗在Ubuntu 18.04操作系統(tǒng)上進(jìn)行,主機CPU為Intel Core i7 8700,主頻為3.2 GHz.在本實驗中,主要考慮3個因素:節(jié)點價格、路徑距離和歷史信譽.候選中繼節(jié)點提交的價格投標(biāo)以及與前一跳節(jié)點之間的路徑距離為消極因子;候選節(jié)點的歷史信譽是一個積極因子. 為了比較本文提出的MFRA路由方法和單因素路由方案的質(zhì)量評分差異,分別對4種方案的中繼節(jié)點選擇過程進(jìn)行了仿真實驗. Fig.3 Synthesis scores of the four schemes 設(shè)置了若干組候選連接節(jié)點,為各候選節(jié)點的3個因素隨機生成對應(yīng)屬性值,計算所有候選節(jié)點基于熵權(quán)法的綜合得分.隨著一跳節(jié)點的路由選擇中候選節(jié)點數(shù)量的增加,4種方案選出的中繼節(jié)點的得分變化,包括僅考慮節(jié)點報價的方法、僅考路徑距離的方法、僅考慮節(jié)點信譽的方法和MFRA方案,如圖3所示.基于MFRA路由方案選擇的候選節(jié)點質(zhì)量評分始終處于最高級別.由于其他3種方案僅考慮中繼節(jié)點選擇過程的單一因素,因此選擇的候選節(jié)點通常在其他2個因素上更容易有較差表現(xiàn).例如,出價最低的節(jié)點可能距離上一跳節(jié)點較遠(yuǎn)或歷史信譽較差.隨著候選節(jié)點數(shù)量的增加,其他3種方案的候選節(jié)點逐漸在2到3之間波動,而MFRA路由方案選擇的候選節(jié)點的分?jǐn)?shù)在逐漸增加.這是因為隨著節(jié)點數(shù)量的增加,單個競標(biāo)因子選擇的節(jié)點在其他2個因素中的性能趨于平均,而MFRA路由方案選擇的節(jié)點在綜合得分方面越來越優(yōu)越. 本節(jié)分別對5種方案的中繼節(jié)點選擇過程進(jìn)行了仿真實驗,以比較本文提出的MFRA路由方案、未考慮差分隱私的MFRA方案(記為“MFRA-1”方案)與單因素路由方案在中繼節(jié)點手續(xù)費上花銷的差異. 首先,在5.1節(jié)實驗的基礎(chǔ)上,模擬計算了3種僅考慮單因素的路由方案,第4種方案是僅使用多因素評價以及反向Vickrey拍賣的路由方案但不進(jìn)行報價差分隱私.對比這4種方案的單跳中繼節(jié)點中繼手續(xù)費用開銷結(jié)果,實驗結(jié)果如圖4所示.隨著候選節(jié)點數(shù)量的增加,只考慮節(jié)點報價的方案和不考慮隱私保護(hù)的MFRA-1方案都逐漸減少,基于路徑距離或節(jié)點聲譽的路由方案的最終交易價格始終在4.0和6.0之間波動.當(dāng)可選的候選節(jié)點較少時,MFRA-1路由方案的結(jié)果顯示出比其他3個單因素選擇方案更高的交易價格,因為MFRA-1路由方案引入的Vickrey拍賣機制,為避免節(jié)點不誠實的投標(biāo),需要剔除直接計算后得出的最低價格.該機制的引入使得在候選節(jié)點過少時成本增加;在5~7個候選節(jié)點加入拍賣過程后,最終交易手續(xù)費開銷迅速回落,低于僅考慮路徑距離或節(jié)點信譽的單因素選擇方案.雖然MFRA-1路由方案在手續(xù)費方面始終高于最低中標(biāo)方案,但仍然有效降低了節(jié)點的中間服務(wù)手續(xù)費,平衡了各種因素,避免只考慮價格因素而忽略節(jié)點信譽、路徑距離造成的跨鏈交易延遲高、風(fēng)險大甚至交易失敗等結(jié)果. Fig.4 One-hop intermediate fees without regard to bidding privacy 在以上方案的基礎(chǔ)上,我們使用MFRA路由方案并對最終應(yīng)付的中間手續(xù)費進(jìn)行以2為基數(shù)的指數(shù)差分隱私,其中,本次實驗中將隱私參數(shù)設(shè)置為ε={1,0.25,0.0625},并將其同未考慮報價隱私的多因素路由方案MFRA-1與僅考慮信譽的方案對比.實驗結(jié)果如圖5所示.隨著候選節(jié)點數(shù)量的增加,僅基于中間服務(wù)費拍賣的方案和MFRA路由方案都逐漸減少,以隱私參數(shù)ε=1的方案與未使用差分隱私的方案在最終手續(xù)費的計算結(jié)果上產(chǎn)生了一定波動,總體上保持一致.隨著隱私參數(shù)ε的減小,最終手續(xù)費的結(jié)果不斷偏離未考慮報價隱私的多因素路由選擇方案.以上實驗結(jié)果表明,在最終手續(xù)費計算中引入以2為基數(shù)的指數(shù)型差分隱私機制,實現(xiàn)了對候選節(jié)點報價的隱私保護(hù),可以有效避免惡意節(jié)點通過歷史公布的手續(xù)費結(jié)果發(fā)起對候選中繼節(jié)點初始報價的推理攻擊. Fig.5 One-hop intermediate fees considering bidding privacy Fig.6 Multi-hop intermediate fees comparison 本節(jié)還比較了考慮差分隱私的多因素路由選擇方案、未考慮差分隱私的多因素路由選擇方案與設(shè)置多個跳中繼節(jié)點Cj時隨機選擇節(jié)點的方案之間手續(xù)費的變化.其中,本實驗中MFRA路由選擇機制中的隱私參數(shù)設(shè)置為ε=1.實驗結(jié)果如圖6所示.隨著支付通道中所需的中繼節(jié)點跳數(shù)的增加,MFRA路由方案無論是否考慮差分隱私都減少了中間手續(xù)費,且以隱私參數(shù)ε=1的方案與未使用差分隱私的方案在最終手續(xù)費的計算結(jié)果上總體保持一致. 此外,本文分別從交易手續(xù)費、路徑距離、節(jié)點歷史信譽、路由選擇中心化、隱私保護(hù)等角度分別對比了SilentWhispers[9],F(xiàn)lare[13],基于服務(wù)拍賣的路由選擇方案[18],AMPS[22]等代表性路由方案,如表1所示.SilentWhispers和Flare方案均將路徑最短作為最優(yōu)路徑的選擇標(biāo)準(zhǔn),低估了交易費用、反映節(jié)點歷史行為的節(jié)點信譽等關(guān)鍵動態(tài)變化因素,均難以避免出現(xiàn)交易沿著一條固定路徑傳播,導(dǎo)致路由選擇中心化問題.文獻(xiàn)[18]僅考慮跨鏈交易手續(xù)費,在一定程度上降低手續(xù)費開銷,但易使交易信息沿著較遠(yuǎn)、較差支付路徑進(jìn)行中轉(zhuǎn),造成跨鏈支付延遲完成甚至導(dǎo)致支付失敗.AMPS盡管在路由選擇時可同時引入中間手續(xù)費與路徑距離因素,進(jìn)行多目標(biāo)的動態(tài)路由選擇,也能夠一定程度上緩解了路由選擇中心化,但與文獻(xiàn)[18]所提出的方案一樣,均未考慮歷史行為不端的低信譽節(jié)點惡意違約,延遲甚至拒絕履行交易路由服務(wù),破壞交易.此外,也都未考慮引入節(jié)點手續(xù)費報價機制后的報價隱私問題. 基于MFRA路由方案,本文采用InterLeger Protocol跨鏈協(xié)議(ILP)在本地環(huán)境實現(xiàn)跨鏈支付方案,創(chuàng)建InterLedger結(jié)算引擎的框架是開源的[29].ILP現(xiàn)在由W3C的InterLedger支付社區(qū)組共同開發(fā)和維護(hù),采用基于HTLC的泛化協(xié)議(Hashed Time-Lock Agreements, HTLAs),實現(xiàn)了完整的資金鎖定與交易確認(rèn)機制.接下來分別對MFRA的通信時延與跨鏈交易的時延進(jìn)行分析. 1)MFRA通信時延分析.為了清楚地展示MFRA跨鏈支付方案中基于拍賣機制的節(jié)點選擇方案對跨鏈延遲的影響,在基于ILP協(xié)議搭建的本地網(wǎng)絡(luò)環(huán)境下測試了拍賣機制額外引起的通信延遲.從圖7可以看到,隨著參與中繼節(jié)點服務(wù)拍賣的候選節(jié)點數(shù)量的增加,執(zhí)行反向拍賣所需的時間不斷增加;但是當(dāng)有100個節(jié)點參與時,整個拍賣機制造成的通信延遲仍然只有70 ms.基于多因素反向Vickrey拍賣的時間復(fù)雜度為O(logn).因此,引入的反向Vickrey拍賣機制在降低中間手續(xù)費的同時,不會影響跨鏈支付的時間. Fig.7 Communication latency for reverse Vickrey auction Fig.8 Transaction latency of cross-blockchain payment 2)MFRA交易時延分析.為了綜合評估基于MFRA路由方案的跨鏈方案,在搭建本地測試網(wǎng)絡(luò)上,測試MFRA跨鏈支付方案在不同交易金額與不同跳數(shù)通道下的跨鏈交易時延. 首先,測試了單跳中繼節(jié)點下,6種不同的貨幣組合的交易時延,其中每個組合包含3類節(jié)點,分別是交易發(fā)起者節(jié)點、交易的中繼節(jié)點和交易接收者節(jié)點.交易發(fā)起者賬戶中只有貨幣x,而接收者只接受貨幣y,中繼節(jié)點同時擁有2種貨幣,可為跨鏈交易提供中繼服務(wù),滿足中繼節(jié)點要求的有30個候選者節(jié)點.圖8展示了不同交易金額下的交易延遲,當(dāng)從交易發(fā)起者到接收者的支付環(huán)節(jié)建立后,整個交易將直接支付.此設(shè)置使中繼節(jié)點的單筆付款的托管金額非常大,這意味著更高的風(fēng)險. 在InterLedger優(yōu)化版本ILPv4的生態(tài)系統(tǒng)中,傳輸層使用了STREAM協(xié)議.STREAM協(xié)議的一個功能是將整個交易分成幾個小的交易包,然后完成支付,從而降低了中繼節(jié)點的風(fēng)險.但是這樣的設(shè)置也意味著較大的交易會被分割成更多的小交易,增加了網(wǎng)絡(luò)通信的負(fù)擔(dān)和交易延遲.如圖8所示,當(dāng)支付金額僅為10 USD時,交易延遲在0.048~0.184 s之間;當(dāng)支付金額為100 USD時,交易延遲達(dá)到2.1~6.9 s.顯然,這種延遲通常是可以接受的.因此,基于MFRA路由的跨鏈支付方案可適用于支付通道網(wǎng)絡(luò)下的小額跨鏈支付場景,例如在線醫(yī)療咨詢. 其次,探討了在多個中繼節(jié)點組成的多跳支付通道中,基于MFRA路由方案的跨鏈交易時延.在圖8所示的實驗中,每種貨幣組合只需要經(jīng)過一個中繼節(jié)點的單跳通道.將交易金額設(shè)置為30 USD,結(jié)果如表2所示.前3行包含3種貨幣并需要2個中繼節(jié)點,最后一行包含4種貨幣并需要3個中繼節(jié)點.延遲仍然保持在秒級,滿足實際應(yīng)用需求. 目前支付通道網(wǎng)絡(luò)的路由研究大多關(guān)注節(jié)點間路徑距離等因素對交易處理效率的提升,忽視可能出現(xiàn)的高昂交易手續(xù)費對于小額支付場景中跨鏈交易發(fā)起者路由選擇偏好的影響.本文以節(jié)點手續(xù)費報價、路徑距離和代表交易成功率的節(jié)點歷史信譽,定義了跨鏈中繼節(jié)點服務(wù)質(zhì)量評價函數(shù),提出了一種基于熵權(quán)法的多因素反向Vickrey拍賣路由選擇方案MFRA來優(yōu)化支付通道網(wǎng)絡(luò)中繼節(jié)點選擇,綜合評估候選中繼節(jié)點的質(zhì)量來選擇獲勝節(jié)點.本文提出的MFRA多因素反向拍賣路由方案通過建立候選節(jié)點的等效報價函數(shù),將候選節(jié)點的非價格屬性因素轉(zhuǎn)化為價格屬性,解決了在多屬性拍賣中無Vickrey拍賣讓節(jié)點誠實出價的問題.在最終手續(xù)費金額的確定過程中,MFRA路由方案引入了以2為基數(shù)的指數(shù)型差分隱私,避免最終路由過程與成交價被惡意節(jié)點推測.安全分析和量化實驗證明,MFRA路由方法可以優(yōu)化中繼節(jié)點的選擇,有效保障交易參與節(jié)點的報價隱私,實現(xiàn)了支付通道網(wǎng)絡(luò)跨鏈路由過程的低花費與隱私性. 作者貢獻(xiàn)聲明:張謙負(fù)責(zé)完成實驗并撰寫論文;曹晟提出了算法思路和實驗方案;張小松提出指導(dǎo)意見并修改論文.3.2 基于多因素反向拍賣的路由選擇方案














3.3 基于MFRA的跨鏈支付
4 安全性分析
4.1 誠實報價
4.2 報價隱私
4.3 原像安全
5 仿真實驗
5.1 候選節(jié)點的綜合評分比較

5.2 中繼節(jié)點最終手續(xù)費開銷對比



5.3 MFRA路由方案的時延分析


6 結(jié) 論