@@ -4,6 +4,7 @@ import keccak from 'keccak'
4import * as lodash from 'lodash'
4import * as lodash from 'lodash'
5import Maybe from 'folktale/maybe'
5import Maybe from 'folktale/maybe'
6import * as secp256k1 from 'secp256k1'
6import * as secp256k1 from 'secp256k1'
7+import { isAddress } from 'web3-utils'
8const DEFAULT_HD_PATH = "m/44'/60'/0'/0/0"
9const DEFAULT_HD_PATH = "m/44'/60'/0'/0/0"
@@ -69,14 +70,7 @@ const stripHexPrefix = hex =>
69const keccak256 = str =>
70const keccak256 = str =>
70 keccak('keccak256').update(str).digest()
71 keccak('keccak256').update(str).digest()
72−const isValidAddress = (address) => {
73+const isValidAddress = isAddress
73− let validLength = /^0x[0-9a-fA-F]{40}$/.test(address)
74− let isLowercase = address === address.toLowerCase()
75− let validChecksum = address === toChecksumAddress(address)
77− if (isLowercase) return validLength
78− else return validChecksum && validLength
81const toChecksumAddress = (address) => {
75const toChecksumAddress = (address) => {
82 const addr = stripHexPrefix(address).toLowerCase()
76 const addr = stripHexPrefix(address).toLowerCase()