织梦CMS - 轻松建站从此开始!

我的网站

当前位置: 主页 > 比特币 > 比特币资讯

Vitalik Buterin:技术解析分片的特定属性与权衡 (5)

时间:2021-05-21 09:07来源:未知 作者:admin 点击:
对数据可用性进行可扩展性验证难度更高 欺诈证明不能用于验证数据可用性。运算的欺诈证明基于这样一种条件,即原始声明一旦提交,运算的输入数据

对数据可用性进行可扩展性验证难度更高

欺诈证明不能用于验证数据可用性。运算的欺诈证明基于这样一种条件,即原始声明一旦提交,运算的输入数据要在链上发布,因此,如果有人发起挑战,该挑战的执行与原始执行的「环境」完全一致。对于数据可用性检查,上述操作无法实现,因为如果要在链上发布,需要检查的数据量太多。因此,针对数据可用性,如何生成欺诈证明方案变成了一个关键问题,有人可以声称「数据 X 可用」,但不在链上发布,等待挑战者出现,发起挑战后,再向整个网络发布该数据,使得网络中的其他参与者认为挑战者是不正确的

下图的「渔夫困境」能够很好阐释其中道理:

Vitalik Buterin:技术解析分片的特定属性与权衡

「渔夫困境」的核心理念涉及到两种情况,一种情况是 V1 是恶意发布者,但 V2 是一个诚实挑战者,而另一种情况是 V1 是诚实发布者,而 V2 是恶意挑战者。两种情况对于当时未尝试下载该特定数据的任何人来说都没有区别。当然,在可扩展的去中心化区块链中,每个个人节点只期望下载一小部分数据,因此只有一小部分节点能够了解分歧之外的所有状况。

由于不可能辨识出哪一方是正确的,所以也无法为数据可用性生成有效的欺诈证明解决方案。

人们经常问道:「如果某些数据不可用怎么办?ZK-SNARK 可以确保一切数据的有效性,但这还不够吗?」

不幸的是,仅仅保证数据有效性还不足以维持区块链正常运行。原因是如果区块链能经过验证,但所有数据均不可用,则用户将无法更新数据,生成证明验证未来的区块。攻击者如果能生成一个区块,该区块虽然能够经过验证,但数据不可用,可以有效阻碍区块链运行。有的攻击者还可以不上传特定用户的帐户数据,直到该用户支付赎金为止,因此这不仅仅是一个活性问题。

有一些强有力的信息论观点认为这个问题是根本性问题,没有优良解决方案 (例如密码学累加器的应用)。有关详细信息,请参见本文。

那么,如何在不下载的情况下,检查 1 MB 数据是否可用?这听起来无法实现!

关键的解决方案是一种称为数据可用性采样 (data availability sampling) 的技术。该技术的工作方式如下:

  • 通过纠删码工具,将具有 N 段的数据分成为 2N 段的数据,因此只需任意 N 个数据段都可以恢复整个数据。
  • 用户如果要检查可用性,无需下载全部数据,而是随机选择区块中的位置 (常数,例如 30),并且仅当在区块中找到所有选定位置的数据时,才接受这个区块。

Vitalik Buterin:技术解析分片的特定属性与权衡 (责任编辑:admin)

织梦二维码生成器
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 验证码:点击我更换图片
栏目列表
推荐内容