@bsv/sdk 1.3.12 → 1.3.14

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 (607) hide show
  1. package/dist/cjs/package.json +15 -3
  2. package/dist/cjs/src/auth/Peer.js +83 -57
  3. package/dist/cjs/src/auth/Peer.js.map +1 -1
  4. package/dist/cjs/src/auth/SessionManager.js +14 -9
  5. package/dist/cjs/src/auth/SessionManager.js.map +1 -1
  6. package/dist/cjs/src/auth/certificates/Certificate.js +16 -10
  7. package/dist/cjs/src/auth/certificates/Certificate.js.map +1 -1
  8. package/dist/cjs/src/auth/certificates/MasterCertificate.js +25 -23
  9. package/dist/cjs/src/auth/certificates/MasterCertificate.js.map +1 -1
  10. package/dist/cjs/src/auth/certificates/VerifiableCertificate.js +2 -2
  11. package/dist/cjs/src/auth/certificates/VerifiableCertificate.js.map +1 -1
  12. package/dist/cjs/src/auth/certificates/__tests/CompletedProtoWallet.js +62 -46
  13. package/dist/cjs/src/auth/certificates/__tests/CompletedProtoWallet.js.map +1 -1
  14. package/dist/cjs/src/auth/clients/AuthFetch.js +1 -0
  15. package/dist/cjs/src/auth/clients/AuthFetch.js.map +1 -1
  16. package/dist/cjs/src/auth/transports/SimplifiedFetchTransport.js +70 -43
  17. package/dist/cjs/src/auth/transports/SimplifiedFetchTransport.js.map +1 -1
  18. package/dist/cjs/src/auth/utils/createNonce.js +2 -1
  19. package/dist/cjs/src/auth/utils/createNonce.js.map +1 -1
  20. package/dist/cjs/src/auth/utils/getVerifiableCertificates.js.map +1 -1
  21. package/dist/cjs/src/auth/utils/validateCertificates.js +5 -2
  22. package/dist/cjs/src/auth/utils/validateCertificates.js.map +1 -1
  23. package/dist/cjs/src/auth/utils/verifyNonce.js +2 -1
  24. package/dist/cjs/src/auth/utils/verifyNonce.js.map +1 -1
  25. package/dist/cjs/src/compat/BSM.js +7 -17
  26. package/dist/cjs/src/compat/BSM.js.map +1 -1
  27. package/dist/cjs/src/compat/ECIES.js +172 -133
  28. package/dist/cjs/src/compat/ECIES.js.map +1 -1
  29. package/dist/cjs/src/compat/HD.js +63 -73
  30. package/dist/cjs/src/compat/HD.js.map +1 -1
  31. package/dist/cjs/src/compat/Mnemonic.js +102 -106
  32. package/dist/cjs/src/compat/Mnemonic.js.map +1 -1
  33. package/dist/cjs/src/compat/Utxo.js +2 -2
  34. package/dist/cjs/src/compat/Utxo.js.map +1 -1
  35. package/dist/cjs/src/compat/index.js +7 -17
  36. package/dist/cjs/src/compat/index.js.map +1 -1
  37. package/dist/cjs/src/messages/EncryptedMessage.js +3 -1
  38. package/dist/cjs/src/messages/EncryptedMessage.js.map +1 -1
  39. package/dist/cjs/src/messages/SignedMessage.js +1 -0
  40. package/dist/cjs/src/messages/SignedMessage.js.map +1 -1
  41. package/dist/cjs/src/messages/index.js +7 -17
  42. package/dist/cjs/src/messages/index.js.map +1 -1
  43. package/dist/cjs/src/overlay-tools/LookupResolver.js +54 -35
  44. package/dist/cjs/src/overlay-tools/LookupResolver.js.map +1 -1
  45. package/dist/cjs/src/overlay-tools/OverlayAdminTokenTemplate.js +32 -20
  46. package/dist/cjs/src/overlay-tools/OverlayAdminTokenTemplate.js.map +1 -1
  47. package/dist/cjs/src/overlay-tools/SHIPBroadcaster.js +40 -28
  48. package/dist/cjs/src/overlay-tools/SHIPBroadcaster.js.map +1 -1
  49. package/dist/cjs/src/primitives/AESGCM.js +6 -5
  50. package/dist/cjs/src/primitives/AESGCM.js.map +1 -1
  51. package/dist/cjs/src/primitives/BasePoint.js +1 -1
  52. package/dist/cjs/src/primitives/BasePoint.js.map +1 -1
  53. package/dist/cjs/src/primitives/BigNumber.js +50 -62
  54. package/dist/cjs/src/primitives/BigNumber.js.map +1 -1
  55. package/dist/cjs/src/primitives/Curve.js +46 -22
  56. package/dist/cjs/src/primitives/Curve.js.map +1 -1
  57. package/dist/cjs/src/primitives/DRBG.js +2 -8
  58. package/dist/cjs/src/primitives/DRBG.js.map +1 -1
  59. package/dist/cjs/src/primitives/ECDSA.js +51 -35
  60. package/dist/cjs/src/primitives/ECDSA.js.map +1 -1
  61. package/dist/cjs/src/primitives/Hash.js +191 -216
  62. package/dist/cjs/src/primitives/Hash.js.map +1 -1
  63. package/dist/cjs/src/primitives/JacobianPoint.js +19 -5
  64. package/dist/cjs/src/primitives/JacobianPoint.js.map +1 -1
  65. package/dist/cjs/src/primitives/K256.js.map +1 -1
  66. package/dist/cjs/src/primitives/Mersenne.js.map +1 -1
  67. package/dist/cjs/src/primitives/MontgomoryMethod.js.map +1 -1
  68. package/dist/cjs/src/primitives/Point.js +117 -88
  69. package/dist/cjs/src/primitives/Point.js.map +1 -1
  70. package/dist/cjs/src/primitives/Polynomial.js +4 -2
  71. package/dist/cjs/src/primitives/Polynomial.js.map +1 -1
  72. package/dist/cjs/src/primitives/PrivateKey.js +32 -33
  73. package/dist/cjs/src/primitives/PrivateKey.js.map +1 -1
  74. package/dist/cjs/src/primitives/PublicKey.js.map +1 -1
  75. package/dist/cjs/src/primitives/Random.js +6 -5
  76. package/dist/cjs/src/primitives/Random.js.map +1 -1
  77. package/dist/cjs/src/primitives/ReductionContext.js +1 -1
  78. package/dist/cjs/src/primitives/ReductionContext.js.map +1 -1
  79. package/dist/cjs/src/primitives/Schnorr.js +21 -15
  80. package/dist/cjs/src/primitives/Schnorr.js.map +1 -1
  81. package/dist/cjs/src/primitives/Signature.js +8 -7
  82. package/dist/cjs/src/primitives/Signature.js.map +1 -1
  83. package/dist/cjs/src/primitives/SymmetricKey.js +13 -13
  84. package/dist/cjs/src/primitives/SymmetricKey.js.map +1 -1
  85. package/dist/cjs/src/primitives/TransactionSignature.js +31 -29
  86. package/dist/cjs/src/primitives/TransactionSignature.js.map +1 -1
  87. package/dist/cjs/src/primitives/index.js +7 -17
  88. package/dist/cjs/src/primitives/index.js.map +1 -1
  89. package/dist/cjs/src/primitives/utils.js +79 -68
  90. package/dist/cjs/src/primitives/utils.js.map +1 -1
  91. package/dist/cjs/src/script/OP.js +3 -3
  92. package/dist/cjs/src/script/OP.js.map +1 -1
  93. package/dist/cjs/src/script/Script.js +12 -10
  94. package/dist/cjs/src/script/Script.js.map +1 -1
  95. package/dist/cjs/src/script/Spend.js +47 -49
  96. package/dist/cjs/src/script/Spend.js.map +1 -1
  97. package/dist/cjs/src/script/templates/P2PKH.js +24 -12
  98. package/dist/cjs/src/script/templates/P2PKH.js.map +1 -1
  99. package/dist/cjs/src/script/templates/PushDrop.js +28 -23
  100. package/dist/cjs/src/script/templates/PushDrop.js.map +1 -1
  101. package/dist/cjs/src/script/templates/RPuzzle.js +10 -6
  102. package/dist/cjs/src/script/templates/RPuzzle.js.map +1 -1
  103. package/dist/cjs/src/totp/totp.js +2 -1
  104. package/dist/cjs/src/totp/totp.js.map +1 -1
  105. package/dist/cjs/src/transaction/Beef.js +177 -154
  106. package/dist/cjs/src/transaction/Beef.js.map +1 -1
  107. package/dist/cjs/src/transaction/BeefParty.js +24 -24
  108. package/dist/cjs/src/transaction/BeefParty.js.map +1 -1
  109. package/dist/cjs/src/transaction/BeefTx.js +26 -18
  110. package/dist/cjs/src/transaction/BeefTx.js.map +1 -1
  111. package/dist/cjs/src/transaction/Broadcaster.js +3 -2
  112. package/dist/cjs/src/transaction/Broadcaster.js.map +1 -1
  113. package/dist/cjs/src/transaction/MerklePath.js +64 -37
  114. package/dist/cjs/src/transaction/MerklePath.js.map +1 -1
  115. package/dist/cjs/src/transaction/Transaction.js +111 -137
  116. package/dist/cjs/src/transaction/Transaction.js.map +1 -1
  117. package/dist/cjs/src/transaction/broadcasters/ARC.js +25 -16
  118. package/dist/cjs/src/transaction/broadcasters/ARC.js.map +1 -1
  119. package/dist/cjs/src/transaction/broadcasters/DefaultBroadcaster.js +2 -1
  120. package/dist/cjs/src/transaction/broadcasters/DefaultBroadcaster.js.map +1 -1
  121. package/dist/cjs/src/transaction/broadcasters/WhatsOnChainBroadcaster.js.map +1 -1
  122. package/dist/cjs/src/transaction/chaintrackers/DefaultChainTracker.js +2 -1
  123. package/dist/cjs/src/transaction/chaintrackers/DefaultChainTracker.js.map +1 -1
  124. package/dist/cjs/src/transaction/chaintrackers/WhatsOnChain.js +3 -3
  125. package/dist/cjs/src/transaction/chaintrackers/WhatsOnChain.js.map +1 -1
  126. package/dist/cjs/src/transaction/fee-models/SatoshisPerKilobyte.js.map +1 -1
  127. package/dist/cjs/src/transaction/http/DefaultHttpClient.js +5 -3
  128. package/dist/cjs/src/transaction/http/DefaultHttpClient.js.map +1 -1
  129. package/dist/cjs/src/transaction/http/FetchHttpClient.js +5 -2
  130. package/dist/cjs/src/transaction/http/FetchHttpClient.js.map +1 -1
  131. package/dist/cjs/src/transaction/http/NodejsHttpClient.js +5 -3
  132. package/dist/cjs/src/transaction/http/NodejsHttpClient.js.map +1 -1
  133. package/dist/cjs/src/transaction/http/index.js.map +1 -1
  134. package/dist/cjs/src/transaction/index.js.map +1 -1
  135. package/dist/cjs/src/wallet/CachedKeyDeriver.js +91 -66
  136. package/dist/cjs/src/wallet/CachedKeyDeriver.js.map +1 -1
  137. package/dist/cjs/src/wallet/KeyDeriver.js +61 -52
  138. package/dist/cjs/src/wallet/KeyDeriver.js.map +1 -1
  139. package/dist/cjs/src/wallet/ProtoWallet.js +79 -29
  140. package/dist/cjs/src/wallet/ProtoWallet.js.map +1 -1
  141. package/dist/cjs/src/wallet/WalletClient.js +7 -2
  142. package/dist/cjs/src/wallet/WalletClient.js.map +1 -1
  143. package/dist/cjs/src/wallet/WalletError.js +2 -2
  144. package/dist/cjs/src/wallet/WalletError.js.map +1 -1
  145. package/dist/cjs/src/wallet/substrates/HTTPWalletJSON.js +4 -3
  146. package/dist/cjs/src/wallet/substrates/HTTPWalletJSON.js.map +1 -1
  147. package/dist/cjs/src/wallet/substrates/HTTPWalletWire.js +2 -2
  148. package/dist/cjs/src/wallet/substrates/HTTPWalletWire.js.map +1 -1
  149. package/dist/cjs/src/wallet/substrates/WalletWireProcessor.js +1239 -1261
  150. package/dist/cjs/src/wallet/substrates/WalletWireProcessor.js.map +1 -1
  151. package/dist/cjs/src/wallet/substrates/WalletWireTransceiver.js +102 -43
  152. package/dist/cjs/src/wallet/substrates/WalletWireTransceiver.js.map +1 -1
  153. package/dist/cjs/src/wallet/substrates/XDM.js +8 -3
  154. package/dist/cjs/src/wallet/substrates/XDM.js.map +1 -1
  155. package/dist/cjs/src/wallet/substrates/window.CWI.js +28 -28
  156. package/dist/cjs/src/wallet/substrates/window.CWI.js.map +1 -1
  157. package/dist/cjs/tsconfig.cjs.tsbuildinfo +1 -1
  158. package/dist/esm/mod.js +15 -15
  159. package/dist/esm/src/auth/Peer.js +75 -54
  160. package/dist/esm/src/auth/Peer.js.map +1 -1
  161. package/dist/esm/src/auth/SessionManager.js +14 -9
  162. package/dist/esm/src/auth/SessionManager.js.map +1 -1
  163. package/dist/esm/src/auth/certificates/Certificate.js +15 -11
  164. package/dist/esm/src/auth/certificates/Certificate.js.map +1 -1
  165. package/dist/esm/src/auth/certificates/MasterCertificate.js +25 -23
  166. package/dist/esm/src/auth/certificates/MasterCertificate.js.map +1 -1
  167. package/dist/esm/src/auth/certificates/VerifiableCertificate.js +2 -2
  168. package/dist/esm/src/auth/certificates/VerifiableCertificate.js.map +1 -1
  169. package/dist/esm/src/auth/certificates/__tests/CompletedProtoWallet.js +64 -47
  170. package/dist/esm/src/auth/certificates/__tests/CompletedProtoWallet.js.map +1 -1
  171. package/dist/esm/src/auth/clients/AuthFetch.js +1 -0
  172. package/dist/esm/src/auth/clients/AuthFetch.js.map +1 -1
  173. package/dist/esm/src/auth/transports/SimplifiedFetchTransport.js +69 -43
  174. package/dist/esm/src/auth/transports/SimplifiedFetchTransport.js.map +1 -1
  175. package/dist/esm/src/auth/utils/createNonce.js.map +1 -1
  176. package/dist/esm/src/auth/utils/getVerifiableCertificates.js +1 -1
  177. package/dist/esm/src/auth/utils/getVerifiableCertificates.js.map +1 -1
  178. package/dist/esm/src/auth/utils/validateCertificates.js +6 -3
  179. package/dist/esm/src/auth/utils/validateCertificates.js.map +1 -1
  180. package/dist/esm/src/auth/utils/verifyNonce.js.map +1 -1
  181. package/dist/esm/src/compat/BSM.js.map +1 -1
  182. package/dist/esm/src/compat/ECIES.js +165 -116
  183. package/dist/esm/src/compat/ECIES.js.map +1 -1
  184. package/dist/esm/src/compat/HD.js +56 -56
  185. package/dist/esm/src/compat/HD.js.map +1 -1
  186. package/dist/esm/src/compat/Mnemonic.js +95 -89
  187. package/dist/esm/src/compat/Mnemonic.js.map +1 -1
  188. package/dist/esm/src/compat/Utxo.js +1 -1
  189. package/dist/esm/src/compat/Utxo.js.map +1 -1
  190. package/dist/esm/src/messages/EncryptedMessage.js +3 -1
  191. package/dist/esm/src/messages/EncryptedMessage.js.map +1 -1
  192. package/dist/esm/src/messages/SignedMessage.js +1 -0
  193. package/dist/esm/src/messages/SignedMessage.js.map +1 -1
  194. package/dist/esm/src/overlay-tools/LookupResolver.js +53 -35
  195. package/dist/esm/src/overlay-tools/LookupResolver.js.map +1 -1
  196. package/dist/esm/src/overlay-tools/OverlayAdminTokenTemplate.js +32 -20
  197. package/dist/esm/src/overlay-tools/OverlayAdminTokenTemplate.js.map +1 -1
  198. package/dist/esm/src/overlay-tools/SHIPBroadcaster.js +40 -28
  199. package/dist/esm/src/overlay-tools/SHIPBroadcaster.js.map +1 -1
  200. package/dist/esm/src/primitives/AESGCM.js +1 -0
  201. package/dist/esm/src/primitives/AESGCM.js.map +1 -1
  202. package/dist/esm/src/primitives/BasePoint.js +1 -1
  203. package/dist/esm/src/primitives/BasePoint.js.map +1 -1
  204. package/dist/esm/src/primitives/BigNumber.js +50 -62
  205. package/dist/esm/src/primitives/BigNumber.js.map +1 -1
  206. package/dist/esm/src/primitives/Curve.js +45 -22
  207. package/dist/esm/src/primitives/Curve.js.map +1 -1
  208. package/dist/esm/src/primitives/DRBG.js +2 -8
  209. package/dist/esm/src/primitives/DRBG.js.map +1 -1
  210. package/dist/esm/src/primitives/ECDSA.js +50 -35
  211. package/dist/esm/src/primitives/ECDSA.js.map +1 -1
  212. package/dist/esm/src/primitives/Hash.js +188 -213
  213. package/dist/esm/src/primitives/Hash.js.map +1 -1
  214. package/dist/esm/src/primitives/JacobianPoint.js +18 -5
  215. package/dist/esm/src/primitives/JacobianPoint.js.map +1 -1
  216. package/dist/esm/src/primitives/K256.js.map +1 -1
  217. package/dist/esm/src/primitives/Mersenne.js.map +1 -1
  218. package/dist/esm/src/primitives/MontgomoryMethod.js.map +1 -1
  219. package/dist/esm/src/primitives/Point.js +107 -88
  220. package/dist/esm/src/primitives/Point.js.map +1 -1
  221. package/dist/esm/src/primitives/Polynomial.js +4 -2
  222. package/dist/esm/src/primitives/Polynomial.js.map +1 -1
  223. package/dist/esm/src/primitives/PrivateKey.js +25 -16
  224. package/dist/esm/src/primitives/PrivateKey.js.map +1 -1
  225. package/dist/esm/src/primitives/PublicKey.js.map +1 -1
  226. package/dist/esm/src/primitives/Random.js +7 -6
  227. package/dist/esm/src/primitives/Random.js.map +1 -1
  228. package/dist/esm/src/primitives/ReductionContext.js +1 -1
  229. package/dist/esm/src/primitives/ReductionContext.js.map +1 -1
  230. package/dist/esm/src/primitives/Schnorr.js +21 -15
  231. package/dist/esm/src/primitives/Schnorr.js.map +1 -1
  232. package/dist/esm/src/primitives/Signature.js +8 -7
  233. package/dist/esm/src/primitives/Signature.js.map +1 -1
  234. package/dist/esm/src/primitives/SymmetricKey.js +13 -13
  235. package/dist/esm/src/primitives/SymmetricKey.js.map +1 -1
  236. package/dist/esm/src/primitives/TransactionSignature.js +22 -12
  237. package/dist/esm/src/primitives/TransactionSignature.js.map +1 -1
  238. package/dist/esm/src/primitives/utils.js +76 -66
  239. package/dist/esm/src/primitives/utils.js.map +1 -1
  240. package/dist/esm/src/script/OP.js +3 -3
  241. package/dist/esm/src/script/OP.js.map +1 -1
  242. package/dist/esm/src/script/Script.js +12 -10
  243. package/dist/esm/src/script/Script.js.map +1 -1
  244. package/dist/esm/src/script/Spend.js +39 -32
  245. package/dist/esm/src/script/Spend.js.map +1 -1
  246. package/dist/esm/src/script/templates/P2PKH.js +26 -11
  247. package/dist/esm/src/script/templates/P2PKH.js.map +1 -1
  248. package/dist/esm/src/script/templates/PushDrop.js +29 -22
  249. package/dist/esm/src/script/templates/PushDrop.js.map +1 -1
  250. package/dist/esm/src/script/templates/RPuzzle.js +11 -6
  251. package/dist/esm/src/script/templates/RPuzzle.js.map +1 -1
  252. package/dist/esm/src/totp/totp.js +2 -1
  253. package/dist/esm/src/totp/totp.js.map +1 -1
  254. package/dist/esm/src/transaction/Beef.js +176 -154
  255. package/dist/esm/src/transaction/Beef.js.map +1 -1
  256. package/dist/esm/src/transaction/BeefParty.js +24 -24
  257. package/dist/esm/src/transaction/BeefParty.js.map +1 -1
  258. package/dist/esm/src/transaction/BeefTx.js +26 -18
  259. package/dist/esm/src/transaction/BeefTx.js.map +1 -1
  260. package/dist/esm/src/transaction/Broadcaster.js.map +1 -1
  261. package/dist/esm/src/transaction/MerklePath.js +61 -36
  262. package/dist/esm/src/transaction/MerklePath.js.map +1 -1
  263. package/dist/esm/src/transaction/Transaction.js +105 -138
  264. package/dist/esm/src/transaction/Transaction.js.map +1 -1
  265. package/dist/esm/src/transaction/broadcasters/ARC.js +25 -16
  266. package/dist/esm/src/transaction/broadcasters/ARC.js.map +1 -1
  267. package/dist/esm/src/transaction/broadcasters/DefaultBroadcaster.js.map +1 -1
  268. package/dist/esm/src/transaction/broadcasters/WhatsOnChainBroadcaster.js.map +1 -1
  269. package/dist/esm/src/transaction/chaintrackers/WhatsOnChain.js +3 -3
  270. package/dist/esm/src/transaction/chaintrackers/WhatsOnChain.js.map +1 -1
  271. package/dist/esm/src/transaction/fee-models/SatoshisPerKilobyte.js.map +1 -1
  272. package/dist/esm/src/transaction/http/DefaultHttpClient.js +3 -2
  273. package/dist/esm/src/transaction/http/DefaultHttpClient.js.map +1 -1
  274. package/dist/esm/src/transaction/http/FetchHttpClient.js +4 -2
  275. package/dist/esm/src/transaction/http/FetchHttpClient.js.map +1 -1
  276. package/dist/esm/src/transaction/http/NodejsHttpClient.js +5 -3
  277. package/dist/esm/src/transaction/http/NodejsHttpClient.js.map +1 -1
  278. package/dist/esm/src/transaction/http/index.js.map +1 -1
  279. package/dist/esm/src/transaction/index.js.map +1 -1
  280. package/dist/esm/src/wallet/CachedKeyDeriver.js +91 -66
  281. package/dist/esm/src/wallet/CachedKeyDeriver.js.map +1 -1
  282. package/dist/esm/src/wallet/KeyDeriver.js +60 -52
  283. package/dist/esm/src/wallet/KeyDeriver.js.map +1 -1
  284. package/dist/esm/src/wallet/ProtoWallet.js +75 -29
  285. package/dist/esm/src/wallet/ProtoWallet.js.map +1 -1
  286. package/dist/esm/src/wallet/WalletClient.js +7 -2
  287. package/dist/esm/src/wallet/WalletClient.js.map +1 -1
  288. package/dist/esm/src/wallet/WalletError.js +2 -2
  289. package/dist/esm/src/wallet/WalletError.js.map +1 -1
  290. package/dist/esm/src/wallet/substrates/HTTPWalletJSON.js +4 -4
  291. package/dist/esm/src/wallet/substrates/HTTPWalletJSON.js.map +1 -1
  292. package/dist/esm/src/wallet/substrates/HTTPWalletWire.js +2 -2
  293. package/dist/esm/src/wallet/substrates/HTTPWalletWire.js.map +1 -1
  294. package/dist/esm/src/wallet/substrates/WalletWireProcessor.js +1239 -1261
  295. package/dist/esm/src/wallet/substrates/WalletWireProcessor.js.map +1 -1
  296. package/dist/esm/src/wallet/substrates/WalletWireTransceiver.js +95 -43
  297. package/dist/esm/src/wallet/substrates/WalletWireTransceiver.js.map +1 -1
  298. package/dist/esm/src/wallet/substrates/XDM.js +8 -3
  299. package/dist/esm/src/wallet/substrates/XDM.js.map +1 -1
  300. package/dist/esm/src/wallet/substrates/window.CWI.js +28 -28
  301. package/dist/esm/src/wallet/substrates/window.CWI.js.map +1 -1
  302. package/dist/esm/tsconfig.esm.tsbuildinfo +1 -1
  303. package/dist/types/mod.d.ts +15 -15
  304. package/dist/types/src/auth/Peer.d.ts +10 -10
  305. package/dist/types/src/auth/Peer.d.ts.map +1 -1
  306. package/dist/types/src/auth/SessionManager.d.ts +4 -4
  307. package/dist/types/src/auth/SessionManager.d.ts.map +1 -1
  308. package/dist/types/src/auth/certificates/Certificate.d.ts +6 -6
  309. package/dist/types/src/auth/certificates/Certificate.d.ts.map +1 -1
  310. package/dist/types/src/auth/certificates/MasterCertificate.d.ts +5 -5
  311. package/dist/types/src/auth/certificates/MasterCertificate.d.ts.map +1 -1
  312. package/dist/types/src/auth/certificates/VerifiableCertificate.d.ts.map +1 -1
  313. package/dist/types/src/auth/certificates/__tests/CompletedProtoWallet.d.ts +23 -22
  314. package/dist/types/src/auth/certificates/__tests/CompletedProtoWallet.d.ts.map +1 -1
  315. package/dist/types/src/auth/clients/AuthFetch.d.ts.map +1 -1
  316. package/dist/types/src/auth/transports/SimplifiedFetchTransport.d.ts +1 -1
  317. package/dist/types/src/auth/transports/SimplifiedFetchTransport.d.ts.map +1 -1
  318. package/dist/types/src/auth/utils/createNonce.d.ts.map +1 -1
  319. package/dist/types/src/auth/utils/getVerifiableCertificates.d.ts +3 -3
  320. package/dist/types/src/auth/utils/getVerifiableCertificates.d.ts.map +1 -1
  321. package/dist/types/src/auth/utils/validateCertificates.d.ts +2 -2
  322. package/dist/types/src/auth/utils/validateCertificates.d.ts.map +1 -1
  323. package/dist/types/src/auth/utils/verifyNonce.d.ts +1 -1
  324. package/dist/types/src/auth/utils/verifyNonce.d.ts.map +1 -1
  325. package/dist/types/src/compat/BSM.d.ts +1 -1
  326. package/dist/types/src/compat/BSM.d.ts.map +1 -1
  327. package/dist/types/src/compat/ECIES.d.ts +36 -36
  328. package/dist/types/src/compat/ECIES.d.ts.map +1 -1
  329. package/dist/types/src/compat/HD.d.ts +51 -51
  330. package/dist/types/src/compat/HD.d.ts.map +1 -1
  331. package/dist/types/src/compat/Mnemonic.d.ts +79 -79
  332. package/dist/types/src/compat/Mnemonic.d.ts.map +1 -1
  333. package/dist/types/src/compat/Utxo.d.ts.map +1 -1
  334. package/dist/types/src/messages/EncryptedMessage.d.ts.map +1 -1
  335. package/dist/types/src/messages/SignedMessage.d.ts.map +1 -1
  336. package/dist/types/src/overlay-tools/LookupResolver.d.ts +9 -9
  337. package/dist/types/src/overlay-tools/LookupResolver.d.ts.map +1 -1
  338. package/dist/types/src/overlay-tools/OverlayAdminTokenTemplate.d.ts +17 -17
  339. package/dist/types/src/overlay-tools/OverlayAdminTokenTemplate.d.ts.map +1 -1
  340. package/dist/types/src/overlay-tools/SHIPBroadcaster.d.ts +14 -14
  341. package/dist/types/src/overlay-tools/SHIPBroadcaster.d.ts.map +1 -1
  342. package/dist/types/src/primitives/AESGCM.d.ts.map +1 -1
  343. package/dist/types/src/primitives/BasePoint.d.ts +8 -8
  344. package/dist/types/src/primitives/BasePoint.d.ts.map +1 -1
  345. package/dist/types/src/primitives/BigNumber.d.ts.map +1 -1
  346. package/dist/types/src/primitives/Curve.d.ts +14 -7
  347. package/dist/types/src/primitives/Curve.d.ts.map +1 -1
  348. package/dist/types/src/primitives/DRBG.d.ts.map +1 -1
  349. package/dist/types/src/primitives/ECDSA.d.ts +1 -1
  350. package/dist/types/src/primitives/ECDSA.d.ts.map +1 -1
  351. package/dist/types/src/primitives/Hash.d.ts +11 -11
  352. package/dist/types/src/primitives/Hash.d.ts.map +1 -1
  353. package/dist/types/src/primitives/JacobianPoint.d.ts.map +1 -1
  354. package/dist/types/src/primitives/Point.d.ts +14 -10
  355. package/dist/types/src/primitives/Point.d.ts.map +1 -1
  356. package/dist/types/src/primitives/Polynomial.d.ts.map +1 -1
  357. package/dist/types/src/primitives/PrivateKey.d.ts +2 -2
  358. package/dist/types/src/primitives/PrivateKey.d.ts.map +1 -1
  359. package/dist/types/src/primitives/PublicKey.d.ts.map +1 -1
  360. package/dist/types/src/primitives/Random.d.ts.map +1 -1
  361. package/dist/types/src/primitives/Schnorr.d.ts +14 -14
  362. package/dist/types/src/primitives/Schnorr.d.ts.map +1 -1
  363. package/dist/types/src/primitives/Signature.d.ts +1 -1
  364. package/dist/types/src/primitives/Signature.d.ts.map +1 -1
  365. package/dist/types/src/primitives/SymmetricKey.d.ts +13 -13
  366. package/dist/types/src/primitives/SymmetricKey.d.ts.map +1 -1
  367. package/dist/types/src/primitives/TransactionSignature.d.ts +4 -4
  368. package/dist/types/src/primitives/TransactionSignature.d.ts.map +1 -1
  369. package/dist/types/src/primitives/utils.d.ts +3 -6
  370. package/dist/types/src/primitives/utils.d.ts.map +1 -1
  371. package/dist/types/src/script/Script.d.ts +3 -3
  372. package/dist/types/src/script/Script.d.ts.map +1 -1
  373. package/dist/types/src/script/ScriptTemplate.d.ts +2 -2
  374. package/dist/types/src/script/ScriptTemplate.d.ts.map +1 -1
  375. package/dist/types/src/script/Spend.d.ts.map +1 -1
  376. package/dist/types/src/script/templates/P2PKH.d.ts.map +1 -1
  377. package/dist/types/src/script/templates/PushDrop.d.ts +1 -2
  378. package/dist/types/src/script/templates/PushDrop.d.ts.map +1 -1
  379. package/dist/types/src/script/templates/RPuzzle.d.ts.map +1 -1
  380. package/dist/types/src/totp/totp.d.ts.map +1 -1
  381. package/dist/types/src/transaction/Beef.d.ts +96 -96
  382. package/dist/types/src/transaction/Beef.d.ts.map +1 -1
  383. package/dist/types/src/transaction/BeefParty.d.ts +22 -22
  384. package/dist/types/src/transaction/BeefParty.d.ts.map +1 -1
  385. package/dist/types/src/transaction/BeefTx.d.ts +5 -5
  386. package/dist/types/src/transaction/BeefTx.d.ts.map +1 -1
  387. package/dist/types/src/transaction/Broadcaster.d.ts.map +1 -1
  388. package/dist/types/src/transaction/ChainTracker.d.ts +2 -2
  389. package/dist/types/src/transaction/FeeModel.d.ts.map +1 -1
  390. package/dist/types/src/transaction/MerklePath.d.ts.map +1 -1
  391. package/dist/types/src/transaction/Transaction.d.ts +4 -12
  392. package/dist/types/src/transaction/Transaction.d.ts.map +1 -1
  393. package/dist/types/src/transaction/TransactionOutput.d.ts.map +1 -1
  394. package/dist/types/src/transaction/broadcasters/ARC.d.ts +1 -1
  395. package/dist/types/src/transaction/broadcasters/ARC.d.ts.map +1 -1
  396. package/dist/types/src/transaction/broadcasters/DefaultBroadcaster.d.ts.map +1 -1
  397. package/dist/types/src/transaction/broadcasters/WhatsOnChainBroadcaster.d.ts.map +1 -1
  398. package/dist/types/src/transaction/chaintrackers/DefaultChainTracker.d.ts.map +1 -1
  399. package/dist/types/src/transaction/chaintrackers/WhatsOnChain.d.ts.map +1 -1
  400. package/dist/types/src/transaction/fee-models/SatoshisPerKilobyte.d.ts.map +1 -1
  401. package/dist/types/src/transaction/http/DefaultHttpClient.d.ts +1 -1
  402. package/dist/types/src/transaction/http/DefaultHttpClient.d.ts.map +1 -1
  403. package/dist/types/src/transaction/http/FetchHttpClient.d.ts +5 -5
  404. package/dist/types/src/transaction/http/FetchHttpClient.d.ts.map +1 -1
  405. package/dist/types/src/transaction/http/HttpClient.d.ts +4 -4
  406. package/dist/types/src/transaction/http/HttpClient.d.ts.map +1 -1
  407. package/dist/types/src/transaction/http/NodejsHttpClient.d.ts +3 -3
  408. package/dist/types/src/transaction/http/NodejsHttpClient.d.ts.map +1 -1
  409. package/dist/types/src/transaction/http/index.d.ts.map +1 -1
  410. package/dist/types/src/transaction/index.d.ts.map +1 -1
  411. package/dist/types/src/wallet/CachedKeyDeriver.d.ts +58 -58
  412. package/dist/types/src/wallet/CachedKeyDeriver.d.ts.map +1 -1
  413. package/dist/types/src/wallet/KeyDeriver.d.ts +78 -78
  414. package/dist/types/src/wallet/KeyDeriver.d.ts.map +1 -1
  415. package/dist/types/src/wallet/ProtoWallet.d.ts +10 -10
  416. package/dist/types/src/wallet/ProtoWallet.d.ts.map +1 -1
  417. package/dist/types/src/wallet/Wallet.interfaces.d.ts +151 -152
  418. package/dist/types/src/wallet/Wallet.interfaces.d.ts.map +1 -1
  419. package/dist/types/src/wallet/WalletClient.d.ts +5 -5
  420. package/dist/types/src/wallet/WalletClient.d.ts.map +1 -1
  421. package/dist/types/src/wallet/substrates/HTTPWalletJSON.d.ts +6 -6
  422. package/dist/types/src/wallet/substrates/HTTPWalletJSON.d.ts.map +1 -1
  423. package/dist/types/src/wallet/substrates/HTTPWalletWire.d.ts.map +1 -1
  424. package/dist/types/src/wallet/substrates/WalletWireProcessor.d.ts.map +1 -1
  425. package/dist/types/src/wallet/substrates/WalletWireTransceiver.d.ts.map +1 -1
  426. package/dist/types/src/wallet/substrates/XDM.d.ts +1 -1
  427. package/dist/types/src/wallet/substrates/XDM.d.ts.map +1 -1
  428. package/dist/types/src/wallet/substrates/window.CWI.d.ts +6 -6
  429. package/dist/types/src/wallet/substrates/window.CWI.d.ts.map +1 -1
  430. package/dist/types/tsconfig.types.tsbuildinfo +1 -1
  431. package/dist/umd/bundle.js +1 -1
  432. package/docs/auth.md +92 -82
  433. package/docs/compat.md +24 -24
  434. package/docs/messages.md +7 -5
  435. package/docs/overlay-tools.md +21 -21
  436. package/docs/primitives.md +336 -315
  437. package/docs/script.md +35 -35
  438. package/docs/swagger/dist/swagger-initializer.js +7 -7
  439. package/docs/swagger/dist/swagger-ui-bundle.js +1 -1
  440. package/docs/swagger/dist/swagger-ui-es-bundle-core.js +2 -2
  441. package/docs/swagger/dist/swagger-ui-es-bundle.js +1 -1
  442. package/docs/swagger/dist/swagger-ui-standalone-preset.js +1 -1
  443. package/docs/swagger/dist/swagger-ui.js +2 -2
  444. package/docs/totp.md +5 -5
  445. package/docs/transaction.md +103 -105
  446. package/docs/wallet-substrates.md +17 -17
  447. package/docs/wallet.md +202 -204
  448. package/mod.ts +15 -15
  449. package/package.json +15 -3
  450. package/src/auth/Peer.ts +271 -121
  451. package/src/auth/SessionManager.ts +17 -10
  452. package/src/auth/__tests/Peer.test.ts +361 -179
  453. package/src/auth/__tests/SessionManager.test.ts +67 -19
  454. package/src/auth/__tests/build.test.ts +11 -0
  455. package/src/auth/certificates/Certificate.ts +27 -14
  456. package/src/auth/certificates/MasterCertificate.ts +106 -62
  457. package/src/auth/certificates/VerifiableCertificate.ts +30 -8
  458. package/src/auth/certificates/__tests/Certificate.test.ts +32 -17
  459. package/src/auth/certificates/__tests/CompletedProtoWallet.ts +171 -68
  460. package/src/auth/certificates/__tests/MasterCertificate.test.ts +63 -47
  461. package/src/auth/certificates/__tests/VerifiableCertificate.test.ts +42 -31
  462. package/src/auth/certificates/index.ts +1 -1
  463. package/src/auth/clients/AuthFetch.ts +1 -0
  464. package/src/auth/clients/index.ts +1 -1
  465. package/src/auth/transports/SimplifiedFetchTransport.ts +145 -72
  466. package/src/auth/transports/index.ts +1 -1
  467. package/src/auth/utils/__tests/cryptononce.test.ts +52 -23
  468. package/src/auth/utils/__tests/getVerifiableCertificates.test.ts +56 -30
  469. package/src/auth/utils/__tests/validateCertificates.test.ts +53 -31
  470. package/src/auth/utils/createNonce.ts +11 -3
  471. package/src/auth/utils/getVerifiableCertificates.ts +12 -7
  472. package/src/auth/utils/validateCertificates.ts +57 -39
  473. package/src/auth/utils/verifyNonce.ts +6 -2
  474. package/src/compat/BSM.ts +10 -2
  475. package/src/compat/ECIES.ts +265 -141
  476. package/src/compat/HD.ts +81 -63
  477. package/src/compat/Mnemonic.ts +104 -91
  478. package/src/compat/Utxo.ts +8 -5
  479. package/src/compat/__tests/BSM.test.ts +42 -16
  480. package/src/compat/__tests/ECIES.test.ts +117 -52
  481. package/src/compat/__tests/HD.test.ts +55 -42
  482. package/src/compat/__tests/Mnemonic.test.ts +11 -12
  483. package/src/compat/__tests/Mnemonic.vectors.ts +110 -55
  484. package/src/messages/EncryptedMessage.ts +6 -2
  485. package/src/messages/SignedMessage.ts +14 -8
  486. package/src/messages/__tests/EncryptedMessage.test.ts +23 -24
  487. package/src/messages/__tests/SignedMessage.test.ts +17 -11
  488. package/src/overlay-tools/LookupResolver.ts +108 -56
  489. package/src/overlay-tools/OverlayAdminTokenTemplate.ts +52 -23
  490. package/src/overlay-tools/SHIPBroadcaster.ts +135 -59
  491. package/src/overlay-tools/__tests/LookupResolver.test.ts +723 -323
  492. package/src/overlay-tools/__tests/OverlayAdminTokenTemplate.test.ts +50 -22
  493. package/src/overlay-tools/__tests/SHIPBroadcaster.test.ts +607 -290
  494. package/src/primitives/AESGCM.ts +2 -0
  495. package/src/primitives/BasePoint.ts +4 -4
  496. package/src/primitives/BigNumber.ts +99 -90
  497. package/src/primitives/Curve.ts +117 -46
  498. package/src/primitives/DRBG.ts +9 -11
  499. package/src/primitives/ECDSA.ts +109 -63
  500. package/src/primitives/Hash.ts +492 -321
  501. package/src/primitives/JacobianPoint.ts +67 -19
  502. package/src/primitives/Point.ts +254 -152
  503. package/src/primitives/Polynomial.ts +8 -3
  504. package/src/primitives/PrivateKey.ts +41 -17
  505. package/src/primitives/PublicKey.ts +13 -3
  506. package/src/primitives/Random.ts +14 -8
  507. package/src/primitives/ReductionContext.ts +1 -1
  508. package/src/primitives/Schnorr.ts +40 -18
  509. package/src/primitives/Signature.ts +26 -16
  510. package/src/primitives/SymmetricKey.ts +14 -14
  511. package/src/primitives/TransactionSignature.ts +41 -17
  512. package/src/primitives/__tests/AESGCM.test.ts +457 -151
  513. package/src/primitives/__tests/BRC42.private.vectors.ts +30 -15
  514. package/src/primitives/__tests/BRC42.public.vectors.ts +30 -15
  515. package/src/primitives/__tests/BigNumber.arithmatic.test.ts +344 -125
  516. package/src/primitives/__tests/BigNumber.binary.test.ts +148 -67
  517. package/src/primitives/__tests/BigNumber.constructor.test.ts +65 -25
  518. package/src/primitives/__tests/BigNumber.dhGroup.test.ts +15 -11
  519. package/src/primitives/__tests/BigNumber.fixtures.ts +16 -8
  520. package/src/primitives/__tests/BigNumber.serializers.test.ts +41 -15
  521. package/src/primitives/__tests/BigNumber.utils.test.ts +132 -42
  522. package/src/primitives/__tests/Curve.unit.test.ts +75 -53
  523. package/src/primitives/__tests/DRBG.test.ts +1 -1
  524. package/src/primitives/__tests/DRBG.vectors.ts +45 -75
  525. package/src/primitives/__tests/ECDH.test.ts +15 -8
  526. package/src/primitives/__tests/ECDSA.test.ts +12 -6
  527. package/src/primitives/__tests/HMAC.test.ts +24 -18
  528. package/src/primitives/__tests/Hash.test.ts +57 -46
  529. package/src/primitives/__tests/PBKDF2.vectors.ts +130 -117
  530. package/src/primitives/__tests/PrivateKey.split.test.ts +33 -11
  531. package/src/primitives/__tests/PrivateKey.test.ts +11 -10
  532. package/src/primitives/__tests/PublicKey.test.ts +64 -53
  533. package/src/primitives/__tests/Random.test.ts +1 -1
  534. package/src/primitives/__tests/Reader.test.ts +240 -219
  535. package/src/primitives/__tests/ReductionContext.test.ts +98 -61
  536. package/src/primitives/__tests/Schnorr.test.ts +249 -237
  537. package/src/primitives/__tests/SymmetricKey.test.ts +18 -15
  538. package/src/primitives/__tests/SymmetricKey.vectors.ts +16 -8
  539. package/src/primitives/__tests/Writer.test.ts +23 -13
  540. package/src/primitives/__tests/bug-31.test.ts +6 -10
  541. package/src/primitives/__tests/utils.test.ts +70 -19
  542. package/src/primitives/utils.ts +103 -79
  543. package/src/script/Script.ts +18 -12
  544. package/src/script/ScriptTemplate.ts +3 -5
  545. package/src/script/Spend.ts +306 -108
  546. package/src/script/__tests/Script.test.ts +73 -55
  547. package/src/script/__tests/Spend.test.ts +208 -83
  548. package/src/script/__tests/SpendComplex.test.ts +19 -13
  549. package/src/script/__tests/script.invalid.vectors.ts +428 -1796
  550. package/src/script/__tests/script.valid.vectors.ts +728 -2764
  551. package/src/script/templates/P2PKH.ts +34 -12
  552. package/src/script/templates/PushDrop.ts +65 -31
  553. package/src/script/templates/RPuzzle.ts +29 -8
  554. package/src/script/templates/__tests/PushDrop.test.ts +146 -41
  555. package/src/totp/__tests/totp.test.ts +45 -44
  556. package/src/totp/totp.ts +3 -2
  557. package/src/transaction/Beef.ts +269 -174
  558. package/src/transaction/BeefParty.ts +41 -31
  559. package/src/transaction/BeefTx.ts +36 -26
  560. package/src/transaction/Broadcaster.ts +10 -6
  561. package/src/transaction/ChainTracker.ts +2 -2
  562. package/src/transaction/FeeModel.ts +0 -1
  563. package/src/transaction/MerklePath.ts +124 -59
  564. package/src/transaction/Transaction.ts +188 -187
  565. package/src/transaction/TransactionOutput.ts +0 -1
  566. package/src/transaction/__tests/Beef.test.ts +390 -287
  567. package/src/transaction/__tests/MerklePath.test.ts +59 -26
  568. package/src/transaction/__tests/Transaction.benchmarks.test.ts +231 -201
  569. package/src/transaction/__tests/Transaction.test.ts +758 -482
  570. package/src/transaction/__tests/bigtx.vectors.ts +2 -1
  571. package/src/transaction/__tests/bump.invalid.vectors.ts +24 -6
  572. package/src/transaction/__tests/bump.valid.vectors.ts +6 -2
  573. package/src/transaction/__tests/tx.invalid.vectors.ts +881 -185
  574. package/src/transaction/__tests/tx.valid.vectors.ts +1210 -257
  575. package/src/transaction/broadcasters/ARC.ts +69 -38
  576. package/src/transaction/broadcasters/DefaultBroadcaster.ts +9 -3
  577. package/src/transaction/broadcasters/WhatsOnChainBroadcaster.ts +20 -7
  578. package/src/transaction/broadcasters/__tests/ARC.test.ts +127 -59
  579. package/src/transaction/broadcasters/__tests/WhatsOnChainBroadcaster.test.ts +27 -18
  580. package/src/transaction/chaintrackers/DefaultChainTracker.ts +1 -1
  581. package/src/transaction/chaintrackers/WhatsOnChain.ts +27 -11
  582. package/src/transaction/chaintrackers/__tests/WhatsOnChainChainTracker.test.ts +59 -23
  583. package/src/transaction/fee-models/SatoshisPerKilobyte.ts +9 -5
  584. package/src/transaction/http/DefaultHttpClient.ts +5 -4
  585. package/src/transaction/http/FetchHttpClient.ts +18 -9
  586. package/src/transaction/http/HttpClient.ts +27 -22
  587. package/src/transaction/http/NodejsHttpClient.ts +23 -9
  588. package/src/transaction/http/index.ts +5 -1
  589. package/src/transaction/index.ts +5 -1
  590. package/src/wallet/CachedKeyDeriver.ts +151 -82
  591. package/src/wallet/KeyDeriver.ts +186 -105
  592. package/src/wallet/ProtoWallet.ts +121 -52
  593. package/src/wallet/Wallet.interfaces.ts +167 -156
  594. package/src/wallet/WalletClient.ts +314 -59
  595. package/src/wallet/WalletError.ts +2 -2
  596. package/src/wallet/__tests/CachedKeyDeriver.test.ts +86 -27
  597. package/src/wallet/__tests/KeyDeriver.test.ts +136 -33
  598. package/src/wallet/__tests/ProtoWallet.test.ts +190 -102
  599. package/src/wallet/substrates/HTTPWalletJSON.ts +250 -67
  600. package/src/wallet/substrates/HTTPWalletWire.ts +7 -3
  601. package/src/wallet/substrates/WalletWireCalls.ts +2 -2
  602. package/src/wallet/substrates/WalletWireProcessor.ts +1412 -1277
  603. package/src/wallet/substrates/WalletWireTransceiver.ts +713 -138
  604. package/src/wallet/substrates/XDM.ts +425 -36
  605. package/src/wallet/substrates/__tests/WalletWire.integration.test.ts +488 -225
  606. package/src/wallet/substrates/__tests/XDM.test.ts +232 -234
  607. package/src/wallet/substrates/window.CWI.ts +520 -61
