资讯

从 10 倍到 1000 倍BCH 区块压缩技术进化史

作者:admin 2021-09-14 我要评论

文 | Bruce Lee (转载请注明出处)序BCH 从诞生之日起,就很明确的走链上扩容的路线。未来区块必然会变得越来越大,如何让区块在节点之间快速传播就成了...

文 | Bruce Lee (转载请注明出处)


BCH 从诞生之日起,就很明确的走链上扩容的路线。未来区块必然会变得越来越大,如何让区块在节点之间快速传播就成了热门的课题。BCH 已经出现了多种区块压缩技术,而且一个比一个强大,本文盘点一下这些区块压缩的技术的进化历史。

【瘦区块 Xthin Blocks - 10 倍压缩】


这项技术是在 BCH 诞生之前,由 Bitcoin Unlimited (简称 BU)在 2016 年实现的,是币圈出现的第一种压缩技术。

400152 这个区块最早由 BTCC 矿池在中国国内挖出,并被 Blockchain.Info 于 2016-02-26

16:46:31 发现。但 49 秒钟后,才传输到德国的节点。然而在使用了支持瘦区块的 BU 客户端中,整个过程仅使用了不到 1.5 秒的时间,即完成了请求、接收、组装和发送的所有操作,使得邻近的 BU 节点能够迅速同步。

400152 这个区块的原始大小是 956.21KB,而传输的瘦区块大小仅为 92.64KB。即区块体积几乎减少了 10 倍。


大致原理是这样的 :

当一笔交易被广播出去后,在很短的时间内,全网几乎所有节点都会收到这笔交易,并且暂时放在内存池里面。当矿工把这笔交易打包成区块,传播给其他节点时,其实相当于进行了重复传输。

而瘦区块技术就是把交易的 TXID 发送给其他节点,其他节点收到后,根据这个 TXID 在自己的内存池里面查询提取相应的交易,然后组合还原成区块。一笔普通交易有几百字节,而 TXID 只有几十字节,这样就实现了 10 倍的压缩。

值得一提的是,不久之后 Bitcoin Core 开发组针对 Xthin 理念也提出一个概念叫 Compact
Block (致密区块),也是优化比特币区块传输效率的,其实就是 Xthin 的翻版,两者一模一样。

【石墨烯 V1 – 100 倍压缩】


该技术是一种利用集合调和的新的区块传播技术。该协议由石墨烯的发明者之一、马萨诸塞大学安姆斯特分校(UMass Amherst)的 Brian
Levine 在斯坦福大学举办的 2017 比特币扩容大会活动中介绍。该项目由 Levine、Pinar Ozisik、George Bissias、Amir
Houmansadr 以及著名的比特币开发者 Gavin Andresen 在马萨诸塞大学共同开发。

石墨烯白皮书中解释道:“石墨烯区块的大小只是其他相关方法(如致密区块和极瘦区块)中区块大小的很小一部分——例如,我们展示了 17.5
KB 的极瘦区块可以使用致密区块编码成 10 KB,并使用石墨烯技术编码成 2.6 KB。”

“在模拟中,我们发现石墨烯编码信息所用空间只是瘦区块空间的 10%。我们使用了布隆过滤器(bloom
filter)以及可逆式布鲁姆查找表(IBLT)的新颖交互式组合,为比特币 P2P 网络中的集合调和问题提供了一种高效的解决方案。”

上述所说的“布隆过滤器”和“可逆式布鲁姆查找表”过于专业,我用大白话解释一下石墨烯的原理 :

瘦区块是把原始的交易信息压缩成只要传输 TXID
,而石墨烯则是使用上面两个工具把 TXID 进一步大幅度压缩,这样就无需传输完整的 TXID 列表了,极大的减少了数据体积,可以达到 100 倍的扩容效果。

【Xthinner – 250 倍压缩】

2018 年 9 月,为了证明 BCH 网络 CTOR 系统的优势,开发者 Toomim 提出 Xthinner。

Xthinner 是一种新的块传播协议,它利用 CTOR 的优点优化了 99.6% 的区块空间,前提是区块中的交易已经被传播。每笔交易大约 13 比特(1.6 字节)——Xthinner 是容错的,用于处理交易双方内存池不同步的情况。

在测试模式中,toomim 举例说明,如果一个区块中有 125 万笔交易,每笔交易大小为 400 字节,那么区块大小为 500
MB,但 xthinner 可以将其压缩为 1.9 MB 的数据,或者说“减少 99.618% 的空间”,大约 250 倍的压缩率。


【石墨烯 V2 – 1000 倍压缩】

在石墨烯 V1 里面,使用的是老的 TTOR 排序方法(我昨天的文章写过),这种方法有无数种的排序可能性,所以石墨烯区块里面大多数空间其实都是用来记录交易的排序信息了。而石墨烯 V2 默认使用 CTOR 排序方法,这种方法只有唯一的一种排序信息,无需浪费空间来记录这些排序信息,因此石墨烯 V2 相对于 V1 又获得了极大的进步。

在测试中,石墨烯 V2 最高可以实现 99.9% 的压缩率,相当于 1000 倍的压缩。是迄今为止最牛逼的压缩技术。


结束语


毫不夸张的说,BCH 的区块压缩技术是整个币圈里面最先进的。

相关文章
  • 从 10 倍到 1000 倍BCH 区块压缩技术进

    从 10 倍到 1000 倍BCH 区块压缩技术进

  • “去中心化交易所”的发展情况和投资逻

    “去中心化交易所”的发展情况和投资逻

  • 信通院何宝宏所长:5 个问题看清区块链

    信通院何宝宏所长:5 个问题看清区块链

  • “去中心化交易所”的发展情况和投资逻

    “去中心化交易所”的发展情况和投资逻