国产麻豆精品福利在线观看,亚洲人亚洲精品成人网站,亚洲熟妇无码AV另类VR影视,欧美A级毛欧美1级A大片免费播放

您的位置:首頁(yè) > 互聯(lián)網(wǎng) >

K模型保留著協(xié)議的核心共識(shí)機(jī)制 信標(biāo)鏈的狀態(tài)通常為轉(zhuǎn)換系統(tǒng)

2019-11-05 14:13:13 來源: 區(qū)塊網(wǎng)

隨著即將到來的2 0版重大更新(代號(hào)為Serenity),以太坊正在過渡到分片的權(quán)益證明(PoS)共識(shí)機(jī)制。它帶來了更好的能效,安全性和可擴(kuò)展性。以

隨著即將到來的2.0版重大更新(代號(hào)為Serenity),以太坊正在過渡到分片的權(quán)益證明(PoS)共識(shí)機(jī)制。它帶來了更好的能效,安全性和可擴(kuò)展性。以太坊2.0的特定PoS協(xié)議稱為信標(biāo)鏈。

我們很高興地報(bào)告Runtime Verification與以太坊基金會(huì)之間正在進(jìn)行的合作中的第一個(gè)里程碑,以構(gòu)建一個(gè)用于建模和驗(yàn)證信標(biāo)鏈的正式框架。在K框架下完成了信標(biāo)鏈的可執(zhí)行形式化模型K規(guī)范和描述這項(xiàng)工作的技術(shù)報(bào)告都可以在線獲得。

那么什么是信標(biāo)鏈?K中的模型是如何開發(fā)的?為什么這一發(fā)展很重要?

Nutshell中的信標(biāo)鏈

信標(biāo)鏈?zhǔn)羌磳⒌絹淼囊蕴?.0的PoS協(xié)議層。協(xié)議主要負(fù)責(zé)在參與協(xié)議的網(wǎng)絡(luò)中所有節(jié)點(diǎn)之間就系統(tǒng)狀態(tài)達(dá)成共識(shí)。

參與節(jié)點(diǎn)(在協(xié)議中稱為驗(yàn)證者)主要根據(jù)節(jié)點(diǎn)的當(dāng)前狀態(tài),通過提議新的信標(biāo)區(qū)塊或?qū)ΜF(xiàn)有的信標(biāo)區(qū)塊進(jìn)行投票來為系統(tǒng)的分布式操作做出貢獻(xiàn)。信標(biāo)區(qū)塊主要封裝了發(fā)布到網(wǎng)絡(luò)的一組投票。該協(xié)議管理如何選擇驗(yàn)證者來提議和投票給區(qū)塊,以確保每個(gè)驗(yàn)證者都有公平的貢獻(xiàn)機(jī)會(huì)。

投票給一個(gè)信標(biāo)區(qū)塊叫做證明。證明是共識(shí)機(jī)制的基本組成部分。通過信標(biāo)區(qū)塊的證明:

· 驗(yàn)證者證明該區(qū)塊是有效的,并且應(yīng)將其附加到鏈中;

· 如果鏈分叉成多個(gè)分支(根據(jù)分叉選擇規(guī)則),則驗(yàn)證者通過標(biāo)識(shí)區(qū)塊應(yīng)附加到的位置來投票給“規(guī)范的塊鏈”;

· 驗(yàn)證者有助于確定區(qū)塊的確定性,這一過程告訴我們何時(shí)可以將信標(biāo)區(qū)塊視為最終的,因此不應(yīng)還原(根據(jù)Casper FFG);

· 如果該區(qū)塊不屬于主鏈,則驗(yàn)證者將對(duì)該區(qū)塊的分片投票。直觀上,分片是鏈接到信標(biāo)鏈的獨(dú)立鏈,可以通過系統(tǒng)中的驗(yàn)證者子集與狀態(tài)中的其他分片并行處理,從而顯著提高了系統(tǒng)一次處理更多交易的能力,從而提高了它的可擴(kuò)展性(請(qǐng)參閱sharding和crosslinks)。

