-
bitcoin $63467.151468 USD
0.73% -
ethereum $1897.503841 USD
1.01% -
tether $0.998965 USD
0.00% -
bnb $605.134281 USD
-0.06% -
usd-coin $0.999945 USD
0.00% -
xrp $1.000999 USD
0.13% -
solana $75.392432 USD
0.12% -
tron $0.332228 USD
0.43% -
hyperliquid $58.738447 USD
3.21% -
dogecoin $0.070115 USD
0.70% -
unus-sed-leo $9.431659 USD
0.48% -
zcash $494.615173 USD
1.65% -
monero $416.273243 USD
1.17% -
chainlink $9.410135 USD
0.44% -
cardano $0.176674 USD
-0.15%
如何从公共密钥中产生以太坊钱包的地址?
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),我们将及时删除。
- 比特币、eCash 分叉和空投动态:深入探讨加密货币的最新争议
- 2026-05-03 12:55:01
- 2026 年迈阿密共识:Web3、区块链、加密货币、NFT、Metaverse,会议,5 月 5 日 — 华尔街与数字前沿相遇的地方
- 2026-05-02 12:45:01
- 美联储维持利率稳定,地缘政治紧张局势引发比特币价格下跌
- 2026-05-01 06:45:01
- 比特币矿工为电网供电:收购俄亥俄州天然气厂开启数字黄金新时代
- 2026-05-01 00:45:01
- MegaETH的MEGA代币登陆纽约:为实时区块链设定新的性能基准
- 2026-05-01 00:55:01
- Solana 的滑坡:价格预测表明阻力损失和潜在的进一步下跌
- 2026-05-01 06:45:01
相关百科
如何在SafePal钱包中接收USDT?如何选择TRC20、ERC20或BEP20?
2026-08-18 02:00:16
钱包设置和网络配置1. 从其官方网站或经过验证的应用商店安装并启动 SafePal Wallet。 2. 使用 12 个单词的恢复短语创建或导入钱包 - 切勿与任何人共享。 3. 通过检查“网络”或“设置”>“连接的网络”,确保钱包支持多链功能。 4. 如果波场、以太坊、BNB 智能链未预先激...
什么是钱包待处理交易?为什么要花这么长时间?
2026-08-17 22:20:10
了解钱包待处理交易1、钱包待处理交易是指区块链网络上已发起但尚未确认的加密货币转账。 2. 它在用户界面中显示为“待处理”,因为交易正在等待足够的区块确认才能被视为最终交易。 3. 此状态并不表示失败——它反映了内存池或节点传播层内的活动、未确认状态。 4. 交易只有在达成共识之前才保持可逆;一旦包...
如何选择加密钱包?哪种钱包最适合初学者?
2026-08-04 05:21:25
了解钱包类型及其核心功能1. 软件钱包完全在连接互联网的设备上运行,并提供跨分散应用程序对代币的即时访问。 2. 硬件钱包将私钥存储在离线物理设备中,将其与基于网络的攻击和远程入侵隔离。 3. 托管钱包将密钥管理委托给第三方平台,以完全控制权换取简化的用户界面和恢复机制。 4. 非托管移动钱包将便携...
2026 年最安全的加密钱包是什么? MetaMask、Ledger、Trust 钱包
2026-08-04 00:40:22
安全架构比较1. UKey钱包采用EAL 6+认证的安全元件芯片,超越Ledger Nano X的EAL 5+认证,符合OneKey最高级别的硬件安全标准。 2. Ledger Nano X 依赖于经过认证的安全微控制器,具有气隙交易签名功能,但其固件更新机制引入了完全离线签名工作流程中不存在的潜在...
如何取消 MetaMask 钱包中的待处理交易?
2026-08-04 01:00:14
了解待处理交易1. 当待处理的交易已被签名并广播到以太坊网络但尚未得到矿工或验证者确认时,MetaMask 中会出现该交易。 2. 这些交易保留在内存池中,直到包含在区块中或由于较低的 Gas 价格或网络拥塞而被删除。 3. 每笔交易都带有一个唯一的随机数(与发送者地址相关的序列号),它决定执行顺序...
为什么MetaMask钱包提示资金不足?需要多少 ETH?
2026-08-13 10:19:48
了解资金不足错误1. 当钱包余额低于支付交易价值和汽油费所需的金额时,就会出现错误。 2. MetaMask 通过从当前余额中减去待处理交易成本来计算可用 ETH,即使这些交易尚未得到确认。 3、单次标准ETH转账消耗21,000 Gas单位;以 50 Gwei 的 Gas 价格计算,总计 0.00...
如何在SafePal钱包中接收USDT?如何选择TRC20、ERC20或BEP20?
2026-08-18 02:00:16
钱包设置和网络配置1. 从其官方网站或经过验证的应用商店安装并启动 SafePal Wallet。 2. 使用 12 个单词的恢复短语创建或导入钱包 - 切勿与任何人共享。 3. 通过检查“网络”或“设置”>“连接的网络”,确保钱包支持多链功能。 4. 如果波场、以太坊、BNB 智能链未预先激...
什么是钱包待处理交易?为什么要花这么长时间?
2026-08-17 22:20:10
了解钱包待处理交易1、钱包待处理交易是指区块链网络上已发起但尚未确认的加密货币转账。 2. 它在用户界面中显示为“待处理”,因为交易正在等待足够的区块确认才能被视为最终交易。 3. 此状态并不表示失败——它反映了内存池或节点传播层内的活动、未确认状态。 4. 交易只有在达成共识之前才保持可逆;一旦包...
如何选择加密钱包?哪种钱包最适合初学者?
2026-08-04 05:21:25
了解钱包类型及其核心功能1. 软件钱包完全在连接互联网的设备上运行,并提供跨分散应用程序对代币的即时访问。 2. 硬件钱包将私钥存储在离线物理设备中,将其与基于网络的攻击和远程入侵隔离。 3. 托管钱包将密钥管理委托给第三方平台,以完全控制权换取简化的用户界面和恢复机制。 4. 非托管移动钱包将便携...
2026 年最安全的加密钱包是什么? MetaMask、Ledger、Trust 钱包
2026-08-04 00:40:22
安全架构比较1. UKey钱包采用EAL 6+认证的安全元件芯片,超越Ledger Nano X的EAL 5+认证,符合OneKey最高级别的硬件安全标准。 2. Ledger Nano X 依赖于经过认证的安全微控制器,具有气隙交易签名功能,但其固件更新机制引入了完全离线签名工作流程中不存在的潜在...
如何取消 MetaMask 钱包中的待处理交易?
2026-08-04 01:00:14
了解待处理交易1. 当待处理的交易已被签名并广播到以太坊网络但尚未得到矿工或验证者确认时,MetaMask 中会出现该交易。 2. 这些交易保留在内存池中,直到包含在区块中或由于较低的 Gas 价格或网络拥塞而被删除。 3. 每笔交易都带有一个唯一的随机数(与发送者地址相关的序列号),它决定执行顺序...
为什么MetaMask钱包提示资金不足?需要多少 ETH?
2026-08-13 10:19:48
了解资金不足错误1. 当钱包余额低于支付交易价值和汽油费所需的金额时,就会出现错误。 2. MetaMask 通过从当前余额中减去待处理交易成本来计算可用 ETH,即使这些交易尚未得到确认。 3、单次标准ETH转账消耗21,000 Gas单位;以 50 Gwei 的 Gas 价格计算,总计 0.00...
查看所有文章














