既有比特币,为什么还要有以太坊?聊聊以太坊

以太坊与比特币的不同目的

大家都知道世界上第一个区块链是比特币。既然比特币非常成熟,且已经被大家所接受,为什么还需要以太坊呢?

今天和大家聊聊为什么作为后起之秀的以太坊在应用领域更加成功?

本质上来说,两者最大的不同之处在于设计目标。

比特币是一种被设计用来运行去中心化数字货币的网络。也就是说它的应用场景仅限于加密货币,并没有考虑过更多的场景。

比特币的局限性

比特币有一种脚本语言,就叫做 Script。它是一种基于堆栈的语言,功能非常有限,一般是用来验证交易。

下面是一个非常简单的比特币脚本代码,用来多重签名交易:

text 复制代码
OP_2
<PublicKey1>
<PublicKey2>
<PublicKey3>
OP_3
OP_CHECKMULTISIG

其中 OP_2 是指定最小签名数是 2。 PublicKey 是提供公钥,这些公钥的作用是用来验证签名。 OP_3 是指定一共有多少个公钥,这里是 3 个。 OP_CHECKMULTISIG 是一个操作码,用来检查堆栈上的签名是否提供公钥匹配,并且保证至少有指定数量的签名才是有效的。

当然比特币也有一些扩展协议,其中早期非常流行的是 Mastercoin,也就是后来的 Omni Layer。目前最流行的稳定币 Tether(USDT)最早就是基于 Omni Layer 发行的。

Mastercoin 是一种非常典型的染色币协议。它的原理很简单,就是构建一个简单的比特币交易,然后在 OP_RETURN 中添加一段 Omni Layer 的数据。

一个非常简单的数据如下:

text 复制代码
6f6d6e69 0000 00000014 00000001 0000000005f5e100

其中会有几段:

  • 6f6d6e69:Omni 的标识符。
  • 0000:版本号。
  • 00000014:合约类型。(14 表示发送,20 表示创建,1f 表示发送所有,21 表示众筹,22 表示增发,23 表示销毁)
  • 00000001:代币 ID。
  • 0000000005f5e100:转账数量。

Vitalik 与以太坊

当时以太坊的创始人 Vitalik 是一个比特币狂热爱好者,他曾经给 Mastercoin 团队提过一些建议,希望能够增加协议的灵活性,支持更多应用场景。但是由于过于建议激进,没有被采纳。

比特币开发社区的风格非常稳健。他们几乎从来不会做一些破坏先前版本兼容性的事情。包括后来的 Ordinals 协议也都是在不改变比特币本身的前提下进行的。

这样的好处就是比特币的兼容性非常好,一些老旧的节点不需要升级版本,仍然可以和最新的比特币网络完美工作。

同样的,比特币的缺点显而易见,合约的灵活性和扩展性非常差。

虽然不得不说作为加密货币,比特币的成功无人能及。但如果作为合约应用开发平台,比特币是不合格的。或者说比特币压根就没有考虑自己会扮演这个角色。

强扭的瓜不甜,与其在比特币的各种约束之下束手束脚的添砖加瓦,还不如开发一个专为通用合约设计的新区块链。

说干就干,Vitalik 在 2013 年 12 月发布了第一版以太坊白皮书,并得到了社区广泛的关注。

在 Gavin Wood、Charles 等人的帮助下,以太坊终于在 2015 年正式问世。2015 年 7 月 30 日第一个区块被正式挖出。

以太坊的诞生,标志着通用区块链的时代来临了。现在我们可以用图灵完备的 Solidity 来编写非常复杂的智能合约。

solidity 复制代码
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;

contract SimpleStorage {
    uint256 public storedData;

    function set(uint256 x) public {
        storedData = x;
    }

    function get() public view returns (uint256) {
        return storedData;
    }
}

上面就是一段非常简单的 Solidity 代码。如果你有编程语言基础,你会发现这种编程语言和 JavaScript 或者 C++、Java 这些语言都非常类似。非常适合其他语言开发者上手。

以太坊与比特币在开发风格上的差异

以太坊社区的开发风格与比特币社区完全不同,它的理念是:"Move Fast and Break Things"。这种理念非常强调快速迭代和及时修复。但也并不是完美的,它会导致短期内的不稳定或发生错误,影响稳定性和可靠性。不过这种方法很适合以太坊这种处于创新和快速变化的领域。这个理念和 FaceBook 不谋而合。

以太坊非常积极的更新代码,而每次大更新都不会考虑兼容性,所以以太坊有非常多的硬分叉。平均 1-2 年就会发生一次。

硬分叉与软分叉不同。硬分叉会形成一条与之前的链完全不同的新链。所有的节点必须进行更新才能被新链接受。

同时硬分叉之后的以太坊,可能会影响到原来智能合约的运行。

这样做有好处也有坏处,好处是以太坊朝着完美的方向快速发展,坏处是一切都不是那么地稳定。

由于以太坊有着先发优势,加上这么多年以太坊技术的不断完善和成熟,后来的很多区块链都会选择兼容以太坊的 EVM,这也导致以太坊的市场占用率一直居高不下。

以上就是以太坊能够在 Web3 世界中占据着不可动摇的地位的原因!

相关推荐
SunsPlanter6 小时前
02 ETH
区块链
yunteng52113 小时前
零知识证明-ZK-SNARKs基础(七)
区块链·零知识证明·zk-snarks·ricp·qap
山师第一深情15 小时前
solidity-19-fallback
区块链
zhuqiyua15 小时前
TVM和EVM的比较
区块链·智能合约·ton
sino_sound15 小时前
伦敦金的交易差价意味着什么?
人工智能·金融·区块链
清 晨15 小时前
开放的数据时代:Web3和个人隐私的未来
web3·去中心化·智能合约·隐私保护
dingzd9518 小时前
数字世界的新秩序:探索Web3的前景
web3·去中心化·智能合约
黑色叉腰丶大魔王19 小时前
什么是区块链,以及应用场景
去中心化·区块链·分布式账本
qiquandong21 小时前
场外期权或成暴利工具?!应该怎么做场外期权?
区块链
链科天下1 天前
全球国家比特币持有量排名!各国政府合谋能否推翻比特币?数字货币的时代已经来临!
区块链