命令行玩转EOS系列第八篇 | sign签名交易、push交易上链

命令行玩转EOS系列第八篇 | sign签名交易、push交易上链

 

上篇我们已经介绍完了一级子命令wallet本篇继续介绍一级子命令sign、push。cleos(v1.1.0版本)的所有子命令如下图所示:

命令行玩转EOS系列第八篇 | sign签名交易、push交易上链

1、version:获取版本信息

2、create:在EOS区块链上或链下本地创建一些东西

3、get:从EOS区块链上获取各种数据和信息

4、set:设置或者更新区块链状态

5、transfer:在EOS账户之间进行转账

6、net:管理或查询本地p2p网络连接状态

7、wallet:管理本地钱包

8、sign:对交易进行签名

9、push:把任意交易发送至区块链

10、multisig:多重签名功能

11、sudo:通过超级账户eosio.sudo执行命令,可越过权限验证,目前该超级账户还未创建

12、system:向区块链发送系统合约内置的相关动作

8、sign
命令行玩转EOS系列第八篇 | sign签名交易、push交易上链

sign作为一级子子命令主要用法是对交易进行签名,用法如下:

cleos sign transaction [OPTIONS]

【必填参数】

# transaction TEXT   一个json数据或者是交易定义的文件名


【非必填参数】[OPTIONS]

#-k, --private-key        用于交易签名的私钥

# -p,--push-transaction   签名后推送交易

【示例】
cleos sign AA.json
# 签名推送AA.json文件中的交易

命令行玩转EOS系列第八篇 | sign签名交易、push交易上链

9、push

命令行玩转EOS系列第八篇 | sign签名交易、push交易上链

一级子命令push主要用把任意交易发送到区块链上。目前下面有3个二级子命令,分别是action、transaction、transactions。 

 

 

9.1 action

 

 

 

功能:向区块链发送action,用法如下

 

cleos push action contract action data [OPTIONS]

【必填参数】

# contract Text   执行智能合约的名称

# action Text     在智能合约上执行的动作
# data
Text       智能合约的数据

【非必填参数】[OPTIONS]

#同4.1

 

【示例】
cleos
push action eosio.token create ‘[“eosio.token”,”1000000000.000 DDD”]’ -P eosio.token

# 发行代币DDD,总量为1000000000

命令行玩转EOS系列第八篇 | sign签名交易、push交易上链

 

 

9.2 transaction

功能:推送一个json格式的交易,用法如下:

 

 

cleos push transaction

【必填参数】    

 

# transaction TXET json格式的交易或者包含交易的文件

 

【示例】
 cleos push transaction SS.json

# 推送SS.json文件中的交易
SS.json文件内容:{
“expiration”: “2018-08-30T10:41:20”,
“ref_block_num”: 2793,
“ref_block_prefix”: 2457726506,
“max_net_usage_words”: 0,
“max_cpu_usage_ms”: 0,
“delay_sec”: 0,
“context_free_actions”: [],
“actions”: [{
“account”: “eosio”,
“name”: “newaccount”,
“authorization”: [{
“actor”: “eosio”,
“permission”: “active”
}
],
“data”: “0000000000ea305500000019abdcb0ae0100000001000317b1cb17f60e05bfa96fb7bbfea39db06617a5ada4ed9d0922e81b26daa696db010000000100000001000317b1cb17f60e05bfa96fb7bbfea39db06617a5ada4ed9d0922e81b26daa696db01000000”
}
],
“transaction_extensions”: [],
“signatures”: [
“SIG_K1_Kc628hunxQmwB2pNRWBQPTwJESxXEAS52stL264VG71PUhpQmpQEDAUviZxdVazd28YxhwcJv8CmdAgME5u8yXs5FKm1Vd”
],
“context_free_data”: []
}

1.json文件内容是通过 cleos create account eosio pushtest EOS71fmsHeEwG9EiYsZDRhGZScavyG5UgmedJCiWG7edajhEzzyHM -d -j -s
得到该事务的具体信息以json格式显示,该事务并未进行签名广播,信息保存为AA.json文件
2.将AA.json文件中expiration时间修改为nodeos节点运行的当前时间后几分钟
3.cleos sign AA.json 对文件进行签名,更新的信息保存为SS.json文件




命令行玩转EOS系列第八篇 | sign签名交易、push交易上链
 

9.3 transactions

功能:推送一个或一个以上json格式的交易,用法同9.2

 

命令行玩转EOS系列定于每周四定期更新。本篇我们介绍了第八、九个一级子命令sign与push。下一篇我们将继续介绍第十个一级子命令multisig的用法。

免责声明:本内容来自互联网公开内容,不代表BitChina.Net立场,BitChina.Net也不负相关法律责任,如若转载,请注明出处:http://www.bitchina.net/archives/2288

联系我们

邮件:aliyinhang@gmail.com