当我使用web3从智能合约中获取以太坊地址时,它看起来像这样:
0xD034739C2aE807C70Cd703092b946f62a49509D1
但是当我从MetaMask获得它时,它看起来像这样:
0xd034739c2ae807c70cd703092b946f62a49509d1
我确实知道这些基本相同,但是:
1)MetaMask地址是否总是小写? 2)是否有一种简单的方法可以将MetaMask地址转换为以太坊格式? 3)为什么会有区别,MM不使用以太坊格式的想法是什么?
答案 0 :(得分:1)
以太坊地址实际上不区分大小写。因此,两者都是正确的。但是您称为“以太坊地址”的地址只是一个包含校验和的地址。您可以在eip-55“混合大小写校验和地址编码”中了解更多信息,MetaMask是确实完全支持混合大小写校验和地址的钱包之一。
对于第二个问题,您可以只使用web3.utils.toChecksumAddress('0xd034739c2ae807c70cd703092b946f62a49509d1');
以便将其转换为校验和地址。