6.0.1 • Published 8 months ago
bs58-v2 v6.0.1
bs58
JavaScript component to compute base 58 encoding. This encoding is typically used for crypto currencies such as Bitcoin.
Note: If you're looking for base 58 check encoding, see: https://github.com/bitcoinjs/bs58check, which depends upon this library.
Install
npm i --save bs58API
encode(input)
input must be a Uint8Array, Buffer, or an Array. It returns a string.
example:
import bs58 from 'bs58'
const bytes = Uint8Array.from([
    0, 60,  23, 110, 101, 155, 234,
   15, 41, 163, 233, 191, 120, 128,
  193, 18, 177, 179,  27,  77, 200,
   38, 38, 129, 135
])
const address = bs58.encode(bytes)
console.log(address)
// => 16UjcYNBG9GTK4uq2f7yYEbuifqCzoLMGSdecode(input)
input must be a base 58 encoded string. Returns a Uint8Array.
example:
import bs58 from 'bs58'
const address = '16UjcYNBG9GTK4uq2f7yYEbuifqCzoLMGS'
const bytes = bs58.decode(address)
// See uint8array-tools package for helpful hex encoding/decoding/compare tools
console.log(Buffer.from(bytes).toString('hex'))
// => 003c176e659bea0f29a3e9bf7880c112b1b31b4dc826268187Browser
You can use this module in the browser. Install Browserify:
npm install -g browserifythen run:
browserify node_modules/bs58/cjs/index.cjs -o bs58.bundle.js --standalone bs58Hack / Test
Uses JavaScript standard style. Read more:
Credits
- Mike Hearn for original Java implementation
 - Stefan Thomas for porting to JavaScript
 - Stephan Pair for buffer improvements
 - Daniel Cousens for cleanup and merging improvements from bitcoinjs-lib
 - Jared Deckard for killing 
bigias a dependency 
License
MIT