@bsv/sdk 1.6.9 → 1.6.11

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 (654) hide show
  1. package/README.md +9 -4
  2. package/dist/cjs/package.json +4 -2
  3. package/dist/cjs/src/wallet/substrates/HTTPWalletJSON.js +5 -1
  4. package/dist/cjs/src/wallet/substrates/HTTPWalletJSON.js.map +1 -1
  5. package/dist/cjs/tsconfig.cjs.tsbuildinfo +1 -1
  6. package/dist/esm/src/wallet/substrates/HTTPWalletJSON.js +5 -1
  7. package/dist/esm/src/wallet/substrates/HTTPWalletJSON.js.map +1 -1
  8. package/dist/esm/tsconfig.esm.tsbuildinfo +1 -1
  9. package/dist/types/src/wallet/substrates/HTTPWalletJSON.d.ts.map +1 -1
  10. package/dist/types/tsconfig.types.tsbuildinfo +1 -1
  11. package/dist/umd/bundle.js +1 -1
  12. package/docs/concepts/beef.md +84 -0
  13. package/docs/concepts/chain-tracking.md +122 -0
  14. package/docs/concepts/decentralized-identity.md +184 -0
  15. package/docs/concepts/fees.md +217 -0
  16. package/docs/concepts/identity-certificates.md +255 -0
  17. package/docs/concepts/index.md +62 -0
  18. package/docs/concepts/key-management.md +176 -0
  19. package/docs/concepts/script-templates.md +163 -0
  20. package/docs/concepts/sdk-philosophy.md +72 -0
  21. package/docs/concepts/signatures.md +179 -0
  22. package/docs/concepts/spv-verification.md +106 -0
  23. package/docs/concepts/transaction-encoding.md +148 -0
  24. package/docs/concepts/transaction-structure.md +63 -0
  25. package/docs/concepts/trust-model.md +123 -0
  26. package/docs/concepts/verification.md +219 -0
  27. package/docs/concepts/wallet-integration.md +95 -0
  28. package/docs/guides/direct-transaction-creation.md +137 -0
  29. package/docs/guides/http-client-configuration.md +414 -0
  30. package/docs/guides/index.md +30 -0
  31. package/docs/guides/transaction-signing-methods.md +268 -0
  32. package/docs/index.md +74 -0
  33. package/docs/reference/arc-config.md +698 -0
  34. package/docs/reference/brc-100.md +33 -0
  35. package/docs/reference/configuration.md +829 -0
  36. package/docs/reference/debugging.md +700 -0
  37. package/docs/reference/errors.md +547 -0
  38. package/docs/reference/index.md +98 -0
  39. package/docs/reference/network-config.md +914 -0
  40. package/docs/reference/op-codes.md +306 -0
  41. package/docs/reference/transaction-signatures.md +94 -0
  42. package/docs/requirements.txt +3 -0
  43. package/docs/tutorials/advanced-transaction.md +575 -0
  44. package/docs/tutorials/aes-encryption.md +947 -0
  45. package/docs/tutorials/authfetch-tutorial.md +957 -0
  46. package/docs/tutorials/ecdh-key-exchange.md +547 -0
  47. package/docs/tutorials/elliptic-curve-fundamentals.md +603 -0
  48. package/docs/tutorials/error-handling.md +1215 -0
  49. package/docs/tutorials/first-transaction-low-level.md +204 -0
  50. package/docs/tutorials/first-transaction.md +278 -0
  51. package/docs/tutorials/hashes-and-hmacs.md +814 -0
  52. package/docs/tutorials/identity-management.md +702 -0
  53. package/docs/tutorials/index.md +182 -0
  54. package/docs/tutorials/key-management.md +536 -0
  55. package/docs/tutorials/protowallet-development.md +716 -0
  56. package/docs/tutorials/script-construction.md +690 -0
  57. package/docs/tutorials/spv-merkle-proofs.md +682 -0
  58. package/docs/tutorials/testnet-transactions-low-level.md +352 -0
  59. package/docs/tutorials/transaction-broadcasting.md +535 -0
  60. package/docs/tutorials/transaction-types.md +419 -0
  61. package/docs/tutorials/type-42.md +582 -0
  62. package/docs/tutorials/uhrp-storage.md +579 -0
  63. package/package.json +4 -2
  64. package/src/wallet/substrates/HTTPWalletJSON.ts +6 -1
  65. package/dist/cjs/src/auth/__tests/Peer.test.js +0 -446
  66. package/dist/cjs/src/auth/__tests/Peer.test.js.map +0 -1
  67. package/dist/cjs/src/auth/__tests/SessionManager.test.js +0 -69
  68. package/dist/cjs/src/auth/__tests/SessionManager.test.js.map +0 -1
  69. package/dist/cjs/src/auth/certificates/__tests/Certificate.test.js +0 -182
  70. package/dist/cjs/src/auth/certificates/__tests/Certificate.test.js.map +0 -1
  71. package/dist/cjs/src/auth/certificates/__tests/MasterCertificate.test.js +0 -184
  72. package/dist/cjs/src/auth/certificates/__tests/MasterCertificate.test.js.map +0 -1
  73. package/dist/cjs/src/auth/certificates/__tests/VerifiableCertificate.test.js +0 -75
  74. package/dist/cjs/src/auth/certificates/__tests/VerifiableCertificate.test.js.map +0 -1
  75. package/dist/cjs/src/auth/utils/__tests/cryptononce.test.js +0 -101
  76. package/dist/cjs/src/auth/utils/__tests/cryptononce.test.js.map +0 -1
  77. package/dist/cjs/src/auth/utils/__tests/getVerifiableCertificates.test.js +0 -106
  78. package/dist/cjs/src/auth/utils/__tests/getVerifiableCertificates.test.js.map +0 -1
  79. package/dist/cjs/src/auth/utils/__tests/validateCertificates.test.js +0 -111
  80. package/dist/cjs/src/auth/utils/__tests/validateCertificates.test.js.map +0 -1
  81. package/dist/cjs/src/auth/utils/certificateHelpers.js +0 -51
  82. package/dist/cjs/src/auth/utils/certificateHelpers.js.map +0 -1
  83. package/dist/cjs/src/compat/__tests/BSM.test.js +0 -69
  84. package/dist/cjs/src/compat/__tests/BSM.test.js.map +0 -1
  85. package/dist/cjs/src/compat/__tests/ECIES.test.js +0 -115
  86. package/dist/cjs/src/compat/__tests/ECIES.test.js.map +0 -1
  87. package/dist/cjs/src/compat/__tests/HD.test.js +0 -336
  88. package/dist/cjs/src/compat/__tests/HD.test.js.map +0 -1
  89. package/dist/cjs/src/compat/__tests/Mnemonic.test.js +0 -150
  90. package/dist/cjs/src/compat/__tests/Mnemonic.test.js.map +0 -1
  91. package/dist/cjs/src/compat/__tests/Mnemonic.vectors.js +0 -175
  92. package/dist/cjs/src/compat/__tests/Mnemonic.vectors.js.map +0 -1
  93. package/dist/cjs/src/messages/__tests/EncryptedMessage.test.js +0 -57
  94. package/dist/cjs/src/messages/__tests/EncryptedMessage.test.js.map +0 -1
  95. package/dist/cjs/src/messages/__tests/SignedMessage.test.js +0 -52
  96. package/dist/cjs/src/messages/__tests/SignedMessage.test.js.map +0 -1
  97. package/dist/cjs/src/overlay-tools/__tests/LookupResolver.test.js +0 -1471
  98. package/dist/cjs/src/overlay-tools/__tests/LookupResolver.test.js.map +0 -1
  99. package/dist/cjs/src/overlay-tools/__tests/OverlayAdminTokenTemplate.test.js +0 -78
  100. package/dist/cjs/src/overlay-tools/__tests/OverlayAdminTokenTemplate.test.js.map +0 -1
  101. package/dist/cjs/src/overlay-tools/__tests/SHIPBroadcaster.test.js +0 -933
  102. package/dist/cjs/src/overlay-tools/__tests/SHIPBroadcaster.test.js.map +0 -1
  103. package/dist/cjs/src/primitives/__tests/AESGCM.test.js +0 -248
  104. package/dist/cjs/src/primitives/__tests/AESGCM.test.js.map +0 -1
  105. package/dist/cjs/src/primitives/__tests/BRC42.private.vectors.js +0 -36
  106. package/dist/cjs/src/primitives/__tests/BRC42.private.vectors.js.map +0 -1
  107. package/dist/cjs/src/primitives/__tests/BRC42.public.vectors.js +0 -36
  108. package/dist/cjs/src/primitives/__tests/BRC42.public.vectors.js.map +0 -1
  109. package/dist/cjs/src/primitives/__tests/BigNumber.arithmatic.test.js +0 -501
  110. package/dist/cjs/src/primitives/__tests/BigNumber.arithmatic.test.js.map +0 -1
  111. package/dist/cjs/src/primitives/__tests/BigNumber.binary.test.js +0 -185
  112. package/dist/cjs/src/primitives/__tests/BigNumber.binary.test.js.map +0 -1
  113. package/dist/cjs/src/primitives/__tests/BigNumber.constructor.test.js +0 -149
  114. package/dist/cjs/src/primitives/__tests/BigNumber.constructor.test.js.map +0 -1
  115. package/dist/cjs/src/primitives/__tests/BigNumber.dhGroup.test.js +0 -23
  116. package/dist/cjs/src/primitives/__tests/BigNumber.dhGroup.test.js.map +0 -1
  117. package/dist/cjs/src/primitives/__tests/BigNumber.fixtures.js +0 -268
  118. package/dist/cjs/src/primitives/__tests/BigNumber.fixtures.js.map +0 -1
  119. package/dist/cjs/src/primitives/__tests/BigNumber.serializers.test.js +0 -147
  120. package/dist/cjs/src/primitives/__tests/BigNumber.serializers.test.js.map +0 -1
  121. package/dist/cjs/src/primitives/__tests/BigNumber.utils.test.js +0 -322
  122. package/dist/cjs/src/primitives/__tests/BigNumber.utils.test.js.map +0 -1
  123. package/dist/cjs/src/primitives/__tests/Curve.unit.test.js +0 -145
  124. package/dist/cjs/src/primitives/__tests/Curve.unit.test.js.map +0 -1
  125. package/dist/cjs/src/primitives/__tests/DRBG.test.js +0 -22
  126. package/dist/cjs/src/primitives/__tests/DRBG.test.js.map +0 -1
  127. package/dist/cjs/src/primitives/__tests/DRBG.vectors.js +0 -170
  128. package/dist/cjs/src/primitives/__tests/DRBG.vectors.js.map +0 -1
  129. package/dist/cjs/src/primitives/__tests/ECDH.test.js +0 -34
  130. package/dist/cjs/src/primitives/__tests/ECDH.test.js.map +0 -1
  131. package/dist/cjs/src/primitives/__tests/ECDSA.test.js +0 -89
  132. package/dist/cjs/src/primitives/__tests/ECDSA.test.js.map +0 -1
  133. package/dist/cjs/src/primitives/__tests/HMAC.test.js +0 -60
  134. package/dist/cjs/src/primitives/__tests/HMAC.test.js.map +0 -1
  135. package/dist/cjs/src/primitives/__tests/Hash.test.js +0 -159
  136. package/dist/cjs/src/primitives/__tests/Hash.test.js.map +0 -1
  137. package/dist/cjs/src/primitives/__tests/PBKDF2.vectors.js +0 -122
  138. package/dist/cjs/src/primitives/__tests/PBKDF2.vectors.js.map +0 -1
  139. package/dist/cjs/src/primitives/__tests/PrivateKey.split.test.js +0 -105
  140. package/dist/cjs/src/primitives/__tests/PrivateKey.split.test.js.map +0 -1
  141. package/dist/cjs/src/primitives/__tests/PrivateKey.test.js +0 -90
  142. package/dist/cjs/src/primitives/__tests/PrivateKey.test.js.map +0 -1
  143. package/dist/cjs/src/primitives/__tests/PublicKey.test.js +0 -83
  144. package/dist/cjs/src/primitives/__tests/PublicKey.test.js.map +0 -1
  145. package/dist/cjs/src/primitives/__tests/Random.test.js +0 -19
  146. package/dist/cjs/src/primitives/__tests/Random.test.js.map +0 -1
  147. package/dist/cjs/src/primitives/__tests/Reader.test.js +0 -282
  148. package/dist/cjs/src/primitives/__tests/Reader.test.js.map +0 -1
  149. package/dist/cjs/src/primitives/__tests/ReductionContext.test.js +0 -224
  150. package/dist/cjs/src/primitives/__tests/ReductionContext.test.js.map +0 -1
  151. package/dist/cjs/src/primitives/__tests/Schnorr.test.js +0 -213
  152. package/dist/cjs/src/primitives/__tests/Schnorr.test.js.map +0 -1
  153. package/dist/cjs/src/primitives/__tests/SymmetricKey.test.js +0 -51
  154. package/dist/cjs/src/primitives/__tests/SymmetricKey.test.js.map +0 -1
  155. package/dist/cjs/src/primitives/__tests/SymmetricKey.vectors.js +0 -43
  156. package/dist/cjs/src/primitives/__tests/SymmetricKey.vectors.js.map +0 -1
  157. package/dist/cjs/src/primitives/__tests/Writer.test.js +0 -176
  158. package/dist/cjs/src/primitives/__tests/Writer.test.js.map +0 -1
  159. package/dist/cjs/src/primitives/__tests/bug-31.test.js +0 -32
  160. package/dist/cjs/src/primitives/__tests/bug-31.test.js.map +0 -1
  161. package/dist/cjs/src/primitives/__tests/sighash.vectors.js +0 -3506
  162. package/dist/cjs/src/primitives/__tests/sighash.vectors.js.map +0 -1
  163. package/dist/cjs/src/primitives/__tests/utils.test.js +0 -110
  164. package/dist/cjs/src/primitives/__tests/utils.test.js.map +0 -1
  165. package/dist/cjs/src/script/__tests/Script.test.js +0 -347
  166. package/dist/cjs/src/script/__tests/Script.test.js.map +0 -1
  167. package/dist/cjs/src/script/__tests/Spend.test.js +0 -282
  168. package/dist/cjs/src/script/__tests/Spend.test.js.map +0 -1
  169. package/dist/cjs/src/script/__tests/SpendComplex.test.js +0 -52
  170. package/dist/cjs/src/script/__tests/SpendComplex.test.js.map +0 -1
  171. package/dist/cjs/src/script/__tests/script.invalid.vectors.js +0 -2370
  172. package/dist/cjs/src/script/__tests/script.invalid.vectors.js.map +0 -1
  173. package/dist/cjs/src/script/__tests/script.valid.vectors.js +0 -1181
  174. package/dist/cjs/src/script/__tests/script.valid.vectors.js.map +0 -1
  175. package/dist/cjs/src/script/__tests/spend.valid.vectors.js +0 -2298
  176. package/dist/cjs/src/script/__tests/spend.valid.vectors.js.map +0 -1
  177. package/dist/cjs/src/script/templates/__tests/PushDrop.test.js +0 -161
  178. package/dist/cjs/src/script/templates/__tests/PushDrop.test.js.map +0 -1
  179. package/dist/cjs/src/totp/__tests/totp.test.js +0 -67
  180. package/dist/cjs/src/totp/__tests/totp.test.js.map +0 -1
  181. package/dist/cjs/src/transaction/__tests/Beef.test.js +0 -393
  182. package/dist/cjs/src/transaction/__tests/Beef.test.js.map +0 -1
  183. package/dist/cjs/src/transaction/__tests/MerklePath.test.js +0 -209
  184. package/dist/cjs/src/transaction/__tests/MerklePath.test.js.map +0 -1
  185. package/dist/cjs/src/transaction/__tests/Transaction.benchmarks.test.js +0 -219
  186. package/dist/cjs/src/transaction/__tests/Transaction.benchmarks.test.js.map +0 -1
  187. package/dist/cjs/src/transaction/__tests/Transaction.test.js +0 -1073
  188. package/dist/cjs/src/transaction/__tests/Transaction.test.js.map +0 -1
  189. package/dist/cjs/src/transaction/__tests/bigtx.vectors.js +0 -7
  190. package/dist/cjs/src/transaction/__tests/bigtx.vectors.js.map +0 -1
  191. package/dist/cjs/src/transaction/__tests/bump.invalid.vectors.js +0 -11
  192. package/dist/cjs/src/transaction/__tests/bump.invalid.vectors.js.map +0 -1
  193. package/dist/cjs/src/transaction/__tests/bump.valid.vectors.js +0 -7
  194. package/dist/cjs/src/transaction/__tests/bump.valid.vectors.js.map +0 -1
  195. package/dist/cjs/src/transaction/__tests/tx.invalid.vectors.js +0 -230
  196. package/dist/cjs/src/transaction/__tests/tx.invalid.vectors.js.map +0 -1
  197. package/dist/cjs/src/transaction/__tests/tx.valid.vectors.js +0 -296
  198. package/dist/cjs/src/transaction/__tests/tx.valid.vectors.js.map +0 -1
  199. package/dist/cjs/src/transaction/broadcasters/__tests/ARC.test.js +0 -246
  200. package/dist/cjs/src/transaction/broadcasters/__tests/ARC.test.js.map +0 -1
  201. package/dist/cjs/src/transaction/broadcasters/__tests/WhatsOnChainBroadcaster.test.js +0 -148
  202. package/dist/cjs/src/transaction/broadcasters/__tests/WhatsOnChainBroadcaster.test.js.map +0 -1
  203. package/dist/cjs/src/transaction/chaintrackers/__tests/WhatsOnChainChainTracker.test.js +0 -155
  204. package/dist/cjs/src/transaction/chaintrackers/__tests/WhatsOnChainChainTracker.test.js.map +0 -1
  205. package/dist/cjs/src/wallet/ScriptTemplateSABPPP.js +0 -39
  206. package/dist/cjs/src/wallet/ScriptTemplateSABPPP.js.map +0 -1
  207. package/dist/cjs/src/wallet/WalletSigner.js +0 -260
  208. package/dist/cjs/src/wallet/WalletSigner.js.map +0 -1
  209. package/dist/cjs/src/wallet/__tests/CachedKeyDeriver.test.js +0 -269
  210. package/dist/cjs/src/wallet/__tests/CachedKeyDeriver.test.js.map +0 -1
  211. package/dist/cjs/src/wallet/__tests/KeyDeriver.test.js +0 -114
  212. package/dist/cjs/src/wallet/__tests/KeyDeriver.test.js.map +0 -1
  213. package/dist/cjs/src/wallet/__tests/ProtoWallet.test.js +0 -475
  214. package/dist/cjs/src/wallet/__tests/ProtoWallet.test.js.map +0 -1
  215. package/dist/cjs/src/wallet/createActionSdk.js +0 -230
  216. package/dist/cjs/src/wallet/createActionSdk.js.map +0 -1
  217. package/dist/cjs/src/wallet/sdk/CachedKeyDeriver.js +0 -174
  218. package/dist/cjs/src/wallet/sdk/CachedKeyDeriver.js.map +0 -1
  219. package/dist/cjs/src/wallet/sdk/CertOps.js +0 -181
  220. package/dist/cjs/src/wallet/sdk/CertOps.js.map +0 -1
  221. package/dist/cjs/src/wallet/sdk/Certificate.js +0 -162
  222. package/dist/cjs/src/wallet/sdk/Certificate.js.map +0 -1
  223. package/dist/cjs/src/wallet/sdk/KeyDeriver.js +0 -176
  224. package/dist/cjs/src/wallet/sdk/KeyDeriver.js.map +0 -1
  225. package/dist/cjs/src/wallet/sdk/ProtoWallet.js +0 -75
  226. package/dist/cjs/src/wallet/sdk/ProtoWallet.js.map +0 -1
  227. package/dist/cjs/src/wallet/sdk/StorageSyncReader.js +0 -3
  228. package/dist/cjs/src/wallet/sdk/StorageSyncReader.js.map +0 -1
  229. package/dist/cjs/src/wallet/sdk/WERR_errors.js +0 -107
  230. package/dist/cjs/src/wallet/sdk/WERR_errors.js.map +0 -1
  231. package/dist/cjs/src/wallet/sdk/Wallet.interfaces.js +0 -3
  232. package/dist/cjs/src/wallet/sdk/Wallet.interfaces.js.map +0 -1
  233. package/dist/cjs/src/wallet/sdk/WalletCrypto.js +0 -171
  234. package/dist/cjs/src/wallet/sdk/WalletCrypto.js.map +0 -1
  235. package/dist/cjs/src/wallet/sdk/WalletError.js +0 -103
  236. package/dist/cjs/src/wallet/sdk/WalletError.js.map +0 -1
  237. package/dist/cjs/src/wallet/sdk/WalletServices.interfaces.js +0 -3
  238. package/dist/cjs/src/wallet/sdk/WalletServices.interfaces.js.map +0 -1
  239. package/dist/cjs/src/wallet/sdk/WalletSigner.interfaces.js +0 -3
  240. package/dist/cjs/src/wallet/sdk/WalletSigner.interfaces.js.map +0 -1
  241. package/dist/cjs/src/wallet/sdk/WalletStorage.interfaces.js +0 -3
  242. package/dist/cjs/src/wallet/sdk/WalletStorage.interfaces.js.map +0 -1
  243. package/dist/cjs/src/wallet/sdk/index.js +0 -31
  244. package/dist/cjs/src/wallet/sdk/index.js.map +0 -1
  245. package/dist/cjs/src/wallet/sdk/types.js +0 -11
  246. package/dist/cjs/src/wallet/sdk/types.js.map +0 -1
  247. package/dist/cjs/src/wallet/sdk/validationHelpers.js +0 -601
  248. package/dist/cjs/src/wallet/sdk/validationHelpers.js.map +0 -1
  249. package/dist/cjs/src/wallet/substrates/__tests/WalletWire.integration.test.js +0 -1962
  250. package/dist/cjs/src/wallet/substrates/__tests/WalletWire.integration.test.js.map +0 -1
  251. package/dist/cjs/src/wallet/substrates/__tests/XDM.test.js +0 -579
  252. package/dist/cjs/src/wallet/substrates/__tests/XDM.test.js.map +0 -1
  253. package/dist/cjs/src/wallet/utilityHelpers.js +0 -305
  254. package/dist/cjs/src/wallet/utilityHelpers.js.map +0 -1
  255. package/dist/cjs/src/wallet/validationHelpers.js +0 -601
  256. package/dist/cjs/src/wallet/validationHelpers.js.map +0 -1
  257. package/dist/esm/src/auth/__tests/Peer.test.js +0 -448
  258. package/dist/esm/src/auth/__tests/Peer.test.js.map +0 -1
  259. package/dist/esm/src/auth/__tests/SessionManager.test.js +0 -69
  260. package/dist/esm/src/auth/__tests/SessionManager.test.js.map +0 -1
  261. package/dist/esm/src/auth/certificates/__tests/Certificate.test.js +0 -182
  262. package/dist/esm/src/auth/certificates/__tests/Certificate.test.js.map +0 -1
  263. package/dist/esm/src/auth/certificates/__tests/MasterCertificate.test.js +0 -184
  264. package/dist/esm/src/auth/certificates/__tests/MasterCertificate.test.js.map +0 -1
  265. package/dist/esm/src/auth/certificates/__tests/VerifiableCertificate.test.js +0 -75
  266. package/dist/esm/src/auth/certificates/__tests/VerifiableCertificate.test.js.map +0 -1
  267. package/dist/esm/src/auth/utils/__tests/cryptononce.test.js +0 -101
  268. package/dist/esm/src/auth/utils/__tests/cryptononce.test.js.map +0 -1
  269. package/dist/esm/src/auth/utils/__tests/getVerifiableCertificates.test.js +0 -106
  270. package/dist/esm/src/auth/utils/__tests/getVerifiableCertificates.test.js.map +0 -1
  271. package/dist/esm/src/auth/utils/__tests/validateCertificates.test.js +0 -111
  272. package/dist/esm/src/auth/utils/__tests/validateCertificates.test.js.map +0 -1
  273. package/dist/esm/src/auth/utils/certificateHelpers.js +0 -47
  274. package/dist/esm/src/auth/utils/certificateHelpers.js.map +0 -1
  275. package/dist/esm/src/compat/__tests/BSM.test.js +0 -69
  276. package/dist/esm/src/compat/__tests/BSM.test.js.map +0 -1
  277. package/dist/esm/src/compat/__tests/ECIES.test.js +0 -115
  278. package/dist/esm/src/compat/__tests/ECIES.test.js.map +0 -1
  279. package/dist/esm/src/compat/__tests/HD.test.js +0 -336
  280. package/dist/esm/src/compat/__tests/HD.test.js.map +0 -1
  281. package/dist/esm/src/compat/__tests/Mnemonic.test.js +0 -150
  282. package/dist/esm/src/compat/__tests/Mnemonic.test.js.map +0 -1
  283. package/dist/esm/src/compat/__tests/Mnemonic.vectors.js +0 -175
  284. package/dist/esm/src/compat/__tests/Mnemonic.vectors.js.map +0 -1
  285. package/dist/esm/src/messages/__tests/EncryptedMessage.test.js +0 -57
  286. package/dist/esm/src/messages/__tests/EncryptedMessage.test.js.map +0 -1
  287. package/dist/esm/src/messages/__tests/SignedMessage.test.js +0 -52
  288. package/dist/esm/src/messages/__tests/SignedMessage.test.js.map +0 -1
  289. package/dist/esm/src/overlay-tools/__tests/LookupResolver.test.js +0 -1471
  290. package/dist/esm/src/overlay-tools/__tests/LookupResolver.test.js.map +0 -1
  291. package/dist/esm/src/overlay-tools/__tests/OverlayAdminTokenTemplate.test.js +0 -78
  292. package/dist/esm/src/overlay-tools/__tests/OverlayAdminTokenTemplate.test.js.map +0 -1
  293. package/dist/esm/src/overlay-tools/__tests/SHIPBroadcaster.test.js +0 -933
  294. package/dist/esm/src/overlay-tools/__tests/SHIPBroadcaster.test.js.map +0 -1
  295. package/dist/esm/src/primitives/__tests/AESGCM.test.js +0 -248
  296. package/dist/esm/src/primitives/__tests/AESGCM.test.js.map +0 -1
  297. package/dist/esm/src/primitives/__tests/BRC42.private.vectors.js +0 -36
  298. package/dist/esm/src/primitives/__tests/BRC42.private.vectors.js.map +0 -1
  299. package/dist/esm/src/primitives/__tests/BRC42.public.vectors.js +0 -36
  300. package/dist/esm/src/primitives/__tests/BRC42.public.vectors.js.map +0 -1
  301. package/dist/esm/src/primitives/__tests/BigNumber.arithmatic.test.js +0 -501
  302. package/dist/esm/src/primitives/__tests/BigNumber.arithmatic.test.js.map +0 -1
  303. package/dist/esm/src/primitives/__tests/BigNumber.binary.test.js +0 -185
  304. package/dist/esm/src/primitives/__tests/BigNumber.binary.test.js.map +0 -1
  305. package/dist/esm/src/primitives/__tests/BigNumber.constructor.test.js +0 -149
  306. package/dist/esm/src/primitives/__tests/BigNumber.constructor.test.js.map +0 -1
  307. package/dist/esm/src/primitives/__tests/BigNumber.dhGroup.test.js +0 -23
  308. package/dist/esm/src/primitives/__tests/BigNumber.dhGroup.test.js.map +0 -1
  309. package/dist/esm/src/primitives/__tests/BigNumber.fixtures.js +0 -268
  310. package/dist/esm/src/primitives/__tests/BigNumber.fixtures.js.map +0 -1
  311. package/dist/esm/src/primitives/__tests/BigNumber.serializers.test.js +0 -147
  312. package/dist/esm/src/primitives/__tests/BigNumber.serializers.test.js.map +0 -1
  313. package/dist/esm/src/primitives/__tests/BigNumber.utils.test.js +0 -322
  314. package/dist/esm/src/primitives/__tests/BigNumber.utils.test.js.map +0 -1
  315. package/dist/esm/src/primitives/__tests/Curve.unit.test.js +0 -145
  316. package/dist/esm/src/primitives/__tests/Curve.unit.test.js.map +0 -1
  317. package/dist/esm/src/primitives/__tests/DRBG.test.js +0 -22
  318. package/dist/esm/src/primitives/__tests/DRBG.test.js.map +0 -1
  319. package/dist/esm/src/primitives/__tests/DRBG.vectors.js +0 -170
  320. package/dist/esm/src/primitives/__tests/DRBG.vectors.js.map +0 -1
  321. package/dist/esm/src/primitives/__tests/ECDH.test.js +0 -34
  322. package/dist/esm/src/primitives/__tests/ECDH.test.js.map +0 -1
  323. package/dist/esm/src/primitives/__tests/ECDSA.test.js +0 -89
  324. package/dist/esm/src/primitives/__tests/ECDSA.test.js.map +0 -1
  325. package/dist/esm/src/primitives/__tests/HMAC.test.js +0 -60
  326. package/dist/esm/src/primitives/__tests/HMAC.test.js.map +0 -1
  327. package/dist/esm/src/primitives/__tests/Hash.test.js +0 -159
  328. package/dist/esm/src/primitives/__tests/Hash.test.js.map +0 -1
  329. package/dist/esm/src/primitives/__tests/PBKDF2.vectors.js +0 -122
  330. package/dist/esm/src/primitives/__tests/PBKDF2.vectors.js.map +0 -1
  331. package/dist/esm/src/primitives/__tests/PrivateKey.split.test.js +0 -105
  332. package/dist/esm/src/primitives/__tests/PrivateKey.split.test.js.map +0 -1
  333. package/dist/esm/src/primitives/__tests/PrivateKey.test.js +0 -90
  334. package/dist/esm/src/primitives/__tests/PrivateKey.test.js.map +0 -1
  335. package/dist/esm/src/primitives/__tests/PublicKey.test.js +0 -83
  336. package/dist/esm/src/primitives/__tests/PublicKey.test.js.map +0 -1
  337. package/dist/esm/src/primitives/__tests/Random.test.js +0 -19
  338. package/dist/esm/src/primitives/__tests/Random.test.js.map +0 -1
  339. package/dist/esm/src/primitives/__tests/Reader.test.js +0 -282
  340. package/dist/esm/src/primitives/__tests/Reader.test.js.map +0 -1
  341. package/dist/esm/src/primitives/__tests/ReductionContext.test.js +0 -223
  342. package/dist/esm/src/primitives/__tests/ReductionContext.test.js.map +0 -1
  343. package/dist/esm/src/primitives/__tests/Schnorr.test.js +0 -213
  344. package/dist/esm/src/primitives/__tests/Schnorr.test.js.map +0 -1
  345. package/dist/esm/src/primitives/__tests/SymmetricKey.test.js +0 -51
  346. package/dist/esm/src/primitives/__tests/SymmetricKey.test.js.map +0 -1
  347. package/dist/esm/src/primitives/__tests/SymmetricKey.vectors.js +0 -43
  348. package/dist/esm/src/primitives/__tests/SymmetricKey.vectors.js.map +0 -1
  349. package/dist/esm/src/primitives/__tests/Writer.test.js +0 -176
  350. package/dist/esm/src/primitives/__tests/Writer.test.js.map +0 -1
  351. package/dist/esm/src/primitives/__tests/bug-31.test.js +0 -32
  352. package/dist/esm/src/primitives/__tests/bug-31.test.js.map +0 -1
  353. package/dist/esm/src/primitives/__tests/sighash.vectors.js +0 -3506
  354. package/dist/esm/src/primitives/__tests/sighash.vectors.js.map +0 -1
  355. package/dist/esm/src/primitives/__tests/utils.test.js +0 -110
  356. package/dist/esm/src/primitives/__tests/utils.test.js.map +0 -1
  357. package/dist/esm/src/script/__tests/Script.test.js +0 -347
  358. package/dist/esm/src/script/__tests/Script.test.js.map +0 -1
  359. package/dist/esm/src/script/__tests/Spend.test.js +0 -282
  360. package/dist/esm/src/script/__tests/Spend.test.js.map +0 -1
  361. package/dist/esm/src/script/__tests/SpendComplex.test.js +0 -51
  362. package/dist/esm/src/script/__tests/SpendComplex.test.js.map +0 -1
  363. package/dist/esm/src/script/__tests/script.invalid.vectors.js +0 -2370
  364. package/dist/esm/src/script/__tests/script.invalid.vectors.js.map +0 -1
  365. package/dist/esm/src/script/__tests/script.valid.vectors.js +0 -1181
  366. package/dist/esm/src/script/__tests/script.valid.vectors.js.map +0 -1
  367. package/dist/esm/src/script/__tests/spend.valid.vectors.js +0 -2298
  368. package/dist/esm/src/script/__tests/spend.valid.vectors.js.map +0 -1
  369. package/dist/esm/src/script/templates/__tests/PushDrop.test.js +0 -161
  370. package/dist/esm/src/script/templates/__tests/PushDrop.test.js.map +0 -1
  371. package/dist/esm/src/totp/__tests/totp.test.js +0 -67
  372. package/dist/esm/src/totp/__tests/totp.test.js.map +0 -1
  373. package/dist/esm/src/transaction/__tests/Beef.test.js +0 -393
  374. package/dist/esm/src/transaction/__tests/Beef.test.js.map +0 -1
  375. package/dist/esm/src/transaction/__tests/MerklePath.test.js +0 -209
  376. package/dist/esm/src/transaction/__tests/MerklePath.test.js.map +0 -1
  377. package/dist/esm/src/transaction/__tests/Transaction.benchmarks.test.js +0 -219
  378. package/dist/esm/src/transaction/__tests/Transaction.benchmarks.test.js.map +0 -1
  379. package/dist/esm/src/transaction/__tests/Transaction.test.js +0 -1072
  380. package/dist/esm/src/transaction/__tests/Transaction.test.js.map +0 -1
  381. package/dist/esm/src/transaction/__tests/bigtx.vectors.js +0 -7
  382. package/dist/esm/src/transaction/__tests/bigtx.vectors.js.map +0 -1
  383. package/dist/esm/src/transaction/__tests/bump.invalid.vectors.js +0 -11
  384. package/dist/esm/src/transaction/__tests/bump.invalid.vectors.js.map +0 -1
  385. package/dist/esm/src/transaction/__tests/bump.valid.vectors.js +0 -7
  386. package/dist/esm/src/transaction/__tests/bump.valid.vectors.js.map +0 -1
  387. package/dist/esm/src/transaction/__tests/tx.invalid.vectors.js +0 -230
  388. package/dist/esm/src/transaction/__tests/tx.invalid.vectors.js.map +0 -1
  389. package/dist/esm/src/transaction/__tests/tx.valid.vectors.js +0 -296
  390. package/dist/esm/src/transaction/__tests/tx.valid.vectors.js.map +0 -1
  391. package/dist/esm/src/transaction/broadcasters/__tests/ARC.test.js +0 -246
  392. package/dist/esm/src/transaction/broadcasters/__tests/ARC.test.js.map +0 -1
  393. package/dist/esm/src/transaction/broadcasters/__tests/WhatsOnChainBroadcaster.test.js +0 -148
  394. package/dist/esm/src/transaction/broadcasters/__tests/WhatsOnChainBroadcaster.test.js.map +0 -1
  395. package/dist/esm/src/transaction/chaintrackers/__tests/WhatsOnChainChainTracker.test.js +0 -155
  396. package/dist/esm/src/transaction/chaintrackers/__tests/WhatsOnChainChainTracker.test.js.map +0 -1
  397. package/dist/esm/src/wallet/ScriptTemplateSABPPP.js +0 -37
  398. package/dist/esm/src/wallet/ScriptTemplateSABPPP.js.map +0 -1
  399. package/dist/esm/src/wallet/WalletSigner.js +0 -263
  400. package/dist/esm/src/wallet/WalletSigner.js.map +0 -1
  401. package/dist/esm/src/wallet/__tests/CachedKeyDeriver.test.js +0 -269
  402. package/dist/esm/src/wallet/__tests/CachedKeyDeriver.test.js.map +0 -1
  403. package/dist/esm/src/wallet/__tests/KeyDeriver.test.js +0 -113
  404. package/dist/esm/src/wallet/__tests/KeyDeriver.test.js.map +0 -1
  405. package/dist/esm/src/wallet/__tests/ProtoWallet.test.js +0 -475
  406. package/dist/esm/src/wallet/__tests/ProtoWallet.test.js.map +0 -1
  407. package/dist/esm/src/wallet/createActionSdk.js +0 -223
  408. package/dist/esm/src/wallet/createActionSdk.js.map +0 -1
  409. package/dist/esm/src/wallet/sdk/CachedKeyDeriver.js +0 -174
  410. package/dist/esm/src/wallet/sdk/CachedKeyDeriver.js.map +0 -1
  411. package/dist/esm/src/wallet/sdk/CertOps.js +0 -181
  412. package/dist/esm/src/wallet/sdk/CertOps.js.map +0 -1
  413. package/dist/esm/src/wallet/sdk/Certificate.js +0 -186
  414. package/dist/esm/src/wallet/sdk/Certificate.js.map +0 -1
  415. package/dist/esm/src/wallet/sdk/KeyDeriver.js +0 -174
  416. package/dist/esm/src/wallet/sdk/KeyDeriver.js.map +0 -1
  417. package/dist/esm/src/wallet/sdk/ProtoWallet.js +0 -71
  418. package/dist/esm/src/wallet/sdk/ProtoWallet.js.map +0 -1
  419. package/dist/esm/src/wallet/sdk/StorageSyncReader.js +0 -2
  420. package/dist/esm/src/wallet/sdk/StorageSyncReader.js.map +0 -1
  421. package/dist/esm/src/wallet/sdk/WERR_errors.js +0 -99
  422. package/dist/esm/src/wallet/sdk/WERR_errors.js.map +0 -1
  423. package/dist/esm/src/wallet/sdk/Wallet.interfaces.js +0 -2
  424. package/dist/esm/src/wallet/sdk/Wallet.interfaces.js.map +0 -1
  425. package/dist/esm/src/wallet/sdk/WalletCrypto.js +0 -168
  426. package/dist/esm/src/wallet/sdk/WalletCrypto.js.map +0 -1
  427. package/dist/esm/src/wallet/sdk/WalletError.js +0 -100
  428. package/dist/esm/src/wallet/sdk/WalletError.js.map +0 -1
  429. package/dist/esm/src/wallet/sdk/WalletServices.interfaces.js +0 -2
  430. package/dist/esm/src/wallet/sdk/WalletServices.interfaces.js.map +0 -1
  431. package/dist/esm/src/wallet/sdk/WalletSigner.interfaces.js +0 -2
  432. package/dist/esm/src/wallet/sdk/WalletSigner.interfaces.js.map +0 -1
  433. package/dist/esm/src/wallet/sdk/WalletStorage.interfaces.js +0 -2
  434. package/dist/esm/src/wallet/sdk/WalletStorage.interfaces.js.map +0 -1
  435. package/dist/esm/src/wallet/sdk/index.js +0 -15
  436. package/dist/esm/src/wallet/sdk/index.js.map +0 -1
  437. package/dist/esm/src/wallet/sdk/types.js +0 -8
  438. package/dist/esm/src/wallet/sdk/types.js.map +0 -1
  439. package/dist/esm/src/wallet/sdk/validationHelpers.js +0 -566
  440. package/dist/esm/src/wallet/sdk/validationHelpers.js.map +0 -1
  441. package/dist/esm/src/wallet/substrates/__tests/WalletWire.integration.test.js +0 -1962
  442. package/dist/esm/src/wallet/substrates/__tests/WalletWire.integration.test.js.map +0 -1
  443. package/dist/esm/src/wallet/substrates/__tests/XDM.test.js +0 -579
  444. package/dist/esm/src/wallet/substrates/__tests/XDM.test.js.map +0 -1
  445. package/dist/esm/src/wallet/utilityHelpers.js +0 -275
  446. package/dist/esm/src/wallet/utilityHelpers.js.map +0 -1
  447. package/dist/esm/src/wallet/validationHelpers.js +0 -566
  448. package/dist/esm/src/wallet/validationHelpers.js.map +0 -1
  449. package/dist/types/src/auth/__tests/Peer.test.d.ts +0 -2
  450. package/dist/types/src/auth/__tests/Peer.test.d.ts.map +0 -1
  451. package/dist/types/src/auth/__tests/SessionManager.test.d.ts +0 -2
  452. package/dist/types/src/auth/__tests/SessionManager.test.d.ts.map +0 -1
  453. package/dist/types/src/auth/certificates/__tests/Certificate.test.d.ts +0 -2
  454. package/dist/types/src/auth/certificates/__tests/Certificate.test.d.ts.map +0 -1
  455. package/dist/types/src/auth/certificates/__tests/MasterCertificate.test.d.ts +0 -2
  456. package/dist/types/src/auth/certificates/__tests/MasterCertificate.test.d.ts.map +0 -1
  457. package/dist/types/src/auth/certificates/__tests/VerifiableCertificate.test.d.ts +0 -2
  458. package/dist/types/src/auth/certificates/__tests/VerifiableCertificate.test.d.ts.map +0 -1
  459. package/dist/types/src/auth/utils/__tests/cryptononce.test.d.ts +0 -2
  460. package/dist/types/src/auth/utils/__tests/cryptononce.test.d.ts.map +0 -1
  461. package/dist/types/src/auth/utils/__tests/getVerifiableCertificates.test.d.ts +0 -2
  462. package/dist/types/src/auth/utils/__tests/getVerifiableCertificates.test.d.ts.map +0 -1
  463. package/dist/types/src/auth/utils/__tests/validateCertificates.test.d.ts +0 -2
  464. package/dist/types/src/auth/utils/__tests/validateCertificates.test.d.ts.map +0 -1
  465. package/dist/types/src/auth/utils/certificateHelpers.d.ts +0 -26
  466. package/dist/types/src/auth/utils/certificateHelpers.d.ts.map +0 -1
  467. package/dist/types/src/compat/__tests/BSM.test.d.ts +0 -2
  468. package/dist/types/src/compat/__tests/BSM.test.d.ts.map +0 -1
  469. package/dist/types/src/compat/__tests/ECIES.test.d.ts +0 -2
  470. package/dist/types/src/compat/__tests/ECIES.test.d.ts.map +0 -1
  471. package/dist/types/src/compat/__tests/HD.test.d.ts +0 -2
  472. package/dist/types/src/compat/__tests/HD.test.d.ts.map +0 -1
  473. package/dist/types/src/compat/__tests/Mnemonic.test.d.ts +0 -2
  474. package/dist/types/src/compat/__tests/Mnemonic.test.d.ts.map +0 -1
  475. package/dist/types/src/compat/__tests/Mnemonic.vectors.d.ts +0 -11
  476. package/dist/types/src/compat/__tests/Mnemonic.vectors.d.ts.map +0 -1
  477. package/dist/types/src/messages/__tests/EncryptedMessage.test.d.ts +0 -2
  478. package/dist/types/src/messages/__tests/EncryptedMessage.test.d.ts.map +0 -1
  479. package/dist/types/src/messages/__tests/SignedMessage.test.d.ts +0 -2
  480. package/dist/types/src/messages/__tests/SignedMessage.test.d.ts.map +0 -1
  481. package/dist/types/src/overlay-tools/__tests/LookupResolver.test.d.ts +0 -2
  482. package/dist/types/src/overlay-tools/__tests/LookupResolver.test.d.ts.map +0 -1
  483. package/dist/types/src/overlay-tools/__tests/OverlayAdminTokenTemplate.test.d.ts +0 -2
  484. package/dist/types/src/overlay-tools/__tests/OverlayAdminTokenTemplate.test.d.ts.map +0 -1
  485. package/dist/types/src/overlay-tools/__tests/SHIPBroadcaster.test.d.ts +0 -2
  486. package/dist/types/src/overlay-tools/__tests/SHIPBroadcaster.test.d.ts.map +0 -1
  487. package/dist/types/src/primitives/__tests/AESGCM.test.d.ts +0 -2
  488. package/dist/types/src/primitives/__tests/AESGCM.test.d.ts.map +0 -1
  489. package/dist/types/src/primitives/__tests/BRC42.private.vectors.d.ts +0 -8
  490. package/dist/types/src/primitives/__tests/BRC42.private.vectors.d.ts.map +0 -1
  491. package/dist/types/src/primitives/__tests/BRC42.public.vectors.d.ts +0 -8
  492. package/dist/types/src/primitives/__tests/BRC42.public.vectors.d.ts.map +0 -1
  493. package/dist/types/src/primitives/__tests/BigNumber.arithmatic.test.d.ts +0 -2
  494. package/dist/types/src/primitives/__tests/BigNumber.arithmatic.test.d.ts.map +0 -1
  495. package/dist/types/src/primitives/__tests/BigNumber.binary.test.d.ts +0 -2
  496. package/dist/types/src/primitives/__tests/BigNumber.binary.test.d.ts.map +0 -1
  497. package/dist/types/src/primitives/__tests/BigNumber.constructor.test.d.ts +0 -2
  498. package/dist/types/src/primitives/__tests/BigNumber.constructor.test.d.ts.map +0 -1
  499. package/dist/types/src/primitives/__tests/BigNumber.dhGroup.test.d.ts +0 -2
  500. package/dist/types/src/primitives/__tests/BigNumber.dhGroup.test.d.ts.map +0 -1
  501. package/dist/types/src/primitives/__tests/BigNumber.fixtures.d.ts +0 -15
  502. package/dist/types/src/primitives/__tests/BigNumber.fixtures.d.ts.map +0 -1
  503. package/dist/types/src/primitives/__tests/BigNumber.serializers.test.d.ts +0 -2
  504. package/dist/types/src/primitives/__tests/BigNumber.serializers.test.d.ts.map +0 -1
  505. package/dist/types/src/primitives/__tests/BigNumber.utils.test.d.ts +0 -2
  506. package/dist/types/src/primitives/__tests/BigNumber.utils.test.d.ts.map +0 -1
  507. package/dist/types/src/primitives/__tests/Curve.unit.test.d.ts +0 -2
  508. package/dist/types/src/primitives/__tests/Curve.unit.test.d.ts.map +0 -1
  509. package/dist/types/src/primitives/__tests/DRBG.test.d.ts +0 -2
  510. package/dist/types/src/primitives/__tests/DRBG.test.d.ts.map +0 -1
  511. package/dist/types/src/primitives/__tests/DRBG.vectors.d.ts +0 -10
  512. package/dist/types/src/primitives/__tests/DRBG.vectors.d.ts.map +0 -1
  513. package/dist/types/src/primitives/__tests/ECDH.test.d.ts +0 -2
  514. package/dist/types/src/primitives/__tests/ECDH.test.d.ts.map +0 -1
  515. package/dist/types/src/primitives/__tests/ECDSA.test.d.ts +0 -2
  516. package/dist/types/src/primitives/__tests/ECDSA.test.d.ts.map +0 -1
  517. package/dist/types/src/primitives/__tests/HMAC.test.d.ts +0 -2
  518. package/dist/types/src/primitives/__tests/HMAC.test.d.ts.map +0 -1
  519. package/dist/types/src/primitives/__tests/Hash.test.d.ts +0 -2
  520. package/dist/types/src/primitives/__tests/Hash.test.d.ts.map +0 -1
  521. package/dist/types/src/primitives/__tests/PBKDF2.vectors.d.ts +0 -68
  522. package/dist/types/src/primitives/__tests/PBKDF2.vectors.d.ts.map +0 -1
  523. package/dist/types/src/primitives/__tests/PrivateKey.split.test.d.ts +0 -2
  524. package/dist/types/src/primitives/__tests/PrivateKey.split.test.d.ts.map +0 -1
  525. package/dist/types/src/primitives/__tests/PrivateKey.test.d.ts +0 -2
  526. package/dist/types/src/primitives/__tests/PrivateKey.test.d.ts.map +0 -1
  527. package/dist/types/src/primitives/__tests/PublicKey.test.d.ts +0 -2
  528. package/dist/types/src/primitives/__tests/PublicKey.test.d.ts.map +0 -1
  529. package/dist/types/src/primitives/__tests/Random.test.d.ts +0 -2
  530. package/dist/types/src/primitives/__tests/Random.test.d.ts.map +0 -1
  531. package/dist/types/src/primitives/__tests/Reader.test.d.ts +0 -2
  532. package/dist/types/src/primitives/__tests/Reader.test.d.ts.map +0 -1
  533. package/dist/types/src/primitives/__tests/ReductionContext.test.d.ts +0 -2
  534. package/dist/types/src/primitives/__tests/ReductionContext.test.d.ts.map +0 -1
  535. package/dist/types/src/primitives/__tests/Schnorr.test.d.ts +0 -2
  536. package/dist/types/src/primitives/__tests/Schnorr.test.d.ts.map +0 -1
  537. package/dist/types/src/primitives/__tests/SymmetricKey.test.d.ts +0 -2
  538. package/dist/types/src/primitives/__tests/SymmetricKey.test.d.ts.map +0 -1
  539. package/dist/types/src/primitives/__tests/SymmetricKey.vectors.d.ts +0 -20
  540. package/dist/types/src/primitives/__tests/SymmetricKey.vectors.d.ts.map +0 -1
  541. package/dist/types/src/primitives/__tests/Writer.test.d.ts +0 -2
  542. package/dist/types/src/primitives/__tests/Writer.test.d.ts.map +0 -1
  543. package/dist/types/src/primitives/__tests/bug-31.test.d.ts +0 -2
  544. package/dist/types/src/primitives/__tests/bug-31.test.d.ts.map +0 -1
  545. package/dist/types/src/primitives/__tests/sighash.vectors.d.ts +0 -3
  546. package/dist/types/src/primitives/__tests/sighash.vectors.d.ts.map +0 -1
  547. package/dist/types/src/primitives/__tests/utils.test.d.ts +0 -2
  548. package/dist/types/src/primitives/__tests/utils.test.d.ts.map +0 -1
  549. package/dist/types/src/script/__tests/Script.test.d.ts +0 -2
  550. package/dist/types/src/script/__tests/Script.test.d.ts.map +0 -1
  551. package/dist/types/src/script/__tests/Spend.test.d.ts +0 -2
  552. package/dist/types/src/script/__tests/Spend.test.d.ts.map +0 -1
  553. package/dist/types/src/script/__tests/SpendComplex.test.d.ts +0 -2
  554. package/dist/types/src/script/__tests/SpendComplex.test.d.ts.map +0 -1
  555. package/dist/types/src/script/__tests/script.invalid.vectors.d.ts +0 -3
  556. package/dist/types/src/script/__tests/script.invalid.vectors.d.ts.map +0 -1
  557. package/dist/types/src/script/__tests/script.valid.vectors.d.ts +0 -3
  558. package/dist/types/src/script/__tests/script.valid.vectors.d.ts.map +0 -1
  559. package/dist/types/src/script/__tests/spend.valid.vectors.d.ts +0 -3
  560. package/dist/types/src/script/__tests/spend.valid.vectors.d.ts.map +0 -1
  561. package/dist/types/src/script/templates/__tests/PushDrop.test.d.ts +0 -2
  562. package/dist/types/src/script/templates/__tests/PushDrop.test.d.ts.map +0 -1
  563. package/dist/types/src/totp/__tests/totp.test.d.ts +0 -2
  564. package/dist/types/src/totp/__tests/totp.test.d.ts.map +0 -1
  565. package/dist/types/src/transaction/__tests/Beef.test.d.ts +0 -2
  566. package/dist/types/src/transaction/__tests/Beef.test.d.ts.map +0 -1
  567. package/dist/types/src/transaction/__tests/MerklePath.test.d.ts +0 -2
  568. package/dist/types/src/transaction/__tests/MerklePath.test.d.ts.map +0 -1
  569. package/dist/types/src/transaction/__tests/Transaction.benchmarks.test.d.ts +0 -2
  570. package/dist/types/src/transaction/__tests/Transaction.benchmarks.test.d.ts.map +0 -1
  571. package/dist/types/src/transaction/__tests/Transaction.test.d.ts +0 -2
  572. package/dist/types/src/transaction/__tests/Transaction.test.d.ts.map +0 -1
  573. package/dist/types/src/transaction/__tests/bigtx.vectors.d.ts +0 -6
  574. package/dist/types/src/transaction/__tests/bigtx.vectors.d.ts.map +0 -1
  575. package/dist/types/src/transaction/__tests/bump.invalid.vectors.d.ts +0 -6
  576. package/dist/types/src/transaction/__tests/bump.invalid.vectors.d.ts.map +0 -1
  577. package/dist/types/src/transaction/__tests/bump.valid.vectors.d.ts +0 -5
  578. package/dist/types/src/transaction/__tests/bump.valid.vectors.d.ts.map +0 -1
  579. package/dist/types/src/transaction/__tests/tx.invalid.vectors.d.ts +0 -3
  580. package/dist/types/src/transaction/__tests/tx.invalid.vectors.d.ts.map +0 -1
  581. package/dist/types/src/transaction/__tests/tx.valid.vectors.d.ts +0 -3
  582. package/dist/types/src/transaction/__tests/tx.valid.vectors.d.ts.map +0 -1
  583. package/dist/types/src/transaction/broadcasters/__tests/ARC.test.d.ts +0 -2
  584. package/dist/types/src/transaction/broadcasters/__tests/ARC.test.d.ts.map +0 -1
  585. package/dist/types/src/transaction/broadcasters/__tests/WhatsOnChainBroadcaster.test.d.ts +0 -2
  586. package/dist/types/src/transaction/broadcasters/__tests/WhatsOnChainBroadcaster.test.d.ts.map +0 -1
  587. package/dist/types/src/transaction/chaintrackers/__tests/WhatsOnChainChainTracker.test.d.ts +0 -2
  588. package/dist/types/src/transaction/chaintrackers/__tests/WhatsOnChainChainTracker.test.d.ts.map +0 -1
  589. package/dist/types/src/wallet/ScriptTemplateSABPPP.d.ts +0 -25
  590. package/dist/types/src/wallet/ScriptTemplateSABPPP.d.ts.map +0 -1
  591. package/dist/types/src/wallet/WalletSigner.d.ts +0 -110
  592. package/dist/types/src/wallet/WalletSigner.d.ts.map +0 -1
  593. package/dist/types/src/wallet/__tests/CachedKeyDeriver.test.d.ts +0 -2
  594. package/dist/types/src/wallet/__tests/CachedKeyDeriver.test.d.ts.map +0 -1
  595. package/dist/types/src/wallet/__tests/KeyDeriver.test.d.ts +0 -2
  596. package/dist/types/src/wallet/__tests/KeyDeriver.test.d.ts.map +0 -1
  597. package/dist/types/src/wallet/__tests/ProtoWallet.test.d.ts +0 -2
  598. package/dist/types/src/wallet/__tests/ProtoWallet.test.d.ts.map +0 -1
  599. package/dist/types/src/wallet/createActionSdk.d.ts +0 -8
  600. package/dist/types/src/wallet/createActionSdk.d.ts.map +0 -1
  601. package/dist/types/src/wallet/sdk/CachedKeyDeriver.d.ts +0 -94
  602. package/dist/types/src/wallet/sdk/CachedKeyDeriver.d.ts.map +0 -1
  603. package/dist/types/src/wallet/sdk/CertOps.d.ts +0 -63
  604. package/dist/types/src/wallet/sdk/CertOps.d.ts.map +0 -1
  605. package/dist/types/src/wallet/sdk/Certificate.d.ts +0 -77
  606. package/dist/types/src/wallet/sdk/Certificate.d.ts.map +0 -1
  607. package/dist/types/src/wallet/sdk/KeyDeriver.d.ts +0 -128
  608. package/dist/types/src/wallet/sdk/KeyDeriver.d.ts.map +0 -1
  609. package/dist/types/src/wallet/sdk/ProtoWallet.d.ts +0 -30
  610. package/dist/types/src/wallet/sdk/ProtoWallet.d.ts.map +0 -1
  611. package/dist/types/src/wallet/sdk/StorageSyncReader.d.ts +0 -102
  612. package/dist/types/src/wallet/sdk/StorageSyncReader.d.ts.map +0 -1
  613. package/dist/types/src/wallet/sdk/WERR_errors.d.ts +0 -84
  614. package/dist/types/src/wallet/sdk/WERR_errors.d.ts.map +0 -1
  615. package/dist/types/src/wallet/sdk/Wallet.interfaces.d.ts +0 -1036
  616. package/dist/types/src/wallet/sdk/Wallet.interfaces.d.ts.map +0 -1
  617. package/dist/types/src/wallet/sdk/WalletCrypto.d.ts +0 -31
  618. package/dist/types/src/wallet/sdk/WalletCrypto.d.ts.map +0 -1
  619. package/dist/types/src/wallet/sdk/WalletError.d.ts +0 -46
  620. package/dist/types/src/wallet/sdk/WalletError.d.ts.map +0 -1
  621. package/dist/types/src/wallet/sdk/WalletServices.interfaces.d.ts +0 -293
  622. package/dist/types/src/wallet/sdk/WalletServices.interfaces.d.ts.map +0 -1
  623. package/dist/types/src/wallet/sdk/WalletSigner.interfaces.d.ts +0 -48
  624. package/dist/types/src/wallet/sdk/WalletSigner.interfaces.d.ts.map +0 -1
  625. package/dist/types/src/wallet/sdk/WalletStorage.interfaces.d.ts +0 -296
  626. package/dist/types/src/wallet/sdk/WalletStorage.interfaces.d.ts.map +0 -1
  627. package/dist/types/src/wallet/sdk/index.d.ts +0 -15
  628. package/dist/types/src/wallet/sdk/index.d.ts.map +0 -1
  629. package/dist/types/src/wallet/sdk/types.d.ts +0 -56
  630. package/dist/types/src/wallet/sdk/types.d.ts.map +0 -1
  631. package/dist/types/src/wallet/sdk/validationHelpers.d.ts +0 -301
  632. package/dist/types/src/wallet/sdk/validationHelpers.d.ts.map +0 -1
  633. package/dist/types/src/wallet/substrates/__tests/WalletWire.integration.test.d.ts +0 -2
  634. package/dist/types/src/wallet/substrates/__tests/WalletWire.integration.test.d.ts.map +0 -1
  635. package/dist/types/src/wallet/substrates/__tests/XDM.test.d.ts +0 -5
  636. package/dist/types/src/wallet/substrates/__tests/XDM.test.d.ts.map +0 -1
  637. package/dist/types/src/wallet/utilityHelpers.d.ts +0 -142
  638. package/dist/types/src/wallet/utilityHelpers.d.ts.map +0 -1
  639. package/dist/types/src/wallet/validationHelpers.d.ts +0 -301
  640. package/dist/types/src/wallet/validationHelpers.d.ts.map +0 -1
  641. package/docs/README.md +0 -21
  642. /package/docs/{auth.md → reference/auth.md} +0 -0
  643. /package/docs/{compat.md → reference/compat.md} +0 -0
  644. /package/docs/{identity.md → reference/identity.md} +0 -0
  645. /package/docs/{kvstore.md → reference/kvstore.md} +0 -0
  646. /package/docs/{messages.md → reference/messages.md} +0 -0
  647. /package/docs/{overlay-tools.md → reference/overlay-tools.md} +0 -0
  648. /package/docs/{primitives.md → reference/primitives.md} +0 -0
  649. /package/docs/{registry.md → reference/registry.md} +0 -0
  650. /package/docs/{script.md → reference/script.md} +0 -0
  651. /package/docs/{storage.md → reference/storage.md} +0 -0
  652. /package/docs/{totp.md → reference/totp.md} +0 -0
  653. /package/docs/{transaction.md → reference/transaction.md} +0 -0
  654. /package/docs/{wallet.md → reference/wallet.md} +0 -0
