以太坊私有连搭建及智能合约编写实践-linux-.pdf

以太坊私有连搭建及智能合约编写实践-linux-.pdf

  1. 1、本文档共8页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
以太坊私有连搭建及智能合约编写实践 一. 安装go 1. 通过wget 下载go-linux-64 位源码包,手动wget 安装 2. 解压二进制文件到 /usr/local 目录 3. 修改环境变量 执行 vi ~/.bash_profile 保存后,执行source ~/.bash_profile 4. 检验安装情况 执行 go version 安装成功。 二. 安装go-ethereum 1. 去官网 /downloads/ 下载Geth1.8.18 for Linux 2. 解压到当前文件夹 3. 修改文件夹名称 4. 配置环境变量 vi ~/.bash_profile 使bash_profile 生效 source ~/.bash_profile 5. 检查是否安装成功 执行geth –help 安装成功 三. 搭建私有链 1. 编写创始区块信息,保存在gensis.json 中 2. 将创世区块信息写入创始区块 此时目录结构如下: 执行命令geth --datadir data0 init genesis.json 输出如下: 初始化成功,此时data0 目录下多出geth 和keystore 文件夹,geth 包含chaindata 文件夹,chaindata 下有如下文件: 3. 启动私有链节点 初始化完成后就产生了一条私有链,可以启动该私有链 执行命令:geth --datadir data0 --networkid 999 console Javascript 交互式控制台启动成功 4. 创建账户 通过personal.newAccount()创建账户,eth.accounts 查看账户 在~/privatechain/data0/keystore 中查看,发现多了两个json 文件 5. 查看账户余额 目前账户余额都是0,需要从其他账户转入或者挖矿获取 6. 开始挖矿 默认使用第一个账户作为矿工账户 执行miner.start() 第一次启动挖矿会生成挖矿所需的DAG 文件,这个过程有点慢,等进度达到100% 后,就会开始挖矿。下图为生成DAG: DAG 生成完成后开始正式挖矿,试了几次才挖到矿 查看账户余额: 此时coinbase 账户里已经有钱了 7. 转账 尝试将basecoin 账户的钱转到另外一个账户 报错,因为每隔一段时间账户会自动锁定,需输入密码解锁 再次尝试交易 查看两个账户的余额 发现账户余额并未发生改变,交易处于pending 状态,要使交易被处理则要重新启 动挖矿 完成交易操作,再次检查账户余额 此时coinbase 账户余额被扣除100,另一个账户余额增加100,交易完成。 四. 编写智能合约 编写一个求加法计算的智能合约 1. 在线编辑器remix 中编写智能合约代码,文件名为add.sol 2. 编译add.sol 文件 执行 solcjs --abi --bin add.sol 执行完成后目录下多了bin 和abi 文件 3. 准备部署环境,安装ethereumjs-testrpc 安装完成后输入命令testrpc 4. 在node 环境中链接testrpc 5. 开始部署,读取abi 文件和bin 文件 6. 获取部署实例地址 7. 使用智能合约 得到正确结果。

文档评论(0)

piggy666 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档