zoukankan      html  css  js  c++  java
  • 以太坊-windows-私有链-搭建(非源码)

    初 接触以太坊,只安装,不讲道理:

    1.win10系统,64位

    2.以太坊钱包

    3.以太坊geth客户端

    geth 和 钱包可以到ethfans.org的资料库里下载,那里提供国内镜像和官网地址。 
    钱包工具:https://ethfans.org/wikis/Ethereum-Wallet-Mirror 
    geth :https://ethfans.org/wikis/Ethereum-Geth-Mirror 


    首先,安装geth,选择安装目录d:lockchain,安装完成之后,该文件夹下回出现geth.exe(注意,文件路径中不能出现中文。也可以安装在其他目录,然年后复制geth.exe到d:lockchain中。不要放在c盘,后期运行的时候,因为系统对c盘的保护,会有一些访问权限的问题。)

    这里写图片描述

    然后在该文件夹下创建创世块的初始化文件genesis.json 
    内容如下 

    {
    "config": {
    "chainId": 15,
    "homesteadBlock": 0,
    "eip155Block": 0,
    "eip158Block": 0
    },
    "difficulty": "0x400",
    "gasLimit": "0x2fefd8",
    "alloc": {
    "7df9a875a174b3bc565e6424a0050ebc1b2d1d82": { "balance": "300000" },
    "f41c74c9ae680c1aa78f42e5647a62f353b7bdde": { "balance": "400000" }
    }
    }

    完成了创世块配置文件,开始部署节点!

    win键 + r 进入cmd命令行 
    键入 d: 是命令行进入d盘 
    键入 cd blockchain 进入d盘的blockchain目录 
    键入 geth –help 查看是否能够输入帮助信息 
    键入 geth –datadir “%cd%chain” init genesis.json 将创世块信息初始化 
    键入 geth –datadir “%cd%chain” console 打开geth的控制台 
    在控制台键入 personal.newAccount(‘123.abc’) 创建用户 123.abc 为用户的密码,自定义即可(该用户用来启动私有链时的矿工) 
    键入 exit 退出geth控制台

    键入 geth –cache 512 –targetgaslimit 4294967295 –rpc –rpcaddr “127.0.0.1” –rpcport “8101” –port “30301” –rpcapi “eth,net,web3,personal” –networkid 2017 –datadir “%cd%chain” -rpccorsdomain “*” –mine –minerthreads 1 console 启动私有链节点 

    也可以直接:geth -datadir "chain" console

    ps: 
    targetgaslimit –每个区块能承载gas上限,这里可以暂时理解为容量 
    rpc –启动rpc通信,可以进行智能合约的部署和调试 
    rpcaddr –rpc接口的地址 
    rpcport –rpc接口的端口号 
    port –网络监听端口,用于节点之间通信 
    rpcapi –设置rpc的范围,暂时开启eth,web3,personal足够 
    networkid –设置当前区块链的网络ID,是一个数字,可以随便写(尽可能大于10) 
    datadir –设置当前区块链网络数据存放的位置 
    mine 允许挖矿 
    minerthreads 挖矿启动的线程数量,默认是4个。 
    console –启动命令行模式*

    键入回车 
    然后等待出现类似如下信息时: 
    INFO [04-11|10:59:01] Generating DAG in progress epoch=0 percentage=0 elapsed=1.780s 
    INFO [04-11|10:59:03] Generating DAG in progress epoch=0 percentage=1 elapsed=3.717s 
    INFO [04-11|10:59:05] Generating DAG in progress epoch=0 percentage=2 elapsed=5.650s 
    INFO [04-11|10:59:07] Generating DAG in progress epoch=0 percentage=3 elapsed=7.580s

    则证明开始创建创世块,和DAG,等待进度至100%后,便会开始挖矿了。

    ========================================================
    打开ethwallet文件夹,运行Ethereum-Wallet.exe 

    Ethereum-Wallet.exe 有可能会超时失败,我们指定本机rpc

    "C:Program FilesEthereum-WalletEthereum Wallet.exe" --rpc "\.pipegeth.ipc" (我装到了c盘,用管理员权限)

    出现如下窗口 
    这里写图片描述 
    如果右上角出现“PRIVATE-NET”则证明钱包客户端已经连接到了我们的私有节点。 
    点击“LAUNCH APPLICATION” 
    进入钱包主页面 
    如下 
    这里写图片描述

    由于挖矿比较消耗cpu,所以此时打开控制台 
    键入 miner.stop() 停止挖矿。不要在意输出的刷屏,只管输入完成后回车即可,如果输入正确,回车后会输出“true”。 
    键入 miner.start(1) 使用一个cpu挖矿,减少对电脑性能的消耗。

    下面我们进入下一个环节,交易 
    因为我们现在只有一个用户,没办法正常交易,所以现在主页面点击“ADD ACCOUNT” 创建另外一个用户,按照步骤输入密码,确认密码后,创建用户工作就完成了。 
    点击“ACCOUNT2”进入账户详情页面,复制用户地址 
    这里写图片描述
    复制时,会出现提示“Warning: you are on the Test Network. Be careful not to transfer real funds to this account.”。不用理他,点击OK。 
    然后点击钱包界面的“SEND”,进入交易发送界面

    这里写图片描述
    点击“FROM”下方输入栏,选择交易的发起人,我们选“Main account” ,因为当前只有他的账户下有以太币。“TO”下方的输入栏我们输入刚才复制的“ACCOUNT2”的地址。“AMOUNT”处输入本次要交易的以太币数量,以10个为例。输入10。其他的地方不用管,我们把滚动条拖到最下方,左下方有个“SEND”按钮,点击一下。弹出如下窗口 
    这里写图片描述 
    在输入栏中输入主账户的密码,点击“SEND TRANSACTION”交易就发出去了。 
    页面会自动跳转会主页面。我们将滚动条滚到下面。 
    这里写图片描述
    我们可以看到我们刚才从主账户像“ACCOUNT2”发起的交易。 
    这里写图片描述

    好了,这样的话,一个私有链搭建就完成了。也进行了一个简单的交易。万里长征的第一步迈出去了。不要觉得很麻烦,因为后续的种种比这要麻烦的多。 
    后续的linux环境搭建,以及智能合约我也会慢慢的更新。希望大家共同学习,共同进步

    对了,为了后续方便启动,大家可以把命令geth –cache 512 –targetgaslimit 4294967295 –rpc –rpcaddr “127.0.0.1” –rpcport “8101” –port “30301” –rpcapi “eth,net,web3,personal” –networkid 2017 –datadir “%cd%chain” -rpccorsdomain “*” –mine –minerthreads 1 console保存成一个.bat后缀的批处理文件。放置在geth所在的目录。以后想启动,双击这个批处理文件即可。

  • 相关阅读:
    Spring系列(六):Spring事务源码解析
    Spring系列(五):Spring AOP源码解析
    Spring系列(四):Spring AOP详解
    Spring系列(三):Spring IoC源码解析
    Spring IoC源码解析之getBean
    Spring IoC源码解析之invokeBeanFactoryPostProcessors
    Spring系列(二):Spring IoC应用
    HDU-1276
    Codeforces Round #410 (Div. 2)-A
    ubuntu16.04安装wps
  • 原文地址:https://www.cnblogs.com/liugh-wait/p/9012918.html
Copyright © 2011-2022 走看看