以太坊交易所 以太坊交易所
Ctrl+D 以太坊交易所
ads
首頁 > 瑞波幣 > Info

區塊鏈研究實驗室 | 理解廣義Plasma技術結構開發實戰-part II_PRE:STATE

Author:

Time:1900/1/1 0:00:00

斷言開發實戰

狀態對象

現在讓我們深入了解這一切在實踐中如何運作的細節。我們的Plasma鏈設計的構建塊是“狀態對象”。狀態對象只是一個具有兩個屬性的數據:

predicateAddress:控制對象的on-chain地址。

parameters:描述對象的一些任意blob數據。

狀態對象實際上是資產-PlasmaCash中不可替代“硬幣”概念的概括。就像每個獨特的硬幣都有CashID一樣,每個狀態對象都有一個stateID。

StateID是根據在Plasma鏈中的存儲按順序分配的,但是沒有任何關于參數或predicate可以是什么的規則。每個Plasma塊都是“狀態更新”的集合,它在特定的StateID上定義新的StateObjects。

Ethereum上的Plasma鏈契約實現了VerifyUpdate->Bool,該Bool檢查Merkle包含證明狀態更新確實已提交。

?斷言(Predicates)接口

斷言(Predicates)需要實現標準合同接口。讓我們來看看這些功能。

Plasma合同所做的最重要的事情是確定狀態更新的有效性。特別是,我們需要防止操作員能夠“潛入”一個有效的狀態更新,該更新具有stateobject.parameters.owner==operator-這將是盜竊!

最高人民法院:要運用區塊鏈等信息技術完善智慧法院信息系統:金色財經報道,最高人民法院2月22日舉行新聞發布會并發布《人民法院在線運行規則》,《規則》提出人民法院要運用互聯網、大數據、和區塊鏈等信息技術,完善智慧法院信息系統,規范應用方式,強化運行管理,以在線方式滿足人民群眾多元化司法需求,高效支持審判執行活動。[2022/2/22 10:08:18]

為了實現這一點,我們引入了“狀態棄用”的概念。我們說給定stateID的有效狀態是尚未被“棄用”的最早更新的狀態。狀態棄用類似于未使用的事務輸出變為耗盡UTXO區塊鏈的交易輸出。

這樣,即使操作員在以后的更新中偷偷地使用stateobject.parameters.owner==operator,也會優先使用stateobject.parameters.owner==alice進行早期更新,因為只有她才能取消預測狀態。

因此,斷言(Predicates)中最重要的函數定義了其狀態可能被否決的理由:

verifyDeprecation(stateID:?uint,?update:?stateUpdate,?deprecationWitness:?bytes)??

VerifyDeprecation根據提交的StateUpdate是否已針對特定StateID棄用而返回true或false。deprecationwitness是斷言(Predicates)用來檢查StateObject是否已被棄用的任意數據。例如,通過要求deprecationwitness包含update.stateobject.parameters.owner的有效簽名,我們保證只有所有者才能批準deprecation。

新晨科技:公司區塊鏈BaaS平臺是公司自主研發的:11月16日消息,新晨科技(300542.SZ)11月16日在投資者互動平臺表示,公司區塊鏈BaaS平臺是公司自主研發的區塊鏈即服務的平臺,可以幫助用戶快速部署區塊鏈系統,提供鏈碼部署、區塊鏈運行狀態監控、配置和管理等服務。新晨科技具備鏈應用(DApp)的快速實施能力,以及原生鏈平臺、鏈上數據存儲、加密算法(含國密和國密CA)、共識算法等鏈相關基礎技術能力,擁有經過實踐驗證的自主知識產權區塊鏈服務平臺產品(BaaS平臺)。公司區塊鏈研究技術中包含NFT方向,該技術可用于數字資產確權,公司將積極探索相關應用落地。(每日經濟新聞)[2021/11/16 21:55:46]

記住,這個函數實際上并沒有對Plasma的退出游戲、爭議等進行任何棄用。相反,Plasma合約在需要知道是否不推薦使用StateObject來評估爭議時調用該函數。

斷言(Predicates)接口-中還有三個其他函數,按重要性排序,它們是:

finalizeExit(exit:?bytes)?

當退出被贖回時,Plasma合約將與索賠相關聯的任何資產發送到斷言(Predicates)地址,然后調用此函數。?

canInitiateExit(stateUpdate:?bytes,?initiationWitness:?bytes)?->?bool

此函數允許斷言(Predicates)限制誰可以在提交狀態上啟動聲明。例如,所有權謂詞可能希望將canInitiateExit限制為資產的所有者。?

