[支持0.17版新地址格式] 钱包小工具,通过读取配置文件,生成一个新的配置文件

2019-067-30 更新

支持新版地址

2019-06-21 更新

./ckb-wallet-mac -config ckb.toml -privkey 1234 -codehash 0x5678 -format json
通过读取配置文件 ckb.toml ,生成一个新的配置文件 newckb.toml

2019-06-18更新

支持自定义code_hash

# 支持自定义的code_hash 输入什么内容 就返回什么内容
./ckb-wallet-mac -config 0x5678 

支持导入私钥,私钥没做格式验证,不要用 0x 开头,做的还很粗糙

./ckb-wallet-mac -privkey 1234f
./ckb-wallet-mac -privkey abcdef1234 -format txt

查看版本号

./ckb-wallet-mac -v

更多内容请看 https://github.com/liushooter/ckb-wallet-golang/blob/master/README.md

2019-06-16更新

0.3.3版 已经支持最新的code_hash


初衷

官方教程的ruby安装过程,心里有点小阴影,有什么能比golang的一键发布二进制文件爽的呢,砸rust场子的嫌疑
想够浪 用golang

验证发布程序

可跳过

shasum -a 256 ckb-wallet-linux
shasum -a 256 ckb-wallet-mac

09e393e8ca875ed3e31781b8a663349cf6fcd12d4f5b8dea0d3c4eab4f929f50  ckb-wallet-linux
f57769903201b94220b21042bdc23e6077e924681cab0142177b4cce8b99a52e  ckb-wallet-mac

开箱即用

Mac系统

sudo chmod +x ./ckb-wallet-mac # 添加执行权限

./ckb-wallet-mac
Privkey: 0x0000000000000000000000000000000000000000000000000000000000000000
Pubkey: 0x03d29f6efd75133cd01833806097d06109151d64d249f6cb0e892e8c0492bcab92
Blake160: 0x0e241ca669242f1afd471e74401cb66c183b6e42
testAddr: ckt1q9gry5zgpcjpefnfysh34l28re6yq89kdsvrkmjz96j9ra

linux

sudo chmod +x ./ckb-wallet-linux # 添加执行权限

./ckb-wallet-linux
Privkey: 0x1111111111111111111111111111111111111111111111111111111111111111
Pubkey: 0x0250049ff465fec1e38f0d956aac82effc1631d77c7d1444ea4c26aa805b7160bb
Blake160: 0xb4c5ad61c3175651e85f7520a8395971f90cf041
testAddr: ckt1q9gry5zgknz66cwrzat9r6zlw5s2sw2ew8useuzpv9lxyf

Blake160 即为 args, 将Blake160的值写入 ckb.toml文件


[block_assembler]
  code_hash = "0x9e3b3557f11b2b3532ce352bfe8017e9fd11d154c4c7f9b7aaaa1e621b539a08"
  args = ["0xb4c5ad61c3175651e85f7520a8395971f90cf041"]

Enjoy it

5 Likes

有没有PHP版本的大神…

ckb-addr

真不太了解 php,选择golang是因为能直接编译出可执行二进制文件,对系统依赖比较小 :cry:

ckb 地址是通用算法得到的,只要实现这些算法,就能得到ckb地址,如图所示。

椭圆曲线secp-256k1就不多介绍了,由于btc首先使用, eth也再用,各种语言的实现版本都比较齐全了。

Blake2b Hash算法比起 MD5, SHA-1, SHA-2, SHA-3 都要快,加密强度都要高,也有php的算法实现。

Bech32 地址是btc社区首先提出来的,bip-0173是实现标准,
代码可以看下 sipa-bech32,你可以贡献一个php版本呀。

4 Likes

谢谢大神,很好用!但有个问题,新创建的钱包地址,在区块浏览器里查不到

查不到 很可能是因为区块浏览器的缓存问题

或者你挖的是分叉链

你的地址多少 我给你转下账 就能看到了 :face_with_thermometer:

挖矿成功后,能在区块链浏览器里查到了。感谢!

