本文意在講解StarkEX為支持快速取款而提出的解決方案。本方案的優點在于,其速度完全獨立于L2的運營者生成有效性證明的速度。
快速取款模塊已經運行在以太坊主網的StarkEx上,并且賦能了DeversiFi交易所和dYdX交易所。
而下文我們講解的方案除了快速取款以外,還有非常多的使用場景。我們先來了解一下需求是什么。
需求
區塊鏈使得兩方之間的免信任交互成為可能。Alice想發布一筆僅在特定條件滿足時才能執行的交易;Bob希望在條件滿足時能直接執行Alice的交易、不必再次獲得Alice的許可。我們把支持此類交互模式的元件稱作“有條件交易”。
在L1上實現CT不需要什么奇思妙想,因為智能合約可以保證時間和交易執行的耦合。但如果要求在L2中實現,那就有些挑戰了。比如,在StarkEx中,交易發起人簽名之后把交易傳遞給運營者,后者有責任來執行這筆交易,可是你用什么辦法來阻止運營者在所需條件滿足之前就執行這筆交易呢?
國家發改委等五部門:支持有條件的城市培育壯大區塊鏈、云計算等數字產業:11月30日,國家發展改革委等五部門發布《“十四五”支持老工業城市和資源型城市產業轉型升級示范區高質量發展實施方案》(簡稱《方案》)提出,積極支持示范區城市符合條件的企業上市。
《方案》提出,深化信息技術與制造業融合發展,支持有條件的城市培育壯大人工智能、大數據、區塊鏈、云計算、網絡安全等數字產業,推動知識、信息、數據等新生產要素合理流動、有效集聚和利用。加快構筑數字社會,支持發展遠程辦公、遠程教育、遠程醫療、智慧樓宇、智慧社區和數字家庭。(證券日報)[2021/12/1 12:43:19]
在本文中,我們只聚焦于在L2上實現依賴于L1事件的CT。也就是說,這種CT要能保證,運營者僅能在某個?鏈上事件?發生之后才能執行某筆簽過名的交易。更進一步,我們將加入一種依賴于另一個L2中事件的CT,從而支持StarkEx實例之間以及StarkNet中的互操作性。
加拿大Wealthsimple獲CSA有條件批準,將測試其加密貨幣平臺:總部位于多倫多的金融科技初創公司Wealthsimple已獲得加拿大證券管理委員會(CSA)的有條件批準,將對其最近已宣布的加密貨幣平臺進行為期兩年的測試。(Betakit)[2020/8/8]
下面,我們來形式化這種鏈上事件的概念,看看我們如何在StarkEx中的CT如何利用它。
有條件交易簡介
鏈上事件的注冊
CT使用了FactRegistry合約來跟蹤鏈上事件。實際上,只有在一個FactRegistry合約中注冊了的事件,才能“解鎖”CT。舉個例子,如果Alice直接在以太坊鏈上轉賬了1ETH給Bob,那CT是不能因此滿足執行前提的。
在上面這個案例中,FactRegistry合約需要一個函數?transfer(),Alice傳入Bob的地址作為收款方。transfer()?函數做兩件事:把需要轉移的ETH發送給收款方;保存對這筆轉賬的記錄,比如存儲這筆轉賬相關參數的哈希值,到合約的存儲項中。FactRegistry合約還帶有一個?isValid()?函數,接受一條哈希值作為參數,返回一個布爾值——如果該條輸入的哈希值等于合約中記錄的某條哈希值,就返回?True。如此,這個記錄在合約中的哈希值,就可以當成是一個事實的證明。這個為FactRegistry合約引入一個新的事實的過程,通常稱為“事實注冊”。
聲音 | 中國銀行前行長李禮輝:須警惕美國有條件批準Libra:在1月13日北大國發院舉辦的“數字貨幣未來”研討會暨《數字貨幣-領導干部讀本》發布會上,中國銀行前行長、第十二屆全國人大財經委委員李禮輝稱:“目前為止,Libra在美國國內也還受到很多質疑,包括來自美國的政客和政府部門。但在法規之外,到底有什么東西是能夠打動美國的政府、政客的?我覺得應該是國家的經濟金融戰略。地緣,或者說大國間的經濟金融競爭,也許會讓美國有條件批準Libra。”(小蔥)[2020/1/13]
一筆簽過名的CT所包含的鏈上事件的指紋有兩個字段:一個FactRegistry合約的地址;上述合約中應當記錄的事實。
StarkEx有條件交易
StarkEx會批量打包Layey-2中的交易,并使用一條發送到鏈上的STARK證明來結算這些交易。如果某一批次中包含CT,StarkEx將保證相關的事實已經注冊,以便能清算該批交易;否則,整批交易都會回滾。
動態 | 數字證券公司Propine獲新加坡金融監管局有條件經營許可證:據Finance Magnates今日消息,新加坡金融管理局(MAS)近日將數字證券初創公司Propine納入其金融科技監管沙箱,并已頒發給Propine有條件的經營許可證。Propine將能夠為數字資產提供托管服務。[2019/11/8]
有條件交易的案例
在本部分,我們會提出一些應用場景,并指出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交互。
原文鏈接:
https://medium.com/starkware/conditional-transfers-the-key-to-interoperability-2e1de044fb65
作者:?StarkWare
翻譯:?阿劍
Tags:ALILICALICEICEDecentralized ActivismRepublic ProtocolAliceNetALICE價格
尊敬的用戶:?????????BKEXGlobal即將上線TARA,詳情如下:上線交易對:TARA/USDT??幣種類型:ERC20充值功能開放時間:已開放??交易功能開放時間:2021年3月2.
1900/1/1 0:00:00尊敬的虎符用戶, 虎符將于2021年03月22日18:00(UTC8)重磅上線MFI/USDT交易對。充值已開啟,提現將于2021年03月23日10:00(UTC8)開啟.
1900/1/1 0:00:00尊敬的虎符用戶, 為支持freecash(FCH)主網升級,虎符將于2021年03月20日10:00(UTC8)暫停FCH充提業務,交易不受影響.
1900/1/1 0:00:00鏈聞消息,據韓國當地媒體亞洲經濟報道,摩根士丹利正在考慮通過Bithumb主要股東Vidente來收購Bithumb股份,目前正處于談判階段.
1900/1/1 0:00:00ICE推動DeFi生態升級近10余年間,區塊鏈技術在不斷的高速發展中,DeFi是全球當下階段區塊鏈相應項目建設中眾多行業用戶關注的核心,加密金融產業的趨勢已經逐漸明朗化.
1900/1/1 0:00:00尊敬的XT用戶: XT即將上線EFT、UME,詳情如下:開放充值:2021年3月29日11:00開放交易:2021年3月29日11:00開放提現:2021年3月29日11:00EFT是Eclip.
1900/1/1 0:00:00