为什么 ICO 是诈骗?

这是前两个月,比特币和以太坊两种主要加密货币的单次交易费走势。高峰时一次交易就要好几美金!试问,您愿意买一杯星巴克付十块钱交易费么然,这是虚拟货币用于日常支付的根本障碍——就是 G20 首脑都提倡用比特币逛菜市场,也不会有人用。

由于交易费用是动态市场定价的,高成本的本质原因是系统支持的每秒交易速度(Transaction per Second, TPS)太低。目前比特币的 TPS 是 7,以太坊也只有 15。因此,在大量交易产生时,会迅速抬高手续费。拿上图中以太坊连续两周的交易费爆棚来说,就是“Fomo3D”这个热点游戏上线造成的,而以太坊上所有 DApp 的总日活,目前才不过几万。不过,这样的速度和手续费,对于黑市的大宗交易来说是完全可行的。

理想很美好,现实很骨感。交易速度和费用的问题不解决,V 神的智能合约体系只能是春秋大梦,以太坊也不过是一个精致的玩具。在这样的基础设施下,大多数 ICO 项目在一通乱吹之后,除了官 什么也做不了。当然,大多数发币者本来就知道自己什么也做不了,不过就是为了敛一把财,把这些定性为诈骗,一点都不过分。您瞧瞧下面的割韭菜曲线,多么销魂!

上面这个过程,涵盖了区块链的两个核心概念:

  1. 每次整理的一批交易,就称为一个区块。区块越大,效率越高,不过区块太大了,传输失败比率就大大上升,所以区块的大小要在一个合理的范围内;

  2. 抢令牌的规则,就是共识机制。目前流行的共识机制,有工作证明(Proof of Work,POW)和权益证明(Proof of Stake,POS)等两种。前者是谁干的活多,抢到令牌的机会就大;后者是谁的钱多,抢到令牌的机会就大。

在 POW 共识机制中,大家都努力解一道数学题,谁解出来就抢到了打包的令牌,这个过程就是上图中的“挖矿”。当然,会有一定的概率,不同节点在较短时间差内都解出了此题,这样他们都会把自己的打包结果提交 络,这就造成了分叉。分叉的不同区块,总会有一个被最终共识后的账本抛弃,这称为“孤块”。

下面我们就来计算一下,以 POW 为共识算法的去中心化账本,交易速度可以达到多高。此系统的第一个约束,是不能有太多的孤块:因为孤块是无效的,这浪费了算力,影响了矿工收入,最终会极大影响整个生态的稳定性。我们可以给定一个较宽松的上限,比如说,如果要求孤块率 S 不超过20%,如何估算 TPS 呢/p>

如果用 D 表示区块传输延迟,T 表示挖矿时间,那么孤块率可以用 D/T 来计算。经验表明,在区块不太大的情况下,延迟 D 与区块大小是近似线性关系,大约每 KB 是 8ms(比特币区块大小 1.5MB,延迟是 12s),因此,令 P 表示 TPS,假设每笔交易的大小是 0.5KB,则有 D=TP4ms。于是,我们有下面的约束:

很容易得到,在孤块率的要求下,POW 的 TPS 不能超过50!

悲催了,对孤块率的要求,使 POW 共识的 TPS 只能到几十!那么是否还有别的约束呢容易想到的是 络带宽的限制。假设节点 络带宽是 10Mb,此约束可以表达为:

可以验算,被带宽约束限制的 TPS,大约是 675,远大于 50!(当然,这个解对应的区块过大,已经不准确了。)

也就是说,由于有孤块率的限制,带宽是远没有用足的,另外,除了抢令牌以外的交易验证算力,也远非饱和。算力巨大,效率低下,这正是 POW 共识算法饱受诟病的主要原因。于是, 区开始探索牺牲一定的去中心化和安全性,换来更高效率的方案,比如 DPOS、PBFT 等等。目前,POS 的成熟产品还没有见到,DPOS 则离去中心化的主题甚远,我们还是要多问一句,POW 的速度真的无法提高了么/p>

出路么,自然是有的!大家一致的思路,就是把交易分到多条链上,例如以太坊正在进行的 Sharding 项目。假设有 C 条链并行打包交易,那么约束(1)左右都将乘以 C,单链的 TPS 约束不变;而约束(2)
是左边乘以 C,相当于变紧了,不过仍然不会影响到整体解。只要 C 不是太大,整体 TPS 就变成原来的 C 倍。

还有一个研究热点,就是要找到一种结构,让每个节点永远只保留部分链,这称为 scalable。如过每个节点只需保留 C/N 条链的话,约束(2)就又被松弛了下来,在这样的情况下,我们用 P’=C*P 表示系统总 TPS,那么上文的两个约束成为:

这样一来,总的 TPS 是可以被大大提升的!

不过,这两项技术都谈何容易!分链,就需要处理跨链交易,还要兼容智能合约,目前以太坊的 Sharding 项目基本上一筹莫展;Scalable 的方案,更是需要找到巧妙的分链方法,目前业界也是束手无策。

很多复杂的问题,都有个简单的答案。偶然的机会,最近我结识了一位瑞士的大神 W,这家伙读了两个博士,分别师从于数论和分布式计算泰斗,最牛的是,两个博士他都主动退学了!!博士期间,他发明了一项“线性时间复杂度拜占庭算法”,被以太坊创始人 V 神约去当面交流。从那次交流,他了解到以太坊正在进行的 Sharding 项目,大为感兴趣,于是开始研究此问题。

就在两个多月前,W 发现了 scalable 和跨链交易的巧妙方案,我看了文章,确实令人拍案叫绝。从理论分析,和已经实现的 demo 来看,这一新方法在不使用任何侧链和半中心化改造的前提下(后续可以叠加使用这些技术,进一步提高性能),可以将 POW 的 TPS 提升至过万,交易费用降低至不到 1 美分,而这些参数都是可以与 VISA 中心化支付系统相比较的。我相信,这应该是区块链远离诈骗,打造有价值应用的一个契机。

而我,也像沼泽中挣扎的人抓住了岸边的树枝,开始向他学习此领域除了诈骗和传销以外的技术,上面的内容,算是我的一点学习心得。

@北冥乘海生 2018.9

——————
推荐阅读:
《The Coder》9 月刊聚焦程序员的职场江湖

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2018年9月6日
下一篇 2018年9月6日

相关推荐