Original :《steem奇幻旅:用steem官方docker镜像中的命令行钱包cli_wallet创建Steem安全新号》
Translating English Version with Authorization of the Author(经作者授权,翻译英文版)
Create a new Steem Security Account with the command line wallet cli_wallet in the official docker image of steem
1. Make local Docker environment
ubuntu18.04 install Docker
Add special system account steemd2. Get Steem's official Docker image
3. Runningcli_wallet
in docker image mode
4. Import the key of the old account in cli_wallet
5. Generate key pair incli_wallet
6. Generating a new account with the public key of the key pair incli_wallet
7. Login with the new account on online wallet of steemit with the private key of the key pair
8. In steemit's official online wallet, change the new keys
9. You can use the new account normally(remember the keys for recovery after the stolen account is stolen in the future)
Appendix: Source code explanation
0. target
cli_wallet
is Steem's command-line wallet, which can interact directly with Steem nodes and perform many important wallet-related operations, including creating new accounts.
New accounts created through cli_wallet
are safer and not controlled by any account (including your old account or steemit official).
But cli_wallet
requires Steem nodes to support WebSocket RPC (ws/wss) and temporarily find one (or build it yourself): wss://steemd.privex.io.
Main Step
- Make local Docker environment
- Get Steem's official Docker image
- Running
cli_wallet
in docker image mode - Import the key of the old account in cli_wallet(Responsible for paying 3STEEM fees for account creation)
- Generate key pair in
cli_wallet
- Generating a new account with the public key of the key pair in
cli_wallet
, All new key of the new account are this key pair - Login with the new account on online wallet of steemit with the private key of the key pair
- In steemit's official online wallet, change the new keys,Make all kinds of keys different, convenient for hierarchical management
- You can use the new account normally (remember the keys for recovery after the stolen account is stolen in the future).
1. Make local Docker environment
ubuntu18.04 install Docker
Take Ubuntu 18.04 as an example, Docker installation of other systems is easy by google/baidu.
Install Docker package:
$ sudo apt update && sudo apt install git containerd docker.io -y
Docker can also be installed via get.docker.com:
$ curl -fsSL get.docker.com -o get-docker.sh
$ sh get-docker.sh
Start docker service:$ service docker restart
View docker status (error logs):
$ systemctl status docker.service
or $ journalctl -xn
Add special system account steemd
Add special system account steemd,,并加入到 docker 组:
$ sudo adduser steemd
$ sudo usermod -aG sudo steemd
$ sudo usermod -aG docker steemd
$ sudo su - steemd
In this way, steemd users can run docker directly without the need for frequent sudo
operations.
2. Get Steem's official Docker image
Using the official docker image, it is easy for disaster recovery or hard bifurcation to operate quickly. It can also download and compile source code from GitHub itself.
Obtain the official docker image:$ docker pull steemit/steem
View status : $ docker images | grep steemit
steemit/steem latest 1325632326e0 5 weeks ago 2.24GB
If you cannot access the official docker.com/docker.io, you can modify the docker image source:$ sudo vi /etc/docker/daemon.json
{
"registry-mirrors": ["https://registry.docker-cn.com","http://hub-mirror.c.163.com"]
}
Other options:
- China University of Science and Technology: https://docker.mirrors.ustc.edu.cn
- Docker Official China Region: https://registry.docker-cn.com
- Netease: http://hub-mirror.c.163.com
- Aliyun: https://pee6w651.mirror.aliyuncs.com
3. Running cli_wallet
in docker image mode
Running cli_wallet
in docker image mode :
$ docker run -it steemit/steem /usr/local/steemd-default/bin/cli_wallet -s wss://steemd.privex.io
show status:
Logging RPC to file: logs/rpc/rpc.log
Starting a new wallet
3104566ms main.cpp:169 main ] wdata.ws_server: wss://steemd.privex.io
Please use the set_password method to initialize a new wallet before continuing
new >>>
First time use, need to set password for local Wallet with set_password
:
new >>> set_password yourpwd
show status:
new >>> set_password yourpwd
set_password yourpwd
null
locked >>>
At this point, the wallet is locked and unlocked with unlock
:
locked >>> unlock yourpwd
show status:
locked >>> unlock yourpwd
unlock yourpwd
null
unlocked >>>
If there is no response during use, it may be that cli_wallet
disconnects the network connection with steem node and needs ctrl+d
to exit and re-do the previous operation.
4. Import the key of the old account in cli_wallet
To create a new cli_wallet, you need to pay the steem node 3 STEEM fee, so you must first have an old account with at least 3STEEM to create the account.
Import Wallet Key of the old account (active key):
unlocked >>> import_key 5J-active-key
show status:
import_key 5J-active-key
3555971ms wallet.cpp:427 save_wallet_file ] saving wallet to file wallet.json
true
unlocked >>>
View imported account assets:
unlocked >>> list_my_accounts
show status:
unlocked >>> list_my_accounts
list_my_accounts
585041ms websocket_api.cpp:102 on_message ] message: {"jsonrpc":"2.0","result":[["acu.fund"]],"id":1}
585171ms websocket_api.cpp:102 on_message ] message: {"jsonrpc":"2.0","result":[{...}
olduser 102.164 STEEM 614866.009468 VESTS 0.499 SBD
-------------------------------------------------------------------------
TOTAL 102.164 STEEM 614866.009468 VESTS 0.499 SBD
5. Generate key pair in cli_wallet
生成密钥对:unlocked >>> suggest_brain_key
suggest_brain_key
{
"brain_priv_key": "WACE other words COGNATE",
"wif_priv_key": "5JY-wif_priv_key-5iB",
"pub_key": "STM8QhX-pub_key-Dw1KB"
}
unlocked >>>
6. Generating a new account with the public key of the key pair in cli_wallet
use the pub_key
produced with suggest_brain_key
creates a new account (olduser
for old user, newuser
for new user):
unlocked >>> create_account_with_keys "olduser" "newuser" "" "STM8QhX-pub_key-Dw1KB" "STM8QhX-pub_key-Dw1KB" "STM8QhX-pub_key-Dw1KB" "STM8QhX-pub_key-Dw1KB" true
Created new account, all kinds of keys are this key pair, the return information shows that the old account as creator paid 3 STEEM fees:
{
"ref_block_num": 62156,
"ref_block_prefix": 3768508021,
"expiration": "2019-10-12T14:18:15",
"operations": [[
"account_create",{
"fee": "3.000 STEEM",
"creator": "olduser",
"new_account_name": "newuser",
7. Login with the new account on online wallet of steemit with the private key of the key pair
The browser opens https://steemitwallet.com and login with the new account newuser
and the private key of the key pair (wif_priv_key
).
8. In steemit's official online wallet, change the new keys
All the keys of the new account are private keys of the key pair, which is not conducive to hierarchical management.
Therefore, after login to the official online wallet, change the key immediately, so that all passwords are different, which is convenient for hierarchical management.
change the keys: https://steemitwallet.com/@newuser/password
9. You can use the new account normally(remember the keys for recovery after the stolen account is stolen in the future)
Back up four keys, using different key in different situations:/post/Active/Owner/Memo
Appendix: Source code explanation
Why to create an account in this way can not be controlled by any other account, you can find the explanation from the source code and source code comments.
For more cli_wallet
operations, you can refer to the instructions in the steem source code
感觉这样中文分开,比较情愫
fine!shop
我靠,这个帖子挂了?真可怜
搞清楚什么原因了吗?
@tipu nominate
Flagged for collusive voting @steemflagrewards
Steem Flag Rewards mention comment has been approved for SFR Token Issuance!
Tokens will be transferrred when the flagged content reaches payout.
Thank you for reporting this abuse, @lebin.
The votes on the content follows a repeated pattern suggestive of collusion between multiple users and /or alt accounts resulting in signficant overvaluation of content.
This post was submitted via our Discord Community channel. Check us out on the following link!
SFR Discord
谢谢,不知管用不?
Flagged for circlejerk vote farming.
@steemflagrewards
Steem Flag Rewards mention comment has been approved for SFR Token Issuance!
Tokens will be transferrred when the flagged content reaches payout.
Thank you for reporting this abuse, @enforcer48.
You're churning out content (often low quality), in quick successions with abnormal number and/or upvote size.
This post was submitted via our Discord Community channel. Check us out on the following link!
SFR Discord
If you don't want to use the wallet, you can also use https://steeminvite.com
The keys are only given to the person accepting the invite there, so it's equally safe. It also allows you to create them for free if you have enough RC.
thanks, i use steemworld.org. i will try yours service. good advise!
what's happen about https://steeminvite.com?
Should be good after a reload
You got a 74.03% upvote from @minnowvotes courtesy of @mana.bank!
Congratulations @anonymity.inlet! You have completed the following achievement on the Steem blockchain and have been rewarded with new badge(s) :
You can view your badges on your Steem Board and compare to others on the Steem Ranking
If you no longer want to receive notifications, reply to this comment with the word
STOP
Do not miss the last post from @steemitboard:
Vote for @Steemitboard as a witness to get one more award and increased upvotes!
这个是官方的机器人吗?
))) 是的!
Flagged for collusive voting @steemflagrewards
Steem Flag Rewards mention comment has been approved for SFR Token Issuance!
Tokens will be transferrred when the flagged content reaches payout.
Thank you for reporting this abuse, @jlsplatts.
The votes on the content follows a repeated pattern suggestive of collusion between multiple users and /or alt accounts resulting in signficant overvaluation of content.
This post was submitted via our Discord Community channel. Check us out on the following link!
SFR Discord
你好鸭,anonymity.inlet!
@manabot2给您叫了一份外卖!
由 @honoru 米高 迎着大雪 跑着步 给您送来
加拿大人民早餐伴侣
吃饱了吗?跟我猜拳吧! 石头,剪刀,布~
如果您对我的服务满意,请不要吝啬您的点赞~
@onepagex
这些美食,需要布!布
Flagged for collusive voting @steemflagrewards
Steem Flag Rewards mention comment has been approved for SFR Token Issuance!
Tokens will be transferrred when the flagged content reaches payout.
Thank you for reporting this abuse, @lebin.
The votes on the content follows a repeated pattern suggestive of collusion between multiple users and /or alt accounts resulting in signficant overvaluation of content.
This post was submitted via our Discord Community channel. Check us out on the following link!
SFR Discord
You lose! 你输了!乖乖的给我点赞吧!
@tipu curate 3
很不幸,帖子阵亡了
谢谢
Flagged for collusive voting @steemflagrewards
Flagged for collusive voting @steemflagrewards
Steem Flag Rewards mention comment has been approved for SFR Token Issuance!
Tokens will be transferrred when the flagged content reaches payout.
Thank you for reporting this abuse, @lebin.
The votes on the content follows a repeated pattern suggestive of collusion between multiple users and /or alt accounts resulting in signficant overvaluation of content.
This post was submitted via our Discord Community channel. Check us out on the following link!
SFR Discord
Upvoted 👌