OP-DLC: 用簡單方案實現DLC合約的防攻擊升級

robot
摘要生成中

優化DLC:簡單方案實現大道至簡

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

前文分析了DLC在隱私保護、復雜合約、資產風險等方面的優勢,也指出了密鑰風險、去中心化信任風險、串謀風險等問題。雖然引入去中心化預言機、門限籤名、樂觀挑戰機制等可以解決這些問題,但由於DLC涉及預言機、Alice和Bob三方,不同參與方之間的串謀攻擊情況復雜,導致防御策略也相對復雜。這種復雜的防御策略並非完美,缺乏簡潔美。

在比特幣中,任何參與方的行爲都需通過UTXO實現。因此,只要確保UTXO正確,就能抵御任何攻擊。同理,在DLC中,任何行爲都需通過CET(合約執行交易)實現。只要使用樂觀挑戰機制確保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多籤輸出中。

構建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可計算新私鑰並花費20BTC: sk^Alice = x + s

如果廣播CET2,Bob可計算新私鑰並花費20BTC: sk^Bob = y + s'

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

待挑戰程序爲f(t),應如下構建CET: s = k - hash(f(t), R) z

假設實際第ξ個區塊哈希值爲奇數,即f(ξ) = OddNumber,預言機應簽署CET1: s := k - hash(OddNumber, R) z

但如果預言機作惡,將函數值修改爲Even並簽署CET2: s' := k - hash(EvenNumber, R) z

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

OP-DLC 2

OP-DLC包含以下規定:

  1. 預言機由聯盟組成,任一成員可簽署CET。質押2BTC後才能發布籤名賺取手續費。作惡成員損失質押,其他成員仍可簽署CET確保用戶出金。Alice和Bob也可成爲預言機,實現只相信自己。

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

  3. 預言機誠實簽署CET時,任何參與方都無法發起有效Disprove交易。一周後CET可正確結算,預言機獲得0.05BTC獎勵,作爲質押2BTC一周和誠實簽署CET的報酬。

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

    • 若Oracle_sign誠實,無法發起Disprove-CET1交易,一周後執行CET結算。預言機質押解鎖並獲得手續費。
    • 若Oracle_sign不誠實,任何人成功發起Disprove-CET1交易並花費connector A output,則該預言機籤名無效,損失2BTC質押,且未來不可再對該DLC合約發起相同結果的籤名。
  5. OP-DLC中的挑戰是無需許可的,任何參與方都可監督合約是否正確執行,實現對預言機的信任最小化。與閃電網絡相比,Alice和Bob也可離線,因爲預言機只有誠實籤名才會結算CET,作惡預言機會被任何人挑戰和懲罰。

優點:

  • 資產控制度高,只信任自己:Alice和Bob可成爲預言機簽署CET,樂觀挑戰機制會挫敗錯誤CET,無法作惡。OP-DLC實現用戶只相信自己。

  • 資金利用率高:用戶依賴自己出金,不需用等量資金墊付。

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

缺點:

  • 出金時間需一周:本質上OP-DLC和BitVM的資金時間成本相同。OP-DLC出金需經過挑戰期;BitVM若依賴用戶自己墊付,等量墊付資金也需經過挑戰期才能成功報銷。

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

結論

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

OP0.71%
查看原文
此頁面可能包含第三方內容,僅供參考(非陳述或保證),不應被視為 Gate 認可其觀點表述,也不得被視為財務或專業建議。詳見聲明
  • 讚賞
  • 3
  • 分享
留言
0/400
链上福尔摩斯妹vip
· 07-20 18:09
又是一出链上资金站队大戏~预言机背后是哪个大户呢
回復0
狗庄的小兵vip
· 07-20 17:57
优化有用不? 机制很简单。
回復0
格局打开器vip
· 07-20 17:50
预言机还能监督? 6
回復0
交易,隨時隨地
qrCode
掃碼下載 Gate APP
社群列表
繁體中文
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)