关于ethereumjs-tx在私链签名报错问题

首先要先了解一下以太坊的chainid

 

 

CHAIN_ID Chain(s)
1 Ethereum mainnet
2 Morden (disused), Expanse mainnet
3 Ropsten
4 Rinkeby
30 Rootstock mainnet
31 Rootstock testnet
42 Kovan
61 Ethereum Classic mainnet
62 Ethereum Classic testnet
1337 Geth private chains (default)

 特别是在直接开启dev的情况下,默认id为1337

但是,要是你按web3的写法直接写(在tx为2.0版本的情况下)

let account = '0x8e5761C0eeB594daF316161aFdc55914D8aB40DC'
	let user2 = '0xB7BEA2D94f06353a15CCE8ab4AF5e98b2F3b87a3'
	let strdata = '0x' + Buffer.from('asd').toString('hex')
	var rawTx = {
		from: account,
		to: user2,
		//gasPrice: "20000000000",	//可以默认,有需要可以查下如何设置gas节省旷工费
		gas: 27052,	//如果报错gas过小,请把值调大
		nonce:21,	//每次交易不能重复,不然会报错{"code":-32000,"message":"nonce too low"}
		value:4052500000,	//单位转换web3.utils.toWei('0.1', 'ether')
		data: strdata	//十六进制数据
    }; 
  var tx=new Tx(rawTx)
	//开发节点其实可以直接使用web3.eth.sendTransaction,正式节点会报错,可能需要解锁,所以直接使用私
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值