📢 #Gate广场征文活动第三期# 正式启动!
🎮 本期聚焦:Yooldo Games (ESPORTS)
✍️ 分享独特见解 + 参与互动推广,若同步参与 Gate 第 286 期 Launchpool、CandyDrop 或 Alpha 活动,即可获得任意奖励资格!
💡 内容创作 + 空投参与 = 双重加分,大奖候选人就是你!
💰总奖池:4,464 枚 $ESPORTS
🏆 一等奖(1名):964 枚
🥈 二等奖(5名):每人 400 枚
🥉 三等奖(10名):每人 150 枚
🚀 参与方式:
在 Gate广场发布不少于 300 字的原创文章
添加标签: #Gate广场征文活动第三期#
每篇文章需 ≥3 个互动(点赞 / 评论 / 转发)
发布参与 Launchpool / CandyDrop / Alpha 任一活动的截图,作为获奖资格凭证
同步转发至 X(推特)可增加获奖概率,标签:#GateSquare 👉 https://www.gate.com/questionnaire/6907
🎯 双倍奖励机会:参与第 286 期 Launchpool!
质押 BTC 或 ESPORTS,瓜分 803,571 枚 $ESPORTS,每小时发放
时间:7 月 21 日 20:00 – 7 月 25 日 20:00(UTC+8)
🧠 写作方向建议:
Yooldo
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被执行且预言机质押解锁并获得手续费。这种方式能够抵御任何攻击,体现了简单之美。