本文發布于以太坊愛好者,作者:Starkware,翻譯:阿劍。
本文意在講解StarkEX為支持快速取款而提出的解決方案。本方案的優點在于,其速度完全獨立于L2的運營者生成有效性證明的速度。
快速取款模塊已經運行在以太坊主網的StarkEx上,并且賦能了?DeversiFi?交易所和?dYdX?交易所。
而下文我們講解的方案除了快速取款以外,還有非常多的使用場景。我們先來了解一下需求是什么。
需求
區塊鏈使得兩方之間的免信任交互成為可能。Alice想發布一筆僅在特定條件滿足時才能執行的交易;Bob希望在條件滿足時能直接執行Alice的交易、不必再次獲得Alice的許可。我們把支持此類交互模式的元件稱作「有條件交易」。
Layer2去中心化交易所DeversiFi將推出跨鏈交易新功能:6月8日消息,Layer2去中心化交易所DeversiFi正在為DeFi用戶推出一項允許用戶跨多個鏈進行交易的新功能。其創始人Will Harborne表示,將通過首先整合Polygon來構建其跨鏈功能,并在未來幾個月內整合Avalanche、BNB Chain、Optimism和Arbitrum。
為了促進此次升級,DeversiFi與去中心化交易所(DEX)聚合器ParaSwap合作,幫助用戶將USDT或USDC代幣轉換為Polygon的代幣,以在DeversiFi內交易。(CoinDesk)[2022/6/8 4:10:17]
在L1上實現CT不需要什么奇思妙想,因為智能合約可以保證時間和交易執行的耦合。但如果要求在L2中實現,那就有些挑戰了。比如,在StarkEx中,交易發起人簽名之后把交易傳遞給運營者,后者有責任來執行這筆交易,可是你用什么辦法來阻止運營者在所需條件滿足之前就執行這筆交易呢?
Play-To-Earn游戲Syn City融資800萬美元:金色財經報道,由TRON前業務負責人Roy Liu創立的黑手黨游戲“Syn City”周一宣布獲得了800萬美元的融資。該輪融資由Twitch聯合創始人Justin Kan和Goat Capital領投,并得到A&T Capital、Hack VC、Animoca Brands和Spartan Group的額外支持。根據一份新聞稿,該游戲的開發團隊包括來自迪士尼、育碧、Roblox、EA和Gameloft的資深人士。[2021/11/23 7:05:36]
在本文中,我們只聚焦于在L2上實現依賴于L1事件的CT。也就是說,這種CT要能保證,運營者僅能在某個_鏈上事件_發生之后才能執行某筆簽過名的交易。更進一步,我們將加入一種依賴于另一個L2中事件的CT,從而支持StarkEx實例之間以及StarkNet中的互操作性。
Bancor v3開發完成后將部署至Layer2:Bancor官方發布社區會議總結,其中提到Bancor v3的進展。目前Bancor開發團隊正在以太坊Layer1網絡開發Bancor v3,一旦開發完成將快速部署至Layer2。[2021/5/31 22:57:56]
下面,我們來形式化這種鏈上事件的概念,看看我們如何在StarkEx中的CT如何利用它。
有條件交易簡介
鏈上事件的注冊
CT使用了FactRegistry合約來跟蹤鏈上事件。實際上,只有在一個FactRegistry合約中注冊了的事件,才能「解鎖」CT。舉個例子,如果Alice直接在以太坊鏈上轉賬了1ETH給Bob,那CT是不能因此滿足執行前提的。
動態 | EOS競猜游戲EOSPlaystation遭假轉賬通知攻擊:今天下午17:22開始,PeckShield安全盾風控平臺DAppShield監測到黑客向EOS競猜類游戲EOSPlaystation發起連續攻擊,攻擊者已經獲利近兩萬EOS。目前已經聯系項目方暫停游戲,PeckShield安全人員在此提醒,開發者應在合約上線前做好安全測試,特別是要排除已知攻擊手段的威脅,必要時可尋求第三方安全公司協助,幫助其完成合約上線前攻擊測試及基礎安全防御部署。[2019/2/5]
在上面這個案例中,FactRegistry合約需要一個函數?transfer(),Alice傳入Bob的地址作為收款方。transfer()?函數做兩件事:把需要轉移的ETH發送給收款方;保存對這筆轉賬的記錄,比如存儲這筆轉賬相關參數的哈希值,到合約的存儲項中。FactRegistry合約還帶有一個?isValid()?函數,接受一條哈希值作為參數,返回一個布爾值——如果該條輸入的哈希值等于合約中記錄的某條哈希值,就返回?True。如此,這個記錄在合約中的哈希值,就可以當成是一個事實的證明。這個為FactRegistry合約引入一個新的事實的過程,通常稱為「事實注冊」。
一筆簽過名的CT所包含的鏈上事件的指紋有兩個字段:一個FactRegistry合約的地址;上述合約中應當記錄的事實。
StarkEx有條件交易
StarkEx會批量打包Layey-2中的交易,并使用一條發送到鏈上的STARK證明來結算這些交易。如果某一批次中包含CT,StarkEx將保證相關的事實已經注冊,以便能清算該批交易;否則,整批交易都會回滾。
有條件交易的案例
在本部分,我們會提出一些應用場景,并指出CT如何能用在這些場景中。
詳細案例——快速取款
在任意L2方案中,最初級的從L2轉出資金到L1中的辦法便是終局化一次L2的狀態更新。在基于有效性證明的系統中,終局化一次L2的狀態更新需要在鏈上提交一個相應的有效性證明,一般來說需要10分鐘。這就意味著,如果用戶使用這種方式來取款,就不得不等待至少10分鐘。
而快速取款的用意正是為了解耦這種依賴,讓用戶能夠在「區塊時間」內免信任地將資金取出,也即,就像使用普通的以太坊合約一樣。
那到底是怎么個流程呢?如果Alice想要從L2中取出1ETH到L1,Alice可以在L2上簽名一條將1ETH轉移給流動性提供者的CT,條件是LP在L1上轉移1ETH給Alice。Alice的CT僅能在她收到L1上的轉賬之后才能執行,所以她不會面臨對手方風險。
我們來看一個能夠協助CT的簡易的FactRegistry合約:
我們可以看到這個合約有一個payabe函數?transfer(),它的功能有兩個:
轉移一定數量的ETH到某個地址
登記keccack(amount、address、nonce)
Alice簽發的CT只有keccack(1ETH,Alice,nonce)在FactRegistry中注冊之后才能執行。而這個事實,也只有在給Alice的1ETH轉賬發生了之后才能成功注冊。Alice可以無需信任地取出1ETH,整個過程只需她的前面,和LP在以太坊鏈上發起的一筆交易。
更多應用場景
類似的流程可以捕捉到下列類型的事件,從而L2的CT也可以有更多的用途,例如:
如果ETH的價格跌到了1010DAI,Alice希望在L2賣出1ETH,換回在L1上的1000DAI
Alice希望在L2上給Bob10ETH,只要Bob以Alice的名義在Alice指定的dApp中存入9.5ETH
Alice希望在DeversiFi的L2上給Bob10ETH,只要Bob在dYdX的L2中給Alice的賬戶存入9.5ETH
總結
CT的第一種用途是快速取款,但StarkEx運營者可以用這一元件實現許多種類的L2-L1交互。
Tags:ALIICEALICELICKalima BlockchainICEBT幣alice幣未來的價格預測Metabolic
據鏈捕手不完全統計,4月12日到4月16日期間,區塊鏈行業共發生26起公開投融資事件,方向主要集中在DeFi、NFT、Web3.0等板塊.
1900/1/1 0:00:00來源:頭等倉區塊鏈研究院 項目概要 dFuture是一個由LP提供流動性的點對池交易式期貨Dex,處于Dex賽道的細分賽道“AMM型期貨Dex賽道”中.
1900/1/1 0:00:00據鏈捕手不完全統計,3月1日到3月7日期間,區塊鏈行業發生至少30起投融資事件,是今年以來融資數量最多的一周,方向主要集中在DeFi、波卡生態等板塊.
1900/1/1 0:00:00鏈捕手消息,Vitalik在昨天發起EIP3298提案,提案內容為在倫敦升級中移除“執行SELFDESTRUCT獲得gas費減少獎勵”的規則.
1900/1/1 0:00:00鏈捕手消息,2021年3月4日,由Blocklike主辦的品牌活動「即刻鏈接」第9期「Privacy·Sunrise」線上主題分享會圓滿落幕.
1900/1/1 0:00:00本文發布于巴比特資訊,原文標題:《NFT知識向|一文帶你了解生成藝術的過去、現在和未來》,作者:DerekEdwardSchloss和StephenMcKeon.
1900/1/1 0:00:00