A股收盤:區塊鏈50指數收漲2.68%:金色財經報道,A股收盤,三大股指全線收漲,上證指數報2780.64點,收漲1.69%,A股區塊鏈50指數報3124.77點,收漲2.68%;區塊鏈板塊收漲3.03%;數字貨幣板塊收漲2.71%。區塊鏈板塊203只概念股中,195只上漲,8只下跌,佳華科技(+11.54%)領漲。數字貨幣板塊32只概念股中,30只上漲,2只下跌。[2020/4/2]

getAdditionalDisputePeriod(stateUpdate:?bytes)?->?uint

此函數允許斷言(Predicates)增加索賠的爭議期。我們只將其用于可能需要較長爭議解決過程的復雜斷言(Predicates)。此函數通常只返回0。???

此函數允許斷言(Predicates)增加索賠的爭議期。我們只將其用于可能需要較長爭議解決過程的復雜斷言(Predicates)。此函數通常只返回0。???

斷言(Predicates)示例:斷言(Predicates)所有權

通過示例,一切都變得更容易,所以讓我們來看一個。最簡單的斷言(Predicates)是所有權斷言(Predicates)。此狀態允許其當前參數.owner隨時退出,或批準任何狀態更新。

創建斷言(Predicates)的第一步是設計狀態對象。幸運的是,這非常簡單,對象參數中唯一的數據是當前所有者的地址。使用所有權斷言(Predicates)的狀態對象可能如下所示:

聲音 | BM:區塊鏈具有SQL數據庫無法超越的性能:BM今日在Sebastien Meunier推特下面評論道:只要區塊生產者是公開的,區塊鏈可以維持交易的順序,并確保其在不受任何篡改風險的情況下派生確定性的共識狀態。而SQL plus加密數據庫是無法執行該操作的。Sebastien Meunier在其推文中表示:在監管的環境中,區塊鏈是無用的。因為人們可以使用SQL的數據庫和加密庫。(MEET.ONE)[2019/12/12]

OwnedByAlice?=?{??parameters:?{????owner:?'0xAliceAddress...',??},??predicate:?'0xOwnershipPredicateAddress...'}??

要實現的最重要的函數是verifyDeprecated,它接收一些任意的deprecationWitness。對于所有權斷言(Predicates),有效的deprecationWitness包括:

state.parameters.owner的簽名同意新的stateUpdate。

證明新的stateUpdate是在稍后的Plasma塊中提交的。

verifyDeprecated需要檢查這些東西是否有效,這意味著檢查簽名和Merkle證明。

綜上所述,我們看到所有者如何通過批準新的更新來棄用其所有權狀態:

其余的功能非常簡單。canInitiateExit需要檢查申請人是否為所有者,finalizeExit將資產轉發給所有者,getAdditionalDisputePeriod可以返回0。

動態 | 京東物流發布《中國物流與區塊鏈融合創新應用藍皮書》:據搜狐網消息,近日,京東物流、中國物流與采購聯合會、物流+區塊鏈技術應用聯盟聯合發布了《中國物流與區塊鏈融合創新應用藍皮書》。藍皮書指出,我國區塊鏈技術目前在物流行業正聚焦四大應用方向:流程優化、物流追蹤、物流征信和物流金融,通過區塊鏈和供應鏈的創新結合,正在助力物流行業朝著更高效、協同、智能的方向發展。此外,區塊鏈還在和物聯網、大數據、人工智能等技術深入結合,推動建立多方信任的智能物流生態系統,促進整個物流行業轉型升級。[2019/1/25]

這就是代碼中的實際情況!下面我們包含了簡單所有權斷言(Predicates)的python實現。我們用Python編寫它是為了簡單起見,但在solidity或vyper中也很容易做到。

?class?OwnershipDeprecationWitness:????def?__init__(self,?next_state_update,?signature,?inclusion_witness):????????self.next_state_update?=?next_state_update????????self.signature?=?signature????????self.inclusion_witness?=?inclusion_witnessclass?OwnershipPredicate:????def?__init__(self,?parent_plasma_contract):????????self.parent?=?parent_plasma_contract????def?can_initiate_exit(self,?state_update,?initiation_witness):????????#?Only?the?owner?can?submit?a?claim????????assert?state_update.state.owner?==?initiation_witness????????return?True????def?verify_deprecation(self,?state_id,?state_update,?deprecation_witness):????????#?Check?the?state_id?is?in?the?deprecation_witness?state?update????????assert?deprecation_witness.next_state_update.start?<=?state_id??????????????and?deprecation_witness.next_state_update.end?>?state_id????????#?Check?inclusion?proof?for?more?recent?state?update????????assert?self.parent.commitment_chain.verify_inclusion?????????????(deprecation_witness.next_state_update,????????????????self.parent.address,????????????????deprecation_witness.inclusion_witness)????????#?Check?that?the?previous?owner?signed?off?on?the?change????????assert?state_update.state.owner?==?deprecation_witness.signature????????return?True????def?finalize_exit(self,?exit):????????#?Transfer?funds?to?the?owner????????self.parent.erc20_contract.transferFrom?????????????(self,?exit.state_update.state.owner,?????????????????exit.state_update.end?-?exit.state_update.start)????def?get_additional_lockup(self,?state):????????return?0

