This commit is contained in:
nitowa
2023-08-15 22:28:03 +02:00
commit 1dae68b1c7
5529 changed files with 1659171 additions and 0 deletions
+76
View File
@@ -0,0 +1,76 @@
{
"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"
}
]
}
}
+42
View File
@@ -0,0 +1,42 @@
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)
})
})