最后,遵循協(xié)議并做出明智決策的驗(yàn)證者將獲得以太坊獎(jiǎng)勵(lì),以紅利形式分配,以鼓勵(lì)適當(dāng)?shù)男袨?。另一方面,偏離協(xié)議或行為不正常的驗(yàn)證者可能會(huì)因拒絕或在某些情況下因削減其抵押的以太幣而受到處罰。這種獎(jiǎng)勵(lì)懲罰系統(tǒng)有助于使惡意用戶在經(jīng)濟(jì)上不可行,無法在該系統(tǒng)上發(fā)起成功的攻擊(請(qǐng)參閱《 Serenity設(shè)計(jì)原理》注釋)。

信標(biāo)鏈當(dāng)前由以太坊基金會(huì)開發(fā)的Python“以太坊2.0階段0 –信標(biāo)鏈”的參考實(shí)現(xiàn)定義。

定義協(xié)議操作的實(shí)現(xiàn)的主要組件是信標(biāo)鏈狀態(tài)轉(zhuǎn)換函數(shù)state_transition。該函數(shù)實(shí)現(xiàn)的相關(guān)部分的摘錄如下所示:

處理從創(chuàng)始狀態(tài)(已處理的創(chuàng)始信標(biāo)區(qū)塊的狀態(tài))開始。給定要處理的下一個(gè)信標(biāo)區(qū)塊,并假定該區(qū)塊有效,信標(biāo)鏈狀態(tài)轉(zhuǎn)換功能將給定的信標(biāo)鏈狀態(tài)(前狀態(tài))轉(zhuǎn)換為新狀態(tài)(后狀態(tài))。此后狀態(tài)反映了以下結(jié)果:

· 考慮(可能)丟失的區(qū)塊; (process_slots);

· 處理區(qū)塊的內(nèi)容(process_block)。

在K中建模信標(biāo)鏈

我們?cè)谶@項(xiàng)工作中的目標(biāo)是建立一個(gè)信標(biāo)鏈的形式模型,該模型盡可能與“以太坊2.0階段0規(guī)范”給出的參考實(shí)現(xiàn)相對(duì)應(yīng),從而實(shí)現(xiàn)以下功能:

· 模擬或設(shè)置信標(biāo)鏈狀態(tài)轉(zhuǎn)換函數(shù)的執(zhí)行。

· 從信標(biāo)鏈測(cè)試套件運(yùn)行現(xiàn)有測(cè)試。

· 分析現(xiàn)有測(cè)試套件的代碼覆蓋率,并通過新測(cè)試進(jìn)行改進(jìn)。

K是實(shí)現(xiàn)此目標(biāo)的非常合適的框架,因?yàn)樗軌蜷_發(fā)信標(biāo)鏈的形式模型,其特征是:

1. 可通過K工具中的模式重寫來執(zhí)行,因此可以直接從規(guī)范中獲取信標(biāo)鏈狀態(tài)轉(zhuǎn)換函數(shù)的解釋器(無需任何額外費(fèi)用)。

2. 具體而言,其規(guī)范直接對(duì)應(yīng)于系統(tǒng)的Python實(shí)現(xiàn)(對(duì)某些特定的抽象進(jìn)行?;绾灻?yàn)證)。

K模型也為更復(fù)雜的驗(yàn)證任務(wù)(例如可達(dá)性分析和演繹驗(yàn)證)奠定了基礎(chǔ),但這是正在進(jìn)行的工作和將來的工作的一部分,將在其他地方進(jìn)行介紹。

該項(xiàng)目的github存儲(chǔ)庫(kù)中提供了k中模型的完整規(guī)范,以及一份更詳細(xì)地描述這項(xiàng)工作的技術(shù)報(bào)告。https://github.com/runtimeverification/beacon-chain-spec

信標(biāo)鏈?zhǔn)侨绾斡胟建模的?

通常信標(biāo)鏈在K中建模為狀態(tài)轉(zhuǎn)換系統(tǒng),其狀態(tài)為信標(biāo)鏈狀態(tài),其轉(zhuǎn)換由主信標(biāo)鏈狀態(tài)轉(zhuǎn)換函數(shù)定義。

在K中,信標(biāo)鏈狀態(tài)被指定為由(可能嵌套的)單元組成的配置,其中每個(gè)單元代表定義協(xié)議所需的配置的語義元素。 例如下面的摘錄顯示了配置的兩個(gè)單元:單元是用于保存要執(zhí)行的程序(計(jì)算)的一個(gè)特殊的單元,而單元是包含信標(biāo)鏈狀態(tài)的所有結(jié)構(gòu)元素(下面僅顯示三個(gè),三個(gè)點(diǎn)表示省略的單元格):

