-
bitcoin $80983.718195 USD
-2.88% -
ethereum $2363.938053 USD
-5.54% -
tether $0.998790 USD
-0.01% -
bnb $717.610948 USD
-3.20% -
xrp $1.305281 USD
-4.72% -
usd-coin $0.999943 USD
0.00% -
solana $102.093135 USD
-4.89% -
tron $0.330976 USD
-0.21% -
hyperliquid $79.564118 USD
-2.87% -
zcash $1095.109590 USD
-12.52% -
dogecoin $0.079794 USD
-5.68% -
monero $536.493608 USD
-2.23% -
chainlink $12.045088 USD
-6.39% -
unus-sed-leo $9.028000 USD
0.09% -
cardano $0.220158 USD
-6.35%
如何從公共密鑰中產生以太坊錢包的地址?
An Ethereum wallet address is derived from the public key through Keccak-256 hashing, using the last 20 bytes to form a unique identifier.
2025/06/14 11:14
了解以太坊錢包之間的關係和公共鑰匙
在以太坊的世界中,錢包地址不是直接的公共密鑰本身,而是它的衍生版本。公共密鑰是使用橢圓曲線密碼學(特別是SECP256K1曲線)的私鑰生成的。創建此公共密鑰後,它將進行進一步的散列以生成最終的錢包地址。
該過程以隨機生成的私鑰開始,即256位編號。由此,使用SECP256K1算法得出公共密鑰。壓縮時,該公共密鑰通常表示為64字節陣列(或128個十六進製字符)。至關重要的是要了解,儘管可以公開共享公共密鑰,但絕不能在不安全的環境中進行更改或暴露。
使用Keccak-256哈希鍵
一旦生成了公鑰,下一步涉及應用加密哈希功能。以太坊為此目的使用Keccak-256哈希算法。與Bitcoin使用的SHA-256不同, Keccak-256由於其靈活性和性能特徵而被選擇。
- 命令完整的公鑰(包括前綴字節如果存在)。
- 應用Keccak-256哈希功能生成32字節(256位)輸出。
- 由此產生的哈希將是代表輸入公鑰的獨特字節序列。
在提取實際的以太坊錢包地址之前,該哈希值是中間階段。
提取最終以太坊地址
在獲得了公共密鑰的Keccak-256哈希之後,只有一部分被用來形成最終的以太坊錢包地址。具體而言,為此目的選擇了哈希的最後20個字節(160位)。
- 從Keccak-256哈希(Keccak-256 Hash)獲取32字節的輸出。
- 丟棄前12個字節。
- 將剩餘的20個字節保留為以太坊地址。
然後將這20個字節編碼為最初沒有“ 0x”前綴的十六進製字符串。當在錢包或探險家中顯示時,地址通常以“ 0x”前綴為前綴,以表明它是一種以太坊兼容的十六進制格式。
應用校驗和編碼安全性
為了提高安全性並降低錯別字的風險,以太坊引入了EIP-55 ,該eip-55啟用了地址的混合案例校驗和編碼。此功能允許用戶在輸入以太坊時檢測錯誤。
- 將以太坊地址(沒有“ 0x”)轉換為其小寫形式。
- 計算此小寫字符串的Keccak-256哈希。
- 對於原始地址中的每個字符:
- 如果哈希中的相應刺激大於或等於8,則資本化字符。
- 否則,將其留下小寫。
這會產生一個以太坊錢包地址,例如0xAbCdef1234567890aBcDef1234567890aBcDef12 ,其中大寫作為視覺校驗和。
驗證生成地址的正確性
在使用任何以太坊錢包地址之前,必須通過為此目的設計的工具或庫來驗證其正確性。許多開發人員使用諸如ethers.js或web3.js之類的庫來確保其實施與以太坊標准保持一致。
- 使用受信任的庫從同一公共密鑰重新生成地址。
- 將輸出與手動計算的輸出進行比較。
- 確保校驗和編碼和小寫的版本匹配預期值。
此外,在Mainnet上部署之前,應執行少量測試交易,以確認地址的行為是按預期的。
常見問題
問:兩個不同的公開鑰匙可以導致相同的以太坊地址嗎?從理論上講,由於以太坊地址空間的有限尺寸(2^160) ,但概率在天文學上很低。但是,由於大量可能的組合,碰撞不被視為實際威脅。
問:公開分享我的以太坊錢包地址是安全的嗎?是的,分享您的以太坊錢包地址是安全的,因為它不會直接暴露您的私鑰或公共密鑰。但是,避免共享可能損害隱私的交易細節或元數據。
問:為什麼以太坊僅使用Keccak-256哈希而不是完整32個字節的20個字節?使用20個字節在安全性和氣體效率之間達到平衡。較短的地址可降低區塊鏈上的存儲和計算成本,同時保持足夠的熵以防止碰撞。
問:如果我將ETH發送到畸形的以太坊地址會發生什麼?將資金匯入不存在或畸形的以太坊地址可能會導致資產永久損失。始終使用校驗和驗證工具在啟動轉移之前使用校驗和驗證工具進行驗證。
免責聲明:info@kdj.com
所提供的資訊並非交易建議。 kDJ.com對任何基於本文提供的資訊進行的投資不承擔任何責任。加密貨幣波動性較大,建議您充分研究後謹慎投資!
如果您認為本網站使用的內容侵犯了您的版權,請立即聯絡我們(info@kdj.com),我們將及時刪除。
- XRP 新聞隨著人工智慧支付里程碑而飆升,交易者關注 Pepeto 的預售潛力
- 2026-10-16 08:35:01
- 眾議員布萊恩·斯泰爾面臨威斯康辛州選舉,《清晰法案》懸而未決
- 2026-10-16 05:25:01
- Vitalik Buterin 宣布 zkEVM 速度競賽結束,敦促開發者優先考慮安全
- 2026-10-16 05:15:02
- 中國、比特幣、DOGE:三大洲加密貨幣難題揭開
- 2026-10-16 05:10:01
- XRP 價格預測、XRP 社群和以持有者為中心的實用程式:新的敘述出現
- 2026-10-16 05:00:02
- Zcash ETF 流出與 ZEC 價格波動:紐約市的情況
- 2026-10-16 05:00:01
相關知識
如何使用 BlueWallet 透過閃電網路傳送 Bitcoin
2026-10-16 04:20:16
了解 BlueWallet 中的閃電網路集成1. BlueWallet 支援內建閃電網路功能的非託管 Bitcoin 錢包,可實現即時、低費用的鏈下交易。 2.錢包在底層使用LND(閃電網路守護程序),允許用戶在不運行完整節點的情況下打開通道、接收發票和路由支付。 3. 使用者必須先在 BlueWa...
如何在 Talisman 中檢查不同網路上的代幣餘額
2026-10-15 23:19:32
了解Talisman的多鏈位址識別1. Talisman 錢包將每個區塊鏈視為獨立的帳本層,但在 Polkadot、Kusama、Ethereum 和 Moonbeam 等網路上維護統一的地址管理介面。 2. 由於不同的代幣標準和合約部署,單一公共位址可能代表不同鏈上的不同資產,例如 Polkado...
如何在Eternl錢包中查看權益池委託
2026-10-16 03:40:14
了解 Eternl 中的權益池委託1. Eternl 是一種非託管卡爾達諾錢包,支援透過本機委託到權益池的權益功能。與託管錢包不同,Eternl 不持有或控制用戶的私鑰——所有簽章操作都在裝置本地進行。 2.卡爾達諾的委託是無需許可且可逆的。使用者始終保留其 ADA 的完全所有權,並且授權不涉及...
如何將現有帳戶匯入 Petra 錢包
2026-10-16 09:39:48
Bitcoin 減半機制1. Bitcoin 的協議強制執行固定的發行時間表,其中大約每 210,000 個區塊,區塊獎勵就會減少一半。 2. 該事件大約每四年發生一次,直接減少了新進入流通的 BTC 數量。 3. 截至 2024 年減半,礦工每區塊獲得 6.25 BTC,低於 2020 年的 12...
如何將自訂代幣添加到 Sui 錢包
2026-10-15 19:39:42
了解自訂令牌集成1. Sui錢包不會自動偵測或顯示Sui區塊鏈上部署的所有代幣。 2. 代幣必須使用其鏈上識別碼(稱為代幣類型的物件 ID)明確註冊在錢包的代幣清單中。 3. 幣類型遵循嚴格的格式: 0x[address]::[module]::[struct] ,其中每個段均源自 Move 包部署...
如何在兩個 Sui 錢包帳戶之間轉移 SUI 代幣
2026-10-15 22:59:57
了解 SUI 令牌傳輸機制1. SUI 代幣作為 Sui 區塊鏈上的單獨物件存在,而不是作為帳戶餘額。每個硬幣都有自己的唯一識別碼和版本號。 2. 轉帳SUI需要引用特定的幣物件ID,而不是簡單地指定餘額池中的金額。 3. 發送者必須擁有所傳輸貨幣物件的完全所有權-標準傳輸不允許共用或委託控制。 4...
如何使用 BlueWallet 透過閃電網路傳送 Bitcoin
2026-10-16 04:20:16
了解 BlueWallet 中的閃電網路集成1. BlueWallet 支援內建閃電網路功能的非託管 Bitcoin 錢包,可實現即時、低費用的鏈下交易。 2.錢包在底層使用LND(閃電網路守護程序),允許用戶在不運行完整節點的情況下打開通道、接收發票和路由支付。 3. 使用者必須先在 BlueWa...
如何在 Talisman 中檢查不同網路上的代幣餘額
2026-10-15 23:19:32
了解Talisman的多鏈位址識別1. Talisman 錢包將每個區塊鏈視為獨立的帳本層,但在 Polkadot、Kusama、Ethereum 和 Moonbeam 等網路上維護統一的地址管理介面。 2. 由於不同的代幣標準和合約部署,單一公共位址可能代表不同鏈上的不同資產,例如 Polkado...
如何在Eternl錢包中查看權益池委託
2026-10-16 03:40:14
了解 Eternl 中的權益池委託1. Eternl 是一種非託管卡爾達諾錢包,支援透過本機委託到權益池的權益功能。與託管錢包不同,Eternl 不持有或控制用戶的私鑰——所有簽章操作都在裝置本地進行。 2.卡爾達諾的委託是無需許可且可逆的。使用者始終保留其 ADA 的完全所有權,並且授權不涉及...
如何將現有帳戶匯入 Petra 錢包
2026-10-16 09:39:48
Bitcoin 減半機制1. Bitcoin 的協議強制執行固定的發行時間表,其中大約每 210,000 個區塊,區塊獎勵就會減少一半。 2. 該事件大約每四年發生一次,直接減少了新進入流通的 BTC 數量。 3. 截至 2024 年減半,礦工每區塊獲得 6.25 BTC,低於 2020 年的 12...
如何將自訂代幣添加到 Sui 錢包
2026-10-15 19:39:42
了解自訂令牌集成1. Sui錢包不會自動偵測或顯示Sui區塊鏈上部署的所有代幣。 2. 代幣必須使用其鏈上識別碼(稱為代幣類型的物件 ID)明確註冊在錢包的代幣清單中。 3. 幣類型遵循嚴格的格式: 0x[address]::[module]::[struct] ,其中每個段均源自 Move 包部署...
如何在兩個 Sui 錢包帳戶之間轉移 SUI 代幣
2026-10-15 22:59:57
了解 SUI 令牌傳輸機制1. SUI 代幣作為 Sui 區塊鏈上的單獨物件存在,而不是作為帳戶餘額。每個硬幣都有自己的唯一識別碼和版本號。 2. 轉帳SUI需要引用特定的幣物件ID,而不是簡單地指定餘額池中的金額。 3. 發送者必須擁有所傳輸貨幣物件的完全所有權-標準傳輸不允許共用或委託控制。 4...
看所有文章














