MetaMask 地址与以太坊格式地址
MetaMask address vs Ethereum formatted address
当我使用 web3 从智能合约获取以太坊地址时,它看起来像这样:
0xD034739C2aE807C70Cd703092b946f62a49509D1
但是当我从 MetaMask 得到它时,它看起来像这样:
0xd034739c2ae807c70cd703092b946f62a49509d1
我明白这些基本上是一样的,但是:
1) MetaMask 地址总是全部小写吗?
2)是否有简单的方法将 MetaMask 地址转换为以太坊格式?
3)为什么不一样,MM不使用以太坊格式的想法是什么?
以太坊地址实际上是不区分大小写的。所以两者都是正确的。但是您称为 "ethereum address" 的地址只是一个包含校验和的地址。您可以在 eip-55 "Mixed-case checksum address encoding" 中阅读更多相关信息,MetaMask 是完全支持混合大小写校验和地址的钱包之一。
第二个问题,直接用web3.utils.toChecksumAddress('0xd034739c2ae807c70cd703092b946f62a49509d1');
即可
以便将其转换为校验和地址。
当我使用 web3 从智能合约获取以太坊地址时,它看起来像这样:
0xD034739C2aE807C70Cd703092b946f62a49509D1
但是当我从 MetaMask 得到它时,它看起来像这样:
0xd034739c2ae807c70cd703092b946f62a49509d1
我明白这些基本上是一样的,但是:
1) MetaMask 地址总是全部小写吗? 2)是否有简单的方法将 MetaMask 地址转换为以太坊格式? 3)为什么不一样,MM不使用以太坊格式的想法是什么?
以太坊地址实际上是不区分大小写的。所以两者都是正确的。但是您称为 "ethereum address" 的地址只是一个包含校验和的地址。您可以在 eip-55 "Mixed-case checksum address encoding" 中阅读更多相关信息,MetaMask 是完全支持混合大小写校验和地址的钱包之一。
第二个问题,直接用web3.utils.toChecksumAddress('0xd034739c2ae807c70cd703092b946f62a49509d1');
以便将其转换为校验和地址。