🚀 Big News:Socket Has Acquired Secure Annex.Learn More
Socket
Book a DemoSign in
Socket

wif

Package Overview
Dependencies
Maintainers
3
Versions
18
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

wif - npm Package Compare versions

Comparing version
3.0.1
to
4.0.0
+5
-3
index.js

@@ -30,6 +30,8 @@ var bs58check = require('bs58check')

function encodeRaw (version, privateKey, compressed) {
var result = new Buffer(compressed ? 34 : 33)
if (privateKey.length !== 32) throw new TypeError('Invalid privateKey length')
result.writeUInt8(version, 0)
privateKey.copy(result, 1)
var result = new Uint8Array(compressed ? 34 : 33)
var view = new DataView(result.buffer)
view.setUint8(0, version)
result.set(privateKey, 1)

@@ -36,0 +38,0 @@ if (compressed) {

{
"name": "wif",
"version": "3.0.1",
"version": "4.0.0",
"description": "Bitcoin Wallet Import Format (WIF) decoding/encoding module",

@@ -28,2 +28,5 @@ "author": "Daniel Cousens",

"main": "index.js",
"files": [
"index.js"
],
"scripts": {

@@ -37,9 +40,10 @@ "coverage-report": "nyc report --reporter=lcov",

"dependencies": {
"bs58check": "^2.0.1"
"bs58check": "^3.0.1"
},
"devDependencies": {
"nyc": "^6.4.0",
"standard": "*",
"tape": "^4.6.2"
"nyc": "^15.0.0",
"standard": "^14.3.3",
"tape": "^4.13.2",
"uint8array-tools": "0.0.7"
}
}
# WIF
[![TRAVIS](https://secure.travis-ci.org/bitcoinjs/wif.png)](http://travis-ci.org/bitcoinjs/wif)

@@ -15,6 +14,4 @@ [![NPM](http://img.shields.io/npm/v/wif.svg)](https://www.npmjs.org/package/wif)

var wif = require('wif')
var privateKey = new Buffer('0000000000000000000000000000000000000000000000000000000000000001', 'hex')
var key = wif.encode(128, privateKey, true)
var privateKey = Buffer.from('0000000000000000000000000000000000000000000000000000000000000001', 'hex')
var key = wif.encode(128, privateKey, true) // for the testnet use: wif.encode(239, ...
// => KwDiBf89QgGbjEhKnhXJuH7LrciVrZi3qYjgd9M7rFU73sVHnoWn

@@ -29,2 +26,6 @@

wif.decode(key, 0x09)
// => Error: Invalid network version
// alternative syntax
wif.encode(obj)

@@ -31,0 +32,0 @@ // => KwDiBf89QgGbjEhKnhXJuH7LrciVrZi3qYjgd9M7rFU73sVHnoWn

Sorry, the diff of this file is not supported yet

sudo: false
language: node_js
node_js:
- "4"
- "5"
- "7"
matrix:
include:
- node_js: "7"
env: TEST_SUITE=standard
- node_js: "7"
env: TEST_SUITE=coverage
env:
- TEST_SUITE=unit
script: npm run-script $TEST_SUITE
{
"valid": [
{
"WIF": "KwDiBf89QgGbjEhKnhXJuH7LrciVrZi3qYjgd9M7rFU73sVHnoWn",
"compressed": true,
"privateKeyHex": "0000000000000000000000000000000000000000000000000000000000000001",
"version": 128
},
{
"WIF": "5HpHagT65TZzG1PH3CSu63k8DbpvD8s5ip4nEB3kEsreAnchuDf",
"compressed": false,
"privateKeyHex": "0000000000000000000000000000000000000000000000000000000000000001",
"version": 128
},
{
"WIF": "KxhEDBQyyEFymvfJD96q8stMbJMbZUb6D1PmXqBWZDU2WvbvVs9o",
"compressed": true,
"privateKeyHex": "2bfe58ab6d9fd575bdc3a624e4825dd2b375d64ac033fbc46ea79dbab4f69a3e",
"version": 128
},
{
"WIF": "KzrA86mCVMGWnLGBQu9yzQa32qbxb5dvSK4XhyjjGAWSBKYX4rHx",
"compressed": true,
"privateKeyHex": "6c4313b03f2e7324d75e642f0ab81b734b724e13fec930f309e222470236d66b",
"version": 128
},
{
"WIF": "5JdxzLtFPHNe7CAL8EBC6krdFv9pwPoRo4e3syMZEQT9srmK8hh",
"compressed": false,
"privateKeyHex": "6c4313b03f2e7324d75e642f0ab81b734b724e13fec930f309e222470236d66b",
"version": 128
},
{
"WIF": "cRD9b1m3vQxmwmjSoJy7Mj56f4uNFXjcWMCzpQCEmHASS4edEwXv",
"compressed": true,
"privateKeyHex": "6c4313b03f2e7324d75e642f0ab81b734b724e13fec930f309e222470236d66b",
"version": 239
},
{
"WIF": "92Qba5hnyWSn5Ffcka56yMQauaWY6ZLd91Vzxbi4a9CCetaHtYj",
"compressed": false,
"privateKeyHex": "6c4313b03f2e7324d75e642f0ab81b734b724e13fec930f309e222470236d66b",
"version": 239
},
{
"WIF": "L5oLkpV3aqBjhki6LmvChTCV6odsp4SXM6FfU2Gppt5kFLaHLuZ9",
"compressed": true,
"privateKeyHex": "fffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364140",
"version": 128
}
],
"invalid": {
"decode": [
{
"exception": "Invalid network version",
"version": 128,
"WIF": "92Qba5hnyWSn5Ffcka56yMQauaWY6ZLd91Vzxbi4a9CCetaHtYj"
},
{
"exception": "Invalid compression flag",
"version": 128,
"WIF": "KwDiBf89QgGbjEhKnhXJuH7LrciVrZi3qYjgd9M7rFU73sfZr2ym"
},
{
"exception": "Invalid WIF length",
"version": 128,
"WIF": "3tq8Vmhh9SN5XhjTGSWgx8iKk59XbKG6UH4oqpejRuJhfYD"
},
{
"exception": "Invalid WIF length",
"version": 128,
"WIF": "38uMpGARR2BJy5p4dNFKYg9UsWNoBtkpbdrXDjmfvz8krCtw3T1W92ZDSR"
}
]
}
}
var wif = require('../')
var fixtures = require('./fixtures')
var tape = require('tape')
fixtures.valid.forEach(function (f) {
tape('encode/encodeRaw returns ' + f.WIF + ' for ' + f.privateKeyHex.slice(0, 20) + '... (' + f.version + ')', function (t) {
t.plan(1)
var privateKey = new Buffer(f.privateKeyHex, 'hex')
var actual = wif.encode(f.version, privateKey, f.compressed)
t.equal(actual, f.WIF)
})
})
fixtures.valid.forEach(function (f) {
tape('decode/decodeRaw returns ' + f.privateKeyHex.slice(0, 20) + '... (' + f.version + ')' + ' for ' + f.WIF, function (t) {
t.plan(3)
var actual = wif.decode(f.WIF, f.version)
t.equal(actual.version, f.version)
t.equal(actual.privateKey.toString('hex'), f.privateKeyHex)
t.equal(actual.compressed, f.compressed)
})
})
fixtures.invalid.decode.forEach(function (f) {
tape('throws ' + f.exception + ' for ' + f.WIF, function (t) {
t.plan(1)
t.throws(function () {
wif.decode(f.WIF, f.version)
}, new RegExp(f.exception))
})
})
fixtures.valid.forEach(function (f) {
tape('decode/encode for ' + f.WIF, function (t) {
t.plan(1)
var actual = wif.encode(wif.decode(f.WIF, f.version))
t.equal(actual, f.WIF)
})
})