diff --git a/src/api/common/schema-validator.js b/src/api/common/schema-validator.js index 56d2fb70..e4626634 100644 --- a/src/api/common/schema-validator.js +++ b/src/api/common/schema-validator.js @@ -12,7 +12,9 @@ const ValidationError = require('./errors').ValidationError; let SCHEMAS = {}; function isValidAddress(address: string): boolean { - return core.UInt160.is_valid(address); + return typeof address === 'string' && address.length > 0 && + address[0] === 'r' && + core.UInt160.is_valid(address); } function isValidLedgerHash(ledgerHash) { diff --git a/test/api-test.js b/test/api-test.js index 9f3afc3b..3987a3ba 100644 --- a/test/api-test.js +++ b/test/api-test.js @@ -803,4 +803,11 @@ describe('RippleAPI - offline', function() { const api = new RippleAPI(); assert(!api.isValidAddress(address.slice(0, -1) + 'a')); }); + + it('isValidAddress - invalid - hex representation', function() { + const api = new RippleAPI(); + const hex = '6e3efa86a5eb0a3c5dc9beb3a204783bb00e1913'; + assert(!api.isValidAddress(hex)); + }); + });