Web3js
web3js 返回非校驗地址!
為什麼 web3js 0.20.6 在創建合約時返回全小寫地址而不是校驗和地址?!
如何處理這個麻煩?
您可以使用
web3.utils.toChecksumAddress
編輯:對不起,剛剛看到你的意思是 0.20.6,所以它:
web3.toChecksumAddress()
我認為 web3 0.x 不支持該功能,請嘗試自己實現該功能
在eip-55 上找到此程式碼
const createKeccakHash = require('keccak') function toChecksumAddress (address) { address = address.toLowerCase().replace('0x', '') var hash = createKeccakHash('keccak256').update(address).digest('hex') var ret = '0x' for (var i = 0; i < address.length; i++) { if (parseInt(hash[i], 16) >= 8) { ret += address[i].toUpperCase() } else { ret += address[i] } } return ret }