📢 Gate廣場 #MBG任务挑战# 發帖贏大獎活動火熱開啓!
想要瓜分1,000枚MBG?現在就來參與,展示你的洞察與實操,成爲MBG推廣達人!
💰️ 本期將評選出20位優質發帖用戶,每人可輕鬆獲得50枚MBG!
如何參與:
1️⃣ 調研MBG項目
對MBG的基本面、社區治理、發展目標、代幣經濟模型等方面進行研究,分享你對項目的深度研究。
2️⃣ 參與並分享真實體驗
參與MBG相關活動(包括CandyDrop、Launchpool或現貨交易),並曬出你的參與截圖、收益圖或實用教程。可以是收益展示、簡明易懂的新手攻略、小竅門,也可以是現貨行情點位分析,內容詳實優先。
3️⃣ 鼓勵帶新互動
如果你的帖子吸引到他人參與活動,或者有好友評論“已參與/已交易”,將大幅提升你的獲獎概率!
MBG熱門活動(帖文需附下列活動連結):
Gate第287期Launchpool:MBG — 質押ETH、MBG即可免費瓜分112,500 MBG,每小時領取獎勵!參與攻略見公告:https://www.gate.com/announcements/article/46230
Gate CandyDrop第55期:CandyDrop x MBG — 通過首次交易、交易MBG、邀請好友註冊交易即可分187,500 MBG!參與攻略見公告:https://www.gate.com/announcements
OP-DLC: 用簡單方案實現DLC合約的防攻擊升級
優化DLC:簡單方案實現大道至簡
2018年,麻省理工學院的Tadge Dryja提出了Discreet Log Contract (DLC)這一基於預言機的合約執行框架。DLC允許雙方根據預定義條件進行條件支付,雙方預先確定可能結果並預籤名,在預言機簽署結果時使用這些預籤名執行支付。這一機制在保證比特幣存款安全的同時,實現了新型去中心化金融應用。
前文分析了DLC在隱私保護、復雜合約、資產風險等方面的優勢,也指出了密鑰風險、去中心化信任風險、串謀風險等問題。雖然引入去中心化預言機、門限籤名、樂觀挑戰機制等可以解決這些問題,但由於DLC涉及預言機、Alice和Bob三方,不同參與方之間的串謀攻擊情況復雜,導致防御策略也相對復雜。這種復雜的防御策略並非完美,缺乏簡潔美。
在比特幣中,任何參與方的行爲都需通過UTXO實現。因此,只要確保UTXO正確,就能抵御任何攻擊。同理,在DLC中,任何行爲都需通過CET(合約執行交易)實現。只要使用樂觀挑戰機制確保CET正確,就能抵御任何攻擊。具體而言,預言機質押2BTC後才能簽署CET。在CET中添加樂觀挑戰機制,如果CET未被挑戰或成功應對挑戰,則視爲正確並可完成結算,預言機解除質押並獲得手續費;如果預言機試圖作惡,任何人都可成功挑戰,該CET將無法結算,預言機損失質押金且無法再對同一CET籤名。這種方案簡潔而有效。
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包含以下規定:
預言機由聯盟組成,任一成員可簽署CET。質押2BTC後才能發布籤名賺取手續費。作惡成員損失質押,其他成員仍可簽署CET確保用戶出金。Alice和Bob也可成爲預言機,實現只相信自己。
如預言機作惡修改結果,必然導致f1(ξ) ≠ z1, f2(z1) ≠ z2。任何參與方都可發起Disprove-CET1交易挑戰。
預言機誠實簽署CET時,任何參與方都無法發起有效Disprove交易。一周後CET可正確結算,預言機獲得0.05BTC獎勵,作爲質押2BTC一周和誠實簽署CET的報酬。
任何參與方都可對Oracle_sign發起挑戰:
OP-DLC中的挑戰是無需許可的,任何參與方都可監督合約是否正確執行,實現對預言機的信任最小化。與閃電網絡相比,Alice和Bob也可離線,因爲預言機只有誠實籤名才會結算CET,作惡預言機會被任何人挑戰和懲罰。
優點:
資產控制度高,只信任自己:Alice和Bob可成爲預言機簽署CET,樂觀挑戰機制會挫敗錯誤CET,無法作惡。OP-DLC實現用戶只相信自己。
資金利用率高:用戶依賴自己出金,不需用等量資金墊付。
能籤字的預言機需在入金時確定,但用戶可成爲預言機,給自己籤名。
缺點:
出金時間需一周:本質上OP-DLC和BitVM的資金時間成本相同。OP-DLC出金需經過挑戰期;BitVM若依賴用戶自己墊付,等量墊付資金也需經過挑戰期才能成功報銷。
需要預籤的籤名數量增長較快,與CET數量呈線性關係。需要盡可能多的CET才能枚舉所有提幣結果。
結論
OP-DLC將樂觀挑戰機制引入CET,確保錯誤CET不被結算且惡意預言機損失質押;確保正確CET被執行且預言機質押解鎖並獲得手續費。這種方式能夠抵御任何攻擊,體現了簡單之美。