比特币作为区块链的应用,让区块链广为人知,如果比特币作为第一代区块链,则以太坊则称为第二代区块链。我们知道,区块链的最主要目的就是去中心化,比特币则成为了decentralized currency,去中心化在技术上依靠智能合约(smart contract),以太坊作为新一代的区块链应用,沿袭了人们的普遍想法:if we can decentralize this,what else can we decentralize?因此,以太坊中支持了更容易普及的去中心化合约(decentralized contract)。
进一步,什么是去中心化合约,首先回顾去中心化货币,原则上,货币应该由政府发行,然后政府通过司法手段维护货币体系的正常运行,因此,货币的价值建立在政府公信力的基础上。比特币则是通过技术手段维护加密货币体系的正常运行。对比到现实生活的其他场景(利用合约的场景),合约的有效性也是通过司法手段来维护。比如签了一个合同,然后出现了纠纷,需要法院来判决,法院会看合同上的签名,然后对比是谁违反了合同,从而做出判决。一定程度上,以太坊的去中心化合约就是为了这个目的而设计,希望通过技术手段,取代司法部门的中心权力。目前,对于一些逻辑简单清晰的合同,可以写成智能合约的形式,并用区块链保存。
为什么要去中心化货币:有利于跨国转账,从美国转钱到中国,时间花费很长,并且手续费繁杂,如果用比特币转账,就会很容易。即使10min出一个区块,但相比跨国转账耗费的时间已经很少。
对于去中心化合约:假设合同的签署方来自世界各地,没有一个统一的司法管辖权,这时候很难再用司法手段维护合约的有效性。
本质上,去中心化是通向全体联结在一起,遵守同一个规则的方式。
关于挖矿:法定货币的发行依靠中央银行的财务决策,可能导致通货膨胀,比特币的发行依靠区块链上新区块的生成,矿工将区块验证,并加入区块链后,可以获得出块奖励,因此很形象地称为挖矿。挖矿来源于比特币中的工作量证明,比特币系统中的挖矿是单纯的算力贡献,通过调整nonce使得block head的hash小于难度阈值。随着比特币的价值上涨,参与挖矿的人越来越多(比特币系统中的总算力越来越大),这导致矿工越来越难获取出块奖励。此外,挖矿设备也从CPU过度到GPU,再到ASIC芯片(专门为挖矿计算设计的芯片,每种芯片只能针对一种puzzle才有效)。现在系统中的算力总量越来越大,对于单个矿工来说,挖矿成功的概率越来越小,后续发展出矿池,通过为矿池的主人提供算力,矿池作为一个节点,提高了挖矿成功的概率,并且将出块奖励分配到参与矿池的矿工手中。
有人认为,比特币系统由于挖矿现象,扭曲了本意,因此,以太坊改变了工作量证明的方式,目的是ASIC-resistance。