@@ -15,23 +15,13 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
15
15
  }) : function(o, v) {
16
16
  o["default"] = v;
17
17
  });
18
- var __importStar = (this && this.__importStar) || (function () {
19
- var ownKeys = function(o) {
20
- ownKeys = Object.getOwnPropertyNames || function (o) {
21
- var ar = [];
22
- for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
- return ar;
24
- };
25
- return ownKeys(o);
26
- };
27
- return function (mod) {
28
- if (mod && mod.__esModule) return mod;
29
- var result = {};
30
- if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
- __setModuleDefault(result, mod);
32
- return result;
33
- };
34
- })();
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
35
25
  var __importDefault = (this && this.__importDefault) || function (mod) {
36
26
  return (mod && mod.__esModule) ? mod : { "default": mod };
37
27
  };
@@ -44,7 +34,7 @@ const Point_js_1 = __importDefault(require("../primitives/Point.js"));
44
34
  const Hash = __importStar(require("../primitives/Hash.js"));
45
35
  const utils_js_1 = require("../primitives/utils.js");
46
36
  function AES(key) {
47
- if (!this._tables[0][0][0])
37
+ if (this._tables[0][0][0] === 0)
48
38
  this._precompute();
49
39
  let tmp, encKey, decKey;
50
40
  const sbox = this._tables[0][4];
@@ -54,63 +44,85 @@ function AES(key) {
54
44
  if (keyLen !== 4 && keyLen !== 6 && keyLen !== 8) {
55
45
  throw new Error('invalid aes key size');
56
46
  }
57
- this._key = [encKey = key.slice(0), decKey = []];
47
+ this._key = [(encKey = key.slice(0)), (decKey = [])];
58
48
  // schedule encryption keys
59
- for (var i = keyLen; i < 4 * keyLen + 28; i++) {
49
+ let i;
50
+ for (i = keyLen; i < 4 * keyLen + 28; i++) {
60
51
  tmp = encKey[i - 1];
61
52
  // apply sbox
62
53
  if (i % keyLen === 0 || (keyLen === 8 && i % keyLen === 4)) {
63
- tmp = sbox[tmp >>> 24] << 24 ^ sbox[tmp >> 16 & 255] << 16 ^ sbox[tmp >> 8 & 255] << 8 ^ sbox[tmp & 255];
54
+ tmp =
55
+ (sbox[tmp >>> 24] << 24) ^
56
+ (sbox[(tmp >> 16) & 255] << 16) ^
57
+ (sbox[(tmp >> 8) & 255] << 8) ^
58
+ sbox[tmp & 255];
64
59
  // shift rows and add rcon
65
60
  if (i % keyLen === 0) {
66
- tmp = tmp << 8 ^ tmp >>> 24 ^ rcon << 24;
67
- rcon = rcon << 1 ^ (rcon >> 7) * 283;
61
+ tmp = (tmp << 8) ^ (tmp >>> 24) ^ (rcon << 24);
62
+ rcon = (rcon << 1) ^ ((rcon >> 7) * 283);
68
63
  }
69
64
  }
70
65
  encKey[i] = encKey[i - keyLen] ^ tmp;
71
66
  }
72
67
  // schedule decryption keys
73
- for (let j = 0; i; j++, i--) {
74
- tmp = encKey[j & 3 ? i : i - 4];
68
+ for (let j = 0; i > 0; j++, i--) {
69
+ tmp = encKey[(j & 3) !== 0 ? i : i - 4];
75
70
  if (i <= 4 || j < 4) {
76
71
  decKey[j] = tmp;
77
72
  }
78
73
  else {
79
- decKey[j] = decTable[0][sbox[tmp >>> 24]] ^
80
- decTable[1][sbox[tmp >> 16 & 255]] ^
81
- decTable[2][sbox[tmp >> 8 & 255]] ^
82
- decTable[3][sbox[tmp & 255]];
74
+ decKey[j] =
75
+ decTable[0][sbox[tmp >>> 24]] ^
76
+ decTable[1][sbox[(tmp >> 16) & 255]] ^
77
+ decTable[2][sbox[(tmp >> 8) & 255]] ^
78
+ decTable[3][sbox[tmp & 255]];
83
79
  }
84
80
  }
85
81
  }
86
82
  AES.prototype = {
87
83
  /**
88
- * Encrypt an array of 4 big-endian words.
89
- * @param {Array} data The plaintext.
90
- * @return {Array} The ciphertext.
91
- */
92
- encrypt: function (data) { return this._crypt(data, 0); },
84
+ * Encrypt an array of 4 big-endian words.
85
+ * @param {Array} data The plaintext.
86
+ * @return {Array} The ciphertext.
87
+ */
88
+ encrypt: function (data) {
89
+ return this._crypt(data, 0);
90
+ },
93
91
  /**
94
- * Decrypt an array of 4 big-endian words.
95
- * @param {Array} data The ciphertext.
96
- * @return {Array} The plaintext.
97
- */
98
- decrypt: function (data) { return this._crypt(data, 1); },
92
+ * Decrypt an array of 4 big-endian words.
93
+ * @param {Array} data The ciphertext.
94
+ * @return {Array} The plaintext.
95
+ */
96
+ decrypt: function (data) {
97
+ return this._crypt(data, 1);
98
+ },
99
99
  /**
100
- * The expanded S-box and inverse S-box tables. These will be computed
101
- * on the client so that we don't have to send them down the wire.
102
- *
103
- * There are two tables, _tables[0] is for encryption and
104
- * _tables[1] is for decryption.
105
- *
106
- * The first 4 sub-tables are the expanded S-box with MixColumns. The
107
- * last (_tables[01][4]) is the S-box itself.
108
- *
109
- * @private
110
- */
100
+ * The expanded S-box and inverse S-box tables. These will be computed
101
+ * on the client so that we don't have to send them down the wire.
102
+ *
103
+ * There are two tables, _tables[0] is for encryption and
104
+ * _tables[1] is for decryption.
105
+ *
106
+ * The first 4 sub-tables are the expanded S-box with MixColumns. The
107
+ * last (_tables[01][4]) is the S-box itself.
108
+ *
109
+ * @private
110
+ */
111
111
  _tables: [
112
- [new Uint32Array(256), new Uint32Array(256), new Uint32Array(256), new Uint32Array(256), new Uint32Array(256)],
113
- [new Uint32Array(256), new Uint32Array(256), new Uint32Array(256), new Uint32Array(256), new Uint32Array(256)]
112
+ [
113
+ new Uint32Array(256),
114
+ new Uint32Array(256),
115
+ new Uint32Array(256),
116
+ new Uint32Array(256),
117
+ new Uint32Array(256)
118
+ ],
119
+ [
120
+ new Uint32Array(256),
121
+ new Uint32Array(256),
122
+ new Uint32Array(256),
123
+ new Uint32Array(256),
124
+ new Uint32Array(256)
125
+ ]
114
126
  ],
115
127
  // Expand the S-box tables.
116
128
  _precompute: function () {
@@ -131,31 +143,31 @@ AES.prototype = {
131
143
  let tDec;
132
144
  // Compute double and third tables
133
145
  for (i = 0; i < 256; i++) {
134
- th[(d[i] = i << 1 ^ (i >> 7) * 283) ^ i] = i;
146
+ th[(d[i] = (i << 1) ^ ((i >> 7) * 283)) ^ i] = i;
135
147
  }
136
- for (x = xInv = 0; !sbox[x]; x ^= x2 || 1, xInv = th[xInv] || 1) {
148
+ for (x = xInv = 0; sbox[x] === 0; x ^= (x2 !== 0 ? x2 : 1), xInv = th[xInv] !== 0 ? th[xInv] : 1) {
137
149
  // Compute sbox
138
- s = xInv ^ xInv << 1 ^ xInv << 2 ^ xInv << 3 ^ xInv << 4;
139
- s = s >> 8 ^ s & 255 ^ 99;
150
+ s = xInv ^ (xInv << 1) ^ (xInv << 2) ^ (xInv << 3) ^ (xInv << 4);
151
+ s = (s >> 8) ^ (s & 255) ^ 99;
140
152
  sbox[x] = s;
141
153
  sboxInv[s] = x;
142
154
  // Compute MixColumns
143
- x8 = d[x4 = d[x2 = d[x]]];
144
- tDec = x8 * 0x1010101 ^ x4 * 0x10001 ^ x2 * 0x101 ^ x * 0x1010100;
145
- tEnc = d[s] * 0x101 ^ s * 0x1010100;
155
+ x8 = d[(x4 = d[(x2 = d[x])])];
156
+ tDec = (x8 * 0x1010101) ^ (x4 * 0x10001) ^ (x2 * 0x101) ^ (x * 0x1010100);
157
+ tEnc = (d[s] * 0x101) ^ (s * 0x1010100);
146
158
  for (i = 0; i < 4; i++) {
147
- encTable[i][x] = tEnc = tEnc << 24 ^ tEnc >>> 8;
148
- decTable[i][s] = tDec = tDec << 24 ^ tDec >>> 8;
159
+ encTable[i][x] = tEnc = (tEnc << 24) ^ (tEnc >>> 8);
160
+ decTable[i][s] = tDec = (tDec << 24) ^ (tDec >>> 8);
149
161
  }
150
162
  }
151
163
  },
152
164
  /**
153
- * Encryption and decryption core.
154
- * @param {Array} input Four words to be encrypted or decrypted.
155
- * @param dir The direction, 0 for encrypt and 1 for decrypt.
156
- * @return {Array} The four encrypted or decrypted words.
157
- * @private
158
- */
165
+ * Encryption and decryption core.
166
+ * @param {Array} input Four words to be encrypted or decrypted.
167
+ * @param dir The direction, 0 for encrypt and 1 for decrypt.
168
+ * @return {Array} The four encrypted or decrypted words.
169
+ * @private
170
+ */
159
171
  _crypt: function (input, dir) {
160
172
  if (input.length !== 4) {
161
173
  throw new Error('invalid aes block size');
@@ -163,9 +175,9 @@ AES.prototype = {
163
175
  const key = this._key[dir];
164
176
  // state variables a,b,c,d are loaded with pre-whitened data
165
177
  let a = input[0] ^ key[0];
166
- let b = input[dir ? 3 : 1] ^ key[1];
178
+ let b = input[dir === 1 ? 3 : 1] ^ key[1];
167
179
  let c = input[2] ^ key[2];
168
- let d = input[dir ? 1 : 3] ^ key[3];
180
+ let d = input[dir === 1 ? 1 : 3] ^ key[3];
169
181
  let a2;
170
182
  let b2;
171
183
  let c2;
@@ -173,7 +185,7 @@ AES.prototype = {
173
185
  let i;
174
186
  let kIndex = 4;
175
187
  const out = new Uint32Array(4);
176
- const // <--- this is slower in Node.js, about the same in Chrome */
188
+ const // <--- this is slower in Node, about the same in Chrome */
177
189
  table = this._tables[dir];
178
190
  // load up the tables
179
191
  const t0 = table[0];
@@ -183,10 +195,30 @@ AES.prototype = {
183
195
  const sbox = table[4];
184
196
  // Inner rounds. Cribbed from OpenSSL.
185
197
  for (i = 0; i < nInnerRounds; i++) {
186
- a2 = t0[a >>> 24] ^ t1[b >> 16 & 255] ^ t2[c >> 8 & 255] ^ t3[d & 255] ^ key[kIndex];
187
- b2 = t0[b >>> 24] ^ t1[c >> 16 & 255] ^ t2[d >> 8 & 255] ^ t3[a & 255] ^ key[kIndex + 1];
188
- c2 = t0[c >>> 24] ^ t1[d >> 16 & 255] ^ t2[a >> 8 & 255] ^ t3[b & 255] ^ key[kIndex + 2];
189
- d = t0[d >>> 24] ^ t1[a >> 16 & 255] ^ t2[b >> 8 & 255] ^ t3[c & 255] ^ key[kIndex + 3];
198
+ a2 =
199
+ t0[a >>> 24] ^
200
+ t1[(b >> 16) & 255] ^
201
+ t2[(c >> 8) & 255] ^
202
+ t3[d & 255] ^
203
+ key[kIndex];
204
+ b2 =
205
+ t0[b >>> 24] ^
206
+ t1[(c >> 16) & 255] ^
207
+ t2[(d >> 8) & 255] ^
208
+ t3[a & 255] ^
209
+ key[kIndex + 1];
210
+ c2 =
211
+ t0[c >>> 24] ^
212
+ t1[(d >> 16) & 255] ^
213
+ t2[(a >> 8) & 255] ^
214
+ t3[b & 255] ^
215
+ key[kIndex + 2];
216
+ d =
217
+ t0[d >>> 24] ^
218
+ t1[(a >> 16) & 255] ^
219
+ t2[(b >> 8) & 255] ^
220
+ t3[c & 255] ^
221
+ key[kIndex + 3];
190
222
  kIndex += 4;
191
223
  a = a2;
192
224
  b = b2;
@@ -194,10 +226,10 @@ AES.prototype = {
194
226
  }
195
227
  // Last round.
196
228
  for (i = 0; i < 4; i++) {
197
- out[dir ? 3 & -i : i] =
198
- sbox[a >>> 24] << 24 ^
199
- sbox[b >> 16 & 255] << 16 ^
200
- sbox[c >> 8 & 255] << 8 ^
229
+ out[dir === 1 ? 3 & -i : i] =
230
+ (sbox[a >>> 24] << 24) ^
231
+ (sbox[(b >> 16) & 255] << 16) ^
232
+ (sbox[(c >> 8) & 255] << 8) ^
201
233
  sbox[d & 255] ^
202
234
  key[kIndex++];
203
235
  a2 = a;
@@ -209,30 +241,31 @@ AES.prototype = {
209
241
  return out;
210
242
  }
211
243
  };
244
+ // eslint-disable-next-line @typescript-eslint/no-extraneous-class
212
245
  class AESWrapper {
213
246
  static encrypt(messageBuf, keyBuf) {
214
- const key = AESWrapper.buf2Words((keyBuf));
215
- const message = AESWrapper.buf2Words((messageBuf));
247
+ const key = AESWrapper.buf2Words(keyBuf);
248
+ const message = AESWrapper.buf2Words(messageBuf);
216
249
  const a = new AES(key);
217
250
  const enc = a.encrypt(message);
218
251
  const encBuf = AESWrapper.words2Buf(enc);
219
252
  return encBuf;
220
253
  }
221
254
  static decrypt(encBuf, keyBuf) {
222
- const enc = AESWrapper.buf2Words((encBuf));
223
- const key = AESWrapper.buf2Words((keyBuf));
255
+ const enc = AESWrapper.buf2Words(encBuf);
256
+ const key = AESWrapper.buf2Words(keyBuf);
224
257
  const a = new AES(key);
225
258
  const message = a.decrypt(enc);
226
259
  const messageBuf = AESWrapper.words2Buf(message);
227
260
  return messageBuf;
228
261
  }
229
262
  static buf2Words(buf) {
230
- if (buf.length % 4) {
263
+ if (buf.length % 4 !== 0) {
231
264
  throw new Error('buf length must be a multiple of 4');
232
265
  }
233
266
  const words = [];
234
267
  for (let i = 0; i < buf.length / 4; i++) {
235
- const val = (buf[i * 4] * 0x1000000) + // Shift the first byte by 24 bits
268
+ const val = buf[i * 4] * 0x1000000 + // Shift the first byte by 24 bits
236
269
  ((buf[i * 4 + 1] << 16) | // Shift the second byte by 16 bits
237
270
  (buf[i * 4 + 2] << 8) | // Shift the third byte by 8 bits
238
271
  buf[i * 4 + 3]); // The fourth byte
@@ -244,14 +277,15 @@ class AESWrapper {
244
277
  const buf = new Array(words.length * 4);
245
278
  for (let i = 0; i < words.length; i++) {
246
279
  const word = words[i];
247
- buf[i * 4] = (word >>> 24) & 0xFF;
248
- buf[i * 4 + 1] = (word >>> 16) & 0xFF;
249
- buf[i * 4 + 2] = (word >>> 8) & 0xFF;
250
- buf[i * 4 + 3] = word & 0xFF;
280
+ buf[i * 4] = (word >>> 24) & 0xff;
281
+ buf[i * 4 + 1] = (word >>> 16) & 0xff;
282
+ buf[i * 4 + 2] = (word >>> 8) & 0xff;
283
+ buf[i * 4 + 3] = word & 0xff;
251
284
  }
252
285
  return buf;
253
286
  }
254
287
  }
288
+ // eslint-disable-next-line @typescript-eslint/no-extraneous-class
255
289
  class CBC {
256
290
  static buf2BlocksBuf(buf, blockSize) {
257
291
  const bytesize = blockSize / 8;
@@ -348,9 +382,10 @@ class CBC {
348
382
  return buf;
349
383
  }
350
384
  }
385
+ // eslint-disable-next-line @typescript-eslint/no-extraneous-class
351
386
  class AESCBC {
352
387
  static encrypt(messageBuf, cipherKeyBuf, ivBuf, concatIvBuf = true) {
353
- ivBuf = ivBuf || new Array(128 / 8).fill(0) || (0, Random_js_1.default)(128 / 8);
388
+ ivBuf = ivBuf !== null && ivBuf !== void 0 ? ivBuf : (0, Random_js_1.default)(128 / 8);
354
389
  const ctBuf = CBC.encrypt(messageBuf, ivBuf, AESWrapper, cipherKeyBuf);
355
390
  if (concatIvBuf) {
356
391
  return [...ivBuf, ...ctBuf];
@@ -360,7 +395,7 @@ class AESCBC {
360
395
  }
361
396
  }
362
397
  static decrypt(encBuf, cipherKeyBuf, ivBuf) {
363
- if (!ivBuf) {
398
+ if (ivBuf == null) {
364
399
  ivBuf = encBuf.slice(0, 128 / 8);
365
400
  const ctBuf = encBuf.slice(128 / 8);
366
401
  return CBC.decrypt(ctBuf, ivBuf, AESWrapper, cipherKeyBuf);
@@ -378,15 +413,16 @@ class AESCBC {
378
413
  * @prprecated This class is deprecated in favor of the BRC-78 standard for portable encrypted messages,
379
414
  * which provides a more comprehensive and secure solution by integrating with BRC-42 and BRC-43 standards.
380
415
  */
416
+ // eslint-disable-next-line @typescript-eslint/no-extraneous-class
381
417
  class ECIES {
382
418
  /**
383
- * Generates the initialization vector (iv), encryption key (kE), and MAC key (kM)
384
- * using the sender's private key and receiver's public key.
385
- *
386
- * @param {PrivateKey} privKey - The sender's private key.
387
- * @param {PublicKey} pubKey - The receiver's public key.
388
- * @returns {Object} An object containing the iv, kE, and kM as number arrays.
389
- */
419
+ * Generates the initialization vector (iv), encryption key (kE), and MAC key (kM)
420
+ * using the sender's private key and receiver's public key.
421
+ *
422
+ * @param {PrivateKey} privKey - The sender's private key.
423
+ * @param {PublicKey} pubKey - The receiver's public key.
424
+ * @returns {Object} An object containing the iv, kE, and kM as number arrays.
425
+ */
390
426
  static ivkEkM(privKey, pubKey) {
391
427
  const r = privKey;
392
428
  const KB = pubKey;
@@ -401,17 +437,17 @@ class ECIES {
401
437
  };
402
438
  }
403
439
  /**
404
- * Encrypts a given message using the Electrum ECIES method.
405
- *
406
- * @param {number[]} messageBuf - The message to be encrypted, in number array format.
407
- * @param {PublicKey} toPublicKey - The public key of the recipient.
408
- * @param {PrivateKey} [fromPrivateKey] - The private key of the sender. If not provided, a random private key is used.
409
- * @param {boolean} [noKey=false] - If true, does not include the sender's public key in the encrypted message.
410
- * @returns {number[]} The encrypted message as a number array.
411
- */
440
+ * Encrypts a given message using the Electrum ECIES method.
441
+ *
442
+ * @param {number[]} messageBuf - The message to be encrypted, in number array format.
443
+ * @param {PublicKey} toPublicKey - The public key of the recipient.
444
+ * @param {PrivateKey} [fromPrivateKey] - The private key of the sender. If not provided, a random private key is used.
445
+ * @param {boolean} [noKey=false] - If true, does not include the sender's public key in the encrypted message.
446
+ * @returns {number[]} The encrypted message as a number array.
447
+ */
412
448
  static electrumEncrypt(messageBuf, toPublicKey, fromPrivateKey, noKey = false) {
413
- let Rbuf;
414
- if (!fromPrivateKey) {
449
+ let Rbuf = null;
450
+ if (fromPrivateKey == null) {
415
451
  fromPrivateKey = PrivateKey_js_1.default.fromRandom();
416
452
  }
417
453
  if (!noKey) {
@@ -421,7 +457,7 @@ class ECIES {
421
457
  const ciphertext = AESCBC.encrypt(messageBuf, kE, iv, false);
422
458
  const BIE1 = (0, utils_js_1.toArray)('BIE1', 'utf8');
423
459
  let encBuf;
424
- if (Rbuf) {
460
+ if (Rbuf !== undefined && Rbuf !== null && Rbuf.length > 0) {
425
461
  encBuf = [...BIE1, ...Rbuf, ...ciphertext];
426
462
  }
427
463
  else {
@@ -431,13 +467,13 @@ class ECIES {
431
467
  return [...encBuf, ...hmac];
432
468
  }
433
469
  /**
434
- * Decrypts a message encrypted using the Electrum ECIES method.
435
- *
436
- * @param {number[]} encBuf - The encrypted message buffer.
437
- * @param {PrivateKey} toPrivateKey - The private key of the recipient.
438
- * @param {PublicKey} [fromPublicKey=null] - The public key of the sender. If not provided, it is extracted from the message.
439
- * @returns {number[]} The decrypted message as a number array.
440
- */
470
+ * Decrypts a message encrypted using the Electrum ECIES method.
471
+ *
472
+ * @param {number[]} encBuf - The encrypted message buffer.
473
+ * @param {PrivateKey} toPrivateKey - The private key of the recipient.
474
+ * @param {PublicKey} [fromPublicKey=null] - The public key of the sender. If not provided, it is extracted from the message.
475
+ * @returns {number[]} The decrypted message as a number array.
476
+ */
441
477
  static electrumDecrypt(encBuf, toPrivateKey, fromPublicKey) {
442
478
  const tagLength = 32;
443
479
  const magic = encBuf.slice(0, 4);
@@ -460,13 +496,13 @@ class ECIES {
460
496
  offset += 65;
461
497
  }
462
498
  }
463
- if (Rbuf) {
464
- if (!fromPublicKey) {
499
+ if (Rbuf !== null) {
500
+ if (fromPublicKey == null) {
465
501
  fromPublicKey = PublicKey_js_1.default.fromString((0, utils_js_1.toHex)(Rbuf));
466
502
  }
467
503
  }
468
504
  else {
469
- if (!fromPublicKey) {
505
+ if (fromPublicKey == null) {
470
506
  throw new Error('Sender public key is required');
471
507
  }
472
508
  }
@@ -480,18 +516,21 @@ class ECIES {
480
516
  return AESCBC.decrypt(ciphertext, kE, iv);
481
517
  }
482
518
  /**
483
- * Encrypts a given message using the Bitcore variant of ECIES.
484
- *
485
- * @param {number[]} messageBuf - The message to be encrypted, in number array format.
486
- * @param {PublicKey} toPublicKey - The public key of the recipient.
487
- * @param {PrivateKey} [fromPrivateKey] - The private key of the sender. If not provided, a random private key is used.
488
- * @param {number[]} [ivBuf] - The initialization vector for encryption. If not provided, a random IV is used.
489
- * @returns {number[]} The encrypted message as a number array.
490
- */
519
+ * Encrypts a given message using the Bitcore variant of ECIES.
520
+ *
521
+ * @param {number[]} messageBuf - The message to be encrypted, in number array format.
522
+ * @param {PublicKey} toPublicKey - The public key of the recipient.
523
+ * @param {PrivateKey} [fromPrivateKey] - The private key of the sender. If not provided, a random private key is used.
524
+ * @param {number[]} [ivBuf] - The initialization vector for encryption. If not provided, a random IV is used.
525
+ * @returns {number[]} The encrypted message as a number array.
526
+ */
491
527
  static bitcoreEncrypt(messageBuf, toPublicKey, fromPrivateKey, ivBuf) {
492
- if (!fromPrivateKey) {
528
+ if (fromPrivateKey == null) {
493
529
  fromPrivateKey = PrivateKey_js_1.default.fromRandom();
494
530
  }
531
+ if (ivBuf == null) {
532
+ ivBuf = (0, Random_js_1.default)(16);
533
+ }
495
534
  const r = fromPrivateKey;
496
535
  const RPublicKey = fromPrivateKey.toPublicKey();
497
536
  const RBuf = RPublicKey.encode(true);
@@ -508,12 +547,12 @@ class ECIES {
508
547
  return encBuf;
509
548
  }
510
549
  /**
511
- * Decrypts a message encrypted using the Bitcore variant of ECIES.
512
- *
513
- * @param {number[]} encBuf - The encrypted message buffer.
514
- * @param {PrivateKey} toPrivateKey - The private key of the recipient.
515
- * @returns {number[]} The decrypted message as a number array.
516
- */
550
+ * Decrypts a message encrypted using the Bitcore variant of ECIES.
551
+ *
552
+ * @param {number[]} encBuf - The encrypted message buffer.
553
+ * @param {PrivateKey} toPrivateKey - The private key of the recipient.
554
+ * @returns {number[]} The decrypted message as a number array.
555
+ */
517
556
  static bitcoreDecrypt(encBuf, toPrivateKey) {
518
557
  const kB = toPrivateKey;
519
558
  const fromPublicKey = PublicKey_js_1.default.fromString((0, utils_js_1.toHex)(encBuf.slice(0, 33)));
@@ -1 +1 @@
1
- {"version":3,"file":"ECIES.js","sourceRoot":"","sources":["../../../../src/compat/ECIES.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ECIES.js","sourceRoot":"","sources":["../../../../src/compat/ECIES.ts"],"names":[],"mappings":"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"}