• 区块链学习:Windows下搭建以太坊私有链环境


    一:安装geth客户端

             Windows要求必须是64位系统,从官方网站下载编译好的win64客户端,下载解压后只有一个Geth.exe问价,运行安装即可,下载地址如下:

    https://github.com/ethereum/go-ethereum/releases/

    安装后用cmd命令打开命令行,进入到你安装geth的目录下,输入geth –help 命令,如果输出一大堆关于geth的信息如下图则说明安装成功。当前geth命令只能在geth对应的目录下使用,如果想要在任何目录使用geth命令,只要把你安装geth的目录的路径加入到系统环境环境变量path中即可。

    二:配置自己的创世文件:

             配置自己的创世块是为了区分公有链,同一个网络中,创世块必须是一样的,否则无法联通。在刚刚Geth安装目录下放置初始化创世块文件名字为genesis.json

    文件内容是:

    {

       "nonce":"0x0000000000000042",

       "mixhash":"0x0000000000000000000000000000000000000000000000000000000000000000",

       "difficulty": "0x4000",

       "alloc": {},

       "coinbase":"0x0000000000000000000000000000000000000000",

       "timestamp": "0x00",

       "parentHash":"0x0000000000000000000000000000000000000000000000000000000000000000",

       "extraData": "PICC GenesisBlock",

       "gasLimit":"0xffffffff"

    }

    三:启动私有节点

             以后关闭后在此启动也用此方法

    进入安装Geth的目录,前提已经放置配置好的genesis.json文件,执行如下命令:

    geth --datadir "%cd%chain" initgenesis.json

    创建数据存放地址并初始化创世块

    Geth --identity "PICCetherum" –rpc--rpccorsdomain "*" --datadir "%cd%chain"--port"30303" --rpcapi"db,eth,net,web3" --networkid 95518 console

     

    当看到如下时候说明已经启动成功。

     

    启动了节点后,就进入了geth命令行模式,输入personal.newAccount() 根据提示输入密码就会给你新建了一个账户。

    (打开geth控制台的命令:geth -datadir "%cd%chain" console(在你 geth的目录下进行))

    四:下载安装图形化钱包:

             下载地址:https://github.com/ethereum/mist/releases/

    找到Ethereum-Wallet-win64-xxx.zip 下载安装即可。按照上述步骤进行之后(启动节点的命令行不要关闭)

    的前提下,运行这个钱包,运行Ethereum-Wallet.exe,即启动成功,如果区块链正常的话,会在右上角显示“PRIVATE-NET”,点击“LAUNCH APPLICATION”进入图形界面即可。

     

    五:连接其他节点:

    首先要知道自己的节点信息,在Geth命令行界面下输入命令,注意大小写

    admin.nodeInfo

    系统会显示

    enode:"enode://1e3c1727cd3bee9f25edeb5dbb3b880e03e41f8eec99566557f3ee0422734a8fcad17c161aa93d61bdbfb28ed152c143c7eb501db58bc63502a104a84b62d742@0.0.0.0:30303“

    其中

    enode://1e3c1727cd3bee9f25edeb5dbb3b880e03e41f8eec99566557f3ee0422734a8fcad17c161aa93d61bdbfb28ed152c143c7eb501db58bc63502a104a84b62d742@0.0.0.0:30303

    就是自己节点的信息,注意要把”0.0.0.0”换成你自己的IP。将这个信息发送给其他节点,在其他节点的命令行中输入:

    admin.addPeer(‘enode://1e3c1727cd3bee9f25edeb5dbb3b880e03e41f8eec99566557f3ee0422734a8fcad17c161aa93d61bdbfb28ed152c143c7eb501db58bc63502a104a84b62d742@192.168.1.101:30303’)

    如果添加成功,输入admin.peers会显示出新添加的节点。

    六:

    开始挖矿的命令:

    miner.start()

    结束挖矿:

    Miner.stop()

    注:geth的一些操作命令都要在geth命令行模式中进行,即启动节点之后。

  • 相关阅读:
    04-JQuery
    03-JavaScript
    02-CSS&JS
    01-HTML
    [LeetCode]Insert Interval
    [shell编程]正则表达式
    [LeetCode]Jump Game II
    [LeetCode]Jump Game
    [LeetCode]Wildcard Matching
    [shell编程]初识sed和gawk
  • 原文地址:https://www.cnblogs.com/juehai/p/9719113.html
Copyright © 2020-2023  润新知