信標(biāo)鏈狀態(tài)轉(zhuǎn)換功能由K中的運(yùn)算符指定,該函數(shù)將由當(dāng)前信標(biāo)鏈配置建模的信標(biāo)鏈前狀態(tài)轉(zhuǎn)換為由結(jié)果K配置建模的信標(biāo)鏈后狀態(tài)。 運(yùn)算符聲明如下:

如上所述,涉及兩個(gè)主要的連續(xù)步驟:process_slots和process_block。命令在k中的排序自然指定為使用運(yùn)算符~>,將計(jì)算疊加在一個(gè)連續(xù)項(xiàng)上。例如使用以下k規(guī)則定義狀態(tài)轉(zhuǎn)換函數(shù):

只有當(dāng)process_slots成功終止時(shí),才會(huì)進(jìn)行由process_block定義的下一次計(jì)算,該計(jì)算將捕獲預(yù)期的語義。

在開發(fā)轉(zhuǎn)換函數(shù)的語義規(guī)范時(shí),我們面臨的挑戰(zhàn)之一是python語義豐富的表達(dá)式和大多數(shù)命令式編程風(fēng)格與k語言定義的構(gòu)造和聲明式規(guī)范風(fēng)格之間的不匹配。在這一發(fā)展過程中,我們已經(jīng)確定了一些模式以及如何在k中優(yōu)雅地指定它們,例如如上所述的用于排序的堆疊計(jì)算結(jié)構(gòu)。

其他模式更復(fù)雜,不匹配更明顯,例如列表理解表達(dá)式,它們?cè)贐eacon鏈的引用實(shí)現(xiàn)中被大量使用。在這些情況下,這種編碼通常相當(dāng)冗長(zhǎng),但如果不用k定義中間語言結(jié)構(gòu),就無法避免。然而,其優(yōu)點(diǎn)是,這種編碼容易實(shí)現(xiàn)更詳細(xì)的覆蓋率分析。

驗(yàn)證模型

以太坊基金會(huì)為信標(biāo)鏈提供了豐富的測(cè)試套件。 除了用作Python實(shí)現(xiàn)的調(diào)試工具之外,第三方生產(chǎn)客戶開發(fā)人員還使用測(cè)試套件來確保與參考實(shí)現(xiàn)一致。 該測(cè)試套件包含3,000多種不同的單元測(cè)試。

在給定的開發(fā)K模型抽象級(jí)別,可以在模型中直接執(zhí)行信標(biāo)鏈的標(biāo)準(zhǔn)測(cè)試套件中的測(cè)試,而無需任何工具。這證明是非常有價(jià)值的,因?yàn)樗峁┝艘环N機(jī)制來驗(yàn)證模型,并確保模型符合參考實(shí)現(xiàn),就像驗(yàn)證其他生產(chǎn)實(shí)現(xiàn)一樣,按照項(xiàng)目資源庫(kù)中的說明,所有測(cè)試都可以自動(dòng)運(yùn)行。

擴(kuò)展測(cè)試覆蓋范圍

標(biāo)準(zhǔn)信標(biāo)鏈測(cè)試套件的設(shè)計(jì)使代碼覆蓋率最大化,可以使用Python的可用代碼覆蓋率分析工具。 但是Python的覆蓋范圍通常比較粗略。它不會(huì)區(qū)分執(zhí)行語義豐富的Python構(gòu)造(例如列表理解表達(dá)式)的各個(gè)分支。

K提供了不同的基于規(guī)則的覆蓋率分析工具。它檢測(cè)執(zhí)行中是否應(yīng)用了規(guī)則(如果適用,則應(yīng)用了多少次)。 使用這種基于K的工具進(jìn)行語義覆蓋已經(jīng)證明在其他語言(例如JavaScript)的環(huán)境中很有用,我們?cè)谒袨g覽器中都發(fā)現(xiàn)了新的錯(cuò)誤(這些結(jié)果在PLDI’15論文中進(jìn)行了描述)。

因此該計(jì)劃是評(píng)價(jià)標(biāo)準(zhǔn)的Python代碼覆蓋率如何確保語義覆蓋面,看是否基于規(guī)則的覆蓋分析可能暴露不是由標(biāo)準(zhǔn)的Python代碼覆蓋工具檢測(cè)到任何未覆蓋的功能。 確實(shí)分析顯示測(cè)試未涵蓋或未充分涵蓋的執(zhí)行路徑,而Python覆蓋率未檢測(cè)到這些執(zhí)行路徑 這些檢測(cè)中的大多數(shù)都屬于復(fù)雜行為的規(guī)范,例如列表理解表達(dá)式和復(fù)雜循環(huán)中通常遇到的行為。

