2018-08-01
你看到的是一条链,我看到的是一张网
文明像一场五千年的狂奔,不断的进步推动着更快的进步,无数的奇迹催生出更大的奇迹,人类似乎拥有了神一般的力量……但最后发现,真正的力量在时间手里,留下脚印比创造世界更难,在这文明的尽头,他们也只能做远古的婴儿时代做过的事。
把字刻在石头上。
---《三体:死神永生》
以前每次搬家的时候,总是会遗失一些物件,老照片,旧书信,喜欢的书,后来有了电脑,我喜欢把照片存在了计算机的硬盘里,可以时时翻看,可结果却因为硬盘的故障和重装系统反而丢失的更多了。有了网络后,我试着把它们放在网盘里,每次在存放的时候我就在想:如果有一天我忘记了,这个世界上也没有其他人知道我的密码,那是不是它们就永远丢失了?
忘记的密码或许还是有办法能找回的,不过中心化的网站如果不小心把数据丢失了,那真正是找不回来了,在现在删库跑路流行的环境里,我们不得不去考虑,当我们离开这个世界的时候时,还有什么样的回忆能留下来,证明我们曾经来过这个世界。
也许区块链是一种好的方式,就像死亡不是永别,遗忘才是,我们把回忆的记录放在一个去中心化的世界,以链式的方式存放在世界的各个角落,随时读档,对于区块链的世界来说,当这个虚拟的世界里最后一个区块链副本消失了,这个数据才真正丢失了。
今天就来谈谈我认为的区块链的世界,每次谈到区块链时,总会想到它的特性:去中心化、不可篡改、可追溯和安全。没错,这是它的优点,可是还有另外一个叫做“区块链扩展性难题”。 这有点像物理定律,说区块链只能拥有以下三个属性中的两个:去中心化、可扩展性和安全性。在提供安全性的情况下,如果你想增加区块链的可扩展性,那么你必须牺牲其去中心性。
为什么会这样?
区块链共识的本质,是当一个交易或事物发生时,需要其他的区块链节点都发生一次计算来核实信息,以确保其准确性。 因此,如果我们希望通过让成千上万的节点运行计算来验证该交易合法的话,那么每秒处理事务数量(TPS)则会受到用户的PC和网络速度可以处理的限制。
另一方面,如果你想拥有史上最快、最具扩展性的区块链,那你所要做的事情:在区块链网络上尽可能减少验证节点,并且所有验证节点都是超级计算机,所有节点都放在同一地理区域(国家、数据中心)以减少节点之间的延迟,然而这对区块链来说是一个很糟糕的设计。
所以这很矛盾不是吗?为了安全性,需要增加验证节点的数量,让攻击变的昂贵,为了运行效率和扩展性,又需要减少验证节点数量变的更加中心化。
比特币的TPS平均每秒6条交易左右,而且每10分钟出块一次,以太坊高一些,达到了每秒15-30条交易,12秒左右出块一次,与之相比的是纳斯达克每秒有超过2万次交易,而Facebook每秒会有超过3万次赞/评论。
对于号称能改变世界的区块链技术来说,这点TPS是不是太儿戏了?
现在有很多被称为“以太坊杀手”的区块链平台都决定为了更高的可扩展性而抛去了去中心化这一特性,比如EOS,号称可以达到1000 TPS或更高,交易手续费低等,这些特点很具有诱惑力,因为它看起来就是市场需要的。
说来说去,我们是不是需要为了交易效率而改变区块链去中心化这一特性呢?
但是我想说的是去中心化这一特性很重要,可能比上万的TPS效率更重要,因为它是区块链网络生存的基础。
比如当你需在中心化的Google Play和Apple Store上构建你的应用程序时,你必须严格遵循它们的规则和审查,相信这些平台在未来不会因为某些原因而阻止用户去使用你的应用,或者向你收取更高的费用。
以太坊可以被任何人用于任何目的,无需任何人的许可。 没有人可以阻止你将一段代码上传到以太坊区块链,并且没有人可以阻止你的用户执行它。这是历史上第一次有一个平台,任何人都无法关闭,任何人都无法审查——不是政府,也不是拥有大量资金的大型企业,也不是罗斯柴尔德家族或外星人。
如果你在以太坊上构建DApp,没有人可以阻止你的用户访问它。 如果你买了一些网络上的虚拟物品,也没有人能够将它们从你身边带走,而这正是通过区块链去中心化的特性,使我们能够在互联网历史中首次拥有虚拟物品的真正所有权。
就像“头号玩家”电影里一样,拥有了无法剥夺的虚拟物品“绿洲”的真正所有权,区块链使我们能够在虚拟世界中孕育出新鲜事物——比如拥有不属于任何公司的虚拟化身并在可以存在在不同的世界之间。
这是EOS等一些伪去中心化的区块链平台无法做到的,EOS网络里有21个超级节点,就像是中心化的平台一样,如果政府或企业向这些超级节点施加压力来审查某些应用和用户太简单了,而且如果他们想做恶,只要其中15个形成联盟并改变规则就行了。去中心化区块链的目标就是提供 一个开放的、无歧视的、任何人都无法篡改的平台。 从某种意义上说,我们能忍受去中心化的低效率,就是让区块链网络能够具有这些特质。
在这种情况下,该如何实现区块链的可扩展性呢?
未来世界里,所有去中心化应用程序DApp都运行在一条区块链上是荒谬的,因为没有任何单个区块链可以在一条链上处理世界上所有去中心化应用,想象一下仅Facebook就需要数十万台服务器才能运行,以太坊才多少个节点?所以,区块链的侧链是唯一可以扩展的途径。
侧链能够提供更高的可扩展性而不用牺牲安全性,同时侧链可以针对高TPS或低延迟的DApp使用不同共识算法(如DPoS),侧链的去中心性不如以太坊主链,但能提供更高的扩展性和效率,而以太坊主链上存储高安全性、低频率的token或数据。这样以太坊侧链提供的更高可扩展性的同时,又保有去中心化基础层的信任和安全性。
你可以在区块链上运行星际争霸。 这些事情是可能的。 高度的安全性和可扩展性使得所有这些其他各种东西都可以构建在上面。 以太坊是一个安全的基础层,没有太多的功能。 ---Vitalik Buterin
现在的市场来看,我仅看好以太坊,因为它有比其他任何平台都优秀的DApp开发工具和框架 Truffle、Infura、Web3.js、OpenZeppelin、Geth、Ganache、MetaMask、CryptoZombies、MyCrypto、Etherscan。世界上不同开发团队已经投入了数十万小时在这些工具里,它们可以供任何在以太坊上构建DApp的以太坊开发者使用,整个以太坊智能合约平台社区已经远远领先其他基础区块链平台。以太坊虽然并不是完美,但它的安全性已经通过了时间的考验,唯一的一次硬分叉也是DAO智能合约而非平台的漏洞。
未来的区块链是什么样的我并不知道,但你看到的是一条链,而我看到的是一张网。
参考内容:James Martin Duffy、Chris Dixon