美文网首页
以太坊钱包转账实战记录

以太坊钱包转账实战记录

作者: TangFly | 来源:发表于2019-09-30 11:22 被阅读0次

最近项目中,要求给客户退款。 虽然之前我们写的服务封装了以太坊钱包转账的诸多细节,可以很方便的转账,但考虑再三,觉得最安全的方式还是用钱包本身的命令来转账。话不多说,这里记录下用以太坊钱包转账的步骤:

1. 首先百度搜索了下,网上此类的文章还不少。看了一圈后,觉得最好的还是这篇: https://blog.csdn.net/DDFFR/article/details/53673650  geth账户管理转账。

2.开始打开自己的以太坊钱包。查看钱包各个账户的余额。命令:eth.getBalance('0xaddress')

3. 开始转账步骤:

3.1) 解锁账户。命令:personal.unlockAccount("0xaddress123456789",“123456”)。 第一个参数:账户,第二个参数:解锁密码。就是创建这个账户地址时的密码。 其实还有第三个参数,是时间,表示解锁多久。如60,就写0x3c。可以不写,默认是300秒,就是5分钟;

3.2)计算fee:因为想把账户里的钱都退回去,所以要计算一个合理的fee,fee的计算公式:

fee  <= gasPrice * gasLimit,对于普通的ETH交易,则gasLimit=21000即可,这个值可看区块浏览器的交易,一般都是这个值。而gasPrice则需要自己确定,这个是浮动的。获取方式:通过钱包的:

eth.gasPrice 来获取钱包本身推荐的矿工费。也可自己给一个值。但记住,给太低就没人打包了;

而对于gasLimit,钱包的值各不相同。如果不在乎手续费的话,可以用后面提到了的转账命令,给自己的账户发送一个0eth的转账,来获取本钱包的gaslimit参数。

3.3)计算实际款额度:

amout = 账户的余额-fee

3.4)转账命令:

有几个方式:

gasprice/gaslimit由钱包本身指定: eth.sendTransaction({from: '0xfromaddress', to: '0xtoaddress', value: web3.toWei(1, "ether")})

 eth.sendTransaction({from: '0xfromaddress', to: '0xtoaddress', value: web3.toWei(0, "ether")})//通过这个可以获取钱包本身提供的 gasLimit默认参数。

自己指定gasprice/gaslimit:eth.sendTransaction({from: '0xfromaddress', to: '0xtoaddress', gasPrice: web3.toWei(30, 'gwei'), gas:21000, value: web3.toWei(1, "ether")})

这里用到了web3.toWei()函数,这个函数表示将第一个数字参数变成最小以太坊单位Wei表示的一个数字。第二个参数表示这个参数的单位。可以是1Gwei = 10^9 Wei,1 ether=10^18 Wei. 

如果出现错误,根据提示修改参数。如果成功,则返回一个交易id。根据这个id到浏览器上查看交易状态即可。

上面步骤要在解锁时间范围内完成,要不就提示账户被锁定的信息。感觉以太坊这点做得还是挺好,挺安全的。

在做上面步骤时,这里还遇到了一个坑,就是有个服务会扫描钱包账户,进行资金归集。对此,为了操作不被打断。必须先停止对这个钱包操作的所有服务,否则会中断转账流程,引起不必要的安全隐患。所以切记:转账前,保证只有你自己在操作钱包;转账前,保证只有你自己在操作钱包;转账前,保证只有你自己在操作钱包;

相关文章

  • 以太坊钱包转账实战记录

    最近项目中,要求给客户退款。 虽然之前我们写的服务封装了以太坊钱包转账的诸多细节,可以很方便的转账,但考虑再三,觉...

  • 以太坊钱包的开发3 -- 编写API

    在以太坊钱包的开发1 与以太坊钱包的开发2 中,我们用NodeJs搭了个以太坊钱包的后台,实现了查询余额、转账、查...

  • 第三课 以太坊术语说明

    EVM-以太坊虚拟机 是以太坊中智能合约的运行环境。 以太坊客户端 也称钱包,提供账户管理、挖矿、转账、智能合约的...

  • ETH以太坊发布 ERC20 Token 步骤

    目标 在以太坊测试网络中发布自己的Token代币,做转账测试。 用到的工具: chrome 下以太坊钱包 Meta...

  • 以太坊token全生命周期管理

    本文档仅考虑 token主要分为初始化,增发,转账,分配,销毁。 在以太坊上有中心化钱包和去中心化钱包,同时还引入...

  • 6种以太坊钱包的基本介绍

    原文:6种以太坊钱包的基本介绍作者:月亮 作为一个从来的没用使用过以太坊钱包的个人,在开始选择使用以太坊钱包之前,...

  • 以太坊钱包【imToken2.0】注册使用教程

    ImToken是什么? ImToken是目前币圈主流钱包之一,便捷的主流钱包,基于以太坊系的钱包(以太坊系钱包没法...

  • 基于以太坊发行token(代币)

    以太坊钱包同步区块导致C盘存储空间不足的解决办法以太坊钱包Ethereum wallet怎么删除/新建钱包账户通过...

  • 以太坊钱包的开发2 -- web3的应用

    在以太坊的钱包开发1中,我们介绍了node环境搭建、本地区块链节点的搭建与启动,下面开始实现钱包转账。 在app....

  • 005 以太坊钱包开发-账户转账

    账户转账主要分为两部分: 根据 privateKey 和 keystore 获取账户私钥及地址 通过私钥签名交易实...

网友评论

      本文标题:以太坊钱包转账实战记录

      本文链接:https://www.haomeiwen.com/subject/ztpcpctx.html