以下是K覆蓋率工具生成的覆蓋率分析報(bào)告的快照,顯示了未在測(cè)試套件的任何測(cè)試中應(yīng)用的規(guī)則。

繼續(xù)向前

信標(biāo)鏈的可執(zhí)行k模型是實(shí)現(xiàn)正式驗(yàn)證信標(biāo)鏈的基本安全性和活性特性及其參考實(shí)現(xiàn)這一最終目標(biāo)的第一步,但也是至關(guān)重要的一步。事實(shí)上,如果沒有一個(gè)可信的、形式化的系統(tǒng)模型來驗(yàn)證,形式化驗(yàn)證的問題是沒有意義的。除了能夠執(zhí)行狀態(tài)轉(zhuǎn)換函數(shù)、運(yùn)行測(cè)試和分析測(cè)試覆蓋率之外,本文提出的k形式化模型還可以用來描述和驗(yàn)證在這種低抽象級(jí)別上可表示的低級(jí)別不變量。

但是信標(biāo)鏈?zhǔn)且粋€(gè)非常復(fù)雜的協(xié)議。在這種較低的抽象級(jí)別上直接驗(yàn)證高級(jí)屬性(如安全性和活動(dòng)性)通常是不可行的。相反,通常使用抽象細(xì)化技術(shù)。因此我們的計(jì)劃如下:

· 建立此具體模型的抽象,該模型保留協(xié)議的核心共識(shí)機(jī)制;

· 在抽象模型上證明所需的屬性;

· 表明這些屬性保留在具體模型中;(鏈三豐)

關(guān)鍵詞: K模型 共識(shí)機(jī)制 信標(biāo)鏈

精選 導(dǎo)讀

募資55億港元萬物云啟動(dòng)招股 預(yù)計(jì)9月29日登陸港交所主板

萬科9月19日早間公告,萬物云當(dāng)日啟動(dòng)招股,預(yù)計(jì)發(fā)行價(jià)介乎每股47 1港元至52 7港元,預(yù)計(jì)9月29日登陸港交所主板。按發(fā)行1 167億股計(jì)算,萬

發(fā)布時(shí)間: 2022-09-20 10:39
管理   2022-09-20

公募基金二季度持股情況曝光 隱形重倉(cāng)股多為高端制造業(yè)

隨著半年報(bào)披露收官,公募基金二季度持股情況曝光。截至今年二季度末,公募基金全市場(chǎng)基金總數(shù)為9794只,資產(chǎn)凈值為269454 75億元,同比上

發(fā)布時(shí)間: 2022-09-02 10:45
資訊   2022-09-02

又有上市公司宣布變賣房產(chǎn) 上市公司粉飾財(cái)報(bào)動(dòng)作不斷

再有上市公司宣布變賣房產(chǎn)。四川長(zhǎng)虹25日稱,擬以1 66億元的轉(zhuǎn)讓底價(jià)掛牌出售31套房產(chǎn)。今年以來,A股公司出售房產(chǎn)不斷。根據(jù)記者不完全統(tǒng)

發(fā)布時(shí)間: 2022-08-26 09:44
資訊   2022-08-26

16天12連板大港股份回復(fù)深交所關(guān)注函 股份繼續(xù)沖高

回復(fù)交易所關(guān)注函后,大港股份繼續(xù)沖高。8月11日大港股份高開,隨后震蕩走高,接近收盤時(shí)觸及漲停,報(bào)20 2元 股。值得一提的是,在7月21日

發(fā)布時(shí)間: 2022-08-12 09:56
資訊   2022-08-12

萬家基金再添第二大股東 中泰證券擬受讓11%基金股權(quán)

7月13日,中泰證券發(fā)布公告,擬受讓齊河眾鑫投資有限公司(以下簡(jiǎn)稱齊河眾鑫)所持有的萬家基金11%的股權(quán),交易雙方共同確定本次交易的標(biāo)的資

發(fā)布時(shí)間: 2022-07-14 09:39
管理   2022-07-14

央行連續(xù)7日每天30億元逆回購(gòu) 對(duì)債市影響如何?

