【第1课】如何在Tezos链上发布ERC20资产

InCore.jpg

1. 摘要

Tezos链是一条比较小众的公链,国内的技术人员相对比较少。本文作为该公链的第一批中国开发者,以图文并茂的形式介绍如何在Tezos链上发布ERC20资产。

2. 内容

(1)安装Temple-Tezos Wallet插件

翻墙,google 应用商店搜Temple-Tezos,Temple-Tezos Wallet(ex.Thanos)安装起来。类似metamask插件。

(2)新建钱包

地址:tz1c4Zma1UmkEfwmEsqYdMcVpFauhNCeKY3U 私钥:edskRkxztWUgQpgrkXKbjKRS7G76KkJqprgMVkHDCSCyWwTvzgDXER67HUipBANomcc8oxeqHrQumMG2ENmEgMT4wSWAsE1mFz 助记词:wait hill federal memory club wish shallow crumble web decrease grocery game square cake oppose pulse jelly train 密码:Mozik@2021

(3)从telegram获得测试币和开光

edo2net余额: 100.000000 xtz

然后记得开光reveal account。

地址:https://smartpy.io/origination

点击reveal account完成开光。

reveal account

(4)编译合约

打开在线IDE编辑器网址:https://smartpy.io/ide

把“Moz-Token_FA2.py”新合约代码复制到编辑器中,点击"RUN"按钮完成编辑。

编译成功

(5)修改administrator地址为自己的账号

部署合约前,修改administrator地址为自己的账号,对应的TAB为STORAGE JSON。

[1] 编译页点击“Deploy Michelson Contract”按钮

Deploy Michelson Contract

[2] 部署页面完成账户关联后进行administrator修改

<1> 选择要部署网络,是主网还是florencenet测试网

<2>点击Temple钱包按钮,完成对应账号在选择的网络的关联

<3> 关联成功,可以查看3.,看到账号信息。

关联temple账户

[3] 部署前修改管理账户

上面页面往下拉,点击 “EDIT MODE”按钮,把管理账户由tz1hdQscorfqMzFqYxnrApuS5i6QSTuoAp3w 改为自己控制的账户,例如 tz1c4Zma1UmkEfwmEsqYdMcVpFauhNCeKY3U。

修改管理账号

(6)部署合约

https://smartpy.io/origination

[1] “ESTIMATE COST FROM RPC” 按钮

估算GAS费

[2] "DEPLOY CONTRACT"按钮

点击部署合约按钮,完成跟Temple的钱包后,就可以获得合约了。

预签名信息
钱包确认签名
部署成功

[3] 部署网址信息

<1> 点击"OPEN EXPLORER"可以查看部署合约的信息:

https://smartpy.io/explorer.html?address=KT1E8EVHGxpDxJKAfxVi8qUuRn93SmQdFrGV

OPEN EXPLORER

<2> 点击“SAVE CONTRACT”可以保存合约信息:

https://smartpy.io/wallet.html

SAVE CONTRACT

(7)发布ERC20 TOKEN

地址:https://smartpy.io/explorer.html?address=KT1E8EVHGxpDxJKAfxVi8qUuRn93SmQdFrGV

给管理账号:tz1c4Zma1UmkEfwmEsqYdMcVpFauhNCeKY3U发行1000万的ERC20 TOKEN。

[1] 调用mint函数
<1>Address:tz1c4Zma1UmkEfwmEsqYdMcVpFauhNCeKY3U
<2>Amount:1000,0000,000000000000000000 [输入amount去除,] <3>Metadata:one, 0x697066733a2f2f516d5950764e4e317843715a747864475766583458716233454e567170624659723872596a773867794454746b4d
<4> token id = 0

说明:

<1>其中ipfs://QmYPvNN1xCqZtxdGWfX4Xqb3ENVqpbFYr8rYjw8gyDTtkM转成16进制 0x697066733a2f2f516d5950764e4e317843715a747864475766583458716233454e567170624659723872596a773867794454746b4d

网址:https://www.sojson.com/hexadecimal.html

<2>对应信息: { "name": "Mozik", "symbol": "MOZ", "decimals": 18, "shouldPreferSymbol": true, "thumbnailUri": "ipfs://QmTYMWr7NC5a35WMTx6FutDKFysd4XiuJc86gb8UJnCqLU" }

