一直学一直嗨,一直嗨一直学

以太坊智能合约的技术与组件

要在以太坊上编写一个智能合约,所涉及的技术和组件有: Solidity,以太坊的图灵完备编程语言,用于编写智能合约。 虚拟机(EthereumVirtualMachine,EVM),即智能合约运营的环境。 预言机(Oracle),用于链上和链下数据信息的交换。 Web3.js,与以太坊区块链节点进行交互的JavaScriptAPI。 常见的以太坊通证标准有两种: ERC20标准,可互换通证。 ERC721标准,不可互换通证。 2...

ERC721标准与加密猫

2017年11月28日,“加密猫”游戏出现在互联网上。这是基于以太坊的ERC721标准(不可互换通证)发行的加密数字宠物,每一只猫咪各不相同。 加密猫的正式中文名叫“谜恋猫”,游戏的官网称这些加密猫是“可收藏、可繁殖、讨人喜欢的”。用户可以用以太币换购这种猫咪。这个简单的游戏吸引了大量的用户,甚至使得以太坊区块链网络出现了大拥堵。 在此之前...

以太坊的账户(外部账户和合约账户)

以太坊是有账户的,每个用户都可以开设账户,账户余额是我们拥有的以太币或其他基于ERC20标准的通证。账户的设计使得以太坊与比特币不同,根据之前的讨论我们知道,比特币只有钱包地址和未使用的交易输出。 以太坊的两种账户:外部账户和合约账户 以太坊有两种账户,如下图所示: 外部账户(externallyownedaccounts),由密钥控制。 合约账户(contractaccounts),由智能合约的代码...

区块链的四大特征

在对比特币和以太坊这两个主要系统,讨论了区块链的价值表示和价值转移这两个基础功能,探讨了数字资产、通证与通证经济系统之后,我们再来看看区块链的特征与用途,尝试回答“区块链有什么用”这个问题。答案就藏在区块链的四个基础特性中。 在观察了以太坊带来的变化后,区块链特征以及与这些特征相关的应用已经较为清晰地展现在我们面前。这四个基础特征分别是:不可篡改...

区块链3.0是什么样子的?

依据区块链实际发展的情况我们认为,区块链1.0是数字现金,区块链2.0是数字资产,而期望区块链3.0能成为应用的平台。 那么,区块链3.0究竟是什么样的呢?之前,曾有人类比说,区块链3.0可能是像操作系统一样的应用平台。在仔细分析EOS等典型的区块链3.0项目后,我们提出,区块链3.0可能是价值交易的云服务平台。也即,不是把区块链看成运行应用的操作系统,而是将之看成类似亚马逊云(...

EOS是什么?EOS和比特币、以太坊有什么区别?

现在从加密数字货币的市值看,除了比特币、以太坊等之外,市值最高的项目是企业操作系统(EnterpriseOperatingSystem,EOS)。从关注度看,EOS也是2017~2018年的明星项目,并常被认为是区块链3.0的主要竞争者。 EOS是由Block.one公司开发的一个新的区块链软件系统,它的目标是将一切去中心化(decentralizeeverything)。从2017年年中开始,经过一年的代币众筹后,它于2018年6月15通...

EOS的共识机制与区块生成

在《EOSIO技术白皮书》中,对EOS的共识机制BFT-DPOS(拜占庭容错算法+权益委托共识机制)进行了说明。其中拜占庭容错算法(ByzantineFaultTolerance)的用途是: 所有的出块者都要对所有区块签名,以确保在同一时间戳或者同一区块高度上,没有区块生产者能够同时在两个区块上签名。一旦一个区块有了15个区块生产者的签名,该区块就被认为是不可逆的。任一区块生产者如果想在同一时间戳...

丹尼尔·拉瑞莫(BM):EOS的主要开发者

EOS的主要开发者是区块链的传奇人物丹尼尔·拉瑞莫(DanielLarimer),他的网名为ByteMaster,在网上他也被称为BM。BM个人参与创建了三个主要的区块链公链项目,EOS是第三个,如下图所示。 图1:丹尼尔·拉瑞莫开发了三个主要区块链项目与一个共识机制 BM开发的第一个主要区块链项目是比特股(BitsharesX,BTS),这个项目创建了一个去中心化的银行和交易所,使用区块链账...

一张图理解EOS是什么

从比特币到以太坊,再到EOS,它们背后的组织渐趋复杂。比特币处在完全自运转的状态。以太坊由以太坊基金会开发软件和运转该区块链网络。出于各种原因,EOS显得更为复杂。初看,它至少包括以下三个部分。 第一,EOSIO软件。这个开源软件是由Block.one公司开发的。当然严格来说,这是一个社区开发的开源软件,任何人都可以参与开发、提交代码。 第二,EOS币(EOS通证)。EOS币由Block.o...

区块链“不可能三角”

在前面的讨论中我们提到,一个基础公链要同时兼顾功能、性能、网络三个要素。在区块链的设计中,还有一个更知名的“不可能三角”(见图1),它指的是,一个区块链项目无法同时满足三个条件,最多只能同时满足两个条件: 可扩展性(scalability) 去中心化(decentralization) 安全(security) 图1:区块链的“不可能三角” 对比一下比特币和EOS:比特币系统...

区块链应用(去中心化应用)是什么样的?

EOS的技术白皮书给出了应用所需的六个条件(如下所示),而EOS的软件设计的确是对应这些条件而设计的。本节我们将重点讨论EOS的其中三个为应用而做的特别设计:用户免费、账户体系、存储。 区块链应用的六个条件: 支持百万级别的用户,需要能够处理数千万日活跃用户的区块链技术。 使用免费,应用开发人员需要具备灵活性,能够为用户提供免费服务;用户不必为了使用平台或从平台的服...

EOS密钥被盗后如何恢复?

EOS的账户体系还有一个与绝大多数区块链项目不一样的特征,它提供了“密钥被盗后的恢复”。对其他的区块链项目而言,密钥丢失,则一切都丢失了,无法恢复,而EOS基于它的用户权限机制提供了恢复功能。 这有很大争议,但可能是需要的。过去,区块链项目假设,你得管理好自己的密钥,没人为你负责。但在现实生活中,当丢掉了银行的密码之后,我们希望在提供相关证明之后,银行...