Skip to content

Latest commit

 

History

History
87 lines (63 loc) · 1.82 KB

README.md

File metadata and controls

87 lines (63 loc) · 1.82 KB

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.