Voted Coins
follow us on twitter . like us on facebook . follow us on instagram . subscribe to our youtube channel . announcements on telegram channel . ask urgent question ONLY . Subscribe to our reddit . Altcoins Talks Shop Shop


This is an Ad. Advertised sites are not endorsement by our Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction. Advertise Here

Author Topic: 详解17000tps的以太坊snark侧链方案  (Read 792 times)

Offline billy.ryoko

  • Legendary
  • *
  • Activity: 1506
  • points:
    6024
  • Karma: 2
  • Trade Count: (0)
  • Referrals: 1
  • Last Active: April 06, 2021, 04:53:54 PM
    • View Profile

  • Total Badges: 19
    Badges: (View All)
    10 Posts First Post Fifth year Anniversary
详解17000tps的以太坊snark侧链方案
« on: October 09, 2018, 01:01:11 AM »
译者按:此前以太坊创始人Vitalik根据ZK-SNARKs技术提出的500tps扩容方案,引发了社区对区块链扩容的更多思考,而此后由以太坊研究者Barry Whitehat,Alex Gluchowski,Harry R,Yondon Fu和Philippe Castonguay共同提出的snark侧链方案,更是号称可让以太坊网络实现17000 tps 的交易吞吐量。那这种方案究竟是怎么回事呢?本文试图给出答案。

eth

(图片来自:The Cryptonomist)

 

原文作者:BarryWhitehat, Alex Gluchowski, HarryR , Yondon Fu, Philippe Castonguay

 

一、概述
 

本文介绍了一种基于snark的侧链方案,它要求每次状态转换恒定的gas,其不依赖于每次转换过程中包含的交易数。这限制了snark大小的可扩展性,其在经济上是可证明的,这与之前提出的gasBlockLimit/gasPerTx提议(注:以太坊创始人vbuterin提出的500tps扩容方案)不同。

如果出现了一个恶意运营者(最坏的情况下),系统会退化为一种链上通证,而恶意的运营者将无法窃取人们的资金。

如果数据变得不可用,运营者可以被替换,我们可以回滚到之前的有效状态(根据现有用户的请求),然后通过新的运营者继续该状态的运行。

 

二、系统角色
 

系统当中有两种角色

创建交易以更新状态的用户;
使用snark的运营者,他们会将这些交易聚合为单个链上状态更新;
他们使用智能合约来进行交互。系统在默克尔树(merkle tree)中有一个 item列表,它将公钥(所有者)与不可替代通证联系起来。

通证可以被撤回,但机会只有一次。

2.1、在snark交易中
用户创建交易,以更新通过链外方式发送给运营者的通证所有权。该运营者创建的证明包含:

之前的状态;
交易集;
通过newState码,我们可以验证EVM虚拟机中的证明,当且仅当证明是有效的时候,系统会更新这个默克尔根(merkle root);

2.2、优先队列
用户还可以通过智能合约层请求一次取回操作。如果运营者无法在给定的时间内服务这个队列,我们就假定数据不可用。由此,这个运营者会受到惩罚,而系统会开始寻找新的运营者。

两次取出相同的leaf(子叶)是不可能的,因为每次取出时,系统会存储已经退出的leaf(子叶),并检查未来所有退出的leaf(子叶);

2.3、运营者拍卖活动
如果先前的运营者已经遭到了惩罚,系统会开始搜索新的运营者,而这是通过拍卖活动来实现的,其中用户可以通过投标的方式竞选运营者。

经过一段时间后,新的运营者将根据最新侧链状态的最高出价(高于某个最小出价)被选出。

2.4、回滚
当运营者发生更改时,系统会允许用户退出。要做到这一点的原因在于,在回滚发生时,用户能够拿回某个状态下自己的币。

系统会按状态,排序这些取款操作,并在该状态下回滚链交易,直到新的运营者继续负责状态的更新。

请注意,由于不可能将同一leaf(子叶)撤回两次,所以用户不能从旧状态退出同一leaf(子叶);

 

三、讨论
 

运营者被迫处理优先队列中的请求,否则将遭到惩罚。如果他们拒绝运行系统的snark侧链,他们仍会被迫允许优先队列退出。因此,如果运营者出现了恶意,系统将会退化为一种链上通证。

用户不应该接受一个被传输的leaf(叶交易),除非所有的链数据都是可用的,以便他们知道在最坏的情况下(如果发生了回滚),他们可以成为新的运营者。

成为运营者所拥有的权限,可能超出了普通用户,但只要有一个诚实的运营者想要接管状态,那么用户的钱就会是安全的。此外,在较新的状态投标中,这些运营者的投标相对其他投标都具有优势。

然而,这就允许当前运营者继续连任,因为他们将知道最新状态的数据,并且可竞标最新的状态。

然而,我们可以定一个最低权益,如果他们再次拒绝优先服务,这些运营者会再次遭受惩罚。因此,这样的系统可保证有人会前来处理队列,否则链将回滚到最初的状态,而用户可以在回滚发生时进行退出操作。

不同于无法保证所有状态有效性的Plasma结构,这种设计避免了竞争性撤回,因为snark不允许无效的状态转换。因此,我们可以从具有恶意运营者的场景当中恢复过来,而不必强制所有用户退出(当然,希望退出的用户仍然可以退出)。

http://m.8btc.com/snark-side-chain-17000-tps

Altcoins Talks - Cryptocurrency Forum

详解17000tps的以太坊snark侧链方案
« on: October 09, 2018, 01:01:11 AM »

This is an Ad. Advertised sites are not endorsement by our Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction. Advertise Here


 

ETH & ERC20 Tokens Donations: 0x2143F7146F0AadC0F9d85ea98F23273Da0e002Ab
BNB & BEP20 Tokens Donations: 0xcbDAB774B5659cB905d4db5487F9e2057b96147F
BTC Donations: bc1qjf99wr3dz9jn9fr43q28x0r50zeyxewcq8swng
BTC Tips for Moderators: 1Pz1S3d4Aiq7QE4m3MmuoUPEvKaAYbZRoG
Powered by SMFPacks Social Login Mod