OP-DLC 2: 簡化DLC共識機制 實現信任最小化

robot
摘要生成中

OP-DLC 2:大道至簡

Discreet Log Contract (DLC)是2018年由麻省理工學院的研究人員提出的一種基於預言機的合約執行框架。它允許雙方根據預定義條件進行條件支付,通過預先確定可能結果並進行預籤名,在預言機簽署結果時執行支付。這使得DLC能在保證比特幣存款安全的同時,實現新的去中心化金融應用。

前文總結了DLC在隱私保護、復雜合約、低資產風險等方面的優勢,也分析了它面臨的密鑰風險、去中心化信任風險、串謀風險等問題。文章提出引入去中心化預言機、門限籤名、樂觀挑戰機制等來應對這些問題。由於DLC涉及預言機、Alice和Bob三方,不同參與方之間的串謀攻擊情況復雜,導致防御策略也相對復雜。這種復雜的防御策略並非完美,不符合"大道至簡"的理念,缺乏簡潔美。

在比特幣中,任何參與方的行爲都需通過UTXO實現。因此,通過共識機制確保UTXO正確,就能抵御任意攻擊。同理,在DLC中,任何行爲都需通過CET(Contract Execution Transaction)實現。使用樂觀挑戰機制確保CET正確,就能抵御任意攻擊。具體而言,預言機質押2BTC後才能簽署CET。在CET中加入樂觀挑戰機制。如果CET未被挑戰或成功應對挑戰,則視爲正確並完成結算,預言機解除質押並獲得手續費。如果預言機試圖作惡,任何人都可成功挑戰,該CET將無法結算,預言機損失質押金且無法再對同一CET籤名。這種方式符合"大道至簡",具有簡潔美。

Bitlayer Research:OP-DLC 2 大道至簡

DLC原理

Alice和Bob籤訂對賭協議:賭第ξ個區塊的哈希值是奇數還是偶數。如果是奇數,Alice贏得遊戲並可提取資產;如果是偶數,Bob贏得遊戲並可提取資產。通過DLC,預言機傳遞第ξ個區塊信息來構造條件籤名,使正確的獲勝方贏得全部資產。

橢圓曲線生成元爲G,階爲q。預言機、Alice和Bob的密鑰對分別爲(z, Z), (x, X), (y, Y)。

注資交易(鏈上):Alice和Bob共同創建一筆注資交易,各自將10BTC鎖定在一個2-of-2的多重籤名輸出中(一個公鑰X屬於Alice,一個公鑰Y屬於Bob)。

構建CET(鏈下):Alice和Bob創建CET1和CET2,用於花費注資交易。

預言機計算承諾R = k · G,然後計算S和S'

S := R - hash(OddNumber, R) · Z

S' := R - hash(EvenNumber, R) · Z

Alice和Bob對應的新公鑰如下:

PK^Alice := X + S

PK^Bob := Y + S'.

結算(鏈下->鏈上):當第ξ個區塊生成後,預言機根據該區塊的哈希值,簽署對應的CET1或CET2。

如果哈希爲奇數,預言機簽署s

s := k - hash(OddNumber, R) z

廣播CET1。

如果哈希爲偶數,預言機簽署s'

s' := k - hash(EvenNumber, R) z

廣播CET2。

提幣(鏈上):如果預言機廣播CET1,Alice可計算出新私鑰,並花費鎖定的20個BTC

sk^Alice = x + s

如果預言機廣播CET2,Bob可計算出新私鑰,並花費鎖定的20個BTC

sk^Bob = y + s'

研究發現:上述過程中,任何行爲都需通過CET實現。因此,只需使用樂觀挑戰機制確保CET正確,就能抵御任意攻擊。錯誤的CET會被挑戰而不被執行,正確的CET則會被執行。此外,預言機需爲惡意行爲付出代價。

待挑戰程序爲f(t),應如下構建CET

s = k - hash(f(t), R) z.

假設,實際情況是第ξ個區塊的哈希值爲奇數odd,即f(ξ) = OddNumber,預言機應簽署CET1

s := k - hash(OddNumber, R) z.

但如果預言機作惡,將函數值改爲Even,簽署了CET2:

s' := k - hash(EvenNumber, R) z.

那麼,任何用戶都可根據f(ξ) ≠ OddNumber來挫敗這一惡意行爲。

