Gnosis Ring Batch Markets

作者:扎克-赫斯, Zack Hess https://github.com/zack-bitcoin/amoveo-docs/blob/master/other_blockchains/gnosis_multi_token_batch_auction.md

解释环状批次基本知识的非正式博文

下面是一份解释环形批处理工具的正式文件

Ring Batches(环形批次)相当于Amoveo在状态通道中的限价订单 的链上、基于子货币(subcurrency)的版本。

问题所在 #

我们希望能够用区块链执行的资产来交易其他区块链执行的资产。我们希望交易能以一个好的价格进行。

区块链上NP问题的良好近似值 #

Gnosis Ring Batch Markets的一大技术创新是,他们找到了一种方法,可以找到NP硬问题的良好近似值,并将解决方案放在区块链上。

这是一项重要的创新,因为在链上计算这些问题的近似值都是难以实现的,而且近似的解决方案也不是确定的。 这类问题,想出一个完美的解决方案往往是不可能的,但一个近似解决方案的准确性可以很快得到验证。因此,Gnosis采用的策略是允许许多人提供近似的解决方案,并使用这些提交的最优化的解决方案。

感谢Gnosis,现在有可能解决区块链上的旅行销售员问题(the traveling salesman problem)/或者knapsack问题。 Gnosis的新工具与TrueBit欺诈证明机制属于同一家族。通过TrueBit,你可以在链上验证任何有N个步骤的计算,而链上的时间和空间成本只有O(log2(N))。

分布式加密密钥生成 PoS #

这个组件是Gnosis新市场引擎的弱点。 DKG工具是这样工作的。N个不同的人产生纠缠的信息,一个是公共的,一个是私人的。他们共享所有的公共信息,并使用它们来生成一个公钥。现在,可以使用这个公钥进行加密信息。最终,N个不同的人中的一些子集一起分享私人信息,并使用它们来计算一个私人密钥,该密钥可用于解密所有的信息。 Gnosis打算用这个DKG工具来防止市场上的抢先交易(front-running)行为。如果每个人的赌注都是秘密的,那么想在前面进行这些赌注的人就不会有他们需要的信息,从而能够在前面进行赌注。人们可以在市场上有加密的赌注,而这些赌注直到投注回合结束才会被解密。

所有创建纠缠信息的参与者,他们都提供了安全保证金。因此,如果有人能证明纠缠在一起的私人信息被提前泄露,那么不正当泄露的人就会受到惩罚。

DKG在gnosis中的应用,可以被认为是一种PoS共识协议。提供押金的N个参与者是共识协议的验证者。

正常的PoS共识协议是基于2/3的参与,所以如果1/3的验证者合作攻击,他们可以让协议停止运行。如果2/3的验证者合作,那么他们可以进行软分叉更新,对协议进行任意的修改。你可以在这里阅读更多关于PoS协议不工作的原因

PoS的参与者正在商定的共识状态,每个拍卖批次只有一个比特。他们要么同意透露从他们的信息中产生的私钥,要么决定不透露。

Gnosis DKG有一些需要透露私人信息的参与者的门槛M,他们有一个参与者的总数N,所以它类似于一个基于M/N参与的PoS协议,并且有2种可能的失败模式,类似于PoS的2种失败模式。

DKG因遗漏而破损 #

如果有N-M+1个验证者合作进行攻击,这种攻击是可能的。

DKG PoS的参与者可以做出决定,不透露他们的私人信息,所以这批订单都保持私人状态,这批订单永远不会被执行。

这使得DKG PoS验证者能够在市场上占据先机。攻击者可以查看每个批次的交易,然后利用这些知识来决定哪些批次应该被取消。他们可以把有风险的交易放到每一批中,而只解密那些对他们有利的交易批次。

DKG被提前揭示而打破 #

如果验证者中的M人合作,他们可以进行这种攻击。 如果验证者提前分享他们的秘密信息,他们可以使用私钥来解密所有的订单。因此,他们可以与矿工合作,让某些订单被选择性地审查。

这使得front-running变得微不足道。

首先有一批,他们审查所有卖出订单。只有攻击者可以出售。由于卖家如此之少,攻击者在所有交易中都能得到好的交易。

然后有一批人审查所有的买单。只有攻击者可以购买。由于买家如此之少,攻击者在所有交易中都得到了很好的交易。

让DKG PoS验证者使用安全押金债券并不能防止这种攻击。攻击者可以一起使用智能合约,把更多的钱锁进更多的押金中,强制要求他们合作执行攻击。

结论 #

现在看来,要想拥有安全的链上市场还是不可能的。可能很快就会有人证明这个目标是不可能的。 原子化地将不同合同的更新联系在一起是一个已解决的问题。通道的原子交换已经有将近十年的历史了。如果我们把计算移到链外,移到通道网络中,那么单价的批次就很容易被执行。安全市场是微不足道的。

我不明白为什么人们要花这么多精力去尝试把市场放在链上。链上智能合约是不可扩展的。即使链上市场是可能的,它们在与通道市场的竞争中仍然会失败。