@smartledger/bsv 7.12.0 → 8.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (56) hide show
  1. package/CHANGELOG.md +178 -0
  2. package/README.md +38 -38
  3. package/bsv-didweb.min.js +6 -6
  4. package/bsv-gdaf.min.js +66 -66
  5. package/bsv-ltp.min.js +46 -46
  6. package/bsv-mnemonic.min.js +8 -8
  7. package/bsv-smartcontract.min.js +1 -1
  8. package/bsv.bundle.js +66 -66
  9. package/bsv.min.js +66 -66
  10. package/docs/AUDIT_SCOPE.md +29 -21
  11. package/docs/MODULE_REFERENCE_COMPLETE.md +27 -27
  12. package/docs/advanced/UTXO_MANAGER_GUIDE.md +1 -1
  13. package/docs/getting-started/INSTALLATION.md +23 -23
  14. package/docs/getting-started/QUICK_START.md +7 -7
  15. package/docs/migration/FROM_BSV_1_5_6.md +5 -5
  16. package/index.js +10 -2
  17. package/lib/crypto/bn.js +22 -2
  18. package/lib/crypto/hash.browser.js +13 -5
  19. package/lib/crypto/hash.js +58 -2
  20. package/lib/crypto/random.js +72 -15
  21. package/lib/didweb/index.js +88 -9
  22. package/lib/encoding/base58.js +67 -3
  23. package/lib/mnemonic/mnemonic.js +19 -5
  24. package/lib/mnemonic/pbkdf2.js +35 -2
  25. package/lib/script/interpreter.js +420 -58
  26. package/lib/transaction/input/multisig.js +1 -1
  27. package/lib/transaction/input/multisigscripthash.js +1 -1
  28. package/lib/transaction/input/publickey.js +1 -1
  29. package/lib/transaction/input/publickeyhash.js +1 -1
  30. package/lib/transaction/sighash.js +18 -6
  31. package/lib/transaction/signature.js +1 -1
  32. package/lib/util/inherits.js +37 -0
  33. package/package.json +7 -8
  34. package/test/consensus/base58-vectors.js +120 -0
  35. package/test/consensus/sv-script-vectors.js +81 -0
  36. package/test/consensus/sv-sighash-vectors.js +51 -0
  37. package/test/consensus/sv-tx-vectors.js +48 -0
  38. package/test/crypto/backend_selection.js +126 -0
  39. package/test/crypto/random.js +73 -0
  40. package/test/data/bitcoin-sv/README.md +170 -0
  41. package/test/data/bitcoin-sv/base58_encode_decode.json +14 -0
  42. package/test/data/bitcoin-sv/base58_keys_invalid.json +152 -0
  43. package/test/data/bitcoin-sv/base58_keys_valid.json +452 -0
  44. package/test/data/bitcoin-sv/script_tests.json +2591 -0
  45. package/test/data/bitcoin-sv/sighash.json +1003 -0
  46. package/test/data/bitcoin-sv/tx_invalid.json +285 -0
  47. package/test/data/bitcoin-sv/tx_valid.json +367 -0
  48. package/test/didweb/relationships.js +144 -0
  49. package/test/regressions.js +35 -0
  50. package/test/script/chronicle.js +170 -25
  51. package/test/script/defaults.js +93 -0
  52. package/test/script/genesis_limits.js +62 -6
  53. package/test/script/interpreter.js +24 -8
  54. package/test/transaction/sighash.js +21 -1
  55. package/test/transaction/unspentoutput.js +6 -1
  56. package/version.js +1 -1
