Skip to content
cnn112002 edited this page Jul 8, 2018 · 5 revisions

以太坊技术BLOG

提纲

  • 1.以太坊技术栈简介
    • 1.1 以太坊钱包META mask
    • 1.2 以太坊相关应用(猫咪)
  • 2.以太坊开发语言 solidity
  • 3.以太坊开发框架 truffle 实战
  • 4.以太坊DAPP 实例

正文

本人在业余时间学习区块链相关的技术,有4个月了,将近期的学习成果通过这一系列的BLOG总结整理,形成文档,分享分享。

以太坊技术栈简介

以太坊在WIKI百科的定义如下 “ 以太坊(英语:Ethereum)是一个开源的有智能合约功能的公共区块链平台[1][2]。通过其专用加密货币以太币(Ether,又称“以太币”)提供去中心化的虚拟机(称为“以太虚拟机”Ethereum Virtual Machine)来处理点对点合约。 以太坊的概念首次在2013至2014年间由程序员维塔利克·布特林受比特币启发后提出,大意为“下一代加密货币与去中心化应用平台”[3],在2014年通过ICO众筹得以开始发展[4]。”
这里区分下以太坊和比特币的区别,比特币是基于区块链技术的数字货币,而以太坊是公共区块链平台,而以太坊里的以太币只是平台运行的一个要素。以太坊是“链圈”的核心平台,比特币是“币圈”的核心币种。

以太坊涉及的主要技术如下:

以太坊技术栈

以太坊作为区块链平台,区块链构成以太坊的技术基础。智能合约是以太坊的一大特色,EVM(以太虚拟机)是智能合约执行环境,Dapps(Decentralized Application) 是去中心化应用,由一系列智能合约构成。Solidity是目前在以太坊智能合约的主要编程语言,web3js是通过HTTP或者IPC方式,以太坊节点交互的客户端API库。通常的开发方式为,Solidity开发智能合约的业务逻辑,在客户端页面里嵌入Web3js与智能合约交互。以太币是智能合约运行的必要元素,因此,钱包对于Dapps的使用比不可少,现在市面上的钱包也很多,本人用过的钱包有MIST和META MASK。MIST 需要单独安装,功能较多,不仅可以管理以太币还能管理智能合约。META MASK 是chrome插件,使用方便,市面上的Dapps基本都支持Dapps。后续本人会着重介绍下META MASK。

###1.1 以太坊钱包Meta mask Meta Mask 主要界面如下

Meta Mask 主界面

下面介绍下Meta Mask主要的几个部分。 Meta Mask 主界面-详细介绍1

上图的黑框1是以太网切换按钮,通过三角下拉钮可以切换以主网、测试网和私链。黑框2里是账户余额,以ETH及美元(USD)为单位显示。黑框3里显示的是账户相关的交易信息,包括:交易日期,对方账户,交易金额。

Meta Mask 主界面-详细介绍2

上图的黑框1里的“...”按钮,是账户相关的菜单功能,“View account on Etherscan”是查看账户交易明细,“Copy Address to clipboard”拷贝地址到剪切板,“Show QR Code” 显示账户二维码,“Export Private Key” 导出私钥。

###1.2 以太坊相关应用(猫咪) 以太坊上Dapps数量现在比较多了,通过https://www.stateofthedapps.com/ 可以看到Dapps的详情。除了以太币,以太坊比较著名的应用是谜恋猫(CryptoKitties)https://www.cryptokitties.co/。这个游戏需要先安装Meta Mask ,然后创建账户,需要将12个字的助记词离线保存,只有Meta Mask登录后,账户有充入以太币,可以开始游戏啦。
谜恋猫模拟真实世界的养猫,在猫市上买入猫咪,可以繁殖,育种,买出猫咪。猫可以多卖钱,那为啥称之为Dapps呢,那是因为买入,买出等操作都是写入以太链的,并且需要支付以太币,来完成游戏的操作。 那有人可能会好奇,玩谜恋猫可以像玩以太币一样赚钱吗,这个不好说,谜恋猫就是游戏,玩游戏赚不赚钱,取决于玩的人哈,笔者是玩游戏花钱的人:)。 CryptoKitties 主界面

Clone this wiki locally