央行12日再次開展了30億元逆回購(gòu)操作,中標(biāo)利率2 10%。這已是央行連續(xù)7日每天僅進(jìn)行30億元的逆回購(gòu)縮量投放,創(chuàng)下去年1月以來的最低操作規(guī)

發(fā)布時(shí)間: 2022-07-13 09:38
資訊   2022-07-13

美元指數(shù)創(chuàng)近20年新高 黃金期貨創(chuàng)出逾9個(gè)月新低

由于對(duì)美聯(lián)儲(chǔ)激進(jìn)加息的擔(dān)憂,美元指數(shù)11日大漲近1%創(chuàng)出近20年新高。受此影響,歐美股市、大宗商品均走弱,而黃金期貨創(chuàng)出逾9個(gè)月新低。美

發(fā)布時(shí)間: 2022-07-13 09:36
資訊   2022-07-13

美股三大股指全線下跌 納斯達(dá)克跌幅創(chuàng)下記錄以來最大跌幅

今年上半年,美股持續(xù)回落。數(shù)據(jù)顯示,道瓊斯指數(shù)上半年下跌15 3%,納斯達(dá)克綜合指數(shù)下跌29 5%,標(biāo)普500指數(shù)下跌20 6%。其中,納斯達(dá)克連續(xù)

發(fā)布時(shí)間: 2022-07-04 09:51
推薦   2022-07-04

融資客熱情回升 兩市融資余額月內(nèi)增加超344億元

近期A股走強(qiáng),滬指6月以來上漲4%,融資客熱情明顯回升。數(shù)據(jù)顯示,截至6月16日,兩市融資余額1 479萬億元,月內(nèi)增加344 67億元,最近一個(gè)半

發(fā)布時(shí)間: 2022-06-20 09:41
資訊   2022-06-20

4個(gè)交易日凈買入超百億元 北向資金持續(xù)流入A股市場(chǎng)

北向資金凈流入態(tài)勢(shì)延續(xù)。繼6月15日凈買入133 59億元后,北向資金6月16日凈買入44 52億元。自5月27日至今,除6月13日以外,北向資金累計(jì)凈

發(fā)布時(shí)間: 2022-06-17 09:37
推薦   2022-06-17

熱門TAG

more
美聯(lián)儲(chǔ)今年已將基準(zhǔn)利率從接近零大幅上調(diào)至略高于3% EIA報(bào)告:美國(guó)原油庫(kù)存及戰(zhàn)略儲(chǔ)備減少,汽油及精煉油庫(kù)存輕微波動(dòng) 美國(guó)政府更廣泛推動(dòng)從汽油動(dòng)力汽車轉(zhuǎn)向電動(dòng)汽車的一部分 數(shù)據(jù)顯示:今年9月日本船企接單量延續(xù)8月下跌下跌趨勢(shì) 公告顯示:2022年前三季度TCL中環(huán)研發(fā)投入為27億元 占比營(yíng)業(yè)收入5.42% 新的111.75億英鎊注資列在“對(duì)金融機(jī)構(gòu)的援助—支付給英格蘭銀行”標(biāo)題下 本次政府儲(chǔ)備肉投放面向北京18家主要連鎖超市門店及相關(guān)零售終端投放 有交易員預(yù)計(jì):如果LME不采取措施 接下來可能將有數(shù)十萬噸鋁流入LME 據(jù)報(bào)道:繼德國(guó)最大釀酒商拉德貝格啤酒公司9月宣布漲價(jià) 據(jù)報(bào)道:澳大利亞礦商Pilbara的鋰礦拍賣價(jià)再創(chuàng)新高 折算后的碳酸鋰成本 中集天達(dá)首次公開發(fā)行A股股票 招股書顯示此次擬公開發(fā)行股數(shù)不超過103, 多家銀行加強(qiáng)綠色金融頂層設(shè)計(jì) 致力于為經(jīng)濟(jì)社會(huì)綠色低碳轉(zhuǎn)型貢獻(xiàn)力量 萊特幣 比特幣 數(shù)字資產(chǎn) 火幣 以太經(jīng)典 比特股 EOS 比特幣現(xiàn)金 量子鏈 Hcash 泰達(dá)幣 瑞波幣 Qcash 比特幣鉆石 超級(jí)比特幣 優(yōu)幣 硬分叉 加密貨幣