@@ -0,0 +1,452 @@
1
+ [
2
+ [
3
+ "1AGNa15ZQXAZUgFiqJ2i7Z2DPU2J6hW62i",
4
+ "65a16059864a2fdbc7c99a4723a8395bc6f188eb",
5
+ {
6
+ "addrType": "pubkey",
7
+ "isPrivkey": false,
8
+ "isTestnet": false
9
+ }
10
+ ],
11
+ [
12
+ "3CMNFxN1oHBc4R1EpboAL5yzHGgE611Xou",
13
+ "74f209f6ea907e2ea48f74fae05782ae8a665257",
14
+ {
15
+ "addrType": "script",
16
+ "isPrivkey": false,
17
+ "isTestnet": false
18
+ }
19
+ ],
20
+ [
21
+ "mo9ncXisMeAoXwqcV5EWuyncbmCcQN4rVs",
22
+ "53c0307d6851aa0ce7825ba883c6bd9ad242b486",
23
+ {
24
+ "addrType": "pubkey",
25
+ "isPrivkey": false,
26
+ "isTestnet": true
27
+ }
28
+ ],
29
+ [
30
+ "2N2JD6wb56AfK4tfmM6PwdVmoYk2dCKf4Br",
31
+ "6349a418fc4578d10a372b54b45c280cc8c4382f",
32
+ {
33
+ "addrType": "script",
34
+ "isPrivkey": false,
35
+ "isTestnet": true
36
+ }
37
+ ],
38
+ [
39
+ "5Kd3NBUAdUnhyzenEwVLy9pBKxSwXvE9FMPyR4UKZvpe6E3AgLr",
40
+ "eddbdc1168f1daeadbd3e44c1e3f8f5a284c2029f78ad26af98583a499de5b19",
41
+ {
42
+ "isCompressed": false,
43
+ "isPrivkey": true,
44
+ "isTestnet": false
45
+ }
46
+ ],
47
+ [
48
+ "Kz6UJmQACJmLtaQj5A3JAge4kVTNQ8gbvXuwbmCj7bsaabudb3RD",
49
+ "55c9bccb9ed68446d1b75273bbce89d7fe013a8acd1625514420fb2aca1a21c4",
50
+ {
51
+ "isCompressed": true,
52
+ "isPrivkey": true,
53
+ "isTestnet": false
54
+ }
55
+ ],
56
+ [
57
+ "9213qJab2HNEpMpYNBa7wHGFKKbkDn24jpANDs2huN3yi4J11ko",
58
+ "36cb93b9ab1bdabf7fb9f2c04f1b9cc879933530ae7842398eef5a63a56800c2",
59
+ {
60
+ "isCompressed": false,
61
+ "isPrivkey": true,
62
+ "isTestnet": true
63
+ }
64
+ ],
65
+ [
66
+ "cTpB4YiyKiBcPxnefsDpbnDxFDffjqJob8wGCEDXxgQ7zQoMXJdH",
67
+ "b9f4892c9e8282028fea1d2667c4dc5213564d41fc5783896a0d843fc15089f3",
68
+ {
69
+ "isCompressed": true,
70
+ "isPrivkey": true,
71
+ "isTestnet": true
72
+ }
73
+ ],
74
+ [
75
+ "1Ax4gZtb7gAit2TivwejZHYtNNLT18PUXJ",
76
+ "6d23156cbbdcc82a5a47eee4c2c7c583c18b6bf4",
77
+ {
78
+ "addrType": "pubkey",
79
+ "isPrivkey": false,
80
+ "isTestnet": false
81
+ }
82
+ ],
83
+ [
84
+ "3QjYXhTkvuj8qPaXHTTWb5wjXhdsLAAWVy",
85
+ "fcc5460dd6e2487c7d75b1963625da0e8f4c5975",
86
+ {
87
+ "addrType": "script",
88
+ "isPrivkey": false,
89
+ "isTestnet": false
90
+ }
91
+ ],
92
+ [
93
+ "n3ZddxzLvAY9o7184TB4c6FJasAybsw4HZ",
94
+ "f1d470f9b02370fdec2e6b708b08ac431bf7a5f7",
95
+ {
96
+ "addrType": "pubkey",
97
+ "isPrivkey": false,
98
+ "isTestnet": true
99
+ }
100
+ ],
101
+ [
102
+ "2NBFNJTktNa7GZusGbDbGKRZTxdK9VVez3n",
103
+ "c579342c2c4c9220205e2cdc285617040c924a0a",
104
+ {
105
+ "addrType": "script",
106
+ "isPrivkey": false,
107
+ "isTestnet": true
108
+ }
109
+ ],
110
+ [
111
+ "5K494XZwps2bGyeL71pWid4noiSNA2cfCibrvRWqcHSptoFn7rc",
112
+ "a326b95ebae30164217d7a7f57d72ab2b54e3be64928a19da0210b9568d4015e",
113
+ {
114
+ "isCompressed": false,
115
+ "isPrivkey": true,
116
+ "isTestnet": false
117
+ }
118
+ ],
119
+ [
120
+ "L1RrrnXkcKut5DEMwtDthjwRcTTwED36thyL1DebVrKuwvohjMNi",
121
+ "7d998b45c219a1e38e99e7cbd312ef67f77a455a9b50c730c27f02c6f730dfb4",
122
+ {
123
+ "isCompressed": true,
124
+ "isPrivkey": true,
125
+ "isTestnet": false
126
+ }
127
+ ],
128
+ [
129
+ "93DVKyFYwSN6wEo3E2fCrFPUp17FtrtNi2Lf7n4G3garFb16CRj",
130
+ "d6bca256b5abc5602ec2e1c121a08b0da2556587430bcf7e1898af2224885203",
131
+ {
132
+ "isCompressed": false,
133
+ "isPrivkey": true,
134
+ "isTestnet": true
135
+ }
136
+ ],
137
+ [
138
+ "cTDVKtMGVYWTHCb1AFjmVbEbWjvKpKqKgMaR3QJxToMSQAhmCeTN",
139
+ "a81ca4e8f90181ec4b61b6a7eb998af17b2cb04de8a03b504b9e34c4c61db7d9",
140
+ {
141
+ "isCompressed": true,
142
+ "isPrivkey": true,
143
+ "isTestnet": true
144
+ }
145
+ ],
146
+ [
147
+ "1C5bSj1iEGUgSTbziymG7Cn18ENQuT36vv",
148
+ "7987ccaa53d02c8873487ef919677cd3db7a6912",
149
+ {
150
+ "addrType": "pubkey",
151
+ "isPrivkey": false,
152
+ "isTestnet": false
153
+ }
154
+ ],
155
+ [
156
+ "3AnNxabYGoTxYiTEZwFEnerUoeFXK2Zoks",
157
+ "63bcc565f9e68ee0189dd5cc67f1b0e5f02f45cb",
158
+ {
159
+ "addrType": "script",
160
+ "isPrivkey": false,
161
+ "isTestnet": false
162
+ }
163
+ ],
164
+ [
165
+ "n3LnJXCqbPjghuVs8ph9CYsAe4Sh4j97wk",
166
+ "ef66444b5b17f14e8fae6e7e19b045a78c54fd79",
167
+ {
168
+ "addrType": "pubkey",
169
+ "isPrivkey": false,
170
+ "isTestnet": true
171
+ }
172
+ ],
173
+ [
174
+ "2NB72XtkjpnATMggui83aEtPawyyKvnbX2o",
175
+ "c3e55fceceaa4391ed2a9677f4a4d34eacd021a0",
176
+ {
177
+ "addrType": "script",
178
+ "isPrivkey": false,
179
+ "isTestnet": true
180
+ }
181
+ ],
182
+ [
183
+ "5KaBW9vNtWNhc3ZEDyNCiXLPdVPHCikRxSBWwV9NrpLLa4LsXi9",
184
+ "e75d936d56377f432f404aabb406601f892fd49da90eb6ac558a733c93b47252",
185
+ {
186
+ "isCompressed": false,
187
+ "isPrivkey": true,
188
+ "isTestnet": false
189
+ }
190
+ ],
191
+ [
192
+ "L1axzbSyynNYA8mCAhzxkipKkfHtAXYF4YQnhSKcLV8YXA874fgT",
193
+ "8248bd0375f2f75d7e274ae544fb920f51784480866b102384190b1addfbaa5c",
194
+ {
195
+ "isCompressed": true,
196
+ "isPrivkey": true,
197
+ "isTestnet": false
198
+ }
199
+ ],
200
+ [
201
+ "927CnUkUbasYtDwYwVn2j8GdTuACNnKkjZ1rpZd2yBB1CLcnXpo",
202
+ "44c4f6a096eac5238291a94cc24c01e3b19b8d8cef72874a079e00a242237a52",
203
+ {
204
+ "isCompressed": false,
205
+ "isPrivkey": true,
206
+ "isTestnet": true
207
+ }
208
+ ],
209
+ [
210
+ "cUcfCMRjiQf85YMzzQEk9d1s5A4K7xL5SmBCLrezqXFuTVefyhY7",
211
+ "d1de707020a9059d6d3abaf85e17967c6555151143db13dbb06db78df0f15c69",
212
+ {
213
+ "isCompressed": true,
214
+ "isPrivkey": true,
215
+ "isTestnet": true
216
+ }
217
+ ],
218
+ [
219
+ "1Gqk4Tv79P91Cc1STQtU3s1W6277M2CVWu",
220
+ "adc1cc2081a27206fae25792f28bbc55b831549d",
221
+ {
222
+ "addrType": "pubkey",
223
+ "isPrivkey": false,
224
+ "isTestnet": false
225
+ }
226
+ ],
227
+ [
228
+ "33vt8ViH5jsr115AGkW6cEmEz9MpvJSwDk",
229
+ "188f91a931947eddd7432d6e614387e32b244709",
230
+ {
231
+ "addrType": "script",
232
+ "isPrivkey": false,
233
+ "isTestnet": false
234
+ }
235
+ ],
236
+ [
237
+ "mhaMcBxNh5cqXm4aTQ6EcVbKtfL6LGyK2H",
238
+ "1694f5bc1a7295b600f40018a618a6ea48eeb498",
239
+ {
240
+ "addrType": "pubkey",
241
+ "isPrivkey": false,
242
+ "isTestnet": true
243
+ }
244
+ ],
245
+ [
246
+ "2MxgPqX1iThW3oZVk9KoFcE5M4JpiETssVN",
247
+ "3b9b3fd7a50d4f08d1a5b0f62f644fa7115ae2f3",
248
+ {
249
+ "addrType": "script",
250
+ "isPrivkey": false,
251
+ "isTestnet": true
252
+ }
253
+ ],
254
+ [
255
+ "5HtH6GdcwCJA4ggWEL1B3jzBBUB8HPiBi9SBc5h9i4Wk4PSeApR",
256
+ "091035445ef105fa1bb125eccfb1882f3fe69592265956ade751fd095033d8d0",
257
+ {
258
+ "isCompressed": false,
259
+ "isPrivkey": true,
260
+ "isTestnet": false
261
+ }
262
+ ],
263
+ [
264
+ "L2xSYmMeVo3Zek3ZTsv9xUrXVAmrWxJ8Ua4cw8pkfbQhcEFhkXT8",
265
+ "ab2b4bcdfc91d34dee0ae2a8c6b6668dadaeb3a88b9859743156f462325187af",
266
+ {
267
+ "isCompressed": true,
268
+ "isPrivkey": true,
269
+ "isTestnet": false
270
+ }
271
+ ],
272
+ [
273
+ "92xFEve1Z9N8Z641KQQS7ByCSb8kGjsDzw6fAmjHN1LZGKQXyMq",
274
+ "b4204389cef18bbe2b353623cbf93e8678fbc92a475b664ae98ed594e6cf0856",
275
+ {
276
+ "isCompressed": false,
277
+ "isPrivkey": true,
278
+ "isTestnet": true
279
+ }
280
+ ],
281
+ [
282
+ "cVM65tdYu1YK37tNoAyGoJTR13VBYFva1vg9FLuPAsJijGvG6NEA",
283
+ "e7b230133f1b5489843260236b06edca25f66adb1be455fbd38d4010d48faeef",
284
+ {
285
+ "isCompressed": true,
286
+ "isPrivkey": true,
287
+ "isTestnet": true
288
+ }
289
+ ],
290
+ [
291
+ "1JwMWBVLtiqtscbaRHai4pqHokhFCbtoB4",
292
+ "c4c1b72491ede1eedaca00618407ee0b772cad0d",
293
+ {
294
+ "addrType": "pubkey",
295
+ "isPrivkey": false,
296
+ "isTestnet": false
297
+ }
298
+ ],
299
+ [
300
+ "3QCzvfL4ZRvmJFiWWBVwxfdaNBT8EtxB5y",
301
+ "f6fe69bcb548a829cce4c57bf6fff8af3a5981f9",
302
+ {
303
+ "addrType": "script",
304
+ "isPrivkey": false,
305
+ "isTestnet": false
306
+ }
307
+ ],
308
+ [
309
+ "mizXiucXRCsEriQCHUkCqef9ph9qtPbZZ6",
310
+ "261f83568a098a8638844bd7aeca039d5f2352c0",
311
+ {
312
+ "addrType": "pubkey",
313
+ "isPrivkey": false,
314
+ "isTestnet": true
315
+ }
316
+ ],
317
+ [
318
+ "2NEWDzHWwY5ZZp8CQWbB7ouNMLqCia6YRda",
319
+ "e930e1834a4d234702773951d627cce82fbb5d2e",
320
+ {
321
+ "addrType": "script",
322
+ "isPrivkey": false,
323
+ "isTestnet": true
324
+ }
325
+ ],
326
+ [
327
+ "5KQmDryMNDcisTzRp3zEq9e4awRmJrEVU1j5vFRTKpRNYPqYrMg",
328
+ "d1fab7ab7385ad26872237f1eb9789aa25cc986bacc695e07ac571d6cdac8bc0",
329
+ {
330
+ "isCompressed": false,
331
+ "isPrivkey": true,
332
+ "isTestnet": false
333
+ }
334
+ ],
335
+ [
336
+ "L39Fy7AC2Hhj95gh3Yb2AU5YHh1mQSAHgpNixvm27poizcJyLtUi",
337
+ "b0bbede33ef254e8376aceb1510253fc3550efd0fcf84dcd0c9998b288f166b3",
338
+ {
339
+ "isCompressed": true,
340
+ "isPrivkey": true,
341
+ "isTestnet": false
342
+ }
343
+ ],
344
+ [
345
+ "91cTVUcgydqyZLgaANpf1fvL55FH53QMm4BsnCADVNYuWuqdVys",
346
+ "037f4192c630f399d9271e26c575269b1d15be553ea1a7217f0cb8513cef41cb",
347
+ {
348
+ "isCompressed": false,
349
+ "isPrivkey": true,
350
+ "isTestnet": true
351
+ }
352
+ ],
353
+ [
354
+ "cQspfSzsgLeiJGB2u8vrAiWpCU4MxUT6JseWo2SjXy4Qbzn2fwDw",
355
+ "6251e205e8ad508bab5596bee086ef16cd4b239e0cc0c5d7c4e6035441e7d5de",
356
+ {
357
+ "isCompressed": true,
358
+ "isPrivkey": true,
359
+ "isTestnet": true
360
+ }
361
+ ],
362
+ [
363
+ "19dcawoKcZdQz365WpXWMhX6QCUpR9SY4r",
364
+ "5eadaf9bb7121f0f192561a5a62f5e5f54210292",
365
+ {
366
+ "addrType": "pubkey",
367
+ "isPrivkey": false,
368
+ "isTestnet": false
369
+ }
370
+ ],
371
+ [
372
+ "37Sp6Rv3y4kVd1nQ1JV5pfqXccHNyZm1x3",
373
+ "3f210e7277c899c3a155cc1c90f4106cbddeec6e",
374
+ {
375
+ "addrType": "script",
376
+ "isPrivkey": false,
377
+ "isTestnet": false
378
+ }
379
+ ],
380
+ [
381
+ "myoqcgYiehufrsnnkqdqbp69dddVDMopJu",
382
+ "c8a3c2a09a298592c3e180f02487cd91ba3400b5",
383
+ {
384
+ "addrType": "pubkey",
385
+ "isPrivkey": false,
386
+ "isTestnet": true
387
+ }
388
+ ],
389
+ [
390
+ "2N7FuwuUuoTBrDFdrAZ9KxBmtqMLxce9i1C",
391
+ "99b31df7c9068d1481b596578ddbb4d3bd90baeb",
392
+ {
393
+ "addrType": "script",
394
+ "isPrivkey": false,
395
+ "isTestnet": true
396
+ }
397
+ ],
398
+ [
399
+ "5KL6zEaMtPRXZKo1bbMq7JDjjo1bJuQcsgL33je3oY8uSJCR5b4",
400
+ "c7666842503db6dc6ea061f092cfb9c388448629a6fe868d068c42a488b478ae",
401
+ {
402
+ "isCompressed": false,
403
+ "isPrivkey": true,
404
+ "isTestnet": false
405
+ }
406
+ ],
407
+ [
408
+ "KwV9KAfwbwt51veZWNscRTeZs9CKpojyu1MsPnaKTF5kz69H1UN2",
409
+ "07f0803fc5399e773555ab1e8939907e9badacc17ca129e67a2f5f2ff84351dd",
410
+ {
411
+ "isCompressed": true,
412
+ "isPrivkey": true,
413
+ "isTestnet": false
414
+ }
415
+ ],
416
+ [
417
+ "93N87D6uxSBzwXvpokpzg8FFmfQPmvX4xHoWQe3pLdYpbiwT5YV",
418
+ "ea577acfb5d1d14d3b7b195c321566f12f87d2b77ea3a53f68df7ebf8604a801",
419
+ {
420
+ "isCompressed": false,
421
+ "isPrivkey": true,
422
+ "isTestnet": true
423
+ }
424
+ ],
425
+ [
426
+ "cMxXusSihaX58wpJ3tNuuUcZEQGt6DKJ1wEpxys88FFaQCYjku9h",
427
+ "0b3b34f0958d8a268193a9814da92c3e8b58b4a4378a542863e34ac289cd830c",
428
+ {
429
+ "isCompressed": true,
430
+ "isPrivkey": true,
431
+ "isTestnet": true
432
+ }
433
+ ],
434
+ [
435
+ "13p1ijLwsnrcuyqcTvJXkq2ASdXqcnEBLE",
436
+ "1ed467017f043e91ed4c44b4e8dd674db211c4e6",
437
+ {
438
+ "addrType": "pubkey",
439
+ "isPrivkey": false,
440
+ "isTestnet": false
441
+ }
442
+ ],
443
+ [
444
+ "3ALJH9Y951VCGcVZYAdpA3KchoP9McEj1G",
445
+ "5ece0cadddc415b1980f001785947120acdb36fc",
446
+ {
447
+ "addrType": "script",
448
+ "isPrivkey": false,
449
+ "isTestnet": false
450
+ }
451
+ ]
452
+ ]