• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      基于附鏈的容遲網(wǎng)絡(luò)區(qū)塊鏈貿(mào)易機(jī)制

      2020-12-10 11:31:40
      通信學(xué)報(bào) 2020年11期
      關(guān)鍵詞:挖礦聯(lián)通共識(shí)

      (遼寧工程技術(shù)大學(xué)電子與信息工程學(xué)院,遼寧 葫蘆島 125105)

      1 引言

      區(qū)塊鏈技術(shù)能使相互之間不信任的用戶在不依賴可信第三方的情況下進(jìn)行安全貿(mào)易[1],其核心優(yōu)勢(shì)在于非中心化,通過使用數(shù)據(jù)加密、分布式共識(shí)機(jī)制、激勵(lì)機(jī)制,改變了中心化貿(mào)易方法,有效地避免了當(dāng)前貿(mào)易過程中的高成本、低效率和不安全數(shù)據(jù)存儲(chǔ)等缺陷。近年來,以太坊的快速發(fā)展促進(jìn)了學(xué)術(shù)界和工業(yè)界對(duì)區(qū)塊鏈技術(shù)開展了新一輪的研究和部署[2-6],但已有的研究均建立在區(qū)塊鏈能運(yùn)行在持續(xù)聯(lián)通網(wǎng)絡(luò)的條件下,未涉及網(wǎng)絡(luò)在非持續(xù)聯(lián)通(如容遲網(wǎng)絡(luò))狀態(tài)下如何利用區(qū)塊鏈技術(shù)進(jìn)行貿(mào)易。

      已有的調(diào)查發(fā)現(xiàn),2019 年53.6%的全球用戶都已接入互聯(lián)網(wǎng)中[7],通過固定寬帶和移動(dòng)網(wǎng)絡(luò)接入互聯(lián)網(wǎng)的分別占14.5%和83%,然而,尚有近67.1億人沒有接入或者非實(shí)時(shí)接入互聯(lián)網(wǎng)。已有的臨時(shí)網(wǎng)絡(luò)和容遲網(wǎng)絡(luò)利用偶發(fā)連接可以為非實(shí)時(shí)情況提供一定質(zhì)量保證的接入服務(wù),但不能滿足區(qū)塊鏈運(yùn)行的需求。如果使遠(yuǎn)離城市的山區(qū)、鄉(xiāng)村或者海島上的居民加入?yún)^(qū)塊鏈網(wǎng)絡(luò)開展貿(mào)易和挖礦活動(dòng),網(wǎng)絡(luò)接入服務(wù)和區(qū)塊鏈技術(shù)的支持是2 個(gè)必不可少的前提。

      對(duì)于網(wǎng)絡(luò)接入服務(wù),可以采用一些服務(wù)提供商提供的社區(qū)基站方案來解決,對(duì)內(nèi)可為本地的用戶搭建社區(qū)局域網(wǎng)絡(luò),對(duì)外通過衛(wèi)星接入互聯(lián)網(wǎng),可提供有時(shí)延的網(wǎng)絡(luò)接入服務(wù)。Blattman 等[8]建立容遲網(wǎng)絡(luò)為偏遠(yuǎn)山區(qū)、海島等提供遠(yuǎn)程互聯(lián)網(wǎng)接入服務(wù)。以容遲網(wǎng)絡(luò)為基礎(chǔ),Hu 等[9]提出了基于以太坊的時(shí)延支付方案,重點(diǎn)關(guān)注了網(wǎng)絡(luò)中斷情況下生成的數(shù)據(jù)總量與節(jié)點(diǎn)帶寬對(duì)區(qū)塊上傳的影響。Alaslani等[10]研究了物聯(lián)網(wǎng)中影響區(qū)塊鏈貿(mào)易時(shí)間的因素,計(jì)算了物聯(lián)網(wǎng)節(jié)點(diǎn)之間采用區(qū)塊鏈進(jìn)行貿(mào)易的時(shí)延。但上述2 個(gè)文獻(xiàn)均未對(duì)區(qū)塊鏈在該網(wǎng)絡(luò)下的適應(yīng)性做表述。對(duì)于區(qū)塊鏈技術(shù),加密貨幣的應(yīng)用使其具有非中心化貿(mào)易的特征[11],但需要持續(xù)的網(wǎng)絡(luò)連接,保證貿(mào)易主體和協(xié)同者之間進(jìn)行大量的數(shù)據(jù)交互。在不能保證實(shí)時(shí)聯(lián)通的容遲網(wǎng)絡(luò),區(qū)塊鏈擴(kuò)展技術(shù)[12]可為區(qū)塊鏈部署提供一定的支持,以網(wǎng)絡(luò)中斷為分界,將容遲網(wǎng)絡(luò)分割為網(wǎng)絡(luò)聯(lián)通和非聯(lián)通2 個(gè)階段,利用擴(kuò)展技術(shù)將網(wǎng)絡(luò)非聯(lián)通時(shí)生成的區(qū)塊在聯(lián)通時(shí)附加到主鏈上。Worley 等[13]介紹了已有的側(cè)鏈技術(shù),指出側(cè)鏈可以有不同于主鏈的共識(shí)協(xié)議,但如何有效地將側(cè)鏈整合到主鏈上依然是待研究的問題。

      綜上,如何在容遲網(wǎng)絡(luò)支持節(jié)點(diǎn)之間的區(qū)塊鏈貿(mào)易是本文解決的問題。本文的貢獻(xiàn)如下。

      1)構(gòu)建了容遲網(wǎng)絡(luò)區(qū)塊鏈貿(mào)易模型,以節(jié)點(diǎn)能力屬性為基準(zhǔn),設(shè)計(jì)了節(jié)點(diǎn)可參與區(qū)塊鏈活動(dòng)的類型,提出了容遲網(wǎng)絡(luò)區(qū)塊鏈貿(mào)易的2 種不同類型及其識(shí)別依據(jù)。

      2)設(shè)計(jì)了新的區(qū)塊數(shù)據(jù)結(jié)構(gòu),以此為基礎(chǔ),提出了從屬于主鏈的附鏈定義、附鏈區(qū)塊打包方法、附鏈區(qū)塊挖掘方法、附鏈區(qū)塊共識(shí)方法及網(wǎng)絡(luò)重聯(lián)通時(shí)附鏈追加到主鏈的確認(rèn)共識(shí)方法。

      3)從理論上證明了提出的容遲網(wǎng)絡(luò)區(qū)塊鏈貿(mào)易機(jī)制具有持續(xù)性、安全性和容錯(cuò)性的特征,從實(shí)驗(yàn)?zāi)M上分析了所提機(jī)制的有效性。

      2 容遲網(wǎng)絡(luò)區(qū)塊鏈模型

      諾基亞使用Kuha 基站[14]的方式為難以建立基礎(chǔ)通信設(shè)施的區(qū)域提供周期性網(wǎng)絡(luò)互聯(lián)服務(wù)。該區(qū)域內(nèi)節(jié)點(diǎn)通過基站設(shè)備(由Kuha 提供)實(shí)現(xiàn)相互通信,稱之為社區(qū),一個(gè)社區(qū)就是一個(gè)局域網(wǎng)絡(luò)?;驹O(shè)備與衛(wèi)星進(jìn)行連接和通信,為社區(qū)內(nèi)節(jié)點(diǎn)提供帶有時(shí)延的互聯(lián)網(wǎng)連接服務(wù)。與Kuha 類似,構(gòu)建帶有衛(wèi)星通信的容遲網(wǎng)絡(luò),如圖1 所示。依據(jù)節(jié)點(diǎn)(用戶)所在地理位置將容遲網(wǎng)絡(luò)分成2 個(gè)表示性的區(qū)域:網(wǎng)絡(luò)實(shí)時(shí)聯(lián)通區(qū)域(以城市為代表)和網(wǎng)絡(luò)非實(shí)時(shí)聯(lián)通區(qū)域(以非城市為代表)。處于實(shí)時(shí)聯(lián)通區(qū)域的節(jié)點(diǎn)很少發(fā)生網(wǎng)絡(luò)中斷的情形。位于非實(shí)時(shí)聯(lián)通區(qū)域基于運(yùn)營(yíng)商收益考慮,僅建有少量的基礎(chǔ)設(shè)施,通過衛(wèi)星中繼接入互聯(lián)網(wǎng),其網(wǎng)絡(luò)連接狀態(tài)周期性處于非聯(lián)通狀態(tài),該區(qū)域內(nèi)部的節(jié)點(diǎn)通過無線或有線方式互通。定義“全網(wǎng)”是指由實(shí)時(shí)聯(lián)通區(qū)域和處于網(wǎng)絡(luò)聯(lián)通周期的非實(shí)時(shí)聯(lián)通區(qū)域內(nèi)的節(jié)點(diǎn)組成的網(wǎng)絡(luò)。定義“局域網(wǎng)”是指處于非實(shí)時(shí)聯(lián)通區(qū)域的連接到同一基站設(shè)備的節(jié)點(diǎn)組成的網(wǎng)絡(luò)。假設(shè)局域網(wǎng)絡(luò)為V,,N表示自然數(shù),vi表示第i個(gè)非城市區(qū)域。在每個(gè)非城市區(qū)域內(nèi),包含節(jié)點(diǎn)和運(yùn)營(yíng)商服務(wù)器(基站)。

      圖1 容遲網(wǎng)絡(luò)區(qū)塊鏈模型

      區(qū)塊鏈網(wǎng)絡(luò)建立完成后,可以容納節(jié)點(diǎn)之間的貿(mào)易,該網(wǎng)絡(luò)下的區(qū)塊鏈節(jié)點(diǎn)活動(dòng)詳細(xì)描述如圖2所示。區(qū)塊鏈網(wǎng)絡(luò)中存在2 類節(jié)點(diǎn):輕量級(jí)節(jié)點(diǎn)和完全節(jié)點(diǎn)。輕量級(jí)節(jié)點(diǎn)以手機(jī)設(shè)備為代表,安裝輕量級(jí)的區(qū)塊鏈軟件,具有低計(jì)算、存儲(chǔ)和帶寬能力,在區(qū)塊鏈中只能和其他節(jié)點(diǎn)發(fā)起貿(mào)易。完全節(jié)點(diǎn)以計(jì)算機(jī)設(shè)備為代表,安裝完全的區(qū)塊鏈軟件,具有一定的計(jì)算、存儲(chǔ)和帶寬能力,在區(qū)塊鏈中能進(jìn)行貿(mào)易,參與消息轉(zhuǎn)發(fā)、挖礦、共識(shí)等活動(dòng)??紤]非城市網(wǎng)絡(luò)會(huì)發(fā)生連接斷開的情況,將貿(mào)易類型分為2 種:貿(mào)易發(fā)起者在非實(shí)時(shí)聯(lián)通區(qū)域內(nèi),貿(mào)易發(fā)起者在非實(shí)時(shí)聯(lián)通區(qū)域外。當(dāng)網(wǎng)絡(luò)正常時(shí),區(qū)域vi內(nèi)的節(jié)點(diǎn)與其他區(qū)域節(jié)點(diǎn)一樣參與區(qū)塊鏈活動(dòng),當(dāng)網(wǎng)絡(luò)中斷時(shí),vi內(nèi)節(jié)點(diǎn)在本地設(shè)備上記錄中斷的時(shí)間tinter。設(shè)網(wǎng)絡(luò)重聯(lián)通時(shí)刻為tconn、tinter和tconn之間的時(shí)間段,節(jié)點(diǎn)在運(yùn)營(yíng)商服務(wù)器的支持下會(huì)維持封閉的局域P2P 網(wǎng)絡(luò),此時(shí),在該網(wǎng)絡(luò)中運(yùn)行區(qū)塊鏈應(yīng)用是可行的。具體來說,位于同一局域網(wǎng)的節(jié)點(diǎn)相互之間是可以通過運(yùn)營(yíng)商服務(wù)器進(jìn)行相互通信,以此為基礎(chǔ)部署區(qū)塊鏈,完成對(duì)網(wǎng)絡(luò)非聯(lián)通狀態(tài)局域網(wǎng)節(jié)點(diǎn)生成貿(mào)易記錄的打包、挖礦和共識(shí)過程。

      圖2 容遲網(wǎng)絡(luò)區(qū)塊鏈節(jié)點(diǎn)活動(dòng)

      如圖2 所示,當(dāng)前時(shí)刻t(tinter≤t≤tconn)節(jié)點(diǎn)可進(jìn)行的活動(dòng)有:1)繼續(xù)進(jìn)行tinter之前已經(jīng)開始的挖礦活動(dòng),風(fēng)險(xiǎn)是當(dāng)網(wǎng)絡(luò)恢復(fù)時(shí),由于時(shí)延,該數(shù)據(jù)塊已經(jīng)被其他節(jié)點(diǎn)挖掘出而造成算力浪費(fèi);2)放棄tinter之前已經(jīng)開始的挖礦活動(dòng),在本地局域網(wǎng)絡(luò)內(nèi)尋找時(shí)間戳在tinter之后的貿(mào)易記錄并打包成塊,開展挖礦活動(dòng);3)中斷當(dāng)前的驗(yàn)證活動(dòng),停止更新本地的區(qū)塊鏈賬簿,記錄中斷時(shí)區(qū)塊鏈最后一塊的哈希值。網(wǎng)絡(luò)連接中斷時(shí),在本地局域網(wǎng)絡(luò)內(nèi)產(chǎn)生的新貿(mào)易記錄會(huì)被本局域網(wǎng)節(jié)點(diǎn)進(jìn)行打包、挖礦和共識(shí),追加在本地的區(qū)塊鏈中。當(dāng)前時(shí)刻(ttconn≤t)時(shí),網(wǎng)絡(luò)已經(jīng)恢復(fù)連接,節(jié)點(diǎn)可進(jìn)行的活動(dòng)有:1)下載最新的區(qū)塊鏈以同步本地賬簿;2)網(wǎng)絡(luò)連接恢復(fù)時(shí)將[tinter,tconn]周期內(nèi)追加的區(qū)塊在整個(gè)區(qū)塊鏈網(wǎng)絡(luò)進(jìn)行確認(rèn)共識(shí),確認(rèn)后更新入本地賬簿中;3)未被挖掘的斷網(wǎng)時(shí)產(chǎn)生的貿(mào)易記錄全部由本地節(jié)點(diǎn)挖掘,網(wǎng)絡(luò)聯(lián)通時(shí)產(chǎn)生的貿(mào)易記錄由全網(wǎng)節(jié)點(diǎn)挖掘。

      3 容遲網(wǎng)絡(luò)區(qū)塊鏈貿(mào)易機(jī)制

      容遲網(wǎng)絡(luò)在網(wǎng)絡(luò)中斷時(shí)形成局域網(wǎng),網(wǎng)內(nèi)節(jié)點(diǎn)生成的貿(mào)易記錄只能在局域網(wǎng)內(nèi)部被接收,節(jié)點(diǎn)當(dāng)前正在進(jìn)行的挖礦活動(dòng)會(huì)因網(wǎng)絡(luò)較大的時(shí)延而有很大的概率不能追加到區(qū)塊鏈上,節(jié)點(diǎn)賬戶信息不能及時(shí)更新,從而可能造成虛假貿(mào)易,因此局域網(wǎng)生成的區(qū)塊在網(wǎng)絡(luò)重聯(lián)通時(shí)需要追加到區(qū)塊鏈中且不能對(duì)局域網(wǎng)外正在挖礦的節(jié)點(diǎn)造成不利影響。針對(duì)上述網(wǎng)絡(luò)非聯(lián)通情況下的特性和需求,本文修改了附鏈區(qū)塊數(shù)據(jù)結(jié)構(gòu),將區(qū)塊鏈結(jié)構(gòu)更改成可容納分支的鏈?zhǔn)浇Y(jié)構(gòu),設(shè)計(jì)了附鏈區(qū)塊打包方法、挖掘方法、共識(shí)方法及網(wǎng)絡(luò)重聯(lián)通時(shí)的確認(rèn)共識(shí)方法。

      3.1 區(qū)塊數(shù)據(jù)結(jié)構(gòu)

      在企業(yè)級(jí)網(wǎng)絡(luò)中,已有的區(qū)塊鏈數(shù)據(jù)結(jié)構(gòu)保證了區(qū)塊能以鏈?zhǔn)浇Y(jié)構(gòu)進(jìn)行分布式存儲(chǔ),但嚴(yán)重限制了區(qū)塊的可擴(kuò)展性。為了滿足在容遲網(wǎng)絡(luò)中能利用區(qū)塊鏈進(jìn)行貿(mào)易,在主鏈上容納網(wǎng)絡(luò)中斷時(shí)局域網(wǎng)生成的區(qū)塊且不對(duì)當(dāng)前正在挖礦的節(jié)點(diǎn)產(chǎn)生影響,本文修改了附鏈區(qū)塊數(shù)據(jù)結(jié)構(gòu),如圖3 所示。

      區(qū)域vi的網(wǎng)絡(luò)處于非聯(lián)通狀態(tài)時(shí),節(jié)點(diǎn)以tinter為分界點(diǎn),通過查詢貿(mào)易記錄時(shí)間戳或接收到該貿(mào)易記錄的時(shí)刻將貿(mào)易記錄分成2 類:tinter之前的貿(mào)易記錄和[tinter,tconn]范圍的貿(mào)易記錄。以此為基礎(chǔ),可采用3 種方案對(duì)貿(mào)易記錄進(jìn)行打包成區(qū)塊:全部打包tinter之前的貿(mào)易記錄;全部打包在[tinter,tconn]范圍的貿(mào)易記錄;混合打包以上2 種貿(mào)易記錄。第一種和第三種方案在網(wǎng)絡(luò)重聯(lián)通時(shí),由于較長(zhǎng)的時(shí)延,有極大的可能性導(dǎo)致該塊不能被追加到區(qū)塊鏈主鏈上,雖然浪費(fèi)算力,但能獲取到挖礦的獎(jiǎng)勵(lì)。第二種方案在網(wǎng)絡(luò)重聯(lián)通時(shí)以附鏈的方式追加到主鏈,由于該挖礦屬于區(qū)域內(nèi)的活動(dòng),沒有挖礦獎(jiǎng)勵(lì),但收取貿(mào)易記錄內(nèi)聲明的貿(mào)易手續(xù)費(fèi)。

      圖3 附鏈及修改后的區(qū)塊數(shù)據(jù)結(jié)構(gòu)

      區(qū)域vi內(nèi)節(jié)點(diǎn)將貿(mào)易記錄按圖3 修改后的區(qū)塊數(shù)據(jù)結(jié)構(gòu)進(jìn)行打包成區(qū)塊,將區(qū)塊標(biāo)識(shí)位置1,說明該塊是網(wǎng)絡(luò)處于非聯(lián)通狀態(tài)時(shí)挖掘出來的,且附加到主鏈上。將區(qū)塊標(biāo)識(shí)位置0,說明該塊是網(wǎng)絡(luò)聯(lián)通狀態(tài)下挖掘出來的,參與全網(wǎng)區(qū)塊共識(shí),確定是否追加到主鏈上,如果在網(wǎng)絡(luò)非聯(lián)通情況下將區(qū)塊標(biāo)識(shí)位置0,則由于網(wǎng)絡(luò)中斷時(shí)延,有很大的可能性導(dǎo)致該塊不能被追加到主鏈上。網(wǎng)絡(luò)非聯(lián)通情況下,父哈希值數(shù)據(jù)來源于網(wǎng)絡(luò)中斷時(shí)本地區(qū)塊鏈最后一個(gè)區(qū)塊的哈希值。挖礦難度可以依據(jù)區(qū)塊鏈更新難度的方式,從網(wǎng)絡(luò)中獲取。

      3.2 附鏈區(qū)塊挖掘

      附鏈區(qū)塊挖掘是在容遲網(wǎng)絡(luò)非聯(lián)通階段內(nèi)由局域網(wǎng)內(nèi)部節(jié)點(diǎn)進(jìn)行的區(qū)塊生成的活動(dòng),與比特幣網(wǎng)絡(luò)挖礦方法相同。在圖3 所示的區(qū)塊數(shù)據(jù)結(jié)構(gòu)下,在一次非聯(lián)通階段只能生成一個(gè)區(qū)塊,因此需要依據(jù)上一次挖礦時(shí)間對(duì)挖礦難度進(jìn)行動(dòng)態(tài)調(diào)整。挖礦難度計(jì)算方法為

      其中,BDIFF 是當(dāng)前的挖礦難度;BMAX 是初始數(shù)值;BT 是當(dāng)前挖礦的目標(biāo)值;TA 是全網(wǎng)平均挖礦時(shí)間,即塊生成時(shí)間(當(dāng)前比特幣網(wǎng)絡(luò)塊生成時(shí)間約為10 min);TI 是網(wǎng)絡(luò)非聯(lián)通時(shí)間;CA 是區(qū)塊鏈網(wǎng)絡(luò)平均算力;CI 是非聯(lián)通網(wǎng)絡(luò)節(jié)點(diǎn)的平均算力。運(yùn)營(yíng)商服務(wù)器負(fù)責(zé)管理vi內(nèi)節(jié)點(diǎn)網(wǎng)絡(luò)接入功能,可按照全網(wǎng)算力的測(cè)算方法統(tǒng)計(jì)出網(wǎng)內(nèi)節(jié)點(diǎn)的平均算力CI,預(yù)估網(wǎng)絡(luò)非聯(lián)通時(shí)間TI,運(yùn)營(yíng)商服務(wù)器檢測(cè)本次網(wǎng)絡(luò)非聯(lián)通時(shí)間內(nèi)局域網(wǎng)節(jié)點(diǎn)挖礦的區(qū)塊數(shù)(可通過需要共識(shí)的區(qū)塊數(shù)確定),初始設(shè)置CI=CA、TI=TA,此時(shí),局域網(wǎng)挖礦難度和全網(wǎng)一致,記錄局域網(wǎng)節(jié)點(diǎn)挖出的第一個(gè)區(qū)塊的時(shí)間,該時(shí)間為TI,統(tǒng)計(jì)出全網(wǎng)挖礦的平均時(shí)間TA 和平均算力CA,即可計(jì)算出CI 值。然后依據(jù)每次網(wǎng)絡(luò)非聯(lián)通時(shí)節(jié)點(diǎn)挖掘出的第一個(gè)區(qū)塊的時(shí)間動(dòng)態(tài)調(diào)整BDIFF 數(shù)值,運(yùn)營(yíng)商服務(wù)器在網(wǎng)絡(luò)非聯(lián)通時(shí)將該值廣播到所在區(qū)域節(jié)點(diǎn),區(qū)域內(nèi)節(jié)點(diǎn)就按照此難度值進(jìn)行挖礦。

      3.3 附鏈區(qū)塊共識(shí)

      網(wǎng)絡(luò)非聯(lián)通情況下的局域網(wǎng)共識(shí)機(jī)制與工作量證明類似,需要檢查區(qū)塊標(biāo)識(shí)位是否置1,若非1 則放棄該塊共識(shí)(即使是網(wǎng)絡(luò)聯(lián)通正常時(shí)挖掘出的區(qū)塊,即區(qū)塊標(biāo)識(shí)位為0,也會(huì)因?yàn)楣沧R(shí)節(jié)點(diǎn)比例不夠而被放棄,從而浪費(fèi)算力);檢查難度設(shè)置是否與本地難度一致;按照工作量證明進(jìn)行驗(yàn)證,需要注意的是,節(jié)點(diǎn)沒有挖礦獎(jiǎng)勵(lì),僅收取貿(mào)易處理手續(xù)費(fèi)。網(wǎng)絡(luò)非聯(lián)通狀態(tài)下附鏈區(qū)塊共識(shí)算法可簡(jiǎn)述為:步驟①,驗(yàn)證區(qū)塊標(biāo)識(shí),是否為網(wǎng)絡(luò)非聯(lián)通時(shí)生成的區(qū)塊;步驟②,驗(yàn)證挖礦難度;步驟③,統(tǒng)計(jì)該區(qū)塊被驗(yàn)證通過的次數(shù)(達(dá)到區(qū)塊被全網(wǎng)節(jié)點(diǎn)驗(yàn)證通過的比例),具體如算法1 所示。

      算法1網(wǎng)絡(luò)非聯(lián)通條件下附鏈區(qū)塊共識(shí)算法

      網(wǎng)絡(luò)非聯(lián)通狀態(tài)下挖掘的區(qū)塊可能存在2 個(gè)問題:1)區(qū)塊造假,節(jié)點(diǎn)由于網(wǎng)絡(luò)非聯(lián)通狀態(tài)下挖礦的難度較低,且參與共識(shí)的節(jié)點(diǎn)相對(duì)較少的特征,在網(wǎng)絡(luò)聯(lián)通時(shí),私自傳播區(qū)塊,占用網(wǎng)絡(luò)帶寬且浪費(fèi)算力;2)虛假貿(mào)易,用戶利用貿(mào)易時(shí)延,超出賬戶余額進(jìn)行貿(mào)易,例如用戶John 賬戶余額為4 虛擬幣,在網(wǎng)絡(luò)聯(lián)通時(shí),John 將3 虛擬幣給用戶Bob,該貿(mào)易未追加到區(qū)塊鏈主鏈中,在網(wǎng)絡(luò)非聯(lián)通時(shí),John將2 虛擬幣貿(mào)易給用戶Alice,這2 條貿(mào)易均可能成功被記錄到區(qū)塊鏈。為了解決上述問題,在附鏈區(qū)塊追加到主鏈時(shí),需要進(jìn)行確認(rèn)共識(shí)。

      3.4 附鏈區(qū)塊追加

      網(wǎng)絡(luò)非聯(lián)通狀態(tài)下經(jīng)共識(shí)后的區(qū)塊,暫時(shí)存儲(chǔ)在局域網(wǎng)節(jié)點(diǎn)處,在網(wǎng)絡(luò)聯(lián)通時(shí),每個(gè)節(jié)點(diǎn)將該區(qū)塊廣播到全網(wǎng)中。接收到該區(qū)塊的節(jié)點(diǎn),利用哈希函數(shù)計(jì)算該區(qū)塊的哈希值,并臨時(shí)存儲(chǔ)在本地,按照預(yù)定的閾值,當(dāng)接收相同哈希值的區(qū)塊次數(shù)超過閾值時(shí),認(rèn)為該區(qū)塊為非虛假區(qū)塊,解決第一個(gè)問題。網(wǎng)絡(luò)中的節(jié)點(diǎn)在檢查區(qū)塊真實(shí)性后,將該區(qū)塊每條貿(mào)易發(fā)起人的賬戶余額與區(qū)塊鏈賬簿中該用戶的賬戶余額進(jìn)行對(duì)比,以確定該區(qū)塊是否有虛假貿(mào)易,解決第二個(gè)問題。附鏈區(qū)塊追加算法(即確認(rèn)共識(shí)算法)可簡(jiǎn)述為:步驟①,驗(yàn)證區(qū)塊標(biāo)識(shí);步驟②,驗(yàn)證同一區(qū)塊驗(yàn)證次數(shù);步驟③,驗(yàn)證區(qū)塊內(nèi)貿(mào)易記錄,具體如算法2 所示。

      算法2確認(rèn)共識(shí)算法

      4 理論分析和性能評(píng)估

      評(píng)定區(qū)塊鏈性能的基本屬性包括持續(xù)性和安全性[15-16]。持續(xù)性保證了區(qū)塊鏈服務(wù)的可用性,安全性保證了在同一時(shí)刻有且僅有一個(gè)區(qū)塊能被節(jié)點(diǎn)接收。評(píng)定區(qū)塊鏈性能的擴(kuò)展屬性為容錯(cuò)性,保證區(qū)塊鏈服務(wù)可正常工作條件下,網(wǎng)絡(luò)中容許惡意節(jié)點(diǎn)的比例。

      4.1 理論分析

      定義1持續(xù)性。在每個(gè)時(shí)間段內(nèi),生成至少一個(gè)新的區(qū)塊。

      證明在區(qū)塊鏈中,礦工將多條貿(mào)易記錄打包成區(qū)塊,以達(dá)到預(yù)期的收益。依據(jù)Btime,在一個(gè)時(shí)間單位內(nèi),會(huì)有多個(gè)貿(mào)易記錄到達(dá)礦工節(jié)點(diǎn)。在τ內(nèi),貿(mào)易手續(xù)費(fèi)滿足的貿(mào)易被礦工打包,則生成下一個(gè)區(qū)塊的時(shí)間為。因此,礦工通常在時(shí)間內(nèi)生成一個(gè)新的區(qū)塊。

      證畢。

      定義2安全性。在每個(gè)時(shí)間段內(nèi),即使由不同的礦工生成多個(gè)區(qū)塊,也不會(huì)產(chǎn)生分支。

      定義2 處于非聯(lián)通狀態(tài)下的容遲網(wǎng)絡(luò),假設(shè)標(biāo)號(hào)為0~N的區(qū)塊已經(jīng)追加到區(qū)塊鏈中,在下一個(gè)時(shí)間段內(nèi),遵守區(qū)塊鏈協(xié)議的礦工會(huì)共識(shí)同一標(biāo)號(hào)為N+1 的區(qū)塊。

      證明依據(jù)定義1,在標(biāo)號(hào)為0~N的區(qū)塊被追加至區(qū)塊鏈后,在一個(gè)時(shí)間段內(nèi),有至少一個(gè)標(biāo)號(hào)為N+1 的區(qū)塊由礦工生成。在新區(qū)塊生成的同時(shí),礦工會(huì)將該區(qū)塊立刻廣播到網(wǎng)絡(luò)中,而在有限時(shí)間內(nèi),該區(qū)塊就會(huì)被網(wǎng)絡(luò)中其他節(jié)點(diǎn)接收到。假設(shè)節(jié)點(diǎn)i在t0時(shí)刻接收到該時(shí)間段內(nèi)的第一個(gè)區(qū)塊BN+1,則i在t0+τ時(shí)間內(nèi)持續(xù)監(jiān)聽和接收其他區(qū)塊。t0+τ時(shí)刻之后,依據(jù)算法1,i選擇時(shí)間戳最小的區(qū)塊作為標(biāo)號(hào)為N+1 的區(qū)塊加入到區(qū)塊鏈中。

      因?yàn)?,一國的法律文化與一國的政治、經(jīng)濟(jì)相互交融。不同政治體制、經(jīng)濟(jì)發(fā)展道路的國家所表現(xiàn)的法律文化往往大相徑庭,此時(shí)要直接通過法律文化變化的方式發(fā)起自主的法律趨同,不僅理論上不可能,實(shí)踐上也難以進(jìn)行。不過,法律文化的多樣性是人類社會(huì)的基本特征,一國的法律文化也并非封閉、守舊的,文化的交流在“地球村”的背景下一直在進(jìn)行,此時(shí),若一國的法律文化在兩國交流的過程中被他國理解、接受并認(rèn)可,進(jìn)而產(chǎn)生法律文化的借鑒與融合,致使一國的法律文化發(fā)生變化,則可能使原本擁有完全不同的政治、經(jīng)濟(jì)發(fā)展背景的國家自主地向經(jīng)濟(jì)發(fā)達(dá)國家趨同,甚至相互趨同。而這里的關(guān)鍵因素就在于法律的相互理解、接受、認(rèn)可,即法律認(rèn)同。

      依據(jù)以上過程,網(wǎng)絡(luò)中的節(jié)點(diǎn)都依據(jù)自己接收的新區(qū)塊,確定標(biāo)號(hào)為N+1 的區(qū)塊,該區(qū)塊的時(shí)間戳為TSN+1,且t?TSN+1>0,有式(2)所示密度計(jì)算式成立。

      則有

      在一段時(shí)間結(jié)束時(shí),即t=TSN+1+τ時(shí)刻,標(biāo)號(hào)為N+1 的區(qū)塊被節(jié)點(diǎn)接收的概率為

      由式(4)可以得到,當(dāng)時(shí)間戳大于TSN+1的區(qū)塊到來時(shí),其監(jiān)聽持續(xù)時(shí)間t'要小于TSN+1+τ,依據(jù)概率論的置信區(qū)間原則,該區(qū)塊被接收的概率降低,即

      接收新區(qū)塊的等待時(shí)間τ是影響區(qū)塊被接收概率的關(guān)鍵參數(shù),該參數(shù)可依據(jù)網(wǎng)絡(luò)狀態(tài)和實(shí)際需求進(jìn)行動(dòng)態(tài)調(diào)整,可取值為τ=12ω(以太坊區(qū)塊鏈)或τ=12.6ω(比特幣區(qū)塊鏈),ω∈[1,10]。當(dāng)ω=2時(shí),時(shí)間戳為TSN+1的新塊被接收的概率為0.865;當(dāng)ω=6 時(shí),時(shí)間戳為TSN+1的新區(qū)塊被接收的概率為0.99。

      證畢。

      定義3容錯(cuò)性。在區(qū)塊鏈網(wǎng)絡(luò)中存在惡意節(jié)點(diǎn)的情況下,遵守區(qū)塊鏈協(xié)議的節(jié)點(diǎn)也能將同一區(qū)塊追加到區(qū)塊鏈中。

      定義3 處于非聯(lián)通狀態(tài)下的容遲網(wǎng)絡(luò),一定比例的惡意節(jié)點(diǎn)不會(huì)對(duì)新區(qū)塊的追加造成影響。

      證明基于區(qū)塊鏈中節(jié)點(diǎn)不可信及以利益為驅(qū)動(dòng)的事實(shí),理性的惡意節(jié)點(diǎn)也是以獲取更多收益為目標(biāo)。根據(jù)定義2,一旦惡意節(jié)點(diǎn)較之其他節(jié)點(diǎn)先挖掘出區(qū)塊,該節(jié)點(diǎn)會(huì)在第一時(shí)間將該區(qū)塊廣播到全網(wǎng),以取得較大的接收概率,此時(shí)惡意節(jié)點(diǎn)不會(huì)有惡意行為,也不會(huì)對(duì)區(qū)塊追加造成影響。反之,該節(jié)點(diǎn)會(huì)與其他惡意節(jié)點(diǎn)聯(lián)合,以使挖掘的區(qū)塊被接收。然而,遵守區(qū)塊鏈協(xié)議的節(jié)點(diǎn)由于該區(qū)塊時(shí)間戳較大而拒絕接收該區(qū)塊。

      當(dāng)節(jié)點(diǎn)不確定接收到的區(qū)塊來源是否是惡意節(jié)點(diǎn)時(shí),節(jié)點(diǎn)可以向其他節(jié)點(diǎn)發(fā)送請(qǐng)求,以更新本地接收到的區(qū)塊。如果被請(qǐng)求的節(jié)點(diǎn)中有遵守區(qū)塊鏈協(xié)議的節(jié)點(diǎn),則該節(jié)點(diǎn)能得到本時(shí)間段有最小時(shí)間戳的區(qū)塊,從而保證惡意節(jié)點(diǎn)不會(huì)對(duì)該節(jié)點(diǎn)追加的新區(qū)塊造成影響。

      但存在一種極端情況,即節(jié)點(diǎn)發(fā)送更新區(qū)塊請(qǐng)求時(shí),其鄰居節(jié)點(diǎn)均是惡意節(jié)點(diǎn),此時(shí),更新的區(qū)塊是錯(cuò)誤的,會(huì)影響新區(qū)塊追加。假設(shè)區(qū)塊鏈網(wǎng)絡(luò)中的節(jié)點(diǎn)數(shù)量為O,惡意節(jié)點(diǎn)數(shù)量為Ω,則惡意節(jié)點(diǎn)的比例。設(shè)節(jié)點(diǎn)的鄰居數(shù)量為H,則鄰居節(jié)點(diǎn)均為惡意節(jié)點(diǎn)的概率Π的計(jì)算方法可簡(jiǎn)述為第一個(gè)鄰居節(jié)點(diǎn)為惡意節(jié)點(diǎn)的概率為,第二個(gè)鄰居節(jié)點(diǎn)為惡意節(jié)點(diǎn)的概率為,依次類推,第H個(gè)鄰居節(jié)點(diǎn)為惡意節(jié)點(diǎn)的概率為,則有

      依據(jù)網(wǎng)絡(luò)實(shí)際需求,設(shè)最大可容納惡意節(jié)點(diǎn)的比例為閾值σ,Π要滿足不大于σ,即

      在網(wǎng)絡(luò)中,節(jié)點(diǎn)的鄰居節(jié)點(diǎn)數(shù)量和網(wǎng)絡(luò)中全部的節(jié)點(diǎn)數(shù)量的比值趨近于0,式(7)可以近似轉(zhuǎn)換為

      從式(8)可知,H越大時(shí),Π越小,但H值影響設(shè)備的性能,即設(shè)備同時(shí)連接節(jié)點(diǎn)數(shù)是有限制的。當(dāng)σ=1×10?6、平均鄰居節(jié)點(diǎn)數(shù)為[10,20],網(wǎng)絡(luò)中可以容納的惡意節(jié)點(diǎn)比例為25%~50%。

      證畢。

      定義4能耗。能耗是指區(qū)塊生成過程中的電力消耗。相比于PoW 方式,在全網(wǎng)范圍內(nèi)生成主鏈區(qū)塊的能源消耗變化不大。在局域網(wǎng)范圍內(nèi)由于算力相對(duì)于全網(wǎng)來說是有限的,依據(jù)設(shè)計(jì)的挖礦難度動(dòng)態(tài)調(diào)整算法,生成附鏈區(qū)塊所消耗的電力較低。

      定義5區(qū)塊生成時(shí)間和確認(rèn)時(shí)間。區(qū)塊生成時(shí)間是指從貿(mào)易記錄打包開始,直到區(qū)塊被挖掘出來為止。確認(rèn)時(shí)間是指從區(qū)塊生成時(shí)刻算起到追加到區(qū)塊鏈上為止。相比于PoW 方式,在全網(wǎng)范圍內(nèi)主鏈區(qū)塊生成時(shí)間和確認(rèn)時(shí)間變化不大。在局域網(wǎng)范圍內(nèi)依據(jù)挖礦難度動(dòng)態(tài)調(diào)整算法,附鏈區(qū)塊生成時(shí)間較短。但附鏈區(qū)塊需要在局域網(wǎng)絡(luò)聯(lián)通時(shí)上傳到全網(wǎng)其他節(jié)點(diǎn)進(jìn)行確認(rèn)共識(shí),確認(rèn)共識(shí)時(shí)間與PoW 一致,上傳時(shí)間取決于網(wǎng)絡(luò)帶寬,因此,附鏈區(qū)塊確認(rèn)時(shí)間較PoW 長(zhǎng)。

      4.2 性能評(píng)估

      為了評(píng)估所提機(jī)制在網(wǎng)絡(luò)非聯(lián)通狀態(tài)下的性能,利用PeerSim[18]模擬器建立P2P 網(wǎng)絡(luò)環(huán)境用以運(yùn)行區(qū)塊鏈系統(tǒng),并將該網(wǎng)格分割成多個(gè)封閉的P2P 子網(wǎng)絡(luò),每個(gè)子網(wǎng)絡(luò)設(shè)置主路由節(jié)點(diǎn)模擬運(yùn)營(yíng)商服務(wù)器,主路由節(jié)點(diǎn)的工作方式是周期性地連接或斷開局域網(wǎng)絡(luò),以模擬基站與衛(wèi)星的工作方式。區(qū)塊鏈運(yùn)行協(xié)議為區(qū)塊鏈協(xié)議,數(shù)據(jù)傳輸遵循TCP/IP(transmission control protocol/Internet protocol)。使用由10 臺(tái)刀片式服務(wù)器組成的服務(wù)器集群作為硬件運(yùn)行環(huán)境,每個(gè)刀片服務(wù)器的主要配置為2 顆Intel Xeon E5-2620 CPU,每顆包含8 核、16 線程、32 GB 內(nèi)存。由這些服務(wù)器集群利用虛擬化方式生成1 000 個(gè)節(jié)點(diǎn),每個(gè)節(jié)點(diǎn)的算力相同,初始區(qū)塊生成時(shí)間為10 min,按照已有的礦機(jī)的收益和成本參數(shù),設(shè)置區(qū)塊中的虛擬貨幣(收益)和實(shí)際的美元(成本)的比值ζ的數(shù)量級(jí)為10?4,網(wǎng)絡(luò)中斷時(shí)間和網(wǎng)絡(luò)聯(lián)通時(shí)間的比值為0.5。依據(jù)文獻(xiàn)[17,19],貿(mào)易到達(dá)速率符合參數(shù)為0.079(即比特幣)的泊松分布。定義節(jié)點(diǎn)的收益率Brate為節(jié)點(diǎn)的收益和成本的比值,即

      其中,Income 是挖礦獲得貿(mào)易的處理費(fèi)用,是一段時(shí)間內(nèi)挖礦成功時(shí)獲得的費(fèi)用之和;Consume是付出的成本,包括電費(fèi)、設(shè)備費(fèi)等,是一段時(shí)間內(nèi)無論挖礦是否成功都要付出的成本之和。節(jié)點(diǎn)打包貿(mào)易記錄采用的方法有2 種:1)將每條貿(mào)易的處理費(fèi)用按從高到低排序,選擇前面的貿(mào)易記錄打包;2)在1)的基礎(chǔ)上,隨機(jī)附加貿(mào)易處理費(fèi)用低的貿(mào)易記錄打包。

      長(zhǎng)時(shí)間運(yùn)行的非聯(lián)通網(wǎng)絡(luò)區(qū)塊鏈節(jié)點(diǎn)的收益率變化如圖4 所示。從圖4 中可以看出,節(jié)點(diǎn)的收益率在運(yùn)行過程中是穩(wěn)定的,這是由于節(jié)點(diǎn)能依據(jù)上次挖礦時(shí)確認(rèn)共識(shí)的結(jié)果調(diào)整本次打包的記錄個(gè)數(shù),從而保證確認(rèn)共識(shí)時(shí)需要的區(qū)塊能成功廣播到全網(wǎng)。當(dāng)區(qū)塊中的貨幣實(shí)際價(jià)格升高時(shí),在保證收益的情況下,節(jié)點(diǎn)采取降低打包的貿(mào)易記錄條數(shù),減少區(qū)塊的大小,較穩(wěn)妥地獲得該區(qū)塊的收益。

      圖4 非聯(lián)通網(wǎng)絡(luò)區(qū)塊鏈節(jié)點(diǎn)的收益率變化情況

      圖5 顯示的是貿(mào)易個(gè)數(shù)和收益率之間的關(guān)系。貿(mào)易個(gè)數(shù)反映的是區(qū)塊在非聯(lián)通網(wǎng)絡(luò)高帶寬節(jié)點(diǎn)比例固定(25%)的情況下的大小,理論上講,貿(mào)易個(gè)數(shù)越多,則獲得的收益越大。但實(shí)際上,當(dāng)貿(mào)易個(gè)數(shù)過多(區(qū)塊較大)時(shí),會(huì)在網(wǎng)絡(luò)聯(lián)通時(shí)沒有足夠的節(jié)點(diǎn)成功將該區(qū)塊廣播到全網(wǎng)中,導(dǎo)致算法2 中節(jié)點(diǎn)接收同一區(qū)塊數(shù)達(dá)到閾值這一條件不能滿足,致使該區(qū)塊被放棄,不能獲得收益。從圖5 中可以看出,收益率隨貿(mào)易記錄數(shù)的增加存在最大值,該值之后的區(qū)塊廣播會(huì)存在一定的失敗概率。當(dāng)挖掘出來的區(qū)塊大小和區(qū)塊大小上限的比例超過75%時(shí),區(qū)塊廣播成功率會(huì)急劇下降,導(dǎo)致負(fù)收益的情況發(fā)生。

      圖5 貿(mào)易個(gè)數(shù)的增加對(duì)收益率的影響

      網(wǎng)絡(luò)時(shí)延和難度級(jí)別的關(guān)系如圖6 所示,其中縱坐標(biāo)是調(diào)整后的挖礦難度與當(dāng)前比特網(wǎng)挖礦難度的比值。網(wǎng)絡(luò)時(shí)延和網(wǎng)絡(luò)非聯(lián)通時(shí)間相關(guān),非聯(lián)通時(shí)間越長(zhǎng),網(wǎng)絡(luò)時(shí)延越大。依據(jù)一條附鏈只能附加一個(gè)區(qū)塊的原則,當(dāng)網(wǎng)絡(luò)時(shí)延較大時(shí),適當(dāng)調(diào)整挖礦難度只能在同一網(wǎng)絡(luò)非聯(lián)通時(shí)段挖掘出一個(gè)區(qū)塊。

      圖6 網(wǎng)絡(luò)時(shí)延和難度級(jí)別的關(guān)系

      在相同網(wǎng)絡(luò)時(shí)延下,網(wǎng)絡(luò)中惡意節(jié)點(diǎn)數(shù)量對(duì)區(qū)塊生成時(shí)間的影響如圖7 所示。當(dāng)網(wǎng)絡(luò)中惡意節(jié)點(diǎn)的比例分別為10%、25%、40%時(shí),區(qū)塊生成時(shí)間變化不大,也就是說,一定比例惡意節(jié)點(diǎn)的存在不會(huì)對(duì)貿(mào)易和區(qū)塊生成造成很大的影響,這與定義3的結(jié)論相一致。

      圖7 惡意節(jié)點(diǎn)比例對(duì)區(qū)塊生成時(shí)間的影響

      5 結(jié)束語

      目前的區(qū)塊鏈只能在實(shí)時(shí)聯(lián)通的網(wǎng)絡(luò)環(huán)境下部署和進(jìn)行貿(mào)易,但對(duì)諸如容遲網(wǎng)絡(luò)的非實(shí)時(shí)聯(lián)通網(wǎng)絡(luò)提供支持卻無能為力。本文研究了如何在容遲網(wǎng)絡(luò)進(jìn)行區(qū)塊鏈貿(mào)易的問題。將容遲網(wǎng)絡(luò)分為非聯(lián)通和聯(lián)通2 個(gè)狀態(tài),在非聯(lián)通狀態(tài),修改了現(xiàn)有的區(qū)塊數(shù)據(jù)結(jié)構(gòu),提出了附鏈的概念,詳細(xì)介紹了附鏈的貿(mào)易記錄打包成區(qū)塊的方法,基于難度動(dòng)態(tài)調(diào)整的附鏈區(qū)塊的挖掘方法和基于標(biāo)識(shí)位的區(qū)塊共識(shí)方法;在網(wǎng)絡(luò)聯(lián)通狀態(tài),設(shè)計(jì)了防止區(qū)塊造假和虛假貿(mào)易的確認(rèn)共識(shí)方法。以理論分析和模擬實(shí)驗(yàn)為手段,分析了提出的容遲網(wǎng)絡(luò)區(qū)塊鏈貿(mào)易機(jī)制的有效性,使節(jié)點(diǎn)擁有較高的收益率。

      鑒于采用PoW 工作方式的區(qū)塊鏈在實(shí)際應(yīng)用中具有明顯缺陷,如能耗過高、貿(mào)易處理時(shí)間過長(zhǎng)等,下一步工作從設(shè)計(jì)公平、安全和高效的礦工選擇方法和附鏈分支處理方法出發(fā),減少區(qū)塊生成過程中無用的計(jì)算及降低區(qū)塊的生成和確認(rèn)時(shí)間。

      猜你喜歡
      挖礦聯(lián)通共識(shí)
      合力攻堅(jiān) 全面治理高?!巴诘V”
      多措并舉 全流程整治“挖礦”
      共識(shí) 共進(jìn) 共情 共學(xué):讓“溝通之花”綻放
      風(fēng)起軒轅——聯(lián)通五千年民族血脈
      論思想共識(shí)凝聚的文化向度
      商量出共識(shí)
      一張圖讀懂聯(lián)通兩年混改
      微信搭臺(tái)“聯(lián)通” 代表履職“移動(dòng)”
      挖礦木馬的攻擊手段及防御策略研究
      挖礦的史蒂夫
      宜阳县| 西畴县| 扶沟县| 贞丰县| 宝山区| 镇沅| 临高县| 布尔津县| 常熟市| 修水县| 丰城市| 若羌县| 海原县| 鸡东县| 永安市| 易门县| 五峰| 英吉沙县| 孝感市| 瑞金市| 延吉市| 新野县| 华宁县| 贵州省| 宿州市| 军事| 靖边县| 福安市| 彰化县| 衡东县| 天峨县| 文安县| 黄平县| 普兰店市| 图木舒克市| 鄂托克旗| 高台县| 三台县| 北辰区| 湄潭县| 扶风县|