OP-DLC 2

OP-DLC包括以下5項規定:

  1. 預言機由一個聯盟組成,聯盟中有n個參與方,任一成員均可簽署CET。質押2BTC後,預言機才能發布籤名賺取手續費。如果某成員作惡,將損失質押。其他成員可繼續籤署CET,確保用戶能夠出金。Alice和Bob也可成爲預言機,真正做到只相信自己,實現信任最小化。

  2. 如果預言機作惡,修改結果,必然導致 f1(ξ) ≠ z1, f2(z1) ≠ z2 的情況。因此,任何參與方都可發起挑戰,即進行Disprove-CET1交易。

  3. 如果預言機誠實簽署CET,任何參與方都無法發起有效的Disprove交易。1周後,CET可正確結算。此外,預言機獲得0.05BTC獎勵,作爲其質押2BTC 1周的資金佔用費以及誠實簽署CET的手續費。

  4. 任何參與方都能對Oracle_sign發起挑戰:

    • 若Oracle_sign誠實,則無法發起Disprove-CET1交易,1周後執行CET結算。預言機質押解鎖,並獲得手續費;

    • 若Oracle_sign不誠實,即有人成功發起Disprove-CET1交易,成功花費connector A output,則該預言機的籤名無效,損失2BTC質押,且未來該預言機不可再對該DLC合約發起相同結果的籤名,因爲依賴connector A output的Settle-CET1將永久失效。

  5. OP-DLC中的挑戰是無需許可的,任何參與方都可監督OP-DLC內的合約是否正確執行。這實現了對預言機的信任最小化。與閃電網絡相比,Alice和Bob也可離線。因爲預言機只有誠實籤名才會結算CET,而作惡的預言機會被任何人挑戰和懲罰。

優點:

  • 對資產控制度高,只信任自己:Alice和Bob均可成爲預言機,簽署CET。樂觀挑戰機制會挫敗錯誤的CET,所以無法作惡。因此,OP-DLC可做到用戶只相信自己。相比之下,在BitVM中,用戶需作爲Operator並參與後續所有入金,才能做到只信任自己。

  • 資金利用率高:若用戶只信任自己,OP-DLC中用戶依賴自己出金,不需等量資金墊付;而BitVM中,用戶需等量資金墊付,然後報銷,這帶來更大資金壓力。

  • 能籤字的預言機需在OP-DLC入金時確定,但用戶自己也可成爲預言機,可自己給自己籤名。

缺點:

  • 出金時間需1周:本質上OP-DLC和BitVM的資金時間成本都存在且等量。OP-DLC出金需經過挑戰期;如果BitVM依賴用戶自己墊付,等量墊付資金也需經過挑戰期才能成功報銷。

  • 需要預籤的籤名數量增長較快,與CET數量呈線性關係。需要盡可能多的CET,才能枚舉所有提幣結果。

結論

OP-DLC將樂觀挑戰機制引入CET中,確保錯誤的CET不被結算,且相應的惡意預言機損失質押;確保正確的CET被執行,且預言機質押解鎖並獲得手續費。這種方式能夠抵御任意攻擊,具有簡單之美。

OP5.31%
查看原文
此頁面可能包含第三方內容,僅供參考(非陳述或保證),不應被視為 Gate 認可其觀點表述,也不得被視為財務或專業建議。詳見聲明
  • 讚賞
  • 8
  • 分享
留言
0/400
鱿鱼丝加班狗vip
· 07-15 22:01
去中心化 这块真的可以
回復0
ponzi_poetvip
· 07-15 09:51
又在吹预言机啊
回復0
ApeWithNoFearvip
· 07-14 06:45
共识就是金啊?...
回復0
薛定谔的私钥vip
· 07-14 06:45
大道至简 妙啊~
回復0
梦游交易者vip
· 07-14 06:43
链还得整花活儿啊
回復0
Buy_High_SellLowvip
· 07-14 06:41
质押挑战 牛逼的思路
回復0
NotFinancial_Advicevip
· 07-14 06:39
又是些新概念整那么复杂...
回復0
ValidatorVikingvip
· 07-14 06:21
经过实战考验的节点对另一个共识炒作并不感兴趣。先给我晒出运行时间指标
查看原文回復0
交易,隨時隨地
qrCode
掃碼下載 Gate APP
社群列表
繁體中文
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)