从经济的角度来回答一下。本质上,[区块链]要解决的经济问题是double-spending problem,俗称白嫖问题。
举个例子,我账上有100元,全拿去跟张三买了东西。之后我把这笔账单藏起来,告诉[李四]我还有100元。只要李四肯把东西卖我,就等于我把这100元花了两回,白嫖了一笔。
中心化的[交易系统]不会有这种问题。你的每笔转账交易,银行都要跟你对账。你账上只有100元,且转给了张三,银行有你的交易记录。你想再把同一笔钱转给李四,银行一查记录,肯定不会同意,否则它的信誉就没了。
但去中心化的、点对点的、缺乏银行的交易系统就不一样了。
这种情况下,李四怎么知道你的过往交易记录呢?我们可以把网络上所有用户的交易都汇总在一个[电子账本]上。每笔交易靠大家自行上传账单,更新这个电子账本,然后把更新后的账本广播给网络上其他用户。
于是,我在跟张三交易完(上传完账单)后,可以自己再造一份账本,这份账本没有我跟张三的交易记录。我将自己造的账本广播出去,这时网络上的用户就会收到两份账本。这会导致两个问题:
1)只要李四接受了我造的账本,我就能在跟他的交易中实现白嫖;
2)有些人接受了真账本,有些人接受了我的假账本。网络上通行的账本就会出现两个版本,也称分叉(fork)。我们称这样的网络是缺乏共识的(lack of consensus)。
缺乏共识,假账本横行,对于[去中心化]网络是致命的,没人会信任这样的交易系统。
为了解决这类问题,一个名叫[中本聪](Satoshi Nakamoto)的神秘人在2008年发表了一篇论文:
"[Bitcoin: A Peer-to-Peer Electronic Cash System]"《比特币:一种点对点的电子交易系统》
这就是区块链的鼻祖。
比特币****
比特币用来克制白嫖的办法,简单来说分这么几点:
-
将每个时段网络上产生的若干账单,打包在一起,称为区块(block),并统一交给一名用户来上传。
-
新上传的区块只能接在所有已上传区块的后面,这些区块一个接一个,就形成了一条区块链(blockchain)。这条区块链就是在该网络上通行的电子账本。
-
如果同时出现两个账本,大家会一致选择长度更长(包含区块更多)的那个账本。
-
最后,也是最重要的,如何决定谁有资格上传区块到链上?中本聪的设定是,对于每个区块,都生成一道计算题,让大家都来算,上传的区块中必须包含这道题的答案。因此,谁最先解出题谁就有权上传区块。投入的算力越多,率先解出题的概率越高。 这一机制被称为[工作量证明](proof-of-work,简称[PoW])。
为什么这样能克制白嫖呢?
假设我出100元找张三买东西,我的交易账单上了链以后,被张三看到,他开始发货。在等待发货的这段时间,还会有用户上传别的区块到链上。等发完货以后,网上通行的区块链版本,比我的交易账单上链之前,可能又多了88个区块。
现在,我要实现白嫖,就得把我的交易账单从区块链上抹去。但新区块只能接在所有旧区块的后面,所以我唯一的办法,就是分两步:
首先,回溯到我账单上链之前的那个区块链版本,自己上传一个区块。而我自己上传的区块,是不包含我那笔交易的。
也就是说,我要造一份假账本。
第二,也是最难的,我要让我伪造的账本成为网上长度最长(包含区块最多)的版本,这样它才能被所有人接受。
而当前通行的账本,已经比我伪造的账本多88个区块了,并且其他用户还在不断往上加区块。上传区块是需要解计算题的。我为了让自己伪造的账本成为最长的版本,必须花大量的算力,跟所有用户进行竞赛。我给自己添加区块的速度,必须超过所有其他用户在真账本上添加区块的速度。
除非我拥有比所有其他用户加起来都多的算力,否则这是不可能实现的。
而一旦网络上出现了这样拥有超多算力的个体,实现白嫖就不再是难题。这就是所谓的“51%攻击”。
[共识机制]****
前面提到,比特币网络中维持共识的机制叫做工作量证明,简称PoW。
这套机制要求所有用户都自告奋勇参与算力竞赛,努力上传区块。为了激励大家,中本聪设定了三点:
- 在每个时段成功上传区块的那名用户,可以获得一定的比特币奖励。而该网络上所有的交易都要用比特币来结算。
因此,竞争上传区块的过程,也被称为比特币挖矿。
-
比特币的发行速度,随着时间衰减。最终比特币的数量大概会锁定在2100万枚左右。因此,长期来看,随着区块链规模越做越大,币会越来越稀缺值钱。
-
每个区块能容纳的账单数目是有限的。假设一个区块能填入1千条交易账单,而同一时段产生了2千笔交易,势必有一些交易要等到下一个区块才能被上传。
大家都希望自己的账单可以早点上传。因此,每笔交易大家都会支付一点小费给负责上传区块的人。
你给的小费越高,你的账单就越有可能被优先上传。这也成了挖矿者的一部分收入来源。
PoW的一大缺陷是,大家为了挖矿要消耗巨量的算力投入到竞赛中。不光能源开销大,还导致有人研制了专门的“矿机”来挖比特币,渐渐地,普通用户已经负担不起挖矿的成本了。
为了解决这一问题,有人提出了[押金证明](proof-of-stake,简称[PoS]这种共识机制。
押金证明,顾名思义,要求挖矿者们拿手中的代币进行质押。在每个时段,系统会随机选择一名用户,赋予他上传区块的权利。你被系统选中的概率与你质押的代币量成正比。
上传的区块,会交由系统随机选择的其他一些用户进行验证。只有绝大多数验证者(validators)投票通过了才能加到链上。
如果有人在同一个时段上传了两个区块,或者同时给两个区块投了票,他所质押的代币就会被罚没。因为这些行为都会助长分叉,帮人实现白嫖。
在押金证明,即PoS机制下,实现白嫖需要大量从其他用户手中收购代币,以提高自己被选中上传区块的几率。在已发行的代币量、用户基数都十分庞大的情况下,这么做要花费大量成本,得不偿失。同时,白嫖者还要面临押金被罚没的风险。
相比于PoW,PoS的能源开销要小得多,但它的局限在于:容易出现贫富两极分化。因为持有代币较多的用户,有更多的机会被选中上传区块。这对普通小用户而言也不太友好。[1]
智能合约****
智能合约(smart contract)是区块链的另一大发展方向。它的本质是运行在区块链上的网络程序。
发明这玩意的人叫[Vitalik Buterin]他在2013年发起了区块链平台——[以太坊]([Ethereum]),允许用户在上面跑智能合约。以太坊的原生代币叫[以太币],也是第二个发行的加密货币。
寻常的互联网公司开发网络程序,会写代码上传到自家的服务器。当你要使用某个功能时,它会在服务器上运行对应的代码,并更新数据库。购买/租用服务器是一笔不小的开销。
而[智能合约]呢,你使用它的功能,可以当成你想和它完成一笔交易。在PoS机制下,它会把交易账单传给一些验证者。这些验证者在添加区块时,还会被要求提供计算设备、算力、存储,以运行智能合约上的代码。 数据则是分散地存储在参与验证的各台设备上。作为回报,验证者可以赚取一部分小费(又称gas fee),以及获得区块奖励。
对于开发者而言,智能合约可以降低采购/租用服务器的成本;对于用户而言,数据分散在网络的不同节点上,不用担心被某一方集中起来利用。
用户给智能合约的gas fee,只有一部分到了验证者手上,其余的都被烧掉了。这是它维持币值稳定的一种手段。
去中心化自治组织(decentralized autonomous organization,简称DAO)是一种基于智能合约而形成的组织。DAO内的一切重大决策,包括增发/销毁代币、版本升级等等,都由成员投票决定。拥有更多原生代币的成员会被赋予更高的投票权。
许多DAO被创建出来为区块链项目进行众筹。将来这可能成为一种新的企业组织形式。
[功能型代币] [稳定币]与[NFT]
功能型代币([utility token]伴随着智能合约而出现,使用者可以用它在对应的平台上购买/订阅服务。
典型案例是[菲乐币]用户可以在这个平台上租用其他人闲置的设备存储空间,以保存自己的文件。每笔交易都要用菲乐币来结算。智能合约会将交易账单随机发给其他一些用户,由它们提供存储空间。
如果你愿意向他人开放自己的存储空间,系统就会在每个时段对你提供的存储空间进行验证。验证的机制类似于PoS,只不过要质押的不是代币,而是自己的存储空间。因此,这种机制被称为存储证明(proof-of-storage)。
作为回报,你可以获得区块奖励,以及出租存储空间的租金。
发行功能型代币的平台,相比于传统的互联网平台,有两个优点:一是代币可以在市场上交易,因而它提供的服务价格,不是由平台方垄断制定的,而是根据代币的市场价格来确定的;二是很多这样的平台是靠DAO来治理的,重大事务交由用户投票来决定,降低了用户被平台方割韭菜的风险。
但缺点也在这里,平台的开发者难以通过垄断获得超额利润,也难以取得对平台的控制权。因此在早期,他缺乏动力去烧钱补贴用户,以迅速扩张取得[规模效应]
稳定币的本质是一种存托凭证。由Tether公司发行的稳定币[USDT]是交易规模第三大的加密货币,仅次于比特币、以太币。
USDT与美元挂钩,它的发行方式很简单。你把美元给Tether公司,它会将其存入银行或用来购买美国国债,然后给你一个凭证。你可以拿这个凭证在区块链上交易,也可以找它来兑换美元,1单位USDT固定兑换1美元。
稳定币的出现是为了解决两个问题:
1)许多加密货币,如比特币,币值完全依赖用户的共识来维持,缺乏大机构背书,也缺乏央行维稳。它们的币值波动巨大,不利于流通(最终变成了某种投机性资产)。
2)这些加密货币会挑战国家法定货币的地位。大家都用比特币交易,就没人用美元了,美国政府还怎么收[铸币税]
2016-2024年初,比特币兑美元的价格波动
NFT全称为“非同质化代币”(non-fungible token),它要解决的则是数字艺术品拍卖的问题。
一件实体的艺术品,比如名画[《蒙娜丽莎》],别人复制起来要花大精力去临摹,而且任人怎么复制,卖出去的价格也赶不上原件。只有那一幅原件,才最具原创性、最有收藏价值。
但数字艺术品就不一样了。我设计了一个logo或者卡通形象,传到网上,这玩意别人可以随意复制,而且复制品跟原件有啥区别呢,根本没法分辨。
为了让数字艺术品能够卖得上价,我们要对原件附加一个独一无二的标记,并告诉大家:只有带这个标记的才是原件,别的都是复制品,而这个标记就是NFT。
2021年,艺术家Beeple创作的NFT画作“Everydays: the First 5000 Days”在佳士得拍出了6900万美元的高价,让NFT一下子印入公众的眼帘。
这幅画包含5000幅数字图片,艺术家从2007年5月开始,每天创作一幅图,持续13年多,最终集结在了一起。