19cao:EOS测试链加入流程(代码版本与主网同步)

测试网络 EOS 测试链加入流程 (代码版本与主网同步)

caokun_8341 · 4 分钟前 · 5 次阅读

准备:测试链目前的版本是v1.7.3

一、生成一个密钥对,私钥一定保存好,不要泄露,公钥和你的账户名称发到这个邮箱:blockchaineos@sina.com

注意账户名规则:长度必须=12位字符,只能包含(字母a-z,注意是小写,数字1-5)

1、使用cleos create key --to-console命令生成密钥对 

# 示例cleos create key --to-consolePrivate key: 5JE57u3ZfkfHWG8qoysacGReGiq7EkjSMZFZJXCFvWuFwKGpmgoPublic key: EOS5f35wyekZBN1G8GRUemEhZ1uR5Xbuq5YXticPm2vWAsEKq3Jw8

cleos命令行工具和nodeos节点程序的安装参考:https://github.com/EOSIO/eos/blob/master/README.md,根据你的操作系统选择不同的方式安装。

# mac-osx$ brew tap eosio/eosio$ brew install eosio# Ubuntu 18.04 Debian Package Install$ wget https://github.com/eosio/eos/releases/download/v1.7.3/eosio_1.7.3-1-ubuntu-18.04_amd64.deb$ sudo apt install ./eosio_1.7.3-1-ubuntu-18.04_amd64.deb#Ubuntu 16.04 Debian Package Install$ wget https://github.com/eosio/eos/releases/download/v1.7.3/eosio_1.7.3-1-ubuntu-16.04_amd64.deb$ sudo apt install ./eosio_1.7.3-1-ubuntu-16.04_amd64.deb

也可以通过代码编译的方式来构建出cleos,nodeos,keosd,后面有编译构建的过程说明。

2、生成密钥对还有一种方式,到这个网址生成密钥对 https://eostea.github.io/eos-generate-key/ 

3、工作人员收到邮件后第一时间,创建账户,并给账户转入:100000 EOS token,注意这个EOS token是测试平台上的EOS,供测试使用,完成后会马上回复邮件,同时会空投1000个EOSDT,EOSDT是EOS主网上发行的一个合约token,其意义为eos develop and test,是为eosio合约开发者提供调试和测试服务的token,可以在BTEX去中心化交易所进行交易。麦子钱包-->应用-->交易所-->BTEX-->行情-->搜索EOSDT。

二、加入测试网的两种方式: 

1、不用部署同步节点,也不用同步数据,但需要编译cleos命令客户端,直接使用:cleos -u http://114.67.77.80:8888 get info (举例) 操作自己的账户,进行创建下一级账户,转账,注册矿工,抵押,投票,撤销等操作,也可以部署和测试智能合约。可以cleos -u http://114.67.77.80:8888 system listproducers 查看矿工信息。

2、如果想自己编译代码,编译过程参考:https://blog.csdn.net/caokun_8341/article/details/80713851 注意编译的代码要是最新版本:v1.7.3 必须使用下面的genesis.json文件启动ndoes:nodeos --genesis-json 后面跟genesis.json的路径和文件名称

{ "initial_timestamp": "2019-05-12T08:08:08.888", "initial_key": "EOS7LRAeWE4PM7gtNicUshruUSgVXYRnUbTpufZbdSgZ7WPRFG38B", "initial_configuration": { "max_block_net_usage": 1048576, "target_block_net_usage_pct": 1000, "max_transaction_net_usage": 524288, "base_per_transaction_net_usage": 12, "net_usage_leeway": 500, "context_free_discount_net_usage_num": 20, "context_free_discount_net_usage_den": 100, "max_block_cpu_usage": 200000, "target_block_cpu_usage_pct": 1000, "max_transaction_cpu_usage": 150000, "min_transaction_cpu_usage": 100, "max_transaction_lifetime": 3600, "deferred_trx_expiration_window": 600, "max_transaction_delay": 3888000, "max_inline_action_size": 4096, "max_inline_action_depth": 4, "max_authority_depth": 6 }}

确保 chain_id = 8b7cf52f47f92f1aa19346f3d83cc90c7980351c3905b776999918b299f0d80f 启动后可通过 cleos get info 命令查看

