基于macOS Nervos CKB 测试链挖矿

Nervos 测试链挖矿

Nervos CKB测试链挖矿

本教程用于Nervos CKB测试链挖矿—基于macOS;Linux可进行参考。

Nervos CKB测试链挖矿的步骤如下:

  1. 安装CKB
  2. 启动CKB节点
  3. 生成钱包
  4. 挖矿
  5. 查看结果

1:安装CKB

参考:https://docs.nervos.org/getting-started/run-node

1.1下载二进制文件

对于Linux用户(对macOS用户不是必须的),需要安装libssl的动态库在使用已经发布的二进制文件。

sudo apt-get install -y libssl1.0.0

从CKB releases page on GitHub 下载二进制文件。

1.2 解压缩二进制文件:

  • macOS:
    unzip ckb_v0.12.0_darwin_amd64.zip &&
    cd ckb_v0.12.0_darwin_amd64

  • Linux:
    tar -xzvf ckb_v0.12.0_linux_amd64.tar.gz &&
    cd ckb_v0.12.0_linux_amd64

下载并且解压缩完成,你需要复制ckb的二进制文件到PATH的文件目录。

sudo ln -snf “$(pwd)/ckb” /usr/local/bin/ckb

检查是否已经起作用

$ ckb --version
ckb 0.12.0 (v0.12.0 2019-05-17)

如果能够看到上边的结果,表示安装CKB成功了,可以尝试启动CKB node。

2: 启动CKB Node

参考:https://docs.nervos.org/getting-started/run-node#run-ckb

为了连接测试网络(testnet)需要使用下面的命令,生成一个默认的配置文件,它将创建一个ckb-testnet文件夹,生成的文件在文件夹中。

在ckb_v0.12.0_darwin_amd64目录下执行

ckb init -C ckb-testnet --spec testnet &&
cd ckb-testnet

结果:
$ ckb init -C ckb-testnet --spec testnet &&
cd ckb-testnet
Initialized CKB directory in /Users/username/code/ckb-testnet
export ckb.toml
export ckb-miner.toml

在ckb.toml 你能找到bootnodes的信息,这些节点将作为种子节点帮助你发现在CKB网络中的其他CKB节点。

2.1启动节点

ckb run

结果:

$ ckb run
2019-05-18 08:06:37.246 +08:00 main INFO sentry Notice: The ckb process will send stack trace to sentry on Rust panics. This is enabled by default before mainnet, which can be opted out by setting the option dsn to empty in the config file. The DSN is now https://[email protected]/1422795
2019-05-18 08:06:37.257 +08:00 main INFO ckb_db::rocksdb Initialize a new database
2019-05-18 08:06:37.385 +08:00 main INFO main chain genesis hash: 0xaad9b82caa07f5989dfb8caa44927f0bab515a96ccaaceba82c7bea609fec205
2019-05-18 08:06:37.385 +08:00 main INFO network Generate random key
2019-05-18 08:06:37.386 +08:00 main INFO network write random secret key to “/Users/username/code/ckb-testnet/data/network/secret_key”
2019-05-18 08:06:37.391 +08:00 main INFO network No peer in peer store, start seeding…
2019-05-18 08:06:37.392 +08:00 main INFO network Listen on address: /ip4/0.0.0.0/tcp/8115/p2p/QmSbvRYNUujyEBEpRipdREfS8cqLxCSndDAWRDAE1Hms2H
2019-05-18 08:06:37.394 +08:00 tokio-runtime-worker-0 INFO network p2p service event: ListenStarted { address: “/ip4/0.0.0.0/tcp/8115” }
2019-05-18 08:06:37.441 +08:00 tokio-runtime-worker-6 INFO network SessionId(1) open, registry /ip4/47.111.169.36/tcp/8111/p2p/QmNQ4jky6uVqLDrPU7snqxARuNGWNLgSrTnssbRuy3ij2W success

3:生成钱包

参考:https://github.com/rebase-network/ckb-wallet-generator

3.1 下载文件
git clone https://github.com/rebase-network/ckb-wallet-generator.git

bogon:nervos zhouhe$ cd ckb-wallet-generator/
bogon:ckb-wallet-generator zhouhe$ tree
.
├── LICENSE
├── README.md
├── genAddress.js
├── package.json
├── sendTransaction.js
└── yarn.lock
0 directories, 6 files
bogon:ckb-wallet-generator zhouhe$

3.2 安装依赖

npm install

3.3 生成地址

node genAddress.js

结果:

bogon:ckb-wallet-generator zhouhe$ node genAddress.js

  • privateKey: 0x3cdd170dd4cb79e40cf2f6731fd11cd15d8f99a632bf3300fbaf9ade28cd7405
  • address: ckt1q9gry5zgvzvz3rt0zj72fntk233f75zucs0mqp6yr68epj
    script: { codeHash: ‘0x9e3b3557f11b2b3532ce352bfe8017e9fd11d154c4c7f9b7aaaa1e621b539a08’,
    • args: [ ‘0x6098288d6f14bca4cd7654629f505cc41fb00744’ ] }

4:挖矿

4.1 修改ckb.toml
将如下中的args 修改为3.3 生成地址中的args。并重新执行ckb run

[block_assembler]
code_hash = “0x9e3b3557f11b2b3532ce352bfe8017e9fd11d154c4c7f9b7aaaa1e621b539a08”
args = [“0x6098288d6f14bca4cd7654629f505cc41fb00744”]

4.2 执行 ckb miner
在ckb-testnet 文件夹下执行ckb miner, ckb miner会读取ckb-miner.toml 配置文件。

  • 注: 如果是Dev的环境在ckb-dev 文件夹下执行。

5: 查看结果
挖矿成功
main INFO miner found seal: Seal { nonce: 5161788930261012022, proof: 0x34140000522000003b270000cb280000972c0000d82f000001420000444b0000b7520000c7600000f867000022780000 }
后,等几分钟可以在浏览器地址https://explorer.nervos.org/中通过地址查看挖矿记录。

9 Likes

厉害了~:clap:

:grinning::grinning::grinning:

1 Like

在ubuntu上面跑ckb --version遇到,怎么解决:
No command ‘ckb’ found, did you mean:

Command ‘cdb’ from package ‘tinycdb’ (main)

ckb: command not found

可能有若干问题:

  • 首先确保你下载的 ckb 版本有没有问题
  • sudo ln -snf “$(pwd)/ckb” /usr/local/bin/ckb 这一步有没有执行完成

:grinning:

我用上面方法生成的钱包在区块浏览器查不到数据

如果确认 ckb.toml 已经修改过了,然后也进行了重启 ckb run,一切都没有问题的话,并且在 ruby sdk 里面查到了余额,那么稍微等一会儿就可以了,浏览器这边数据有延迟。

:+1:

可以参考下这个教程,会实时更新,比较清晰(大家可以和 Google 自带翻译配合使用)
https://docs.nervos.org

建议把标题改的更具体一点,让大家可以在第一时间了解到本帖的主要内容

你的ckb没安装成功,重新安装一下

暴露了私钥……