Updates test fixtures to use bitcoin core test data

This commit is contained in:
Daniel Cousens 2014-04-21 05:45:55 +10:00
parent 540b70ccca
commit c178804356
4 changed files with 571 additions and 199 deletions

View file

@ -1,27 +1,37 @@
var assert = require('assert') var assert = require('assert')
var base58 = require('../').base58 var base58 = require('../').base58
var fixtures = require('./fixtures/base58') var fixtures = require('./fixtures/base58')
function b2h(b) { return new Buffer(b).toString('hex') }
function h2b(h) { return new Buffer(h, 'hex') }
describe('base58', function() { describe('base58', function() {
describe('decode', function() { describe('decode', function() {
it('decodes the test vectors', function() { it('can decode Bitcoin core test data', function() {
fixtures.valid.forEach(function(f) { fixtures.valid.forEach(function(f) {
var actual = base58.decode(f.encoded.string) var actual = base58.decode(f.string)
var expected = f.encoded.hex var expected = f.hex
assert.equal(actual.toString('hex'), expected) assert.strictEqual(b2h(actual), expected)
})
})
fixtures.invalid.forEach(function(f) {
it('throws on ' + f.description, function() {
assert.throws(function() {
base58.decode(f.string)
})
}) })
}) })
}) })
describe('encode', function() { describe('encode', function() {
it('encodes the test vectors', function() { it('can encode Bitcoin core test data', function() {
fixtures.valid.forEach(function(f) { fixtures.valid.forEach(function(f) {
var actual = base58.encode(new Buffer(f.encoded.hex, 'hex')) var actual = base58.encode(h2b(f.hex))
var expected = f.encoded.string var expected = f.string.trim()
assert.equal(actual, expected) assert.strictEqual(actual, expected)
}) })
}) })
}) })

View file

@ -1,43 +1,51 @@
var assert = require('assert') var assert = require('assert')
var base58check = require('../').base58check var base58check = require('../').base58check
var fixtures = require('./fixtures/base58check')
var fixtures = require('./fixtures/base58') function b2h(b) { return new Buffer(b).toString('hex') }
function h2b(h) { return new Buffer(h, 'hex') }
describe('base58check', function() { describe('base58check', function() {
describe('decode', function() { describe('decode', function() {
it('decodes the test vectors', function() { it('can decode Bitcoin core test data', function() {
fixtures.valid.forEach(function(f) { fixtures.valid.forEach(function(f) {
var actual = base58check.decode(f.encoded.string) var actual = base58check.decode(f.string)
var expected = f.decoded var expected = {
version: f.decode.version,
payload: h2b(f.decode.payload),
checksum: h2b(f.decode.checksum)
}
assert.deepEqual({ assert.deepEqual(actual, expected)
version: actual.version,
payload: actual.payload.toString('hex'),
checksum: actual.checksum.toString('hex')
}, expected)
}) })
}) })
it('throws on invalid strings', function() { fixtures.invalid.forEach(function(f) {
fixtures.invalid.forEach(function(f) { it('throws on ' + f.description, function() {
assert.throws(function() { assert.throws(function() {
base58check.decode(f) base58check.decode(f.string)
})
})
})
it('throws on [invalid] Bitcoin core test data', function() {
fixtures.invalid2.forEach(function(f) {
assert.throws(function() {
base58check.decode(f.string)
}) })
}) })
}) })
}) })
describe('encode', function() { describe('encode', function() {
it('encodes the test vectors', function() { it('can encode Bitcoin core test data', function() {
fixtures.valid.forEach(function(f) { fixtures.valid.forEach(function(f) {
var actual = base58check.encode( var actual = base58check.encode(h2b(f.decode.payload), f.decode.version)
new Buffer(f.decoded.payload, 'hex'), var expected = f.string
f.decoded.version
)
var expected = f.encoded.string
assert.equal(actual, expected) assert.strictEqual(actual, expected)
}) })
}) })
}) })
}) })

View file

@ -1,198 +1,74 @@
module.exports = { module.exports = {
valid: [ "valid": [
{ {
encoded: { "hex": "",
hex: '800000000000000000000000000000000000000000000000000000000000000001014671fc3f', "string": ""
string: 'KwDiBf89QgGbjEhKnhXJuH7LrciVrZi3qYjgd9M7rFU73sVHnoWn'
},
decoded: {
version: 128,
payload: '000000000000000000000000000000000000000000000000000000000000000101',
checksum: '4671fc3f'
}
}, },
{ {
encoded: { "hex": "61",
hex: '00751e76e8199196d454941c45d1b3a323f1433bd6510d1634', "string": "2g"
string: '1BgGZ9tcN4rm9KBzDn7KprQz87SZ26SAMH'
},
decoded: {
version: 0,
payload: '751e76e8199196d454941c45d1b3a323f1433bd6',
checksum: '510d1634'
}
}, },
{ {
encoded: { "hex": "626262",
hex: '80000000000000000000000000000000007777777777777777777777777777777701f0845454', "string": "a3gV"
string: 'KwDiBf89QgGbjEhKnhXJuH7UChJaB4ZGvCvAAf7taDvRnbQnjxps'
},
decoded: {
version: 128,
payload: '000000000000000000000000000000007777777777777777777777777777777701',
checksum: 'f0845454'
}
}, },
{ {
encoded: { "hex": "636363",
hex: '006b420cc35afb4d96ea118dbf1fc8ef4b0990798cb4f216d9', "string": "aPEr"
string: '1An8RkWzqVF9GvpQFVX5AM4jpFe43eoPfe'
},
decoded: {
version: 0,
payload: '6b420cc35afb4d96ea118dbf1fc8ef4b0990798c',
checksum: 'b4f216d9'
}
}, },
{ {
encoded: { "hex": "73696d706c792061206c6f6e6720737472696e67",
hex: '80fffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd036414001608f2ef0', "string": "2cFupjhnEsSn59qHXstmK2ffpLv2"
string: 'L5oLkpV3aqBjhki6LmvChTCV6odsp4SXM6FfU2Gppt5kFLaHLuZ9'
},
decoded: {
version: 128,
payload: 'fffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd036414001',
checksum: '608f2ef0'
}
}, },
{ {
encoded: { "hex": "00eb15231dfceb60925886b67d065299925915aeb172c06647",
hex: '00adde4c73c7b9cee17da6c7b3e2b2eea1a0dcbe672c2b0787', "string": "1NS17iag9jJgTHD1VXjvLCEnZuQ3rJDE9L"
string: '1GrLCmVQXoyJXaPJQdqssNqwxvha1eUo2E'
},
decoded: {
version: 0,
payload: 'adde4c73c7b9cee17da6c7b3e2b2eea1a0dcbe67',
checksum: '2c2b0787'
}
}, },
{ {
encoded: { "hex": "516b6fcd0f",
hex: '806685bb38cf8d16d22741f00140622fccf3ab21fe6804d433140a4cf301e6b4dd01c5de2a2f', "string": "ABnLTmg"
string: 'Kzf11e3pDUh5ZRjcQKwvT3BeA25X5ErdccGatoTx8WJi6f49qzrr'
},
decoded: {
version: 128,
payload: '6685bb38cf8d16d22741f00140622fccf3ab21fe6804d433140a4cf301e6b4dd01',
checksum: 'c5de2a2f'
}
}, },
{ {
encoded: { "hex": "bf4f89001e670274dd",
hex: '00cce94f5f00db418576b78c6a4dae2366fae89638d0b3efb8', "string": "3SEo3LWLoPntC"
string: '1KgULoNDuBeHovVskY3MAfNFonzBMETt6B'
},
decoded: {
version: 0,
payload: 'cce94f5f00db418576b78c6a4dae2366fae89638',
checksum: 'd0b3efb8'
}
}, },
{ {
encoded: { "hex": "572e4794",
hex: 'ef00000000000000000000000000000000000000000000000000000000000000010184e38d1f', "string": "3EFU7m"
string: 'cMahea7zqjxrtgAbB7LSGbcQUr1uX1ojuat9jZodMN87JcbXMTcA'
},
decoded: {
version: 239,
payload: '000000000000000000000000000000000000000000000000000000000000000101',
checksum: '84e38d1f'
}
}, },
{ {
encoded: { "hex": "ecac89cad93923c02321",
hex: '6f751e76e8199196d454941c45d1b3a323f1433bd655c484e3', "string": "EJDM8drfXA6uyA"
string: 'mrCDrCybB6J1vRfbwM5hemdJz73FwDBC8r'
},
decoded: {
version: 111,
payload: '751e76e8199196d454941c45d1b3a323f1433bd6',
checksum: '55c484e3'
}
}, },
{ {
encoded: { "hex": "10c8511e",
hex: 'ef0000000000000000000000000000000077777777777777777777777777777777014a7bd246', "string": "Rt5zm"
string: 'cMahea7zqjxrtgAbB7LSGbcXpvbyqWexzF4dH5aQ5LaS3LRBaSUV'
},
decoded: {
version: 239,
payload: '000000000000000000000000000000007777777777777777777777777777777701',
checksum: '4a7bd246'
}
}, },
{ {
encoded: { "hex": "00000000000000000000",
hex: '6f6b420cc35afb4d96ea118dbf1fc8ef4b0990798cc00f9280', "string": "1111111111"
string: 'mqJ5iobyeWgQ43J1y4VSzGH4gFEkxw2dFV'
},
decoded: {
version: 111,
payload: '6b420cc35afb4d96ea118dbf1fc8ef4b0990798c',
checksum: 'c00f9280'
}
},
{
encoded: {
hex: 'effffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd03641400143ef4bf2',
string: 'cWALDjUu1tszsCBMjBjL4mhYj2wHUWYDR8Q8aSjLKzjkW5eBtpzu'
},
decoded: {
version: 239,
payload: 'fffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd036414001',
checksum: '43ef4bf2'
}
},
{
encoded: {
hex: '6fadde4c73c7b9cee17da6c7b3e2b2eea1a0dcbe670a342a51',
string: 'mwNHVpaPLqQZJgrv8CpFhJ4GpvJGumskXi'
},
decoded: {
version: 111,
payload: 'adde4c73c7b9cee17da6c7b3e2b2eea1a0dcbe67',
checksum: '0a342a51'
}
},
{
encoded: {
hex: 'ef6685bb38cf8d16d22741f00140622fccf3ab21fe6804d433140a4cf301e6b4dd0124df07e1',
string: 'cR1zUZ3feYPLisCsnjm3pMghnFNvjgxKgeR41DvTdcxiMQ4g9ZYC'
},
decoded: {
version: 239,
payload: '6685bb38cf8d16d22741f00140622fccf3ab21fe6804d433140a4cf301e6b4dd01',
checksum: '24df07e1'
}
},
{
encoded: {
hex: '6fcce94f5f00db418576b78c6a4dae2366fae8963831693070',
string: 'mzCRdrTCiD5Yb2yVU71izaaafnatCA4DCT'
},
decoded: {
version: 111,
payload: 'cce94f5f00db418576b78c6a4dae2366fae89638',
checksum: '31693070'
}
} }
], ],
invalid: [ "invalid": [
'fN2C5x86J', {
'BiLLNZvcHTJWoL', "description": "non-base58 string",
'MP3zZBT27cEeP4asJD', "string": "invalid"
'kfjbP4kdqZcZ5tThHpxmgWQ8vk', },
'oM6DB1STJKkv9NtPs2vHer6yUBh', {
'wkC5tvzZHuKmnrWwVMioYueXCSx', "description": "non-base58 alphabet",
'BoW61uTv9aHNZtfZzcGXMSJvuc3', "string": "c2F0b3NoaQo="
'HhRv5VFtWmf6y28fWUC4WijZ6UV', },
'2QPqahfnSzPRScGyaCSFL8JUZkar', {
'2RpPJRJyxYz1MTShU2gV8Gy1oDdM', "description": "leading whitespace",
'2p1tshmtxKWeovXFe68Qu6wNFNqg', "string": " 1111111111"
'2bYahuZyEDrw12USasbLdxGfkDH9', },
'2Pfp453t1TEkj116QEDaW5hkmf3y', {
'47aZqGXrM3XzEy5mWs3wC4guA7hJ', "description": "trailing whitespace",
'BUaVB8rxkTyTPntSRV4sw32vLKUZS', "string": "1111111111 "
'2S7rqjHw5yypNZ7WrCCAr9HCQ9Va46WJnNb' },
{
"description": "unexpected character after whitespace",
"string": " \t\n\u000b\f\r skip \r\f\u000b\n\t a"
}
] ]
} }

478
test/fixtures/base58check.js vendored Normal file
View file

@ -0,0 +1,478 @@
module.exports = {
"valid": [
{
"string": "1AGNa15ZQXAZUgFiqJ2i7Z2DPU2J6hW62i",
"decode": {
"version": 0,
"payload": "65a16059864a2fdbc7c99a4723a8395bc6f188eb",
"checksum": "c046b2ff"
}
},
{
"string": "3CMNFxN1oHBc4R1EpboAL5yzHGgE611Xou",
"decode": {
"version": 5,
"payload": "74f209f6ea907e2ea48f74fae05782ae8a665257",
"checksum": "a2353eb8"
}
},
{
"string": "mo9ncXisMeAoXwqcV5EWuyncbmCcQN4rVs",
"decode": {
"version": 111,
"payload": "53c0307d6851aa0ce7825ba883c6bd9ad242b486",
"checksum": "3aa11ed6"
}
},
{
"string": "2N2JD6wb56AfK4tfmM6PwdVmoYk2dCKf4Br",
"decode": {
"version": 196,
"payload": "6349a418fc4578d10a372b54b45c280cc8c4382f",
"checksum": "c4a2b951"
}
},
{
"string": "5Kd3NBUAdUnhyzenEwVLy9pBKxSwXvE9FMPyR4UKZvpe6E3AgLr",
"decode": {
"version": 128,
"payload": "eddbdc1168f1daeadbd3e44c1e3f8f5a284c2029f78ad26af98583a499de5b19",
"checksum": "13a4f863"
}
},
{
"string": "Kz6UJmQACJmLtaQj5A3JAge4kVTNQ8gbvXuwbmCj7bsaabudb3RD",
"decode": {
"version": 128,
"payload": "55c9bccb9ed68446d1b75273bbce89d7fe013a8acd1625514420fb2aca1a21c401",
"checksum": "99a16fd4"
}
},
{
"string": "9213qJab2HNEpMpYNBa7wHGFKKbkDn24jpANDs2huN3yi4J11ko",
"decode": {
"version": 239,
"payload": "36cb93b9ab1bdabf7fb9f2c04f1b9cc879933530ae7842398eef5a63a56800c2",
"checksum": "6a84391c"
}
},
{
"string": "cTpB4YiyKiBcPxnefsDpbnDxFDffjqJob8wGCEDXxgQ7zQoMXJdH",
"decode": {
"version": 239,
"payload": "b9f4892c9e8282028fea1d2667c4dc5213564d41fc5783896a0d843fc15089f301",
"checksum": "b008368c"
}
},
{
"string": "1Ax4gZtb7gAit2TivwejZHYtNNLT18PUXJ",
"decode": {
"version": 0,
"payload": "6d23156cbbdcc82a5a47eee4c2c7c583c18b6bf4",
"checksum": "0680e989"
}
},
{
"string": "3QjYXhTkvuj8qPaXHTTWb5wjXhdsLAAWVy",
"decode": {
"version": 5,
"payload": "fcc5460dd6e2487c7d75b1963625da0e8f4c5975",
"checksum": "8b495dfc"
}
},
{
"string": "n3ZddxzLvAY9o7184TB4c6FJasAybsw4HZ",
"decode": {
"version": 111,
"payload": "f1d470f9b02370fdec2e6b708b08ac431bf7a5f7",
"checksum": "b663687c"
}
},
{
"string": "2NBFNJTktNa7GZusGbDbGKRZTxdK9VVez3n",
"decode": {
"version": 196,
"payload": "c579342c2c4c9220205e2cdc285617040c924a0a",
"checksum": "ba7d11ad"
}
},
{
"string": "5K494XZwps2bGyeL71pWid4noiSNA2cfCibrvRWqcHSptoFn7rc",
"decode": {
"version": 128,
"payload": "a326b95ebae30164217d7a7f57d72ab2b54e3be64928a19da0210b9568d4015e",
"checksum": "171a2dfd"
}
},
{
"string": "L1RrrnXkcKut5DEMwtDthjwRcTTwED36thyL1DebVrKuwvohjMNi",
"decode": {
"version": 128,
"payload": "7d998b45c219a1e38e99e7cbd312ef67f77a455a9b50c730c27f02c6f730dfb401",
"checksum": "cd40f1cb"
}
},
{
"string": "93DVKyFYwSN6wEo3E2fCrFPUp17FtrtNi2Lf7n4G3garFb16CRj",
"decode": {
"version": 239,
"payload": "d6bca256b5abc5602ec2e1c121a08b0da2556587430bcf7e1898af2224885203",
"checksum": "f0bf192e"
}
},
{
"string": "cTDVKtMGVYWTHCb1AFjmVbEbWjvKpKqKgMaR3QJxToMSQAhmCeTN",
"decode": {
"version": 239,
"payload": "a81ca4e8f90181ec4b61b6a7eb998af17b2cb04de8a03b504b9e34c4c61db7d901",
"checksum": "7f570e65"
}
},
{
"string": "1C5bSj1iEGUgSTbziymG7Cn18ENQuT36vv",
"decode": {
"version": 0,
"payload": "7987ccaa53d02c8873487ef919677cd3db7a6912",
"checksum": "11a2e19b"
}
},
{
"string": "3AnNxabYGoTxYiTEZwFEnerUoeFXK2Zoks",
"decode": {
"version": 5,
"payload": "63bcc565f9e68ee0189dd5cc67f1b0e5f02f45cb",
"checksum": "35e6c138"
}
},
{
"string": "n3LnJXCqbPjghuVs8ph9CYsAe4Sh4j97wk",
"decode": {
"version": 111,
"payload": "ef66444b5b17f14e8fae6e7e19b045a78c54fd79",
"checksum": "7d48bb7f"
}
},
{
"string": "2NB72XtkjpnATMggui83aEtPawyyKvnbX2o",
"decode": {
"version": 196,
"payload": "c3e55fceceaa4391ed2a9677f4a4d34eacd021a0",
"checksum": "03bf5e60"
}
},
{
"string": "5KaBW9vNtWNhc3ZEDyNCiXLPdVPHCikRxSBWwV9NrpLLa4LsXi9",
"decode": {
"version": 128,
"payload": "e75d936d56377f432f404aabb406601f892fd49da90eb6ac558a733c93b47252",
"checksum": "135d832a"
}
},
{
"string": "L1axzbSyynNYA8mCAhzxkipKkfHtAXYF4YQnhSKcLV8YXA874fgT",
"decode": {
"version": 128,
"payload": "8248bd0375f2f75d7e274ae544fb920f51784480866b102384190b1addfbaa5c01",
"checksum": "2daf30c0"
}
},
{
"string": "927CnUkUbasYtDwYwVn2j8GdTuACNnKkjZ1rpZd2yBB1CLcnXpo",
"decode": {
"version": 239,
"payload": "44c4f6a096eac5238291a94cc24c01e3b19b8d8cef72874a079e00a242237a52",
"checksum": "bc446ce4"
}
},
{
"string": "cUcfCMRjiQf85YMzzQEk9d1s5A4K7xL5SmBCLrezqXFuTVefyhY7",
"decode": {
"version": 239,
"payload": "d1de707020a9059d6d3abaf85e17967c6555151143db13dbb06db78df0f15c6901",
"checksum": "db1645ec"
}
},
{
"string": "1Gqk4Tv79P91Cc1STQtU3s1W6277M2CVWu",
"decode": {
"version": 0,
"payload": "adc1cc2081a27206fae25792f28bbc55b831549d",
"checksum": "4c762f7e"
}
},
{
"string": "33vt8ViH5jsr115AGkW6cEmEz9MpvJSwDk",
"decode": {
"version": 5,
"payload": "188f91a931947eddd7432d6e614387e32b244709",
"checksum": "36a8fc53"
}
},
{
"string": "mhaMcBxNh5cqXm4aTQ6EcVbKtfL6LGyK2H",
"decode": {
"version": 111,
"payload": "1694f5bc1a7295b600f40018a618a6ea48eeb498",
"checksum": "047e9722"
}
},
{
"string": "2MxgPqX1iThW3oZVk9KoFcE5M4JpiETssVN",
"decode": {
"version": 196,
"payload": "3b9b3fd7a50d4f08d1a5b0f62f644fa7115ae2f3",
"checksum": "0fd6ecc5"
}
},
{
"string": "5HtH6GdcwCJA4ggWEL1B3jzBBUB8HPiBi9SBc5h9i4Wk4PSeApR",
"decode": {
"version": 128,
"payload": "091035445ef105fa1bb125eccfb1882f3fe69592265956ade751fd095033d8d0",
"checksum": "9c5b305a"
}
},
{
"string": "L2xSYmMeVo3Zek3ZTsv9xUrXVAmrWxJ8Ua4cw8pkfbQhcEFhkXT8",
"decode": {
"version": 128,
"payload": "ab2b4bcdfc91d34dee0ae2a8c6b6668dadaeb3a88b9859743156f462325187af01",
"checksum": "271c74db"
}
},
{
"string": "92xFEve1Z9N8Z641KQQS7ByCSb8kGjsDzw6fAmjHN1LZGKQXyMq",
"decode": {
"version": 239,
"payload": "b4204389cef18bbe2b353623cbf93e8678fbc92a475b664ae98ed594e6cf0856",
"checksum": "13985bb8"
}
},
{
"string": "cVM65tdYu1YK37tNoAyGoJTR13VBYFva1vg9FLuPAsJijGvG6NEA",
"decode": {
"version": 239,
"payload": "e7b230133f1b5489843260236b06edca25f66adb1be455fbd38d4010d48faeef01",
"checksum": "45de6187"
}
},
{
"string": "1JwMWBVLtiqtscbaRHai4pqHokhFCbtoB4",
"decode": {
"version": 0,
"payload": "c4c1b72491ede1eedaca00618407ee0b772cad0d",
"checksum": "27a58137"
}
},
{
"string": "3QCzvfL4ZRvmJFiWWBVwxfdaNBT8EtxB5y",
"decode": {
"version": 5,
"payload": "f6fe69bcb548a829cce4c57bf6fff8af3a5981f9",
"checksum": "80242330"
}
},
{
"string": "mizXiucXRCsEriQCHUkCqef9ph9qtPbZZ6",
"decode": {
"version": 111,
"payload": "261f83568a098a8638844bd7aeca039d5f2352c0",
"checksum": "56892155"
}
},
{
"string": "2NEWDzHWwY5ZZp8CQWbB7ouNMLqCia6YRda",
"decode": {
"version": 196,
"payload": "e930e1834a4d234702773951d627cce82fbb5d2e",
"checksum": "3ac92331"
}
},
{
"string": "5KQmDryMNDcisTzRp3zEq9e4awRmJrEVU1j5vFRTKpRNYPqYrMg",
"decode": {
"version": 128,
"payload": "d1fab7ab7385ad26872237f1eb9789aa25cc986bacc695e07ac571d6cdac8bc0",
"checksum": "d6f7166b"
}
},
{
"string": "L39Fy7AC2Hhj95gh3Yb2AU5YHh1mQSAHgpNixvm27poizcJyLtUi",
"decode": {
"version": 128,
"payload": "b0bbede33ef254e8376aceb1510253fc3550efd0fcf84dcd0c9998b288f166b301",
"checksum": "e396e2cb"
}
},
{
"string": "91cTVUcgydqyZLgaANpf1fvL55FH53QMm4BsnCADVNYuWuqdVys",
"decode": {
"version": 239,
"payload": "037f4192c630f399d9271e26c575269b1d15be553ea1a7217f0cb8513cef41cb",
"checksum": "504ffa32"
}
},
{
"string": "cQspfSzsgLeiJGB2u8vrAiWpCU4MxUT6JseWo2SjXy4Qbzn2fwDw",
"decode": {
"version": 239,
"payload": "6251e205e8ad508bab5596bee086ef16cd4b239e0cc0c5d7c4e6035441e7d5de01",
"checksum": "070c22e6"
}
},
{
"string": "19dcawoKcZdQz365WpXWMhX6QCUpR9SY4r",
"decode": {
"version": 0,
"payload": "5eadaf9bb7121f0f192561a5a62f5e5f54210292",
"checksum": "ef7a7be3"
}
},
{
"string": "37Sp6Rv3y4kVd1nQ1JV5pfqXccHNyZm1x3",
"decode": {
"version": 5,
"payload": "3f210e7277c899c3a155cc1c90f4106cbddeec6e",
"checksum": "0f6e5c98"
}
},
{
"string": "myoqcgYiehufrsnnkqdqbp69dddVDMopJu",
"decode": {
"version": 111,
"payload": "c8a3c2a09a298592c3e180f02487cd91ba3400b5",
"checksum": "30c3769a"
}
},
{
"string": "2N7FuwuUuoTBrDFdrAZ9KxBmtqMLxce9i1C",
"decode": {
"version": 196,
"payload": "99b31df7c9068d1481b596578ddbb4d3bd90baeb",
"checksum": "02eca37f"
}
},
{
"string": "5KL6zEaMtPRXZKo1bbMq7JDjjo1bJuQcsgL33je3oY8uSJCR5b4",
"decode": {
"version": 128,
"payload": "c7666842503db6dc6ea061f092cfb9c388448629a6fe868d068c42a488b478ae",
"checksum": "88451297"
}
},
{
"string": "KwV9KAfwbwt51veZWNscRTeZs9CKpojyu1MsPnaKTF5kz69H1UN2",
"decode": {
"version": 128,
"payload": "07f0803fc5399e773555ab1e8939907e9badacc17ca129e67a2f5f2ff84351dd01",
"checksum": "004d964f"
}
},
{
"string": "93N87D6uxSBzwXvpokpzg8FFmfQPmvX4xHoWQe3pLdYpbiwT5YV",
"decode": {
"version": 239,
"payload": "ea577acfb5d1d14d3b7b195c321566f12f87d2b77ea3a53f68df7ebf8604a801",
"checksum": "babac8c2"
}
},
{
"string": "cMxXusSihaX58wpJ3tNuuUcZEQGt6DKJ1wEpxys88FFaQCYjku9h",
"decode": {
"version": 239,
"payload": "0b3b34f0958d8a268193a9814da92c3e8b58b4a4378a542863e34ac289cd830c01",
"checksum": "61073840"
}
},
{
"string": "13p1ijLwsnrcuyqcTvJXkq2ASdXqcnEBLE",
"decode": {
"version": 0,
"payload": "1ed467017f043e91ed4c44b4e8dd674db211c4e6",
"checksum": "6cc37d7b"
}
},
{
"string": "3ALJH9Y951VCGcVZYAdpA3KchoP9McEj1G",
"decode": {
"version": 5,
"payload": "5ece0cadddc415b1980f001785947120acdb36fc",
"checksum": "b43c48af"
}
}
],
"invalid": [
{
"base58check": "7SeEnXWPaCCALbVrTnszCVGfRU8cGfx",
"description": "hash too short"
},
{
"base58check": "j9ywUkWg2fTQrouxxh5rSZhRvrjMkEUfuiKe",
"description": "hash too long"
},
{
"base58check": "Z9inZq4e2HGQRZQezDjFMmqgUE8NwMRok",
"description": "bad version byte"
},
{
"base58check": "3HK7MezAm6qEZQUMPRf8jX7wDv6zig6Ky8",
"description": "bad payload"
},
{
"base58check": "3AW8j12DUk8mgA7kkfZ1BrrzCVFuH1LsXS",
"description": "bad SHA256 checksum"
}
],
"invalid2": [
"",
"x",
"37qgekLpCCHrQuSjvX3fs496FWTGsHFHizjJAs6NPcR47aefnnCWECAhHV6E3g4YN7u7Yuwod5Y",
"dzb7VV1Ui55BARxv7ATxAtCUeJsANKovDGWFVgpTbhq9gvPqP3yv",
"MuNu7ZAEDFiHthiunm7dPjwKqrVNCM3mAz6rP9zFveQu14YA8CxExSJTHcVP9DErn6u84E6Ej7S",
"rPpQpYknyNQ5AEHuY6H8ijJJrYc2nDKKk9jjmKEXsWzyAQcFGpDLU2Zvsmoi8JLR7hAwoy3RQWf",
"4Uc3FmN6NQ6zLBK5QQBXRBUREaaHwCZYsGCueHauuDmJpZKn6jkEskMB2Zi2CNgtb5r6epWEFfUJq",
"7aQgR5DFQ25vyXmqZAWmnVCjL3PkBcdVkBUpjrjMTcghHx3E8wb",
"17QpPprjeg69fW1DV8DcYYCKvWjYhXvWkov6MJ1iTTvMFj6weAqW7wybZeH57WTNxXVCRH4veVs",
"KxuACDviz8Xvpn1xAh9MfopySZNuyajYMZWz16Dv2mHHryznWUp3",
"7nK3GSmqdXJQtdohvGfJ7KsSmn3TmGqExug49583bDAL91pVSGq5xS9SHoAYL3Wv3ijKTit65th",
"cTivdBmq7bay3RFGEBBuNfMh2P1pDCgRYN2Wbxmgwr4ki3jNUL2va",
"gjMV4vjNjyMrna4fsAr8bWxAbwtmMUBXJS3zL4NJt5qjozpbQLmAfK1uA3CquSqsZQMpoD1g2nk",
"emXm1naBMoVzPjbk7xpeTVMFy4oDEe25UmoyGgKEB1gGWsK8kRGs",
"7VThQnNRj1o3Zyvc7XHPRrjDf8j2oivPTeDXnRPYWeYGE4pXeRJDZgf28ppti5hsHWXS2GSobdqyo",
"1G9u6oCVCPh2o8m3t55ACiYvG1y5BHewUkDSdiQarDcYXXhFHYdzMdYfUAhfxn5vNZBwpgUNpso",
"31QQ7ZMLkScDiB4VyZjuptr7AEc9j1SjstF7pRoLhHTGkW4Q2y9XELobQmhhWxeRvqcukGd1XCq",
"DHqKSnpxa8ZdQyH8keAhvLTrfkyBMQxqngcQA5N8LQ9KVt25kmGN",
"2LUHcJPbwLCy9GLH1qXmfmAwvadWw4bp4PCpDfduLqV17s6iDcy1imUwhQJhAoNoN1XNmweiJP4i",
"7USRzBXAnmck8fX9HmW7RAb4qt92VFX6soCnts9s74wxm4gguVhtG5of8fZGbNPJA83irHVY6bCos",
"1DGezo7BfVebZxAbNT3XGujdeHyNNBF3vnficYoTSp4PfK2QaML9bHzAMxke3wdKdHYWmsMTJVu",
"2D12DqDZKwCxxkzs1ZATJWvgJGhQ4cFi3WrizQ5zLAyhN5HxuAJ1yMYaJp8GuYsTLLxTAz6otCfb",
"8AFJzuTujXjw1Z6M3fWhQ1ujDW7zsV4ePeVjVo7D1egERqSW9nZ",
"163Q17qLbTCue8YY3AvjpUhotuaodLm2uqMhpYirsKjVqnxJRWTEoywMVY3NbBAHuhAJ2cF9GAZ",
"2MnmgiRH4eGLyLc9eAqStzk7dFgBjFtUCtu",
"461QQ2sYWxU7H2PV4oBwJGNch8XVTYYbZxU",
"2UCtv53VttmQYkVU4VMtXB31REvQg4ABzs41AEKZ8UcB7DAfVzdkV9JDErwGwyj5AUHLkmgZeobs",
"cSNjAsnhgtiFMi6MtfvgscMB2Cbhn2v1FUYfviJ1CdjfidvmeW6mn",
"gmsow2Y6EWAFDFE1CE4Hd3Tpu2BvfmBfG1SXsuRARbnt1WjkZnFh1qGTiptWWbjsq2Q6qvpgJVj",
"nksUKSkzS76v8EsSgozXGMoQFiCoCHzCVajFKAXqzK5on9ZJYVHMD5CKwgmX3S3c7M1U3xabUny",
"L3favK1UzFGgdzYBF2oBT5tbayCo4vtVBLJhg2iYuMeePxWG8SQc",
"7VxLxGGtYT6N99GdEfi6xz56xdQ8nP2dG1CavuXx7Rf2PrvNMTBNevjkfgs9JmkcGm6EXpj8ipyPZ",
"2mbZwFXF6cxShaCo2czTRB62WTx9LxhTtpP",
"dB7cwYdcPSgiyAwKWL3JwCVwSk6epU2txw",
"HPhFUhUAh8ZQQisH8QQWafAxtQYju3SFTX",
"4ctAH6AkHzq5ioiM1m9T3E2hiYEev5mTsB",
"Hn1uFi4dNexWrqARpjMqgT6cX1UsNPuV3cHdGg9ExyXw8HTKadbktRDtdeVmY3M1BxJStiL4vjJ",
"Sq3fDbvutABmnAHHExJDgPLQn44KnNC7UsXuT7KZecpaYDMU9Txs",
"6TqWyrqdgUEYDQU1aChMuFMMEimHX44qHFzCUgGfqxGgZNMUVWJ",
"giqJo7oWqFxNKWyrgcBxAVHXnjJ1t6cGoEffce5Y1y7u649Noj5wJ4mmiUAKEVVrYAGg2KPB3Y4",
"cNzHY5e8vcmM3QVJUcjCyiKMYfeYvyueq5qCMV3kqcySoLyGLYUK",
"37uTe568EYc9WLoHEd9jXEvUiWbq5LFLscNyqvAzLU5vBArUJA6eydkLmnMwJDjkL5kXc2VK7ig",
"EsYbG4tWWWY45G31nox838qNdzksbPySWc",
"nbuzhfwMoNzA3PaFnyLcRxE9bTJPDkjZ6Rf6Y6o2ckXZfzZzXBT",
"cQN9PoxZeCWK1x56xnz6QYAsvR11XAce3Ehp3gMUdfSQ53Y2mPzx",
"1Gm3N3rkef6iMbx4voBzaxtXcmmiMTqZPhcuAepRzYUJQW4qRpEnHvMojzof42hjFRf8PE2jPde",
"2TAq2tuN6x6m233bpT7yqdYQPELdTDJn1eU",
"ntEtnnGhqPii4joABvBtSEJG6BxjT2tUZqE8PcVYgk3RHpgxgHDCQxNbLJf7ardf1dDk2oCQ7Cf",
"Ky1YjoZNgQ196HJV3HpdkecfhRBmRZdMJk89Hi5KGfpfPwS2bUbfd",
"2A1q1YsMZowabbvta7kTy2Fd6qN4r5ZCeG3qLpvZBMzCixMUdkN2Y4dHB1wPsZAeVXUGD83MfRED"
]
}