3-1 地址
首先要建立錢包地址
$ bitcoin-cli getnewaddress
mrR54buSCnMnf9cBGSrg4zCrWdDnyiQkdM
所謂地址就是收款的地方,類似 Email 的信箱可以收信那樣
測試網路地址為 m, n 開頭,主網是 1, 2, 3 開頭
所有交易資訊都儲存在 wallet.dat
裡面,包括 public key, private key,因此這個檔案很重要
簽章
我們可以透過「signmessage」來驗證我們產生的地址的確是我們擁有的,
$ bitcoin-cli signmessage "mrR54buSCnMnf9cBGSrg4zCrWdDnyiQkdM" "Hello World"
IDNiN9eOm/QFTHMa99QrNtQvTVR/XYz4bpO9JwuUOlRdAvCP7ic5GGU1gv43TLPCYiG6YmrIzfVhYBvW0RwKxPE=
bitcoin 回給我們得是一個簽章 (signature),簽章是私鑰和訊息的一個包裹,這個組合可以用公鑰解開。
因為公私鑰是一對一關係,所以用公鑰解開包裹來比對訊息,訊息正確即可以判定簽名的人是私鑰擁有者。
我們可以用下面指令來校驗
$ bitcoin-cli verifymessage "mrR54buSCnMnf9cBGSrg4zCrWdDnyiQkdM" "IDNiN9eOm/QFTHMa99QrNtQvTVR/XYz4bpO9JwuUOlRdAvCP7ic5GGU1gv43TLPCYiG6YmrIzfVhYBvW0RwKxPE=" "Hello World"
true
一些其他指令:
錢包很重要!所以記得備份!
$ bitcoin-cli backupwallet backup.dat
之後可以輸入備份檔
$ bitcoin-cli importwallet backup.dat
如果想要知道某個地址的 privaye key
$ bitcoin-cli dumpprivkey "mrR54buSCnMnf9cBGSrg4zCrWdDnyiQkdM"
cTKedJaXf62jG5XkYcwKJ6hwKrQLX4ttiHwjFStnzeXyYthwqpgr
當然也可以從 private key 重建錢包,也就是所謂私鑰是你的幣才是你的
$ bitcoin-cli importprivkey cTKedJaXf62jG5XkYcwKJ6hwKrQLX4ttiHwjFStnzeXyYthwqpgr