<3> 可以点击https://gateway.pinata.cloud/ipfs/QmYPvNN1xCqZtxdGWfX4Xqb3ENVqpbFYr8rYjw8gyDTtkM查看。

设置如下:

设置mint参数

要点击上面的“Build Transaction Parameters”生成参数:

生成参数

[2] “Private Key and Account ”选择Temple,连接对应的钱包

连接钱包

如果连接成功的话,可以看到该钱包的地址和XTZ余额。

钱包信息

[3] 发送交易

点击"Send the Transaction"完成交易。

发送交易

[4] Set metadata

调用Set metadata函数:

k选择空,V选择上面的16进制,k,v: ,0x697066733a2f2f516d6636746a7364376b774845534d4a68434c594e4846376a364164474e6d746e4272635643346153383759774c

set metadata

说明:
<1> 其中 ipfs://Qmf6tjsd7kwHESMJhCLYNHF7j6AdGNmtnBrcVC4aS87YwL 转成16进制
网址:https://www.sojson.com/hexadecimal.html

<2> 对应信息: { "name": "Mozik", "description": "Music, Dream & Value", "version": "", "interfaces": [ "TZIP-12", "TZIP-16", "TZIP-21" ] }

<3> 点击以下链接可查看:https://gateway.pinata.cloud/ipfs/Qmf6tjsd7kwHESMJhCLYNHF7j6AdGNmtnBrcVC4aS87YwL

[5] 信息查看

<1> mint 交易详情:

https://florencenet.tzkt.io/opEUWTj7fto2y3CqZfi1Lp5epVsNFzC3w7AYEjXiTqmsKtS8jzj

Status状态为“Applied”表示应用成功了,pending表示还在等待。

部署成功

<2> set metadata 交易详情

https://florencenet.tzkt.io/oo1H6oZjzyucSGuhvGhpD8pQzzZL6H9pMVmipQ6KsXHM8V2Qvuw

状态为Applied,表示执行成功了。

<3> 查看该账号下增发的TOKEN

https://florencenet.tzkt.io/tz1c4Zma1UmkEfwmEsqYdMcVpFauhNCeKY3U/tokens

对应的TOKEN:

KT1E8EVHGxpDxJKAfxVi8qUuRn93SmQdFrGV

(8)Temple增加TOKEN

[1] 打开Temple钱包,增加TOKEN:

Temple增加管理

[2] 增加TOKEN

在VPN情况下,可以在temple中增加TOKEN。输入地址:KT1E8EVHGxpDxJKAfxVi8qUuRn93SmQdFrGV

增加TOKEN

钱包增加MOZ TOKEN后,就可以直接在TEMPLE进行转账等操作了。

TEMPLE 钱包

(9)授权转账

[1] 切换到当前管理账户:tz1dfmLJ1RRodNx9NSQy6YzgW2nJMiA3R5eq

任务目标:

把tz1c4Zma1UmkEfwmEsqYdMcVpFauhNCeKY3U的token id:0的权限授权给第三方账号:tz1eXdTsaQVbtRAW273gcQko4eH5DnusHaBr,测试第三方账号是不是可以直接转账对tz1c4Zma1UmkEfwmEsqYdMcVpFauhNCeKY3U的TOKEN进展转账。

[2] 授权TOKEN:

授权TOKEN

[3] 转账:

切换到被授权账号tz1c4Zma1UmkEfwmEsqYdMcVpFauhNCeKY3U下,发起针对TOKEN 0的转账,转100个MOZ.

授权转账

结果:

转账成功。授权之后,就等于裸奔了,又没有额度限制,有点可怕。

3. 参考

(1) 智能合约在线编辑器 https://smartpy.io/ide
(2) smartpy智能合约参考文档 https://smartpy.io/reference.html

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 225,498评论 6 524
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 96,668评论 3 406
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 172,857评论 0 370
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 61,305评论 1 303
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 70,308评论 6 401
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 53,747评论 1 316
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 42,078评论 3 431
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 41,080评论 0 280
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 47,649评论 1 327
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 39,644评论 3 347
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 41,760评论 1 355
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 37,352评论 5 351
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 43,076评论 3 341
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 33,490评论 0 25
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 34,651评论 1 277
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 50,353评论 3 383
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 46,828评论 2 367

推荐阅读更多精彩内容