diff --git a/dist/functions/address.js b/dist/functions/address.js index 9c287f6..2dbb56a 100644 --- a/dist/functions/address.js +++ b/dist/functions/address.js @@ -183,6 +183,7 @@ module.exports = function (S) { return checksum.equals(verifyChecksum); } else { var prefix, payload; + if (address !== address.toLowerCase() && address !== address.toUpperCase()) return false; if ([S.TESTNET_SEGWIT_ADDRESS_PREFIX, S.MAINNET_SEGWIT_ADDRESS_PREFIX].includes(address.split("1")[0].toLowerCase())) { if (address.length !== 43 && address.length !== 63 && address.length !== 44 && address.length !== 64) return false; diff --git a/src/functions/address.js b/src/functions/address.js index b23391b..ded0e5c 100644 --- a/src/functions/address.js +++ b/src/functions/address.js @@ -205,6 +205,7 @@ module.exports = function (S) { } else { let prefix, payload; + if (address !== address.toLowerCase() && address !== address.toUpperCase()) return false; if ([S.TESTNET_SEGWIT_ADDRESS_PREFIX, S.MAINNET_SEGWIT_ADDRESS_PREFIX].includes(address.split("1")[0].toLowerCase())) { if (address.length !== 43 && address.length !== 63 && address.length !== 44 && address.length !== 64) return false; diff --git a/test/jsbgl.test.js b/test/jsbgl.test.js index 30834cc..41dfa08 100644 --- a/test/jsbgl.test.js +++ b/test/jsbgl.test.js @@ -842,7 +842,11 @@ describe(`${(browser) ? 'Browser' : 'Node'} test jsbgl library`, function () { it('isAddressValid', () => { equal(isAddressValid("bgl1qw508d6qejxtdg4y5r3zarvary0c5xw7k0fy5a3"), true); + equal(isAddressValid("BGL1QW508D6QEJXTDG4Y5R3ZARVARY0C5XW7K0FY5A3"), true); + equal(isAddressValid("Bgl1QW508D6QEJXTDG4Y5R3ZARVARY0C5XW7K0FY5A3"), false); equal(isAddressValid("tbgl1qw508d6qejxtdg4y5r3zarvary0c5xw7kxpjzsx", {testnet: true}), true); + equal(isAddressValid("TBGL1QW508D6QEJXTDG4Y5R3ZARVARY0C5XW7KXPJZSX", {testnet: true}), true); + equal(isAddressValid("Tbgl1QW508D6QEJXTDG4Y5R3ZARVARY0C5XW7KXPJZSX", {testnet: true}), false); equal(isAddressValid("tbgl1qw508d6qejxtdg4y5r3zarvary0c5xw7kxpjzsx"), false); // equal(isAddressValid("bc1qrp33g0q5c5txsp9arysrx4k6zdkfs4nce4xj0gdcccefvpysxf3qccfmv3"), true); // equal(isAddressValid("tb1qrp33g0q5c5txsp9arysrx4k6zdkfs4nce4xj0gdcccefvpysxf3q0sl5k7", {testnet: true}), true);