Skip to content

bravetarget/bitcoin-address-validation

 
 

Repository files navigation

bitcoin-address-validation

Build Status npm version

Validate Bitcoin addresses - Bech32, P2PKH and P2SH! Available for ES6 and Node.js.

validate('bc1qw508d6qejxtdg4y5r3zarvary0c5xw7kv8f3t4');

{
  bech32: true,
  testnet: false,
  address: 'bc1qw508d6qejxtdg4y5r3zarvary0c5xw7kv8f3t4',
  type: 'p2wpkh'
}

Installation

Add bitcoin-address-validation to your Javascript project dependencies using Yarn:

yarn add bitcoin-address-validation

Or NPM:

npm install bitcoin-address-validation --save

Usage

Importing

Import using ES6:

import validate from 'bitcoin-address-validation';

Or AMD:

var validate = require('bitcoin-address-validation');

Validating addresses

Validation is done using the validate(address) function.

validate('17VZNX1SN5NtKa8UQFxwQbFeFc3iqRYhem')

{
  address: '17VZNX1SN5NtKa8UQFxwQbFeFc3iqRYhem',
  type: 'p2pkh',
  testnet: false
}

Bech32 Example

validate('bc1qw508d6qejxtdg4y5r3zarvary0c5xw7kv8f3t4');

{
  bech32: true,
  testnet: false,
  address: 'bc1qw508d6qejxtdg4y5r3zarvary0c5xw7kv8f3t4',
  type: 'p2wpkh'
}

Invalid addresses

validate(address) will return false for any invalid address, regardless of the address type:

validate('bc1qw508d6qejxtdg4y5r3zrrvary0c5xw7kv8f3t4')

false

Author

Rui Gomes
https://ruigomes.me

License

The MIT License (MIT). Please see LICENSE file for more information.

About

Validate any Bitcoin address - Bech32, P2SH and P2PKH

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 100.0%