另外config.ini文件参考:可连接 114.67.77.80同步数据,在进行cleos 命令操作,创建账户,转账,抵押,注册矿工,投票,撤销等等。 如果想做出块节点,可以修改config.ini文件中的密钥对,改成你的producer 账户,如果只做同步节点,可以直接使用这个config.ini文件或密钥那一块删掉也可以。

  # eos node configenable-stale-production = truehttp-server-address = 0.0.0.0:8888p2p-listen-endpoint = 0.0.0.0:9876p2p-server-address = localhost:9876allowed-connection = anyhttp-validate-host = 1# mongodb-uri = mongodb://127.0.0.1:27017/EOSmax-transaction-time = 1000p2p-peer-address = 47.96.104.93:9876#producers and keys#plugins plugin = eosio::producer_pluginplugin = eosio::chain_api_pluginplugin = eosio::history_api_pluginplugin = eosio::http_pluginplugin = eosio::net_pluginplugin = eosio::net_api_plugin# plugin = eosio::mongo_db_plugin



三、常用操作说明 以下的操作示例如果远程执行:在cleos 后加上 -u http://114.67.77.80:8888 即可

1、创建钱包 创建默认钱包:filename = default.wallet cleos wallet create 创建名称为xxxx的钱包

cleos wallet create -n xxxx --to-console

2、解锁钱包

cleos wallet unlockcleos wallet unlock -n xxxx --passward waletpin_text

3、创建账户 使用 kevinkuntest账户创建kevinkuntes1账户,前提,kevinkuntest私钥导入钱包,有足够的EOS

cleos system newaccount --transfer --stake-net "100.0000 EOS" --stake-cpu "100.0000 EOS" --buy-ram "100.0000 EOS" kevinkuntest kevinkuntes1 EOS797NSewgrqDfxDKuh3aYa3G3p5BTeN2T5FdveTNMuj7bpsBVGN

4、导入秘钥对到钱包

cleos wallet import xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx(privatekey-text)cleos wallet import -n mywalletname --private-key xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx(privatekey-text)

5、转账EOS token

cleos transfer kevinkuntest kevinkuntes1 "100.0000 EOS"

6、账户查询

cleos get account kevinkuntestcleos get account kevinkuntes1

7、查询账户余额

cleos get currency balance eosio.token kevinkuntestcleos get currency balance eosio.token kevinkuntes1

8、创建自己的token : 需要eosio合约账户的私钥或授权

cleos push action eosio.token create '["kevinkuntest", "1000000000.0000 KUN"]' -p eosio.token

9、发行代币:

cleos push action eosio.token issue '["kevinkuntest", "1000000000.0000 KUN", "memo"]' -p kevinkuntest

10、查询所有代币的余额:

cleos get currency balance eosio.token kevinkuntest

11、为创建一个权限transferpower

cleos set account permission kevinkuntest transferpower '{"threshold": 1, "keys":[{"key":"EOS5wquAffiaMMQsXyibBGXpB7WWhZYFtwmSUGZcfkFE49pjsB28C","weight":1}],"accounts":[],"waits":[]}' active

12、将权限transferpower 和 转账动作transfer绑定

cleos set action permission kevinkuntest eosio.token transfer transferpower

13、可以使用transferpower权限转账

cleos push action eosio.token transfer '["kevinkuntest","kevinkuntes1","100.0000 KUN","transfer"]' -p kevinkuntest@transferpower

14、注册成为矿工

cleos system regproducer p1.cao EOS8jBSXoX4B4eEkdTE2R1srnAxXWsVp3Qr4ADHXwhZP8hJcg4HeT

15、查看所有producers列表

cleos system listproducers

16、抵押token

cleos system delegatebw kevinkuntest kevinkuntest '10000 EOS' '10000 EOS'

17、投票

cleos system voteproducer prods kevinkuntest cao

18、取消矿工注册

cleos system unregprod p1.cao -p p1.cao

19、查看抵押

cleos system listbw kevinkuntest

19、解除抵押

cleos system undelegatebw kevinkuntest kevinkuntest "10000 EOS" "10000 EOS" -p kevinkuntest

20、买内存 (100EOS)

cleos system buyram caokunkevin1 caokunkevin1 "100.0000 EOS" -p caokunkevin1

21、卖内存(1M)

cleos system sellram caokunkevin1 1048576

22、矿工索取奖励

cleos system claimrewards bp.a

四、经过实验得到的一些结论: 1、如果矿工注销以后,以前出块的奖励将会索取(claimrewards) 失败。

2、如果矿工的身份还在,没有注销,即使当前不在出块了,索取奖励(claimrewards)还是可以成功的。

3、买内存以EOS计,卖内存以字节计,1024*1024 = 1M内存

4、抵押cpu 和 net资源有两种方式,一种是自己给自己(同一账户)抵押,记在staked下,一种是别的账户给本账户抵押,记在delegated下。

一种是在创建账户的时候抵押,一种是使用delegatebw 抵押。

 

操作过程中遇到问题,可进群咨询,交流学习,一同解决。   

 

 

 

                                                        

相关推荐

相关文章