一、以太坊基本概念
以太坊就是区块链技术+智能合约。
以太坊和区块链技术一样,有Transation,Block,账户与账户之间的关系需要用Transation来执行,任何Transation都需要有通过block来产生。
以太坊和比特币技术的不同:
A.是吸纳了基于solidity语言的智能合约,并将智能合约看做一种特殊的账户,从而使得在智能合约上也可以实现具体的方法。
B.实现了智能合约能落地执行的EVM(以太坊虚拟机),通过以太坊虚拟机,从而将solidity这样的类JS的代码变成了可以在区块链是执行的加密代码。
C.不同于比特币技术,在以太坊的transation都需要gas,一份合约或者一次交易的gas是固定的(取决于代码大小和复杂程度),而gas的价格则有以太坊中的oracle来决定。
D.以太坊同时还构建了较完整的,开源的生态系统,不仅有底层的geth,编程的solidity,合约在线浏览器browser-solidity,合约钱包Mist/wallet,以太坊的前端开发框架Truffle,各种各样的开源DApp。
二、Geth介绍(偏底层)
Geth工具是Go Ethereum,是以太坊的官方客户端(Go语言实现)。
通过Geth的一些基本命令,可以很方便的创建出一个以太坊的私有链条。
geth --datadir "./" init genesis.json geth --datadir "./" --nodiscover console 2>>geth.log
Geth的命令行中包含了大多数的以太坊命令,包括账户新建,账户之间的以太币转移,挖矿,获取余额,部署以太坊合约等。
三、Browser-solidity介绍
Browser-solidity 是以太坊智能合约的浏览器编译器,直接访问网站即可,可以自己搭建。
Browser-solidity 因为运行在内存中,因此速度很快,对于一些简单的功能,例如四则运算等,这样对于开发调试很有益。
Browser-solidity 中有许多基本概念:transaction,gas,account.
Browser-solidity 也是有缺点的,那就是因为运行在内存中,所以对于涉及账户的合约开发、调试&测试,相当无力,需要使用Mist官方钱包工具。
四、Mist介绍
Mist 是以太坊的官方钱包,他既可以连接生产网络、测试网络,更可以通过设置参数的方式。连接我们自己的私有网络。
Mist是通过geth.ipc 文件连接后,就和Geth所建立的网络完全契合在一起了,在Mist上部署的合约,实际上也就是部署在geth网络上。geth网络上新建账号,也可以在Mist这个工具上看到。通过Mist,能够更加了解以太坊的核心概念:区块,Transaction,Gas,账户,合约,合约中的构造函数,变量以及方法。
通过Geth、Browser-solidity、Mist 三个工具,我们可以开发、调试和测试我们的智能合约。
五、Geth安装
Geth官网:https://geth.ethereum.org/
Geth的Github地址:https://github.com/ethereum/go-ethereum
Geth可以做什么?
Geth是以太坊协议的具体落地实现,通过Geth,可以实现以太坊的各种功能,如账户的新建编辑,开启挖矿,ether币的转移,智能合约的部署和执行。
Geth安装
Mac 安装流程
1.brew tap ethereum/ethereum
安装第一步 安装第二步2.brew install ethereum
检查是否安装成功3.安装完成后检查
输入geth version,检查是否安装成功
网友评论