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

我的网站

当前位置: 主页 > 竞争币 > 以太坊

简析区块链扩容数据可用性问题:以 Rollup 与分片为例 (3)

时间:2020-12-21 08:37来源:未知 作者:admin 点击:
进一步探索 Rollup 的设计旨在将区块链作为数据可得性层来存储交易,但是实际的交易处理和计算都发生在 Rollup 上。这是一种很有趣的思路:区块链实际

进一步探索

Rollup 的设计旨在将区块链作为数据可得性层来存储交易,但是实际的交易处理和计算都发生在 Rollup 上。这是一种很有趣的思路:区块链实际上不需要进行任何计算,但是至少需要将交易分装到区块中,并确保交易的数据可得性。

这也是 LazyLedger 的设计思路,即,一种「懒惰的」区块链,只需要完成区块链的两个核心任务 —— 通过可扩展方式对交易进行排序,并实现交易的数据可得性。这使得 LazyLedger 成为 Rollup 等系统中的最小「可拔插」组件。

数据可得性问题的解决方案

下载所有数据

正如上文所讨论的那样,解决数据可得性问题的最直接方法就是,要求所有人(包括轻客户端)下载所有数据。显然,这种方法不具备良好的可扩展性。比特币和以太坊等大多数区块链均采用这种方法。

数据可得性证明

数据可得性证明是一种新技术:客户端只需下载区块中的一小部分数据,即可检查该区块中所有数据是否均已发布。

数据可得性证明采用了一种被称为纠删码的数学元件。纠删码被广泛应用到了从 CD-ROM 到卫星通信再到二维码等信息技术中。纠删码可以将原本 1 MB 的区块数据扩充成 2 MB,其中多出的 1 MB 就是叫做纠删码的特殊数据。如果区块中的任何字节丢失,纠删码都可以帮你找回它们。即使整个区块的数据丢失, 纠删码也可以帮你找回所有数据。同样地,有了纠删码,即使 CD-ROM 中的数据都被擦除,你的计算机也可以读取到(译者注:纠删码并不能帮你节约带宽,假设 1 MB 的数据被扩充成了 2 MB,你仍然需要获得至少 1 MB 的数据才能恢复出原始数据,虽然并不要求这 1 MB 的数据是连续的)。

这就意味着,要实现 100% 的数据可得性,区块生产者只需将区块中 50% 的数据发布到网络上。如果恶意区块生产者想要成功隐瞒 1% 的数据,就必须隐瞒超过 50% 的数据,否则这 1% 的数据可以通过剩下 50% 的数据找回(译者注:此段第一句存疑)。

有了这个知识,客户端就能采取措施来确保区块中的数据不会被隐藏。客户端可以尝试随机下载区块切分而成的数据块,如果他们未能成功下载数据块(即表明,该数据块属于恶意区块生产者未公开的那 50% 的数据),它们就会拒绝承认该区块的数据可得性。如果下载一个随机数据块,客户端就有 50% 的概率发现无效区块。如果下载两个数据块,就有 75% 的概率。如果下载三个数据块,就有 87.5% 的概率。以此类推,直到下载七个数据块之后,就有 99% 的概率。通过这种方式,客户端只需下载区块中的一小部分数据,即可有效检查整个区块的数据可得性。

数据可得性证明的全部细节会更复杂一些,而且依赖于其它假设,例如,网络中的轻客户端数量不能低于某个下限,这样就有足够多的轻客户端请求数据块,以便恢复整个区块的数据。如果你想了解更多信息,可以查看关于数据可用性证明的论文。 (责任编辑:admin)

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