首页 > 白话区块链教程手册 > imToken操作教程 > 如何使用 imToken 高级模式

imToken教程 如何使用 imToken 高级模式

2018-11-29 16:11:10 作者: 官方支持 来源imToken

在高级模式之前,我们先搞清楚,什么是 gas ,什么是gas price,以及 data。在以太坊上,发送Token或调用智能合约,在区块链上执行写入操作,需要支付矿工计算费用,计费是按照 gas 计算的,gas 使用 ETH 来支付。无论您的调用的方法是成功还是失败,都需要支付计算费用。即使失败,矿工也验证并执行你的交易(计算),因此必须和成功交易一样支付矿工费。 一笔转账需要花费矿工费 = gas limit *gas price. 一笔标准的转账需要花费 21000 gas 和 0.00000002 ETH gas price ,所以总的矿工费是 0.00042 Ether.通常情况下,如果有人只说 gas ,指的就是 gas limit,gas limit 相当于汽车需要加多少汽油, gas price 相当于每升汽油的价格。

gas limit 之所以称为限额,因为它是你愿意在一笔交易中花费 gas 的最大数量。交易平台需的 gas 是通过调用智能合约执行多少代码来定义。 如果你不想花太多的 gas,通过降低 gas limit 将不会有太大的帮助。 因为你必须包括足够的gas 来支付的计算资源,否则由于gas 不够报错 Out of gas。所有未使用的 gas 将在转账结束时退还给您。 所以使用 imToken 发送1 ETH,并设置 gas limit 为 40万,转账结束后你会收到 400000 - 21000 gas 退还。 但是,如果您发送1个ETH到智能合约中,智能合约调用失败,整个 40万 gas 全部使用,不会退还。21000 是标准转账的gas limit。

通过降低 gas price可以节省矿工费用,但是也会减慢矿工打包的速度。矿工会优先打包 gas price 设置高的交易,如果你想加快转账,你可以把 gas price 设置得更高,这样你就可以排队靠前。如果你不急,你只需要设置一个安全的 gas price,矿工也会打包你的交易查看矿工可以接受的最低 gas price : http://ethgasstation.info/


Data 是可选项,用来调用合约。你需要把对应字符串转换成 16进制,工具:http://tool.haooyou.com/code?group=convert&type=hexToStr&charset=UTF-8 ,填入十六进制数据(0x 开头)比如 makoshan 转换成 16 进制是 0x6d616b6f7368616e, 


具体使用教程

进入 imToken 转账页面,开启高级模式,填写 gas price(通常是 20 Gwei),填写 gas (200000,多余的会退回),填写 data (根据情况)

_____.jpg