区块链开发环境搭建

上传人:桔**** 文档编号:504375219 上传时间:2022-10-14 格式:DOCX 页数:9 大小:49.48KB
返回 下载 相关 举报
区块链开发环境搭建_第1页
第1页 / 共9页
区块链开发环境搭建_第2页
第2页 / 共9页
区块链开发环境搭建_第3页
第3页 / 共9页
区块链开发环境搭建_第4页
第4页 / 共9页
区块链开发环境搭建_第5页
第5页 / 共9页
点击查看更多>>
资源描述

《区块链开发环境搭建》由会员分享,可在线阅读,更多相关《区块链开发环境搭建(9页珍藏版)》请在金锄头文库上搜索。

1、区块链开发环境搭建前言本章主要总结在基于Ubuntul4.04系统上搭建区块链开发平台的过程。目前搭建 区块链开发环境还是比较复杂,推荐使用Mac OS X和Linux操作系统,目前不 建议使用Windows,可能会碰到各种各样的问题,最后导致放弃。注意:安装软件的时候,尽量使用ubuntu系统官方的apt源。由于国很多公司, 例如阿里,网易,腾讯等都免费提供apt源,在有的时候当然可以加快我 们安装软件的速度。但是,在安装本章所介绍的软件的时候我就遇到了各 种错误,后来更换了 ubuntu的官方apt源后有些问题就没有了。在使用npm安装某些软件的时候,建议不要使用cnpm国镜像,否则装完

2、可能会出现问题。由于区块链相关技术领域处于新兴阶段,变化很快,该章环境搭建仅供参 考。一、搭建基于以太坊go-ethereum的私有链环境go-ethereum 客户端以太坊有许多不同语言的客户端实现(即多种与以太坊网络交互的方法), 包括C+, Go, Python, Java, Haskell等等。为什么需要这么多实现?不同的 实现能满足不同的需求(例如Haskell实现的目标是可以被数学验证),能使以 太坊更加安全,能丰富整个生态系统。我使用的是Go语言实现的客户端geth,该客户端也是官方推荐使用的客户端,稳 定性较好,并且资料相对较多。安装命令:打开终端窗口,依次输入以下命令:1 s

3、udo ap t-g e t ins tall sot tyjaz e-pr op ertie s-c ohlitlu n2 sudo addaptreposi toiy -y ppa:已therei-im/ethereiutl3 sudu add-apt-re=posituiy -y ppa:ethermimFmtheretuiL-dev4 sudo aptget upidate5 sudo aptget install etli已heujtl安装测试:安装完成后在终端输入:1 geth he lp如果显示出各种参数提示信息,则说明安装成功。创世块在以上安装成功之后,直接启动,即可连接公有链

4、。现在通过配置创世块来 创建私有链。同一个网络中,创世块必须是一样的,否则无法联通。创建一个 eth的根目录,在根目录下新建创世块json文件piccgenesis.json。容如下:nonce:0x00042,mixhash:0x00,difficulty: 0x400,alloc: ,coinbase:0x000000,timestamp: 0x00,parentHash:0x00,extraData: PICC GenesisBlock,gasLimit:0xffffffff参数解释:参数名称参数描述mixhash与nonce配合用于挖矿,由上一个区块的一部分生成的 hash。注意他和n

5、once的设置需要满足以太坊的Yellow paper, 4.3.4. Block Header Validi ty, (44)章节所描述 的条件。.noncenonce就是一个64位随机数,用于挖矿,注意他和mixhash 的设置需要满足以太坊的Yellow paper, 4.3.4. Block Header Validi ty, (44)章节所描述的条件。difficulty设置当前区块的难度,如果难度过大,cpu挖矿就很难,这里设置较小难度alloc用来预置账号以与账号的以太币数量,因为私有链挖矿比较 容易,所以我们不需要预置有币的账号,需要的时候自己创 建即可以。coinbase矿工

6、的账号,随便填timestamp设置创世块的时间戳parentHash上一个区块的hash值,因为是创世块,所以这个值是0extraData附加信息,随便填,可以填你的个性信息gasLimit该值设置对GAS的消耗总量限制,用来限制区块能包含的交易信息总和,因为我们是私有链,所以填最大。注意:区块难度difficulty 定要小,否则使用起来挖矿将会很困难,就 没有账户金额进行开发实验;可以通过alloc在该文件中预分配账户和以太币。启动私有链节点启动节点所需参数列表:参数名称参数描述identity区块链的标示,随便填写,用于标示目前网络的名字ini t指定创世块文件的位置,并创建初始块da

