我的地址不再列在 cpp-ethereum 的 eth 中。如何訪問我的錢包/賬戶?
語境
我正在使用 Ubuntu 14.04 LTS。我複製了cpp-ethereum 儲存庫並使用 makefile 建構了所有內容。現在(在同一路徑中)我在文件夾中有一堆可執行二進製文件,例如
eth
、ethkey
和ethminer
.引用ethdocs:*創建密鑰等同於創建帳戶。*因此,我假設以下術語都是等效的,並且可以互換使用:wallet、account、key、keyfile、keystore。(如果我錯了,請糾正我。)
所以我繼續使用以下方法創建了一個所謂的“帳戶”
eth
:./eth account new
這列出了3件事:
- 一個已創建的密鑰,以
ef9a8d59
- 一個ICAP,從
XE240BF3
- 一個地址,以
00134f5f
此外,我必須創建
- 密碼_
然後我跑了
./eth account list
,我看到了我的帳戶地址。甜的。引用go-ethereum wiki:如果您失去了用於加密帳戶的密碼,您將無法訪問該帳戶。重複:沒有密碼就無法訪問您的帳戶,並且這裡沒有忘記密碼選項。請不要忘了。
所以我假設擁有這 4 個數據(尤其是密碼)相當於可以完全訪問我的帳戶,並且它們是我從****任何地方訪問我的 Ether 所需要的全部(例如,如果我清除了磁碟進行了全新安裝的Ubuntu)。
問題
快進幾個星期,今天我正在嘗試使用
eth
. 但是,當我執行時,我的舊帳戶不再列出./eth account list
。所以我嘗試跑步
eth account import <my_address>
但我明白了
✘ 03:07:08 PM.525|eth Invalid JSON in key file Error: reading key file failed
cpp-ethereum
此外,我在路徑中看不到任何“密鑰文件” 。問題
- 如何將我的帳戶/錢包/地址“添加回”到
eth
?我需要什麼數據?- 如何將我的賬戶/錢包/地址“添加”到乙太坊錢包 GUI 應用程序(
eth
如果可能,使用 )?我只看到“創建新帳戶”和“導入預售帳戶”選項。我需要什麼數據?- 請 ELI5 錢包/帳戶/密鑰文件/密鑰/密鑰庫如何工作。這些術語是否等效?
- 哪些數據可以讓一個人隨時隨地訪問自己的帳戶?例如。我看到一些錢包應用程序(例如 GUI 應用程序)生成“密鑰文件”(電腦上看起來像 Python dicts / JSON 的實際文件),但似乎沒有 Etherem 錢包的通用/規範表示。這些“密鑰文件”是一個人帳戶的絕對萬能鑰匙嗎?
- 我怎樣才能把我賬戶裡的資金轉換成比特幣?
任何區塊鏈上的賬戶(包括 BTC 和 ETH)基本上都是一個公鑰和私鑰對。
密鑰對是一組特殊的大數字,可用於加密和解密數據。任何擁有公鑰的人都可以加密只有私鑰才能解密的數據。相反,私鑰的持有者可以創建一個簽名,任何擁有公鑰的人都可以驗證。
這構成了乙太坊區塊鏈上賬戶或錢包的基礎。公共地址構成帳戶的地址。當且僅當賬戶有足夠的餘額並且交易已由發送賬戶的私鑰簽名時,網路才會接受交易。
因此,任何擁有私鑰的人都可以控制該帳戶。這就是為什麼私鑰必須保密。因此,大多數生成公鑰和私鑰對的程序也使用密碼加密私鑰。這可以防止密鑰在未經所有者同意的情況下被盜和使用。
這意味著為了訪問您的硬幣,您必須同時擁有密碼和加密的私鑰。如果沒有加密的私鑰,密碼對你沒有好處。您似乎已將帳戶的公共地址傳遞給
eth account import
,但它可能需要您的加密私鑰文件的路徑。根據密鑰文件的文件
ethkey
儲存在~/.web3/keys
我還建議您查看
cpp-ethereum
repo 中的文件。特別是ethkey和冷錢包儲存設備。如果你想為許多不同的區塊鏈安全地儲存你的硬幣,那麼我強烈推薦 Ledger Nano S 或 Trezor 之類的東西。這些是硬體錢包,可以為你管理你的密鑰,並讓它們與任何電腦保持隔離,同時仍然讓你可以很容易地訪問你的錢包。
關於錢包的另一個注意事項,儘管您使用生成的錢包並非如此
cpp-ethereum
。有時會從種子生成錢包(又名密鑰對)。種子是一組具有高熵的秘密數據,可以寫下或記憶,可用於重新生成密鑰。種子是恢復錢包的最後手段備份,不要與密碼混淆。種子可以被認為等同於擁有私鑰文件的未加密副本,因此它必須像上面描述的私鑰文件一樣保密並防止失去或破壞。至於交換加密貨幣,如果您不想將錢留在交易所,則需要去交易所進行交易並為您打算操作的每個區塊鏈設置錢包。如果您同時設置了兩個錢包,最快、最簡單的方法是使用 ShapeShift 之類的服務。
祝你好運,我希望你沒有失去資金的使用權。確保您備份您的加密私鑰文件及其密碼。