第3节
以太坊叠加平台经济:加密数字货币进入群雄逐鹿的战国时代
随着比特币关注度和参与度的不断提升,一些利用比特币网络实现不同于比特币逻辑的加密数字资产新项目陆续出现,但比特币机制本身并不灵活,新项目大多只是基于比特币系统做了一些调整和改变(如增加若干功能),然后独立运行在不同节点,相当于每个新项目都要开发类似比特币网络的独立系统,效率反而更低,并没有完全达到新项目的预期目标。
通过应用层编写,让不同数字资产开发运行在统一平台,从而满足更多机构、投资人、用户需求的以太坊(Ethereum,ETH)公有链模式于2013年由俄罗斯程序员Vitalik Buterin提出。2014年,Vitalik Buterin等人创建了以太坊基金会,逐渐构建起基于以太坊的区块链平台经济体系。
由于加密数字货币价格涨跌迅猛,2017年以来以太坊同样受到了公众的广泛关注,仅2016—2017年的两年中,“以太坊”关键词检索谷歌达1.1亿次,百度收录了1160万个相关网页,标签#ethereum的推文平均每天发送超过20000次。
简言之,以太坊通过一套图灵完备脚本语言(Ethereum Virtual Machine-code,EVM语言)建立各种应用功能和项目,类似于汇编语言。应用开发者使用C++、Lisp等高级语言在以太坊平台编程,由编译器转成EVM语言,从而成功建立应用。由于开发者只需要专注于应用本身的开发,不用考虑复杂的底层系统,从而大大降低了开发难度。
目前,以太坊已能够实现在互联网世界开展编程、担保、交易等诸多事项,如ICO、STO等加密数字货币,以及交易所、众筹、投票、知识产权、合同管理等分布式项目。
一、以太坊和比特币的异同
与比特币类似,以太坊也是一个去中心化的区块链平台(公有链),有众多节点参与,组成一个P2P网络,节点之间彼此平等,没有一个节点有特殊权限(也可以公有链下的各种应用约定权限)。
二者区别在于以下几个方面。
一是以太坊通过使用Ghost协议实现更快交易。目前比特币出块时间平均为10分钟左右,而以太坊能达到12秒,意味着以太坊具有更大的系统吞吐量和更小的交易确认间隔(低延迟高吞吐量)。
二是以太坊的经济模式与比特币不同。比特币总量有限(2100万枚),获取难度不断加大(只有“挖矿”和交易两种方式),造成比特币投资门槛越来越高,投资人不过几百万,限制了投融资空间和应用场景。而以太坊理论上可以无限释放各种以太币,大大降低了参与门槛,扩大了参与者规模。
三是以太坊拥有图灵完备的汇编语言和内部代码,支持智能合约,用户可以自己定义数字资产流通的商业逻辑、技术逻辑、业务逻辑,通过以太坊虚拟机理论上可以执行任何计算,意味着以太坊能够作为通用区块链平台,支持各种去中心化应用(DAPP),而比特币没有这种灵活性。
案例 ICO、STO:基于以太坊平台或者其技术理念的体系开发的ICO代币、STO证券型通证融资的机制、模式和风险
区块链物联网公司Slock.it受股份制公司运作的启发,在以太坊发起了一个去中心化自治机制(The DAO)众筹项目,后来一些以太坊用户发现这个机制也适合其他项目,The DAO模式迅速普及,其中ICO(Initial Coin Offering)代币融资类项目增长最快。人们可以在无须依赖信任或者强公信力第三方参与的情况下,在以太坊发行ICO,实现经济激励、风险共担、协作共进的投融资。
ICO源自股票市场首次公开发行证券(IPO)概念,是某个项目依托区块链技术和机制首次发行代币筹措资金的常用方式。早期参与者(投资者)支付通行加密数字货币(如比特币、以太币),获得融资方承诺的投资回报(ICO代币)。由于融资项目具有潜在市场价值和增值空间,ICO代币未来可能会被兑换成法币,投资人通过法币增值获利。融资方获得比特币、以太币等通行加密数字货币,兑换成法币支持项目发展。ICO标准流程如图2-14所示。
图2-14 ICO标准流程
ICO代币有以下两种作用。
一是作为应用币,用来购买ICO发行方提供的商品服务,这一作用类似于游戏币,拥有游戏币就可以兑换得到相应的游戏功能(如装备、积分等)。
二是作为权益币,对ICO发行方的未来利润拥有一定的分成权利。以2016年区块链公司The DAO的ICO融资为例,通过发行ICO成功融资1.5亿美元,ICO持有人可以参与公司重大决策投票及利润分成。2017年7月,美国证券交易委员会认定The DAO发行的ICO属于证券融资,实际上确认了ICO作为权益币且属于证券,应该纳入监管。[1]
2017年9月以来,我国监管部门重手取缔ICO,根源就在于区块链企业缺乏监管、企业趋利和人性贪婪,很多ICO项目异化为非法集资、传销、金融诈骗等违法犯罪行为,沦为空气币,以投资高回报(主要在加密数字货币二级市场交易获利)诱骗缺乏金融常识的普通公众,人为制造投资泡沫,对金融小白“割韭菜”,涉众型危害巨大。据不完全统计,在未全面取缔ICO前,国内加密数字货币交易所挂牌交易ICO代币有几千种,内部交易的ICO代币数量更多,涉及投资人几千万,融通资金可能超过万亿元。
这些空气币也形成了一套大同小异的发行机制:操盘手从其他平台学习套路;找技术团队外包开发项目和编写白皮书;找大咖站台;联系或者挂靠海外机构,注册公司,安排律师、审计师、会计师等专业人士认证;社群私募;向交易所缴纳巨额进场费,在交易所挂牌;购买自媒体宣传流量;上线发行ICO代币;坐庄操作币值;以分销机制圈金融小白入局,“收割韭菜”。
在强监管下,全球ICO市场很快陷入熊市。据CoinMarketCap报道,2018年第一季度登陆各大交易平台的247种ICO代币,87.5%处于长期破发,平均跌幅50%左右,真正达到10倍以上收益(市盈率)的不超过3%,ICO的融资效能低于传统资本市场。
ICO遭禁后,很快又出现了一种新型加密数字货币——安全代币(Security Token Offering,STO)。STO即证券化代币发行,是指按照法律法规和行政规章要求,进行合法合规的证券型通证公开发行。STO能够延展为现实世界的各种资产、权益、服务数字化(比如公司股权、债权、知识产权,信托份额,以及黄金、珠宝、玉石、房产、车辆等实物资产),并转变为加密数字货币(权益凭证)。从理论和技术上讲,STO是私人资产证券化、风险资本融资的有效方式。三种发行方式的比较见表2-5。
表2-5 ICO、STO、IPO比较
相较于ICO,STO模式之所以能被一些监管部门接受,关键是STO宣称在监管框架下,锚定资产已经存在于现实世界,ICO则很难。STO也具有传统证券的一些功能,如利润分配、股利分配、投票权、资产抵押担保等。
STO也不能简单等同于IPO,后者是在资本市场首次公开发行股票,投资者买到股票后就持有股权,享受股息、分红、投票等权利,但IPO对企业要求很高,且审核流程烦琐,时间较长,门槛较高,面向的受众多为专业投资人。
二、以太坊技术原理
(一)去中心化应用(DAPP)
去中心化应用(Decentralized Application,DAPP)是一种运行在点对点(P2P)网络的应用软件。与智能手机应用类似,DAPP也是一种APP,但不是运行在iOS、安卓平台,而是运行在以太坊平台。DAPP具有开源、去中心化、智能合约、激励机制、共识机制等特性。DAPP后端运行在以太坊分布式网络各个用户节点,包含若干套相对独立的实现数据去中心化存储和管理等逻辑的智能合约代码。与APP的区别见表2-6。
表2-6 DAPP与APP的区别
相较于比特币等公有链技术高开发门槛,DAPP开发难度更低,周期也更短。根据DAPPReview调查显示,截至2018年11月,基于以太坊开发的DAPP有1306个,单个DAPP 24小时最高活跃用户为1116。其中加密数字货币钱包已经成为DAPP的重要应用,普通用户可以使用DAPP实现挖矿、支付、交易、投融资等功能。但是,很多加密数字货币(如ICO)并没有对应和通兑的实际价值,反而因为降低了技术门槛,使得数据价值萎缩,加之不少项目鱼龙混杂,空气币满天飞,加密数字货币DAPP应用多昙花一现。
由此可见,满足用户高频长期需求,才是DAPP成功的基础。例如,淘宝、天猫、京东、拼多多等电商APP因为满足了用户高频长期的网上购物需求,微信、QQ等社交APP因为满足了用户高频长期的人际交流需求,滴滴、摩拜等出行APP因为满足了用户高频长期的便捷出行需求,都成为头部平台。
另外,通过技术优化用户体验也是一种可能的路径。尽管DAPP相较于APP有若干优势,但是要打破头部APP的体验性优势坚冰,道阻且长。以移动支付为例,是采用支付宝、微信等中心化APP,还是采用其他去中心化DAPP,必须要综合考虑用户价值能不能驱动用户迁移。
用户价值=(DAPP体验-APP体验)-替代成本
以即时通信APP子弹短信为例,子弹短信依靠前期巧妙营销获得大量用户尝鲜,但其正面PK的是微信,对用户而言替换成本过高,如果要改用子弹短信,自己的朋友圈都得同步迁移,迁移难度和社交圈潜在损失远高于新获得体验,因此绝大部分用户只是图个新鲜感,很快还是会用微信。子弹短信由于得不到用户高频长期的使用,最终结局就是下架退场。
尽管目前大范围普及DAPP尚有难度,不过在网络游戏、博彩等对透明化、去中心化、可追溯、不可篡改等特性有较大需求的细分场景上还是有较大空间。例如,从2018年3月开始,监管部门停批游戏版号,将德州扑克、斗地主等棋牌游戏纳入管控范围,造成传统游戏开发运营商陷入生存危机。网易、百度等头部游戏商陆续转型区块链游戏,将道具、积分、装备等用户数字资产上链,实现用户通过DAPP客户端玩游戏,并获得游戏中产生的加密数字资产交易、兑换、提现等功能,也就出现了“游戏即挖矿”这个可能替代传统游戏的新玩法。游戏即挖矿示意图如图2-15所示。
图2-15 游戏即挖矿示意图
(二)以太坊整体架构
以太坊整体架构是一串连接的数据区块,区块之间由使用密码学算法生成的散列指针连接,包括底层服务、核心层和顶层应用。以太坊整体架构如图2-16所示。
图2-16 以太坊整体架构
1.底层服务
底层服务包含P2P网络、LeveIDB数据库(Google开源的持久化KV单机数据库,具有很高的随机写、顺序读/写性能)、密码学算法、数据分片(Sharding)优化等基础服务。P2P 网络每个节点彼此平等,能够生成或者审核数据,由所有节点共同提供服务和维护网络。LeveIDB数据库可存储以太坊产生的区块、交易等所有数据。密码学算法用于保证数据隐私和网络安全。数据分片优化使得若干项目可以在以太坊并行、交易和验证,从而提高以太坊(公有链)整体运行效率。
2.核心层
核心层包括通用区块链技术、以太坊共识算法、以太坊虚拟机(EVM)。区块链技术能确保去中心化记账和不同节点账本数据的一致性。以太坊底层通过EVM支持智能合约的执行与调用,在调用时根据智能合约地址获取代码,并载入EVM运行。开发者可以使用语法上类似JavaScript、Python的编程语言(Solidity)创建运行于EVM上的应用程序。
EVM使用了256比特长度的机器码,是一种基于堆栈的虚拟机,用于执行以太坊智能合约。由于EVM专门针对以太坊体系设计,因此使用了以太坊账户模型(Account Model)进行价值传输。
EVM代码结构:
3.顶层应用
顶层应用包括API接口、智能合约、去中心化应用(DAPP)等,是最接近用户的一层,开发者可以在此层开发各种应用。
(三)以太坊的区块数据结构
相较于比特币区块,由于以太坊区块数据结构保存了三棵梅克尔树(状态树、交易树和收据树),客户可以轻松查询以下内容:一是某笔交易是否被包含在特定区块;二是某个地址过去发出某种类型事件的所有实例;三是某个账户余额;四是某个账户是否存在;五是加入某个智能合约进行一笔交易,交易输出是什么。[2]以太坊区块结构如图2-17所示。
图2-17 以太坊区块结构
1.区块
以太坊区块由区块头(Block Header)、叔块(Uncle)、交易列表(tx_List)三部分组成,比特币区块结构更复杂。区块头由15个字段组成,出块速度更快,不过也造成矿工挖矿上的竞争,同时也可能会产出若干合法区块。以太坊允许竞争区块挂到主链,给予挖出竞争区块矿工少许奖励来增加挖矿工作的公平性。
ParentHash:父区块的哈希值。
UncleHash:叔父区块列表的哈希值。
Coinbase:打包该区块的矿工的地址,用于接收奖励。
Root:common.Hash状态树的根哈希值。
TxHash:common.Hash交易树的根哈希值。
ReceiptHash:common.Hash收据树的根哈希值。
Bloom:交易收据日志组成的Bloom过滤器。
Difficulty:本区块的难度。
Number:本区块块号,区块号从0号开始算起。
GasLimit:本区块中所有交易消耗的Gas上限。
GasUsed:本区块中所有交易使用的Gas之和。
Time:区块产生的unix时间戳,一般是打包区块的时间,这个字段不是出块的时间戳。
Extra:区块附加数据。
MixDigest:common.Hash 哈希值,与Nonce的组合用于工作量计算。
Nonce:区块产生时的随机值。
2.账户
比特币不存在账户,而是比特币地址指向的UTXO(关联比特币地址的比特币金额集合,是一个包含数据和可执行代码的数据结构)。账户(Account)是以太坊一大特色,并可分为外部账户和合约账户。
外部账户由用户通过私钥控制,可以存储以太币,但不能包含代码。每个外部账户有一对私钥和公钥,私钥用于签署交易,公钥由私钥经过加密算法(SECP256K1椭圆曲线密码算法)计算得出,公钥经过SHA3算法得出账户地址。同比特币一样,用户要保存好私钥,如果丢失私钥,就会造成账户丢失且不能找回。外部账户之间的交易和传递信息如图2-18所示。
图2-18 两个外部账户之间的交易和传递消息
而合约账户是一个包含合约代码、可编程的账户,由合约代码控制并由外部账户激活,存在于以太坊区块链,是代码和数据的集合。合约账户可以执行图灵完备的计算任务,也可在合约账户之间传递消息,编译成以太坊虚拟机字节码,记录在以太坊区块链。外部账户与合约账户的交易和传递信息如图2-19所示。
图2-19 某个外部账户与某个合约账户的交易和传递消息
一个外部账户可以通过创建和用自己的私钥来对交易签名,发送消息给另一个外部账户或合约账户。而合约账户不可以自己发起一个交易,只有在接收到一个交易之后,被激活来响应这个交易。
3.以太币
以太坊区块链的代币被称为以太币(Ether,代码为ETH),是用来在以太坊支付交易手续费和进行运算服务的媒介,可以在许多加密数字货币交易所被直接交易。以太币总供给及发行量由2014年预售决定,包括“矿前预付+区块奖励+叔区块奖励+叔区块引用奖励”。
一枚以太币(ETH)分为Finney、Szabo、Gwei、Mwei、Kwei和Wei,其中Wei是最小ETH单位。
1ETH=1000 Finney=100万Szabo=10亿Gwei=100万万亿Wei。
4.交易
以太坊利用交易将用户连接起来,起到价值传递作用。交易是某外部账户发送到另一账户(外部账户或者合约账户)消息的签名数据包,包含发送者签名、接收者地址以及发送者转移给接收者的以太币数量等内容。
一条交易可能包括的信息如下。
from:交易发送者地址;
to:交易接收者地址,如果为空则意味这是一个创建智能合约交易;
value:发送者要转移给接收者的以太币数量;
data(也写作input):存在的数据字段。如果存在,则表明该交易是一个创建或者调用智能合约交易;
Gas Limit:这个交易允许消耗的最大Gas数量;
Gas Price:发送者愿意支付给矿工的Gas价格;
nonce:区别同一用户发出的不同交易的标记;
hash:由以上信息生成的散列值(哈希值),作为交易地址(ID);
r、s、v:交易签名的三个部分,由发送者私钥对交易hash进行签名生成。
用户在以太坊发起任何一笔交易都需要支付一定的费用,用于支付交易执行所需要的计算开销。计算开销费用并不是用以太币直接计算,而是引入Gas作为基本计量单位,通过Gas Price与以太币换算。Gas Price根据市场波动调整,以减少以太币价值受市场波动的影响。
Gas(燃气、汽油)被形象比喻为以太坊燃料,是用来衡量某笔交易所消耗计算资源的基本单位。当矿工收到一笔交易信息时,会根据交易内容进行相应操作。对于转账交易,矿工会根据转账金额,对交易发送方和接收方的账户余额进行修改。对于创建和调用智能合约交易,矿工会根据对应字节码在以太坊虚拟机执行相应操作。矿工处理某笔交易所需的计算步骤越多、越复杂,那么这笔交易消耗的Gas就越多。
Gas包括限制(Gas limit)、价格(Gas Price)两个部分。Gas Limit是用户愿意为执行某个操作或确认交易所支付的最大Gas量(最少21,000)。Gas Price是Gwei数量,即用户愿意花费于每个Gas单位的价钱。当进行每笔交易时,发送方会设定Gas Limit和Gas Price。
ETH交易佣金=Gas Limit×Gas Price
Gas一旦用完,矿工会停止执行相关操作。如果有剩余的Gas,矿工也会立即退还给发起交易用户或智能合约创建者。
为了鼓励矿工在区块中确认交易,用户可以设置一个足够高的Gas Price,这样就会被优先确认交易。反之,如果Gas price设置过低,低于矿工预期值,就可能会被忽视。
以太坊面世以来,交易笔数和交易额迅速膨胀,在2018年受加密数字货币熊市、以太坊网络拥堵等因素影响有所下降。2018年6月,以太坊交易笔数约为2249万笔,到了11月下降到1665万笔,跌幅25.97%。以太币交易额呈现震荡波动状态,11月交易总额约为7834万ETH,较10月环比增长33.56%,但7月交易总额达到最低值,仅为4409万ETH。2018年6—11月以太坊交易笔数和交易总额分别如图2-20和图2-21所示。
图2-20 2018年6—11月以太坊交易笔数
图2-21 2018年6—11月以太坊交易总额
(四)以太坊网络
以太坊网络已成为参与人员众多、分布广泛、技术体量庞大的P2P网络社区和商业平台。以太坊存在超过3500万个唯一地址,2018年1月活跃地址(交易)数量首次超过100万,25万人的以太坊开发者社区成为全球最大的开发者社区,一些支持和拓展以太坊社区的业务组织、技术联盟陆续成立。以太坊区块链成为最活跃的智能合约平台,市值排名前100名的代币有94%建立在以太坊上,市值排名前800名的代币有87%建立在以太坊上。2017年全球融资方通过以太坊代币销售筹集近55亿美元,2018年第一季度即筹集资金65亿美元。
案例 The DAO:史上最大以太坊区块链众筹项目与黑客事件[3]
The DAO(去中心化自治机制)众筹项目由区块链物联网公司Slock.it发起,代码也主要由Slock.it成员编写。Slock.it原先希望从以太坊平台筹措资金,后来发现The DAO框架可以被其他项目应用,于是他们创建了The DAO(又称DAO之母,the mother of all DAOs)。
The DAO和其他区块链项目一样是开源的,Slock.it即使是The DAO代码的缔造者,也无法从规则或控制权上获得绝对优势,这就保证了The DAO能够吸引更多机构和人员参与。而后,The DAO逐渐发展成为一个去中心化风险投资基金平台和去中心化自治社群,以智能合约形式运行在以太坊区块链,成员将自己掌控的以太币投资到相关项目,为自己和The DAO创造价值。
The DAO的主要特点如下。
一是The DAO是一个另类VC平台(风险投资基金),通过以太坊筹集的资金(以太币)会锁定在智能合约,没有哪个用户能够单独随意动用这笔资金。The DAO的运行规则基于成员共识,存在于网络虚拟世界,行为通过智能合约代码实现,不受中心化机构和意见领袖主导。
二是每个参与众筹的成员按照出资(以太币)数额,获得等值的DAO代币(Token),具有相应比例(出资额/融资总额)的审查项目和投票表决权利,并可以提出投资项目议案供所有出资人讨论和审核。以太币和DAO代币的汇率由The DAO所有成员共识约定。DAO代币类似于股票,持有人成为众筹项目股东。
三是投资议案由全体DAO代币持有人投票表决,一个代币一票。如果议案得到需要票数的支持,相应的资金会投给这个项目。传统风投、私募基金公司的运作规则是由基金经理等专业人士操作,投资人将资金投给基金公司,一般不参与投资决策。The DAO的投资决策来自于所有投资人基于出资额权重的“众智”(the wisdom of the crowd)。众智概念最早可溯源到亚里士多德关于政治的论述,意即综合许多人的智慧可以作出比某个专家更好的决策。
四是投资项目收益会按照一定规则回报给DAO代币持有人。不过,并非所有项目都能够赢利,不少项目反而陷入了对DAO代币的炒作等投机行为。
The DAO基本框架如图2-22所示。
图2-22 The DAO基本框架
The DAO众筹规模急速膨胀,触及一些国家的金融政策法规红线,其创建人、DAO代币持有人并没有及时有效地应对调整,使得The DAO的运作陷入法律与监管的灰色地带。
黑客利用智能合约漏洞恶意的攻击也搞垮了The DAO。2016年6月18日,黑客成功挖到超过360万个以太币,投入到一个The DAO的子组织。当时以太币价格从20多美元暴跌到13美元以下,很多人都在尝试从The DAO脱离出来,将持有的以太币平仓,但是他们无法在短期内获得所需票数,因而被锁仓。黑客资金进入后,按照The DAO的规则,DAO代币持有人在28天内无法将代币兑换成以太币。但是黑客发动攻击盗取以太币,投入到The DAO锁仓更多以太币,同时增持以太坊空头,通过做空以太币套现赚钱,造成所有以太币持有人的损失。
由于当时The DAO持有以太币总数的近15%,该黑客事件对以太坊网络及加密数字货币都产生了深远的负面影响,也颠覆了人们对传统黑客攻击的认知。为了应对黑客攻击造成的风险和损失,以太坊创始人Vitalik Buterin提出软分叉解决方案:通过新的软件分叉,以太坊代码会创建一份黑名单,给以太坊基层代码上一个“开关”,在遭遇黑客攻击时触发,从而防止任何以太币从The DAO流出。
[1] 刘晓蕾.为取缔ICO叫好:让融资归融资,技术归技术[EB/OL].[2017-09-12].https://finance/people.com.cn/n1/2017/0912/c1004-29530593/html.
[2] 贺海,武延安,陈泽华.基于区块链的智能合约技术与应用综述[J].计算机研究与发展,2018(11).
[3] 彭博社深度还原:The DAO大劫案始末[EB/OL].[2017-06-26].https://www.leipgone.com/news/201706/JnNEqj90inEWTJD.html.