我在官网第一期挖矿大赛中看到【在 CKB v0.14.0 上挖矿的用户请注意, 你需要使用 CKB-CLI v0.2.0 来生成新的地址。使用旧版本 CKB-CLI 产生的地址将无法在新测试网上使用】。请问用GoLang命令行工具,生成的钱包符合这个规定吗?

不可以的 code hash 不同!!! 注意观察

通过ckb-cli生成的私钥、公钥、地址等

ckb-cli  wallet generate-key --privkey-path privkey
Put this config in < ckb.toml >:

[block_assembler]
code_hash = "0xf1951123466e4479842387a66fabfd6b65fc87fd84ae8e6cd3053edb27fff2fd"
args = ["0xc2ea577777c2ce56bd556296825bfee9f21ac2d2"]

{
  "address": "ckt1q9gry5zgct49wamhct89d024v2tgykl7a8ep4skjyvwyx2",
  "lock_hash": "0x28220d47533d4a3ec49efc90dc8c08f8d558ccc2fb2102d5137a2e0b6303e7e6",
  "pubkey": "02f5e847fa3d59bf7904a910d5a674eb0e737be50222ee6fa491f5295d8fff860b"
}

**生成的privkey**
d310e1af4bcb41997efdeb235b318da254f286a67d87cbab1e32fba53ab429f0
ckt1q9gry5zgct49wamhct89d024v2tgykl7a8ep4skjyvwyx2

通过./ckb-wallet-mac导入相同的私钥 得到的私钥、公钥、地址等

./ckb-wallet-mac -privkey  d310e1af4bcb41997efdeb235b318da254f286a67d87cbab1e32fba53ab429f0
{
"Privkey": "0xd310e1af4bcb41997efdeb235b318da254f286a67d87cbab1e32fba53ab429f0",
"Pubkey": "0x02f5e847fa3d59bf7904a910d5a674eb0e737be50222ee6fa491f5295d8fff860b",
"Blake160": "0xc2ea577777c2ce56bd556296825bfee9f21ac2d2",
"TestnetAddr": "ckt1q9gry5zgct49wamhct89d024v2tgykl7a8ep4skjyvwyx2",
"MainnetAddr": "ckb1q9gry5zgct49wamhct89d024v2tgykl7a8ep4skjwsk7hc"
}

Already Generate the miner config file ckb.toml

[block_assembler]
code_hash = '0x9e3b3557f11b2b3532ce352bfe8017e9fd11d154c4c7f9b7aaaa1e621b539a08'
args = ['0xc2ea577777c2ce56bd556296825bfee9f21ac2d2']

code_hash 是不同的,以官方工具的code_hash为准, code_hash的作用有点像创世块的 hash,每次发布新版,code_hash都有可能不同。

此版本的golang版本,没有提供 lock_hash

感谢提醒,我会同步更新

2019-06-21 0.4版更新

./ckb-wallet-mac -config ckb.toml -privkey 1234 -codehash 0x5678 -format json
通过读取配置文件 ckb.toml ,生成一个新的配置文件 newckb.toml

0.3.3版

已支持最新的codehash

1 Like

请问,挖到了区块浏览器会显示吧

是的挖到块
是会在 区块浏览器显示的
现在的测试网难度有点大 437526 gps

及时更新,赞一个!升级到V0.14后,我是这样调整配置的:code_hash用官方公布的(群里有分享,即新版本code_hash),args用的是原ckb-wallet-linux生成的。这样调整配置后,也能成功挖矿。这也说明,钱包地址、公私钥是和ckb发行版无关的

简单来说 只要 ckb的生成地址的算法没有改变,
这个小工具就一直能用,只要code_hash 一致就可以。

这个小工具支持自定义code_hash, 就是你输入的是什么内容,就返回出什么
./ckb-wallet-mac -config 0x5678

这些 命令都可以试试

./ckb-wallet-mac -v

./ckb-wallet-mac -format txt
./ckb-wallet-mac -format csv

./ckb-wallet-mac -privkey 1234
./ckb-wallet-mac -privkey 1234 -format txt

./ckb-wallet-mac -config 0x5678 # 支持自定义code_hash
./ckb-wallet-mac -config 0x5678 -format csv

./ckb-wallet-mac -privkey 1234 -config 0x5678 -format txt