@@ -1,448 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const Peer_1 = require("../../auth/Peer");
4
- const globals_1 = require("@jest/globals");
5
- const CompletedProtoWallet_1 = require("../../auth/certificates/__tests/CompletedProtoWallet");
6
- const index_1 = require("../../primitives/index");
7
- const VerifiableCertificate_1 = require("../../auth/certificates/VerifiableCertificate");
8
- const MasterCertificate_1 = require("../../auth/certificates/MasterCertificate");
9
- const getVerifiableCertificates_1 = require("../../auth/utils/getVerifiableCertificates");
10
- globals_1.jest.mock('../../auth/utils/getVerifiableCertificates');
11
- class LocalTransport {
12
- peerTransport;
13
- onDataCallback;
14
- connect(peerTransport) {
15
- this.peerTransport = peerTransport;
16
- peerTransport.peerTransport = this;
17
- }
18
- async send(message) {
19
- if (this.peerTransport && this.peerTransport.onDataCallback) {
20
- // Simulate message delivery by calling the onData callback of the peer
21
- this.peerTransport.onDataCallback(message);
22
- }
23
- else {
24
- throw new Error('Peer transport is not connected or not listening for data.');
25
- }
26
- }
27
- async onData(callback) {
28
- this.onDataCallback = callback;
29
- }
30
- }
31
- describe('Peer class mutual authentication and certificate exchange', () => {
32
- let walletA, walletB;
33
- let transportA, transportB;
34
- let alice, bob;
35
- let certificatesReceivedByAlice;
36
- let certificatesReceivedByBob;
37
- const certificateType = index_1.Utils.toBase64(new Array(32).fill(1));
38
- const certificateSerialNumber = index_1.Utils.toBase64(new Array(32).fill(2));
39
- const certifierPrivateKey = index_1.PrivateKey.fromRandom();
40
- const certifierPublicKey = certifierPrivateKey.toPublicKey().toString();
41
- const certificatesToRequest = {
42
- certifiers: [certifierPublicKey],
43
- types: { [certificateType]: ['name', 'email'] }
44
- };
45
- const aliceFields = {
46
- name: 'Alice',
47
- email: 'alice@example.com',
48
- libraryCardNumber: 'A123456'
49
- };
50
- const bobFields = {
51
- name: 'Bob',
52
- email: 'bob@example.com',
53
- libraryCardNumber: 'B654321'
54
- };
55
- async function createMasterCertificate(subjectWallet, fields) {
56
- const subjectPubKey = (await subjectWallet.getPublicKey({ identityKey: true })).publicKey;
57
- const certifierWallet = new CompletedProtoWallet_1.CompletedProtoWallet(certifierPrivateKey);
58
- // Issue a new MasterCertificate for the subject (e.g. Alice/Bob)
59
- const masterCertificate = await MasterCertificate_1.MasterCertificate.issueCertificateForSubject(certifierWallet, subjectPubKey, fields, certificateType, async () => 'revocationOutpoint' // or any revocation outpoint logic you want
60
- );
61
- // For test consistency, override the automatically generated serialNumber
62
- // with the globally used 'certificateSerialNumber' and re-sign:
63
- // masterCertificate.signature = undefined
64
- // masterCertificate.serialNumber = certificateSerialNumber
65
- // await masterCertificate.sign(certifierWallet)
66
- return masterCertificate;
67
- }
68
- async function createVerifiableCertificate(masterCertificate, wallet, verifierIdentityKey, fieldsToReveal) {
69
- const certifierWallet = new CompletedProtoWallet_1.CompletedProtoWallet(certifierPrivateKey);
70
- const keyringForVerifier = await MasterCertificate_1.MasterCertificate.createKeyringForVerifier(wallet, certifierWallet.keyDeriver.identityKey, verifierIdentityKey, masterCertificate.fields, fieldsToReveal, masterCertificate.masterKeyring, masterCertificate.serialNumber);
71
- return new VerifiableCertificate_1.VerifiableCertificate(masterCertificate.type, masterCertificate.serialNumber, masterCertificate.subject, masterCertificate.certifier, masterCertificate.revocationOutpoint, masterCertificate.fields, keyringForVerifier, masterCertificate.signature);
72
- }
73
- function setupPeers(aliceRequests, bobRequests, options = {}) {
74
- const { aliceCertsToRequest = certificatesToRequest, bobCertsToRequest = certificatesToRequest } = options;
75
- alice = new Peer_1.Peer(walletA, transportA, aliceRequests ? aliceCertsToRequest : undefined);
76
- bob = new Peer_1.Peer(walletB, transportB, bobRequests ? bobCertsToRequest : undefined);
77
- const aliceReceivedCertificates = new Promise(resolve => {
78
- alice.listenForCertificatesReceived((senderPublicKey, certificates) => {
79
- certificatesReceivedByAlice = certificates;
80
- resolve();
81
- });
82
- });
83
- const bobReceivedCertificates = new Promise(resolve => {
84
- bob.listenForCertificatesReceived((senderPublicKey, certificates) => {
85
- certificatesReceivedByBob = certificates;
86
- resolve();
87
- });
88
- });
89
- return { aliceReceivedCertificates, bobReceivedCertificates };
90
- }
91
- function mockGetVerifiableCertificates(aliceCertificate, bobCertificate, alicePubKey, bobPubKey) {
92
- ;
93
- getVerifiableCertificates_1.getVerifiableCertificates.mockImplementation((wallet, _, verifierIdentityKey) => {
94
- if (wallet === walletA && verifierIdentityKey === bobPubKey) {
95
- return aliceCertificate
96
- ? Promise.resolve([aliceCertificate])
97
- : Promise.resolve([]);
98
- }
99
- else if (wallet === walletB && verifierIdentityKey === alicePubKey) {
100
- return bobCertificate
101
- ? Promise.resolve([bobCertificate])
102
- : Promise.resolve([]);
103
- }
104
- return Promise.resolve([]);
105
- });
106
- }
107
- beforeEach(async () => {
108
- transportA = new LocalTransport();
109
- transportB = new LocalTransport();
110
- transportA.connect(transportB);
111
- certificatesReceivedByAlice = [];
112
- certificatesReceivedByBob = [];
113
- walletA = new CompletedProtoWallet_1.CompletedProtoWallet(index_1.PrivateKey.fromRandom());
114
- walletB = new CompletedProtoWallet_1.CompletedProtoWallet(index_1.PrivateKey.fromRandom());
115
- });
116
- it('Neither Alice nor Bob request certificates, mutual authentication completes successfully', async () => {
117
- const { aliceReceivedCertificates, bobReceivedCertificates } = setupPeers(false, false);
118
- const bobReceivedGeneralMessage = new Promise(resolve => {
119
- bob.listenForGeneralMessages(async (senderPublicKey, payload) => {
120
- console.log('Bob received message:', index_1.Utils.toUTF8(payload));
121
- await bob.toPeer(index_1.Utils.toArray('Hello Alice!'), senderPublicKey);
122
- resolve();
123
- });
124
- });
125
- const aliceReceivedGeneralMessage = new Promise(resolve => {
126
- alice.listenForGeneralMessages(async (senderPublicKey, payload) => {
127
- console.log('Alice received message:', index_1.Utils.toUTF8(payload));
128
- resolve();
129
- });
130
- });
131
- await alice.toPeer(index_1.Utils.toArray('Hello Bob!'));
132
- await bobReceivedGeneralMessage;
133
- await aliceReceivedGeneralMessage;
134
- expect(certificatesReceivedByAlice).toEqual([]);
135
- expect(certificatesReceivedByBob).toEqual([]);
136
- }, 15000);
137
- it('Bob requests certificates from Alice, Alice does not request any from Bob', async () => {
138
- const alicePubKey = (await walletA.getPublicKey({ identityKey: true }))
139
- .publicKey;
140
- const bobPubKey = (await walletB.getPublicKey({ identityKey: true }))
141
- .publicKey;
142
- const aliceMasterCertificate = await createMasterCertificate(walletA, aliceFields);
143
- const aliceVerifiableCertificate = await createVerifiableCertificate(aliceMasterCertificate, walletA, bobPubKey, certificatesToRequest.types[certificateType]);
144
- const { bobReceivedCertificates } = setupPeers(false, true);
145
- mockGetVerifiableCertificates(aliceVerifiableCertificate, undefined, alicePubKey, bobPubKey);
146
- const bobReceivedGeneralMessage = new Promise(resolve => {
147
- bob.listenForGeneralMessages(async (senderPublicKey, payload) => {
148
- await bobReceivedCertificates;
149
- if (certificatesReceivedByBob?.length !== 0) {
150
- certificatesReceivedByBob?.forEach(async (cert) => {
151
- // Decrypt to ensure it has the correct fields
152
- const decryptedFields = await cert.decryptFields(walletB);
153
- if (cert.certifier !== 'bob') {
154
- console.log('Bob accepted the message:', index_1.Utils.toUTF8(payload));
155
- console.log('Decrypted fields:', decryptedFields);
156
- }
157
- });
158
- }
159
- resolve();
160
- });
161
- });
162
- await alice.toPeer(index_1.Utils.toArray('Hello Bob!'));
163
- await bobReceivedGeneralMessage;
164
- expect(certificatesReceivedByAlice).toEqual([]);
165
- expect(certificatesReceivedByBob).toEqual([aliceVerifiableCertificate]);
166
- }, 15000);
167
- it('Alice requests Bob to present his library card before lending him a book', async () => {
168
- const alicePubKey = (await walletA.getPublicKey({ identityKey: true }))
169
- .publicKey;
170
- const bobPubKey = (await walletB.getPublicKey({ identityKey: true }))
171
- .publicKey;
172
- // Bob's certificate includes his library card number
173
- const bobMasterCertificate = await createMasterCertificate(walletB, bobFields);
174
- const bobVerifiableCertificate = await createVerifiableCertificate(bobMasterCertificate, walletB, alicePubKey, ['libraryCardNumber']);
175
- // Alice requires Bob to present his library card number
176
- const aliceCertificatesToRequest = {
177
- certifiers: [certifierPublicKey],
178
- types: { [certificateType]: ['libraryCardNumber'] }
179
- };
180
- const { aliceReceivedCertificates } = setupPeers(true, false, {
181
- aliceCertsToRequest: aliceCertificatesToRequest
182
- });
183
- mockGetVerifiableCertificates(undefined, bobVerifiableCertificate, alicePubKey, bobPubKey);
184
- const aliceAcceptedLibraryCard = globals_1.jest.fn();
185
- alice.listenForCertificatesReceived(async (senderPublicKey, certificates) => {
186
- for (const cert of certificates) {
187
- // Decrypt Bob's certificate fields
188
- const decryptedFields = await cert.decryptFields(walletA);
189
- // Check and use the decrypted fields
190
- if (Object.keys(decryptedFields).length !== 0 &&
191
- decryptedFields.libraryCardNumber) {
192
- console.log(`Alice received Bob's library card number: ${decryptedFields.libraryCardNumber}`);
193
- aliceAcceptedLibraryCard();
194
- }
195
- }
196
- });
197
- const bobReceivedGeneralMessage = new Promise(resolve => {
198
- bob.listenForGeneralMessages((senderPublicKey, payload) => {
199
- console.log('Bob received message from Alice:', index_1.Utils.toUTF8(payload));
200
- resolve();
201
- });
202
- });
203
- // Alice sends a message to Bob requesting his library card before lending him a book
204
- await alice.toPeer(index_1.Utils.toArray('Please present your library card to borrow a book.'));
205
- await aliceReceivedCertificates;
206
- await bobReceivedGeneralMessage;
207
- expect(aliceAcceptedLibraryCard).toHaveBeenCalled();
208
- expect(certificatesReceivedByAlice).toEqual([bobVerifiableCertificate]);
209
- expect(certificatesReceivedByBob).toEqual([]); // Bob did not request any certificates
210
- }, 15000);
211
- it('Bob requests additional certificates from Alice after initial communication', async () => {
212
- const alicePubKey = (await walletA.getPublicKey({ identityKey: true }))
213
- .publicKey;
214
- const bobPubKey = (await walletB.getPublicKey({ identityKey: true }))
215
- .publicKey;
216
- const aliceMasterCertificate = await createMasterCertificate(walletA, {
217
- name: 'Alice'
218
- });
219
- const aliceVerifiableCertificate = await createVerifiableCertificate(aliceMasterCertificate, walletA, bobPubKey, ['name']);
220
- const { bobReceivedCertificates } = setupPeers(false, true);
221
- mockGetVerifiableCertificates(aliceVerifiableCertificate, undefined, alicePubKey, bobPubKey);
222
- const bobReceivedGeneralMessage = new Promise(resolve => {
223
- bob.listenForGeneralMessages(async (senderPublicKey, payload) => {
224
- await bobReceivedCertificates;
225
- console.log('Bob received message:', index_1.Utils.toUTF8(payload));
226
- // Bob requests additional certificates after initial communication
227
- await bob.requestCertificates(certificatesToRequest, senderPublicKey);
228
- resolve();
229
- });
230
- });
231
- // Initial communication from Alice
232
- await alice.toPeer(index_1.Utils.toArray('Hello Bob!'));
233
- await bobReceivedGeneralMessage;
234
- // Listen for certificates received from the additional request
235
- const bobReceivedAdditionalCertificates = new Promise(resolve => {
236
- bob.listenForCertificatesReceived(async (senderPublicKey, certificates) => {
237
- if (certificates.length > 0) {
238
- // Decrypt to confirm
239
- for (const cert of certificates) {
240
- const decrypted = await cert.decryptFields(walletB);
241
- console.log('Bob received additional certificates from Alice:', cert);
242
- console.log('Decrypted fields:', decrypted);
243
- }
244
- resolve();
245
- }
246
- });
247
- });
248
- await bobReceivedAdditionalCertificates;
249
- expect(certificatesReceivedByBob).toEqual([aliceVerifiableCertificate]);
250
- }, 15000);
251
- it('Bob requests Alice to provide her membership status before granting access to premium content', async () => {
252
- const alicePubKey = (await walletA.getPublicKey({ identityKey: true }))
253
- .publicKey;
254
- const bobPubKey = (await walletB.getPublicKey({ identityKey: true }))
255
- .publicKey;
256
- // Alice's certificate includes her membership status
257
- const aliceMasterCertificate = await createMasterCertificate(walletA, {
258
- ...aliceFields,
259
- membershipStatus: 'Gold'
260
- });
261
- const aliceVerifiableCertificate = await createVerifiableCertificate(aliceMasterCertificate, walletA, bobPubKey, ['membershipStatus']);
262
- // Bob requires Alice to present her membership status
263
- const bobCertificatesToRequest = {
264
- certifiers: [certifierPublicKey],
265
- types: { [certificateType]: ['membershipStatus'] }
266
- };
267
- const { bobReceivedCertificates } = setupPeers(false, true, {
268
- bobCertsToRequest: bobCertificatesToRequest
269
- });
270
- mockGetVerifiableCertificates(aliceVerifiableCertificate, undefined, alicePubKey, bobPubKey);
271
- const bobAcceptedMembershipStatus = globals_1.jest.fn();
272
- const waitForCerts = new Promise(resolve => {
273
- bob.listenForCertificatesReceived(async (senderPublicKey, certificates) => {
274
- for (const cert of certificates) {
275
- // Decrypt Alice's certificate fields
276
- const decryptedFields = await cert.decryptFields(walletB);
277
- if (decryptedFields.membershipStatus) {
278
- console.log(`Bob received Alice's membership status: ${decryptedFields.membershipStatus}`);
279
- bobAcceptedMembershipStatus();
280
- resolve();
281
- }
282
- }
283
- });
284
- });
285
- const bobReceivedGeneralMessage = new Promise(resolve => {
286
- bob.listenForGeneralMessages((senderPublicKey, payload) => {
287
- console.log('Bob received message from Alice:', index_1.Utils.toUTF8(payload));
288
- resolve();
289
- });
290
- });
291
- // Alice sends a message to Bob requesting access to premium content
292
- await alice.toPeer(index_1.Utils.toArray('I would like to access the premium content.'));
293
- await bobReceivedCertificates;
294
- await bobReceivedGeneralMessage;
295
- await waitForCerts;
296
- expect(bobAcceptedMembershipStatus).toHaveBeenCalled();
297
- expect(certificatesReceivedByBob).toEqual([aliceVerifiableCertificate]);
298
- expect(certificatesReceivedByAlice).toEqual([]); // Alice did not request any certificates
299
- }, 15000);
300
- it("Both peers require each other's driver's license before carpooling", async () => {
301
- const alicePubKey = (await walletA.getPublicKey({ identityKey: true }))
302
- .publicKey;
303
- const bobPubKey = (await walletB.getPublicKey({ identityKey: true }))
304
- .publicKey;
305
- // Both Alice and Bob have driver's license certificates
306
- const aliceMasterCertificate = await createMasterCertificate(walletA, {
307
- ...aliceFields,
308
- driversLicenseNumber: 'DLA123456'
309
- });
310
- const aliceVerifiableCertificate = await createVerifiableCertificate(aliceMasterCertificate, walletA, bobPubKey, ['driversLicenseNumber']);
311
- const bobMasterCertificate = await createMasterCertificate(walletB, {
312
- ...bobFields,
313
- driversLicenseNumber: 'DLB654321'
314
- });
315
- const bobVerifiableCertificate = await createVerifiableCertificate(bobMasterCertificate, walletB, alicePubKey, ['driversLicenseNumber']);
316
- // Both peers require the driver's license number
317
- const certificatesToRequestDriversLicense = {
318
- certifiers: [certifierPublicKey],
319
- types: { [certificateType]: ['driversLicenseNumber'] }
320
- };
321
- const { aliceReceivedCertificates, bobReceivedCertificates } = setupPeers(true, true, {
322
- aliceCertsToRequest: certificatesToRequestDriversLicense,
323
- bobCertsToRequest: certificatesToRequestDriversLicense
324
- });
325
- mockGetVerifiableCertificates(aliceVerifiableCertificate, bobVerifiableCertificate, alicePubKey, bobPubKey);
326
- const aliceAcceptedBobDL = globals_1.jest.fn();
327
- const bobAcceptedAliceDL = globals_1.jest.fn();
328
- const waitForAliceToAcceptBobDL = new Promise(resolve => {
329
- alice.listenForCertificatesReceived(async (senderPublicKey, certificates) => {
330
- for (const cert of certificates) {
331
- const decryptedFields = await cert.decryptFields(walletA);
332
- if (decryptedFields.driversLicenseNumber) {
333
- console.log(`Alice received Bob's driver's license number: ${decryptedFields.driversLicenseNumber}`);
334
- aliceAcceptedBobDL();
335
- resolve();
336
- }
337
- }
338
- });
339
- });
340
- const waitForBobToAcceptAliceDL = new Promise(resolve => {
341
- bob.listenForCertificatesReceived(async (senderPublicKey, certificates) => {
342
- for (const cert of certificates) {
343
- const decryptedFields = await cert.decryptFields(walletB);
344
- if (decryptedFields.driversLicenseNumber) {
345
- console.log(`Bob received Alice's driver's license number: ${decryptedFields.driversLicenseNumber}`);
346
- bobAcceptedAliceDL();
347
- resolve();
348
- }
349
- }
350
- });
351
- });
352
- const bobReceivedGeneralMessage = new Promise(resolve => {
353
- bob.listenForGeneralMessages(async (senderPublicKey, payload) => {
354
- console.log('Bob received message from Alice:', index_1.Utils.toUTF8(payload));
355
- await bob.toPeer(index_1.Utils.toArray('Looking forward to carpooling!'), senderPublicKey);
356
- resolve();
357
- });
358
- });
359
- const aliceReceivedGeneralMessage = new Promise(resolve => {
360
- alice.listenForGeneralMessages((senderPublicKey, payload) => {
361
- console.log('Alice received message from Bob:', index_1.Utils.toUTF8(payload));
362
- resolve();
363
- });
364
- });
365
- // Alice initiates the conversation
366
- await alice.toPeer(index_1.Utils.toArray("Please share your driver's license number for carpooling."));
367
- await aliceReceivedCertificates;
368
- await bobReceivedCertificates;
369
- await bobReceivedGeneralMessage;
370
- await aliceReceivedGeneralMessage;
371
- // Wait for both sides to fully accept each other's certificate
372
- await waitForAliceToAcceptBobDL;
373
- await waitForBobToAcceptAliceDL;
374
- expect(aliceAcceptedBobDL).toHaveBeenCalled();
375
- expect(bobAcceptedAliceDL).toHaveBeenCalled();
376
- expect(certificatesReceivedByAlice).toEqual([bobVerifiableCertificate]);
377
- expect(certificatesReceivedByBob).toEqual([aliceVerifiableCertificate]);
378
- }, 20000);
379
- it('Peers accept partial certificates if at least one required field is present', async () => {
380
- const alicePubKey = (await walletA.getPublicKey({ identityKey: true }))
381
- .publicKey;
382
- const bobPubKey = (await walletB.getPublicKey({ identityKey: true }))
383
- .publicKey;
384
- // Alice's certificate contains 'name' and 'email'; Bob's contains only 'email'
385
- const aliceMasterCertificate = await createMasterCertificate(walletA, {
386
- name: 'Alice',
387
- email: 'alice@example.com'
388
- });
389
- const aliceVerifiableCertificate = await createVerifiableCertificate(aliceMasterCertificate, walletA, bobPubKey, ['name', 'email']);
390
- const bobMasterCertificate = await createMasterCertificate(walletB, {
391
- email: 'bob@example.com'
392
- });
393
- const bobVerifiableCertificate = await createVerifiableCertificate(bobMasterCertificate, walletB, alicePubKey, ['email']);
394
- const partialCertificatesToRequest = {
395
- certifiers: [certifierPublicKey],
396
- types: { [certificateType]: ['name', 'email'] }
397
- };
398
- const { aliceReceivedCertificates, bobReceivedCertificates } = setupPeers(true, true, {
399
- aliceCertsToRequest: partialCertificatesToRequest,
400
- bobCertsToRequest: partialCertificatesToRequest
401
- });
402
- mockGetVerifiableCertificates(aliceVerifiableCertificate, bobVerifiableCertificate, alicePubKey, bobPubKey);
403
- const aliceAcceptedPartialCert = globals_1.jest.fn();
404
- const bobAcceptedPartialCert = globals_1.jest.fn();
405
- const waitForAlicePartialCert = new Promise(resolve => {
406
- alice.listenForCertificatesReceived(async (senderPublicKey, certificates) => {
407
- for (const cert of certificates) {
408
- const decryptedFields = await cert.decryptFields(walletA);
409
- if (decryptedFields.email || decryptedFields.name) {
410
- console.log(`Alice received Bob's certificate with fields: ${Object.keys(decryptedFields).join(', ')}`);
411
- aliceAcceptedPartialCert();
412
- resolve();
413
- }
414
- }
415
- });
416
- });
417
- const waitForBobPartialCert = new Promise(resolve => {
418
- bob.listenForCertificatesReceived(async (senderPublicKey, certificates) => {
419
- for (const cert of certificates) {
420
- const decryptedFields = await cert.decryptFields(walletB);
421
- if (decryptedFields.email || decryptedFields.name) {
422
- console.log(`Bob received Alice's certificate with fields: ${Object.keys(decryptedFields).join(', ')}`);
423
- bobAcceptedPartialCert();
424
- resolve();
425
- }
426
- }
427
- });
428
- });
429
- const bobReceivedGeneralMessage = new Promise(resolve => {
430
- bob.listenForGeneralMessages((senderPublicKey, payload) => {
431
- console.log('Bob received message:', index_1.Utils.toUTF8(payload));
432
- resolve();
433
- });
434
- });
435
- await alice.toPeer(index_1.Utils.toArray('Hello Bob!'));
436
- await aliceReceivedCertificates;
437
- await bobReceivedCertificates;
438
- await bobReceivedGeneralMessage;
439
- // Wait for both sides to fully accept the partial cert
440
- await waitForAlicePartialCert;
441
- await waitForBobPartialCert;
442
- expect(aliceAcceptedPartialCert).toHaveBeenCalled();
443
- expect(bobAcceptedPartialCert).toHaveBeenCalled();
444
- expect(certificatesReceivedByAlice).toEqual([bobVerifiableCertificate]);
445
- expect(certificatesReceivedByBob).toEqual([aliceVerifiableCertificate]);
446
- }, 20000);
447
- });
448
- //# sourceMappingURL=Peer.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Peer.test.js","sourceRoot":"","sources":["../../../../../src/auth/__tests/Peer.test.ts"],"names":[],"mappings":"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"}
@@ -1,69 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const SessionManager_1 = require("../SessionManager");
4
- describe('SessionManager', () => {
5
- let sessionManager;
6
- let validSession;
7
- beforeEach(() => {
8
- sessionManager = new SessionManager_1.SessionManager();
9
- validSession = {
10
- isAuthenticated: false,
11
- sessionNonce: 'testSessionNonce',
12
- peerIdentityKey: 'testPeerIdentityKey',
13
- };
14
- });
15
- describe('addSession', () => {
16
- it('should add a session when sessionNonce and peerIdentityKey are present', () => {
17
- sessionManager.addSession(validSession);
18
- expect(sessionManager.getSession(validSession.sessionNonce)).toBe(validSession);
19
- expect(sessionManager.getSession(validSession.peerIdentityKey)).toBe(validSession);
20
- });
21
- it('should throw an error if sessionNonce and peerIdentityKey are missing', () => {
22
- const invalidSession = { ...validSession, sessionNonce: undefined, peerIdentityKey: undefined };
23
- expect(() => sessionManager.addSession(invalidSession)).toThrow('Invalid session: at least one of sessionNonce or peerIdentityKey is required.');
24
- });
25
- it('should not throw an error if just peerIdentityKey is missing', () => {
26
- const invalidSession = { ...validSession, peerIdentityKey: undefined };
27
- expect(() => sessionManager.addSession(invalidSession)).not.toThrow('Invalid session: peerIdentityKey is required.');
28
- });
29
- });
30
- describe('getSession', () => {
31
- it('should retrieve a session by sessionNonce', () => {
32
- sessionManager.addSession(validSession);
33
- const retrievedSession = sessionManager.getSession(validSession.sessionNonce);
34
- expect(retrievedSession).toBe(validSession);
35
- });
36
- it('should retrieve a session by peerIdentityKey', () => {
37
- sessionManager.addSession(validSession);
38
- const retrievedSession = sessionManager.getSession(validSession.peerIdentityKey);
39
- expect(retrievedSession).toBe(validSession);
40
- });
41
- it('should return undefined for a non-existent identifier', () => {
42
- const retrievedSession = sessionManager.getSession('nonExistentIdentifier');
43
- expect(retrievedSession).toBeUndefined();
44
- });
45
- });
46
- describe('removeSession', () => {
47
- it('should remove a session by both sessionNonce and peerIdentityKey', () => {
48
- sessionManager.addSession(validSession);
49
- sessionManager.removeSession(validSession);
50
- expect(sessionManager.getSession(validSession.sessionNonce)).toBeUndefined();
51
- expect(sessionManager.getSession(validSession.peerIdentityKey)).toBeUndefined();
52
- });
53
- it('should not throw an error when removing a session with undefined identifiers', () => {
54
- const sessionWithUndefinedIdentifiers = { ...validSession, sessionNonce: undefined, peerIdentityKey: undefined };
55
- expect(() => sessionManager.removeSession(sessionWithUndefinedIdentifiers)).not.toThrow();
56
- });
57
- });
58
- describe('hasSession', () => {
59
- it('should return true if a session exists for the identifier', () => {
60
- sessionManager.addSession(validSession);
61
- expect(sessionManager.hasSession(validSession.sessionNonce)).toBe(true);
62
- expect(sessionManager.hasSession(validSession.peerIdentityKey)).toBe(true);
63
- });
64
- it('should return false if no session exists for the identifier', () => {
65
- expect(sessionManager.hasSession('nonExistentIdentifier')).toBe(false);
66
- });
67
- });
68
- });
69
- //# sourceMappingURL=SessionManager.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"SessionManager.test.js","sourceRoot":"","sources":["../../../../../src/auth/__tests/SessionManager.test.ts"],"names":[],"mappings":"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"}