personal_signTransaction - 交易签名
使用personal_singTransaction
调用签名指定交易,不广播到网络中。
签名后的交易可以在稍后使用eth_sendRawTransaction
调用提交到网络中。
签名账户不需要解锁,在调用完成后也不会处于解锁状态。
调用参数
- 交易对象,结构如下:
- from:发送账户地址,20字节,16进制字符串
- to:交易目标账户地址,可选
- gas:交易gas用量,可选
- gasPrice:交易gas价格,可选
- value:交易金额,可选
- data:交易附加数据,可选
- nonce:交易nonce,可选
- condition:交易执行条件,可选
- 签名账户解锁密码,字符串
返回值
personal_signTransaction
调用返回已签名交易对象,结构如下:
- raw:已签名的RLP编码的交易
- tx:原始交易对象,结构如下
- from:发送账户地址,20字节,16进制字符串
- to:交易目标账户地址,可选
- gas:交易gas用量,可选
- gasPrice:交易gas价格,可选
- value:交易金额,可选
- data:交易附加数据,可选
- nonce:交易nonce,可选
- condition:交易执行条件,可选
示例代码
请求:
~$ curl --data '{
"method":"personal_signTransaction",
"params":[
{
"from":"0x407d73d8a49eeb85d32cf465507dd71d507100c1",
"to":"0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b",
"data":"0x41cd5add4fd13aedd64521e363ea279923575ff39718065d38bd46f0e6632e8e",
"value":"0x186a0"
},
"hunter2"
],
"id":1,
"jsonrpc":"2.0"
}' -H "Content-Type: application/json" -X POST localhost:8545
响应结果:
{
"id": 1,
"jsonrpc": "2.0",
"result": {
"raw": "0xd46e8dd67c5d32be8d46e8dd67c5d32be8058bb8eb970870f072445675058bb8eb970870f072445675",
"tx": {
"hash": "0xc6ef2fc5426d6ad6fd9e2a26abeab0aa2411b7ab17f30a99d3cb96aed1d1055b",
"nonce": "0x0",
"blockHash": "0xbeab0aa2411b7ab17f30a99d3cb9c6ef2fc5426d6ad6fd9e2a26a6aed1d1055b",
"blockNumber": "0x15df",
"transactionIndex": "0x1",
"from": "0x407d73d8a49eeb85d32cf465507dd71d507100c1",
"to": "0x853f43d8a49eeb85d32cf465507dd71d507100c1",
"value": "0x7f110",
"gas": "0x7f110",
"gasPrice": "0x09184e72a000",
"input": "0x603880600c6000396000f300603880600c6000396000f3603880600c6000396000f360"
}
}
}