美文网首页智能合约开发
【区块链基础02】-以太坊基本概念 Geth 安装

【区块链基础02】-以太坊基本概念 Geth 安装

作者: Geeks_Chen | 来源:发表于2018-01-30 17:28 被阅读1802次

    一、以太坊基本概念

    以太坊就是区块链技术+智能合约。

    以太坊和区块链技术一样,有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安装

    安装文档:https://ethereum.github.io/go-ethereum/install/

    Mac 安装流程

    1.brew tap ethereum/ethereum

    2.brew install ethereum

    安装第一步 安装第二步

    3.安装完成后检查
    输入geth version,检查是否安装成功

    检查是否安装成功

    参照资料:http://www.8btc.com/ethereum-geth

    相关文章

      网友评论

        本文标题:【区块链基础02】-以太坊基本概念 Geth 安装

        本文链接:https://www.haomeiwen.com/subject/djlfzxtx.html