部署NEP-5智能合约 (第1部分)

如果您还没搭建私有网络,请参考之前的文章先行搭建。

c4a272b133e49278f6e717ecddd76f668b1.jpg

Photo by Markus Spiske on Unsplash

开始之前,我们需要先了解一下什么是智能合约。智能合约是函数式编码的集合(不是面向对象的),通过事务的形式写入区块链,然后由钱包调用。NEO的一个主要优势是它支持许多当前知名的程序语言,如C#,PythonJava ……文中我们使用Python语言进行讲解。

什么是NEP-5?与EthereumERC20标准类似,NEP-5是一种Token标准协议,协议规定NEP-5 Token应该包括一些预定义的方法(namesymbolbalanceOftransfer …)。与其他标准化系统一样,这使得开发数字钱包时更多的考虑用户偏好而不需要纠结Token本身,而智能合约开发者也不需要担心用户体验!

最后,谈论部署问题就不得不提到编译器!由于NEO节点不能识别PythonJavaC#等这样的高级语言,而能识别字节码,因此需要编译器将这些语言编译成字节码。我们使用的编译器是Neo-boa:将符合NEP-5标准的Python智能合约,编译转换为字节码或机器可读的代码。

工作流概述: 代码 -> 编译 -> 部署。下面就开始吧

步骤1:创建钱包

Ubuntu中打开neo-prompt, source venv/bin/activate , np-prompt -p <server ip>,输入命令:

create wallet testWallet1

输入密码,长度不少于10个字符

步骤2:获取费用

新创建的钱包里是没有GAS的(显然)……但是部署合约需要GAS。所幸网络提供了一个可导入的WIF /私钥,该私钥的钱包存有GAS

import wif KxDgvEKzgSBPPfuVfw67oPQBSjidEiqTHURKSDL1R7yGaGYAeYnr

wallet rebuild

* WIF可能随时变化,请参阅文档:https://hub.docker.com/r/cityofzion/neo-privatenet/

步骤3:从网络中下载NEP-5标准模版

假定您本地已经安装了git,打开一个新的终端:

:you may want to use the same base path as your neo-python install

cd <storage location>

git clone https://github.com/neonexchange/neo-ico-template

步骤4:安装Neo-boa(编译器)

:you may want to use the same base path as your neo-python install

cd <storage location>

git clone https://github.com/CityOfZion/neo-boa.git



cd neo-boa/

python3.6 -m venv venv

source venv/bin/activate



pip install -r requirements.txt

步骤5:编辑智能合约代码:获取钱包哈希值

打开np-prompt控制台,输入wallet,将显示以下信息:

3814f04d3c1e242597a7622de67813e7771.jpg

复制最上方的钱包哈希值,这里我的是b’\xc6\x04\x1c\x97\x15\xc1\xe4\x87/\xe5\xbf\xd4\t\xf5\xe1\sbd_>\scd\xf8′

使用文本编辑器打开文档<smartcontract>/nex/token.py。将TOKEN_OWNER替换成你的钱包哈希值。

您还可以重命名变量TOKEN_NAMETOKEN_SYMBOL

2fc05cbf502f22128e6d6971880a2fd59c6.jpg

现在可以编译和部署您专属的NEP5智能合约了。

 

非常感谢thomas saundersNEX团队提供了一个这么优秀的智能合约模版。

翻译:包子

原文:https://hackernoon.com/deploying-a-nep-5-smart-contract-part-1-fc81f312a096

f98b3dc219287ad2289ef5eb532e0ab5575.jpg

NEOFANS:neofans.org

NEOFANS 微博:https://www.weibo.com/neofanscommunity

NEOFANS  telegram群:https://t.me/NEOfansCN

转载于:https://my.oschina.net/u/4005186/blog/2252005

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值