Addresses
乙太坊地址與公鑰
我正在創建一個乙太坊錢包,我對公鑰與地址的概念有點困惑。我知道地址是公鑰的散列版本,但是當我生成一個新錢包時,我有 3 個數據欄位:私鑰(用於簽署交易)、地址(用於接收交易)、公共鑰匙 (???)
公鑰的實際用途是什麼?
當您創建一個新錢包時,您所做的是創建一個帳戶。每個帳戶都有一個私鑰和一個公鑰,並由您發送交易的地址索引。
地址是公鑰散列的最後 20 個字節。
根據文件:
每個帳戶都由一對密鑰、一個私鑰和一個公鑰定義。帳戶由其地址索引,該地址是通過獲取最後 20 個字節從公鑰派生的。每個私鑰/地址對都編碼在密鑰文件中。
http://ethdocs.org/en/latest/account-management.html?highlight=address#keyfiles
你會發現這篇文章很有用:
https://kobl.one/blog/create-full-ethereum-keypair-and-address/
希望這可以幫助。
沒有特定的公鑰案例,通常人們可以要求公鑰(地址),這意味著儘管有地址,但我們有時會說公鑰。
一個乙太坊地址代表一個賬戶。對於外部擁有的賬戶,地址是作為控制賬戶的公鑰的最後 20 個字節導出的,例如 cd2a3d9f938e13cd947ec0i8um67fe734df8d8861。這是一種十六進制格式(以 16 為基數),通常通過在地址前添加 0x 來明確表示。由於地址的每個字節由 2 個十六進製字元表示,因此前綴地址的長度為 42 個字元。
閱讀更多:帳戶、地址、公鑰和私鑰以及令牌