如您所見,我們已實現上述整個界面。

我們有了它!表示資產可轉讓所有權的斷言(Predicates)。這里的大部分邏輯都與Plasma合同中已經做過的相同。我們甚至在Ethdenver的過程中嘗試了改變的原型。這主要是圍繞我們已經編寫的代碼移動的問題。

這種結構是我們理解Plasma的重要一步。它類似于從支付渠道跳到通用狀態渠道——我們能夠在不升級Plasma協議本身的情況下,在Plasma架構中適應新的特性和功能。

狀態通道

各種類型的DEX謂詞

碎片整理斷言(Predicates)

嵌套Plasma

P2P選項和CDP合同

然而,重要的是要記住,斷言(Predicates)不是萬能的——它們仍然被限制在Plasma設計空間內。可能還沒有發現更多的泛化。然而,斷言(Predicates)非常強大,似乎對幾乎所有的Plasma實現都很有用,包括那些不基于PlasmaCash的實現。

我們認為這是整個Plasma生態系統標準化的一個機會。任何共享這種狀態拒絕架構的Plasma實現都可以共享斷言(Predicates)并以新的方式進行互操作。

第2層擴展解決方案都是關于使用鏈外數據來保證未來的鏈上狀態。無論舊的狀態是通過簽名、承諾還是其他什么方式被否決,這些工具最終都會完成相同的事情。我們希望這一進步是朝著一種包含所有第2層解決方案的統一、共享語言邁出的一步。我們設想未來,錢包可以通過使用標準接口連接到任何第2層解決方案,而不是每次都編寫自定義集成。一切為了互操作性,一切為了互操作性!

本文轉載公眾號:區塊鏈研究實驗室

海納學院的內容將圍繞:區塊鏈技術,產品社群,經濟模型等全方位的知識體系輸出,為大家帶來不一樣的社群學習體驗。歡迎聯系作者微信加入社群:csschan1120

Tags:PRECATSTASTATEPRESIDENTDOGE價格CATE價格staking幣崩盤了嗎Noah Decentralized State Coin

瑞波幣
早間點評:BTC震蕩下行打破主流幣的僵局,下跌行情開始_BTC:BTC鮑爾曼俱樂部

昨日BTC收的陰K,收線在5日均線和10日均線下方,5日均線下穿10日均線形成死亡交叉,價格有繼續向下調整的趨勢,但也會逐漸形成底部支撐之勢,一旦回調之勢走穩,則底部成立.

1900/1/1 0:00:00
委托ATOM至Huobi Wallet,瓜分1500 ATOM_TOM:TOMSWAP

尊敬的用戶: 火幣錢包已支持COSMOS主鏈代幣ATOM并成為其驗證人。現在安裝最新版本即可體驗ATOM一鍵委托,坐享所有驗證人中最高年化收益.

1900/1/1 0:00:00
火星晨報0601:BTC重回8500美元上方,市場先跌后漲;日本批準修訂關于加密資產的國家法規_加密貨幣:OIN

截至6月1日早8點,全球數字貨幣已超過2213種,TOP100總市值為2,644.61億美元。火星財經APP檢測市值排名前10幣種,24小時行情表現如下:ETH全球均價268.43美元,24小時.

1900/1/1 0:00:00
數據公示:「PHV期權補償基金」5.31 虧損補償數據_LBank:lbank交易所排全球第幾

為了慶祝LBank期權交易火熱上線,并拓展PHV的交易場景。我們啟動了預算共20BTC的「PHV期權補償基金」激勵補償活動.

1900/1/1 0:00:00
聯合非小號-BToken聚集幣圈頭部優質流量-駛向奔騰大海_TOKE:TOK

1969年7月21日04:18,阿姆斯特朗踏上月球表面,說出“自己一小步,人類一大步!”的經典名言,卻代表著整個人類的科技文明已經開始探索外太空這一歷史壯舉!如今,50年過去了.

1900/1/1 0:00:00
福布斯:億萬富翁鐘情比特幣,欲通過加密經紀商購買450萬枚比特幣_比特幣:ADI

據外媒報道,《福布斯》雜志撰稿人比利?班布洛稱,加密貨幣經紀商DadianiSyndicate的埃莉薩?達達尼(EleesaDadiani)向他透露稱:“我們的一位客戶找到我們.

1900/1/1 0:00:00
ads