7、tadir设置当前区块链网络数据存放的位置por t网络监听端口rpc启动rpc通信,可以进行智能合约的部署和调试rpcapi设置允许连接的rpc的客户端,一般为db,eth,net,web3networkid设置当前区块链的网络ID,用于区分不同的网络,是一个数 字console启动命令行模式,可以在Ge th中执行命令终端进入配置好的创世块文件目录。输入以下命令初始化创世块:geth datadir ./ethdev init piccgenesis.json输入以下命令启动以太坊私有链:geth identityPICCetherumrpc一rpccorsdomain *一datadir

8、 ./ethdev port 30303rpcapidb,eth,net,web3networkid 95518 console - dev注意:添加一dev表示以开发模式启动。私有链数据存储的目录要与公有链分开。看到以下输出说明私有链启动成功:交:件F编猖萱盲凹按家终端帮助H1123134B81123134B8112311123122:21:51.67999122:21:51.68002122i21i51.6&205122:21:53*82600core/blockchairb,ot:220 Last block: W15 e97b5eO0. TD=210core/blQckchflin-g

9、o:221 Fast block: #15 e?7b5eO0. TD_2iep2p/server.go:342 starting s&rv&r pZp/discover/udp-go:227 Listeningj en0de:/161esO938t4deee887Sedie4a91cd848d3elcl7242&eel255377bdbSd3977a863t17fe9d6c3aa06871d3d915S5&3 fe782fila33aa了亡G0432d9f9dec0d9bO45I:门:557391123111231II23Ih*ipc1123154522:2122:2122*2153.8ZGZ

10、aiS3.82637053.82904722:21:53,S29939whisper/whispervZ/whisper.ga;176 Whisper started p2p/server.go:61 LiEtening on :4D284 riod&/nod&xgu:341 ipc endpoint opened: /hume/huang/detf/getnode/n&de,go:411 http endpoint opened: http:/tocalh&Et:8Welcone to th亡 Geth JovaScrtpt console!instance: Geth/PICCetheru

11、m/vl+ 5 + 5-stable-ffDTd546/1tnux/gol-7.3coinbase: 9x8ad639cB1366&al6cc949097e429ec3feS3ba6cat block: 15 (wed, ze Dec 2016 00:07:45 cst)datddir; /hoMe/huang/devnodules: adntn:1*0 debuilr& eth:1*0 ntner:l + 0 net11.9 personal:1*0 rpcil,& shh :I txpcitjli 1x0 xebii 1.0二、Node.js环境搭建由于以太坊开发框架truffle的安装需

12、要依赖于node.js中的npm命令,下文简 要介绍以下node.js的安装过程。Node.js 官网:.nodejs.org/从官网中下载稳定的版本,需要注意的是,由于网络原因,网络上有些教程推荐 使用cnpm,然而使用cnpm代替npm有可能安装的软件会出现一些问题。依赖安装安装nodeJS之前,如果没有安装g+与libssl-dev,则先要安装好,安装方法 如下:1 $ sudo apt-get install g+2 $ sudo apt-get install libssl-devnodejs安装第一步,解压:1 tar -xvf node-v6.9. l-linu3(-x64:.

13、tar. xz第二步:为node和npm建立两个软连接,使之可以全局运行: (第一个路径 为安装程序所在路径)1 In - Zhonie/zhuze/app/nodejs/node-v6.9.1/bin/n.ode/u.sr/local/bin/node22 In -s /hanLe/shuss/app/nodejs/node-vS 9 1 A?in/n.pm /u.sr/Iocal /bin/npm第三步:安装测试1 node -v输出版本号1 npm -v输出版本号,说明安装成功。三、Truffle开发框架搭建Truffle是以太坊最受欢迎的一个开发框架,它帮你处理掉大量无关紧要的 小事情

14、,让你可以迅速的进入写代码-编译-部署-测试-打包Dapp这么一个较成 熟的开发流程。下面简要介绍如何搭建truffle开发框架。git安装在安装truffle之前需要核实一下本机是否安装Git程序。后面的程序安装需要 依赖git。输入以下命令:1 $ suda add.-apt-repositary ppa;git-coxe/ppa22 $ sudo apt-get update43 $ sudo aptget install grt安装测试:1 $ git exsion2 git version 2.10.2通过以上命令安装的git版本为2.10.2。下载安装终端输入如下命令:1 npin inMtall -g truffle安装完成之后,创建软连接,使之可以全局使用:1 In -s /home/zhuzs/app /no dejs/no 9 1 /bin/truff 1 e /usr / local/bin/1 truff 1 已安装测试:1 txuffle vexsicn显示truffle版本信息,安装成功。至此,区块链开发环境搭建完成,可以通过该开发环境开发出区块链的Dapp。

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 学术论文 > 其它学术论文

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号