super-crypto-validator

Crypto wallet address validator for Bitcoin and other Altcoins.


Keywords
auroracoin, beavercoin, biocoin, bitcoingold, bitcoin, bitcoin cash, bitcoinprivate, bitcoinz, callisto, cardano, digibyte, eos, ethereumclassic, etherzero, freicoin, garlicoin, hush, icon, iota, megacoin, monero, namecoin, nano, nem, railblocks, peercoin, primecoin, protoshares, qash, republicprotocol, snowgem, stellarlumens, tronix, tron, vertcoin, vechain, votecoin, zclassic, zencash, litecoin, decred, dogecoin, ethereum, ripple, dash, neo, gas, komodo, zcash, qtum, altcoin, crypto, address, wallet, validator, javascript, browser, nodejs
License
MIT
Install
npm install super-crypto-validator@0.0.2

Documentation

crypto-address-validator

Simple wallet address validator for validating Bitcoin and other altcoins addresses in Node.js and browser.

Forked from ognus/wallet-address-validator.

File size is ~201 KB (minifed).

Installation

NPM

npm install cryptocurrency-address-validator

Browser

<script src="crypto-address-validator.min.js"></script>

API

validate (address [, currency = 'bitcoin'[, networkType = 'prod']])
Parameters
  • address - Wallet address to validate.
  • currency - Optional. Currency name or symbol, e.g. 'bitcoin' (default), 'litecoin' or 'LTC'
  • networkType - Optional. Use 'prod' (default) to enforce standard address, 'testnet' to enforce testnet address and 'both' to enforce nothing.

Returns true if the address (string) is a valid wallet address for the crypto currency specified, see below for supported currencies.

getAddressType (address)
Parameters
  • address - Wallet address.

Returns address type (as 2 character hex string) if valid base58 address, otherwise null.

Supported crypto currencies

  • Auroracoin/AUR, 'auroracoin' or 'AUR'
  • BeaverCoin/BVC, 'beavercoin' or 'BVC'
  • Biocoin/BIO, 'biocoin' or 'BIO'
  • Bitcoin/BTC, 'bitcoin' or 'BTC'
  • BitcoinCash/BCH, 'bitcoincash' or 'BCH'
  • BitcoinGold/BTG, 'bitcoingold' or 'BTG'
  • BitcoinPrivate/BTCP, 'bitcoinprivate' or 'BTCP'
  • BitcoinZ/BTCZ, 'bitcoinz' or 'BTCZ'
  • Callisto/CLO, 'callisto' or 'CLO'
  • Cardano/ADA, 'cardano' or 'ADA'
  • Dash/DASH, 'dash' or 'DASH'
  • Decred/DCR, 'decred' or 'DCR'
  • Digibyte/DGB, 'digibyte' or 'DGB'
  • Dogecoin/DOGE, 'dogecoin' or 'DOGE'
  • Eos/EOS, 'eos' or 'EOS'
  • Ethereum/ETH, 'ethereum' or 'ETH'
  • EthereumClassic/ETH, 'ethereumclassic' or 'ETC'
  • EthereumZero/ETZ, 'etherzero' or 'ETZ'
  • Freicoin/FRC, 'freicoin' or 'FRC'
  • Garlicoin/GRLC, 'garlicoin' or 'GRLC'
  • Hush/HUSH, 'hush' or 'HUSH'
  • Komodo/KMD, 'komodo' or 'KMD'
  • Iota/IOTA, 'iota' or 'IOTA'
  • Icon/ICON, 'icon' or 'ICON'
  • Litecoin/LTC, 'litecoin' or 'LTC'
  • Megacoin/MEC, 'megacoin' or 'MEC'
  • Monero/XWR, 'monero' or 'XMR'
  • Namecoin/NMC, 'namecoin' or 'NMC'
  • Nano/NANO, 'nano' or 'NANO'
  • Neo/NEO, 'neo' or 'NEO'
  • NeoGas/GAS, 'neogas' or 'GAS'
  • Nem/NEM, 'nem' or 'nem'
  • Peercoin/PPCoin/PPC, 'peercoin' or 'PPC'
  • Primecoin/XPM, 'primecoin' or 'XPM'
  • Protoshares/PTS, 'protoshares' or 'PTS'
  • Qash/QASH, 'qash' or 'QASH'
  • Qtum/QTUM, 'qtum' or 'QTUM'
  • Railblocks/XRB), 'railblocks' or 'XRB'
  • RepublicProtocol/REN, 'republicprotocol' or 'REN'
  • Ripple/XRP, 'ripple' or 'XRP'
  • Snowgem/SNG, 'snowgem' or 'SNG'
  • StellarLumens/XLM, 'stellarlumens' or 'XLM'
  • Tronix/TRX, 'tronix' or 'TRX'
  • Vertcoin/VTC, 'vertcoin' or 'VTC'
  • VeChain, 'vechain' or 'VeChain'
  • Votecoin/VTC, 'votecoin' or 'VOT'
  • Zcash/ZEC, 'zcash' or 'ZEC'
  • Zclassic/ZCL, 'zclassic' or 'ZCL'
  • ZenCash/ZEN, 'zencash' or 'ZEN'

Usage example

Node

var CAValidator = require('crypto-address-validator');

var valid = CAValidator.validate('1KFzzGtDdnq5hrwxXGjwVnKzRbvf8WVxck', 'BTC');
if(valid)
	console.log('This is a valid address');
else
	console.log('Address INVALID');

// This will log 'This is a valid address' to the console.
var CAValidator = require('crypto-address-validator');

var valid = CAValidator.validate('1KFzzGtDdnq5hrwxXGjwVnKzRbvf8WVxck', 'litecoin', 'testnet');
if(valid)
      console.log('This is a valid address');
else
      console.log('Address INVALID');

// As this is a invalid litecoin address 'Address INVALID' will be logged to console.

Browser

<script src="crypto-address-validator.min.js"></script>
// CAValidator is exposed as a global (window.CAValidator)
var valid = CAValidator.validate('1KFzzGtDdnq5hrwxXGjwVnKzRbvf8WVxck', 'bitcoin');
if(valid)
    alert('This is a valid address');
else
    alert('Address INVALID');

// This should show a pop up with text 'This is a valid address'.