@pezkuwi/util-crypto 14.0.10 → 14.0.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 (571) hide show
  1. package/address/addressToEvm.d.ts +5 -0
  2. package/address/addressToEvm.js +8 -0
  3. package/address/check.d.ts +8 -0
  4. package/address/check.js +26 -0
  5. package/address/checksum.d.ts +1 -0
  6. package/address/checksum.js +16 -0
  7. package/address/decode.d.ts +2 -0
  8. package/address/decode.js +29 -0
  9. package/address/defaults.d.ts +6 -0
  10. package/address/defaults.js +8 -0
  11. package/address/derive.d.ts +8 -0
  12. package/address/derive.js +24 -0
  13. package/address/encode.d.ts +2 -0
  14. package/address/encode.js +23 -0
  15. package/address/encodeDerived.d.ts +9 -0
  16. package/address/encodeDerived.js +12 -0
  17. package/address/encodeMulti.d.ts +9 -0
  18. package/address/encodeMulti.js +11 -0
  19. package/address/eq.d.ts +15 -0
  20. package/address/eq.js +19 -0
  21. package/address/evmToAddress.d.ts +7 -0
  22. package/address/evmToAddress.js +14 -0
  23. package/address/index.d.ts +16 -0
  24. package/address/index.js +16 -0
  25. package/address/is.d.ts +2 -0
  26. package/address/is.js +9 -0
  27. package/address/keyDerived.d.ts +2 -0
  28. package/address/keyDerived.js +8 -0
  29. package/address/keyMulti.d.ts +2 -0
  30. package/address/keyMulti.js +8 -0
  31. package/address/setSS58Format.d.ts +6 -0
  32. package/address/setSS58Format.js +11 -0
  33. package/address/sort.d.ts +2 -0
  34. package/address/sort.js +7 -0
  35. package/address/sshash.d.ts +1 -0
  36. package/address/sshash.js +6 -0
  37. package/address/types.d.ts +1 -0
  38. package/address/types.js +1 -0
  39. package/address/util.d.ts +1 -0
  40. package/address/util.js +4 -0
  41. package/address/validate.d.ts +2 -0
  42. package/address/validate.js +4 -0
  43. package/base32/bs32.d.ts +26 -0
  44. package/base32/bs32.js +40 -0
  45. package/base32/helpers.d.ts +25 -0
  46. package/base32/helpers.js +61 -0
  47. package/base32/index.d.ts +4 -0
  48. package/base32/index.js +4 -0
  49. package/base58/bs58.d.ts +26 -0
  50. package/base58/bs58.js +34 -0
  51. package/base58/index.d.ts +4 -0
  52. package/base58/index.js +4 -0
  53. package/base64/bs64.d.ts +26 -0
  54. package/base64/bs64.js +34 -0
  55. package/base64/index.d.ts +6 -0
  56. package/base64/index.js +6 -0
  57. package/base64/pad.d.ts +5 -0
  58. package/base64/pad.js +7 -0
  59. package/base64/trim.d.ts +5 -0
  60. package/base64/trim.js +10 -0
  61. package/blake2/asU8a.d.ts +20 -0
  62. package/blake2/asU8a.js +32 -0
  63. package/blake2/index.d.ts +4 -0
  64. package/blake2/index.js +4 -0
  65. package/bn.d.ts +30 -0
  66. package/bn.js +8 -0
  67. package/bundle-pezkuwi-util-crypto.js +8251 -0
  68. package/bundle.d.ts +26 -0
  69. package/bundle.js +26 -0
  70. package/bundleInit.d.ts +1 -0
  71. package/bundleInit.js +5 -0
  72. package/cjs/address/addressToEvm.d.ts +5 -0
  73. package/cjs/address/addressToEvm.js +11 -0
  74. package/cjs/address/check.d.ts +8 -0
  75. package/cjs/address/check.js +29 -0
  76. package/cjs/address/checksum.d.ts +1 -0
  77. package/cjs/address/checksum.js +19 -0
  78. package/cjs/address/decode.d.ts +2 -0
  79. package/cjs/address/decode.js +32 -0
  80. package/cjs/address/defaults.d.ts +6 -0
  81. package/cjs/address/defaults.js +11 -0
  82. package/cjs/address/derive.d.ts +8 -0
  83. package/cjs/address/derive.js +27 -0
  84. package/cjs/address/encode.d.ts +2 -0
  85. package/cjs/address/encode.js +26 -0
  86. package/cjs/address/encodeDerived.d.ts +9 -0
  87. package/cjs/address/encodeDerived.js +15 -0
  88. package/cjs/address/encodeMulti.d.ts +9 -0
  89. package/cjs/address/encodeMulti.js +14 -0
  90. package/cjs/address/eq.d.ts +15 -0
  91. package/cjs/address/eq.js +22 -0
  92. package/cjs/address/evmToAddress.d.ts +7 -0
  93. package/cjs/address/evmToAddress.js +17 -0
  94. package/cjs/address/index.d.ts +16 -0
  95. package/cjs/address/index.js +35 -0
  96. package/cjs/address/is.d.ts +2 -0
  97. package/cjs/address/is.js +12 -0
  98. package/cjs/address/keyDerived.d.ts +2 -0
  99. package/cjs/address/keyDerived.js +11 -0
  100. package/cjs/address/keyMulti.d.ts +2 -0
  101. package/cjs/address/keyMulti.js +11 -0
  102. package/cjs/address/setSS58Format.d.ts +6 -0
  103. package/cjs/address/setSS58Format.js +14 -0
  104. package/cjs/address/sort.d.ts +2 -0
  105. package/cjs/address/sort.js +10 -0
  106. package/cjs/address/sshash.d.ts +1 -0
  107. package/cjs/address/sshash.js +9 -0
  108. package/cjs/address/types.d.ts +1 -0
  109. package/cjs/address/types.js +2 -0
  110. package/cjs/address/util.d.ts +1 -0
  111. package/cjs/address/util.js +7 -0
  112. package/cjs/address/validate.d.ts +2 -0
  113. package/cjs/address/validate.js +7 -0
  114. package/cjs/base32/bs32.d.ts +26 -0
  115. package/cjs/base32/bs32.js +43 -0
  116. package/cjs/base32/helpers.d.ts +25 -0
  117. package/cjs/base32/helpers.js +67 -0
  118. package/cjs/base32/index.d.ts +4 -0
  119. package/cjs/base32/index.js +11 -0
  120. package/cjs/base58/bs58.d.ts +26 -0
  121. package/cjs/base58/bs58.js +37 -0
  122. package/cjs/base58/index.d.ts +4 -0
  123. package/cjs/base58/index.js +11 -0
  124. package/cjs/base64/bs64.d.ts +26 -0
  125. package/cjs/base64/bs64.js +37 -0
  126. package/cjs/base64/index.d.ts +6 -0
  127. package/cjs/base64/index.js +15 -0
  128. package/cjs/base64/pad.d.ts +5 -0
  129. package/cjs/base64/pad.js +10 -0
  130. package/cjs/base64/trim.d.ts +5 -0
  131. package/cjs/base64/trim.js +13 -0
  132. package/cjs/blake2/asU8a.d.ts +20 -0
  133. package/cjs/blake2/asU8a.js +36 -0
  134. package/cjs/blake2/index.d.ts +4 -0
  135. package/cjs/blake2/index.js +9 -0
  136. package/cjs/bn.d.ts +30 -0
  137. package/cjs/bn.js +11 -0
  138. package/cjs/bundle.d.ts +26 -0
  139. package/cjs/bundle.js +31 -0
  140. package/cjs/bundleInit.d.ts +1 -0
  141. package/cjs/bundleInit.js +7 -0
  142. package/cjs/crypto.d.ts +3 -0
  143. package/cjs/crypto.js +16 -0
  144. package/cjs/ed25519/deriveHard.d.ts +1 -0
  145. package/cjs/ed25519/deriveHard.js +12 -0
  146. package/cjs/ed25519/index.d.ts +10 -0
  147. package/cjs/ed25519/index.js +20 -0
  148. package/cjs/ed25519/pair/fromRandom.d.ts +16 -0
  149. package/cjs/ed25519/pair/fromRandom.js +22 -0
  150. package/cjs/ed25519/pair/fromSecret.d.ts +16 -0
  151. package/cjs/ed25519/pair/fromSecret.js +26 -0
  152. package/cjs/ed25519/pair/fromSeed.d.ts +16 -0
  153. package/cjs/ed25519/pair/fromSeed.js +34 -0
  154. package/cjs/ed25519/pair/fromString.d.ts +16 -0
  155. package/cjs/ed25519/pair/fromString.js +23 -0
  156. package/cjs/ed25519/sign.d.ts +16 -0
  157. package/cjs/ed25519/sign.js +33 -0
  158. package/cjs/ed25519/verify.d.ts +15 -0
  159. package/cjs/ed25519/verify.js +39 -0
  160. package/cjs/ethereum/encode.d.ts +2 -0
  161. package/cjs/ethereum/encode.js +28 -0
  162. package/cjs/ethereum/index.d.ts +3 -0
  163. package/cjs/ethereum/index.js +9 -0
  164. package/cjs/ethereum/isAddress.d.ts +1 -0
  165. package/cjs/ethereum/isAddress.js +14 -0
  166. package/cjs/ethereum/isChecksum.d.ts +1 -0
  167. package/cjs/ethereum/isChecksum.js +20 -0
  168. package/cjs/hd/ethereum/index.d.ts +2 -0
  169. package/cjs/hd/ethereum/index.js +47 -0
  170. package/cjs/hd/index.d.ts +3 -0
  171. package/cjs/hd/index.js +9 -0
  172. package/cjs/hd/ledger/derivePrivate.d.ts +1 -0
  173. package/cjs/hd/ledger/derivePrivate.js +15 -0
  174. package/cjs/hd/ledger/index.d.ts +2 -0
  175. package/cjs/hd/ledger/index.js +33 -0
  176. package/cjs/hd/ledger/master.d.ts +1 -0
  177. package/cjs/hd/ledger/master.js +19 -0
  178. package/cjs/hd/validatePath.d.ts +2 -0
  179. package/cjs/hd/validatePath.js +20 -0
  180. package/cjs/helpers.d.ts +12 -0
  181. package/cjs/helpers.js +24 -0
  182. package/cjs/hmac/index.d.ts +1 -0
  183. package/cjs/hmac/index.js +7 -0
  184. package/cjs/hmac/shaAsU8a.d.ts +15 -0
  185. package/cjs/hmac/shaAsU8a.js +40 -0
  186. package/cjs/index.d.ts +2 -0
  187. package/cjs/index.js +5 -0
  188. package/cjs/json/constants.d.ts +6 -0
  189. package/cjs/json/constants.js +8 -0
  190. package/cjs/json/decrypt.d.ts +2 -0
  191. package/cjs/json/decrypt.js +16 -0
  192. package/cjs/json/decryptData.d.ts +2 -0
  193. package/cjs/json/decryptData.js +32 -0
  194. package/cjs/json/encrypt.d.ts +2 -0
  195. package/cjs/json/encrypt.js +18 -0
  196. package/cjs/json/encryptFormat.d.ts +2 -0
  197. package/cjs/json/encryptFormat.js +17 -0
  198. package/cjs/json/index.d.ts +4 -0
  199. package/cjs/json/index.js +11 -0
  200. package/cjs/json/types.d.ts +16 -0
  201. package/cjs/json/types.js +2 -0
  202. package/cjs/keccak/asU8a.d.ts +30 -0
  203. package/cjs/keccak/asU8a.js +36 -0
  204. package/cjs/keccak/index.d.ts +4 -0
  205. package/cjs/keccak/index.js +11 -0
  206. package/cjs/key/DeriveJunction.d.ts +12 -0
  207. package/cjs/key/DeriveJunction.js +62 -0
  208. package/cjs/key/extractPath.d.ts +9 -0
  209. package/cjs/key/extractPath.js +26 -0
  210. package/cjs/key/extractSuri.d.ts +11 -0
  211. package/cjs/key/extractSuri.js +25 -0
  212. package/cjs/key/fromPath.d.ts +3 -0
  213. package/cjs/key/fromPath.js +21 -0
  214. package/cjs/key/hdkdDerive.d.ts +3 -0
  215. package/cjs/key/hdkdDerive.js +11 -0
  216. package/cjs/key/hdkdEcdsa.d.ts +1 -0
  217. package/cjs/key/hdkdEcdsa.js +7 -0
  218. package/cjs/key/hdkdEd25519.d.ts +1 -0
  219. package/cjs/key/hdkdEd25519.js +6 -0
  220. package/cjs/key/hdkdSr25519.d.ts +3 -0
  221. package/cjs/key/hdkdSr25519.js +10 -0
  222. package/cjs/key/index.d.ts +9 -0
  223. package/cjs/key/index.js +18 -0
  224. package/cjs/mnemonic/bip39.d.ts +5 -0
  225. package/cjs/mnemonic/bip39.js +90 -0
  226. package/cjs/mnemonic/generate.d.ts +13 -0
  227. package/cjs/mnemonic/generate.js +23 -0
  228. package/cjs/mnemonic/index.d.ts +8 -0
  229. package/cjs/mnemonic/index.js +16 -0
  230. package/cjs/mnemonic/toEntropy.d.ts +1 -0
  231. package/cjs/mnemonic/toEntropy.js +11 -0
  232. package/cjs/mnemonic/toLegacySeed.d.ts +18 -0
  233. package/cjs/mnemonic/toLegacySeed.js +37 -0
  234. package/cjs/mnemonic/toMiniSecret.d.ts +1 -0
  235. package/cjs/mnemonic/toMiniSecret.js +20 -0
  236. package/cjs/mnemonic/validate.d.ts +14 -0
  237. package/cjs/mnemonic/validate.js +24 -0
  238. package/cjs/mnemonic/wordlists/en.d.ts +2 -0
  239. package/cjs/mnemonic/wordlists/en.js +3 -0
  240. package/cjs/mnemonic/wordlists/es.d.ts +2 -0
  241. package/cjs/mnemonic/wordlists/es.js +3 -0
  242. package/cjs/mnemonic/wordlists/fr.d.ts +2 -0
  243. package/cjs/mnemonic/wordlists/fr.js +3 -0
  244. package/cjs/mnemonic/wordlists/index.d.ts +8 -0
  245. package/cjs/mnemonic/wordlists/index.js +20 -0
  246. package/cjs/mnemonic/wordlists/it.d.ts +2 -0
  247. package/cjs/mnemonic/wordlists/it.js +3 -0
  248. package/cjs/mnemonic/wordlists/jp.d.ts +2 -0
  249. package/cjs/mnemonic/wordlists/jp.js +3 -0
  250. package/cjs/mnemonic/wordlists/ko.d.ts +2 -0
  251. package/cjs/mnemonic/wordlists/ko.js +3 -0
  252. package/cjs/mnemonic/wordlists/zh-s.d.ts +2 -0
  253. package/cjs/mnemonic/wordlists/zh-s.js +3 -0
  254. package/cjs/mnemonic/wordlists/zh-t.d.ts +2 -0
  255. package/cjs/mnemonic/wordlists/zh-t.js +3 -0
  256. package/cjs/nacl/decrypt.d.ts +15 -0
  257. package/cjs/nacl/decrypt.js +21 -0
  258. package/cjs/nacl/encrypt.d.ts +20 -0
  259. package/cjs/nacl/encrypt.js +25 -0
  260. package/cjs/nacl/index.d.ts +5 -0
  261. package/cjs/nacl/index.js +10 -0
  262. package/cjs/nacl/tweetnacl.d.ts +2 -0
  263. package/cjs/nacl/tweetnacl.js +238 -0
  264. package/cjs/networks.d.ts +1 -0
  265. package/cjs/networks.js +7 -0
  266. package/cjs/package.json +3 -0
  267. package/cjs/packageDetect.d.ts +1 -0
  268. package/cjs/packageDetect.js +8 -0
  269. package/cjs/packageInfo.d.ts +6 -0
  270. package/cjs/packageInfo.js +4 -0
  271. package/cjs/pbkdf2/encode.d.ts +7 -0
  272. package/cjs/pbkdf2/encode.js +19 -0
  273. package/cjs/pbkdf2/index.d.ts +1 -0
  274. package/cjs/pbkdf2/index.js +5 -0
  275. package/cjs/random/asNumber.d.ts +15 -0
  276. package/cjs/random/asNumber.js +23 -0
  277. package/cjs/random/asU8a.d.ts +20 -0
  278. package/cjs/random/asU8a.js +28 -0
  279. package/cjs/random/index.d.ts +5 -0
  280. package/cjs/random/index.js +11 -0
  281. package/cjs/scrypt/defaults.d.ts +3 -0
  282. package/cjs/scrypt/defaults.js +16 -0
  283. package/cjs/scrypt/encode.d.ts +8 -0
  284. package/cjs/scrypt/encode.js +18 -0
  285. package/cjs/scrypt/fromU8a.d.ts +7 -0
  286. package/cjs/scrypt/fromU8a.js +27 -0
  287. package/cjs/scrypt/index.d.ts +3 -0
  288. package/cjs/scrypt/index.js +9 -0
  289. package/cjs/scrypt/toU8a.d.ts +2 -0
  290. package/cjs/scrypt/toU8a.js +8 -0
  291. package/cjs/scrypt/types.d.ts +6 -0
  292. package/cjs/scrypt/types.js +2 -0
  293. package/cjs/secp256k1/compress.d.ts +1 -0
  294. package/cjs/secp256k1/compress.js +17 -0
  295. package/cjs/secp256k1/deriveHard.d.ts +1 -0
  296. package/cjs/secp256k1/deriveHard.js +13 -0
  297. package/cjs/secp256k1/expand.d.ts +1 -0
  298. package/cjs/secp256k1/expand.js +20 -0
  299. package/cjs/secp256k1/hasher.d.ts +2 -0
  300. package/cjs/secp256k1/hasher.js +10 -0
  301. package/cjs/secp256k1/index.d.ts +7 -0
  302. package/cjs/secp256k1/index.js +17 -0
  303. package/cjs/secp256k1/pair/fromSeed.d.ts +6 -0
  304. package/cjs/secp256k1/pair/fromSeed.js +34 -0
  305. package/cjs/secp256k1/recover.d.ts +6 -0
  306. package/cjs/secp256k1/recover.js +29 -0
  307. package/cjs/secp256k1/sign.d.ts +7 -0
  308. package/cjs/secp256k1/sign.js +23 -0
  309. package/cjs/secp256k1/tweakAdd.d.ts +1 -0
  310. package/cjs/secp256k1/tweakAdd.js +48 -0
  311. package/cjs/secp256k1/types.d.ts +1 -0
  312. package/cjs/secp256k1/types.js +2 -0
  313. package/cjs/secp256k1/verify.d.ts +6 -0
  314. package/cjs/secp256k1/verify.js +23 -0
  315. package/cjs/sha/asU8a.d.ts +15 -0
  316. package/cjs/sha/asU8a.js +22 -0
  317. package/cjs/sha/index.d.ts +4 -0
  318. package/cjs/sha/index.js +10 -0
  319. package/cjs/signature/index.d.ts +4 -0
  320. package/cjs/signature/index.js +8 -0
  321. package/cjs/signature/verify.d.ts +2 -0
  322. package/cjs/signature/verify.js +81 -0
  323. package/cjs/sr25519/agreement.d.ts +5 -0
  324. package/cjs/sr25519/agreement.js +20 -0
  325. package/cjs/sr25519/derive.d.ts +2 -0
  326. package/cjs/sr25519/derive.js +16 -0
  327. package/cjs/sr25519/deriveHard.d.ts +1 -0
  328. package/cjs/sr25519/deriveHard.js +7 -0
  329. package/cjs/sr25519/derivePublic.d.ts +1 -0
  330. package/cjs/sr25519/derivePublic.js +16 -0
  331. package/cjs/sr25519/deriveSoft.d.ts +1 -0
  332. package/cjs/sr25519/deriveSoft.js +7 -0
  333. package/cjs/sr25519/index.d.ts +9 -0
  334. package/cjs/sr25519/index.js +21 -0
  335. package/cjs/sr25519/pair/fromSeed.d.ts +6 -0
  336. package/cjs/sr25519/pair/fromSeed.js +22 -0
  337. package/cjs/sr25519/pair/fromU8a.d.ts +2 -0
  338. package/cjs/sr25519/pair/fromU8a.js +17 -0
  339. package/cjs/sr25519/pair/toU8a.d.ts +2 -0
  340. package/cjs/sr25519/pair/toU8a.js +7 -0
  341. package/cjs/sr25519/sign.d.ts +6 -0
  342. package/cjs/sr25519/sign.js +19 -0
  343. package/cjs/sr25519/verify.d.ts +5 -0
  344. package/cjs/sr25519/verify.js +21 -0
  345. package/cjs/sr25519/vrfSign.d.ts +6 -0
  346. package/cjs/sr25519/vrfSign.js +19 -0
  347. package/cjs/sr25519/vrfVerify.d.ts +5 -0
  348. package/cjs/sr25519/vrfVerify.js +22 -0
  349. package/cjs/types.d.ts +26 -0
  350. package/cjs/types.js +5 -0
  351. package/cjs/xxhash/asU8a.d.ts +20 -0
  352. package/cjs/xxhash/asU8a.js +39 -0
  353. package/cjs/xxhash/index.d.ts +4 -0
  354. package/cjs/xxhash/index.js +9 -0
  355. package/cjs/xxhash/xxhash64.d.ts +1 -0
  356. package/cjs/xxhash/xxhash64.js +103 -0
  357. package/crypto.d.ts +3 -0
  358. package/crypto.js +12 -0
  359. package/ed25519/deriveHard.d.ts +1 -0
  360. package/ed25519/deriveHard.js +9 -0
  361. package/ed25519/index.d.ts +10 -0
  362. package/ed25519/index.js +10 -0
  363. package/ed25519/pair/fromRandom.d.ts +16 -0
  364. package/ed25519/pair/fromRandom.js +19 -0
  365. package/ed25519/pair/fromSecret.d.ts +16 -0
  366. package/ed25519/pair/fromSecret.js +23 -0
  367. package/ed25519/pair/fromSeed.d.ts +16 -0
  368. package/ed25519/pair/fromSeed.js +31 -0
  369. package/ed25519/pair/fromString.d.ts +16 -0
  370. package/ed25519/pair/fromString.js +20 -0
  371. package/ed25519/sign.d.ts +16 -0
  372. package/ed25519/sign.js +30 -0
  373. package/ed25519/verify.d.ts +15 -0
  374. package/ed25519/verify.js +36 -0
  375. package/ethereum/encode.d.ts +2 -0
  376. package/ethereum/encode.js +25 -0
  377. package/ethereum/index.d.ts +3 -0
  378. package/ethereum/index.js +3 -0
  379. package/ethereum/isAddress.d.ts +1 -0
  380. package/ethereum/isAddress.js +11 -0
  381. package/ethereum/isChecksum.d.ts +1 -0
  382. package/ethereum/isChecksum.js +17 -0
  383. package/hd/ethereum/index.d.ts +2 -0
  384. package/hd/ethereum/index.js +44 -0
  385. package/hd/index.d.ts +3 -0
  386. package/hd/index.js +3 -0
  387. package/hd/ledger/derivePrivate.d.ts +1 -0
  388. package/hd/ledger/derivePrivate.js +12 -0
  389. package/hd/ledger/index.d.ts +2 -0
  390. package/hd/ledger/index.js +30 -0
  391. package/hd/ledger/master.d.ts +1 -0
  392. package/hd/ledger/master.js +16 -0
  393. package/hd/validatePath.d.ts +2 -0
  394. package/hd/validatePath.js +16 -0
  395. package/helpers.d.ts +12 -0
  396. package/helpers.js +19 -0
  397. package/hmac/index.d.ts +1 -0
  398. package/hmac/index.js +1 -0
  399. package/hmac/shaAsU8a.d.ts +15 -0
  400. package/hmac/shaAsU8a.js +36 -0
  401. package/index.d.ts +2 -0
  402. package/index.js +2 -0
  403. package/json/constants.d.ts +6 -0
  404. package/json/constants.js +5 -0
  405. package/json/decrypt.d.ts +2 -0
  406. package/json/decrypt.js +13 -0
  407. package/json/decryptData.d.ts +2 -0
  408. package/json/decryptData.js +29 -0
  409. package/json/encrypt.d.ts +2 -0
  410. package/json/encrypt.js +15 -0
  411. package/json/encryptFormat.d.ts +2 -0
  412. package/json/encryptFormat.js +14 -0
  413. package/json/index.d.ts +4 -0
  414. package/json/index.js +4 -0
  415. package/json/types.d.ts +16 -0
  416. package/json/types.js +1 -0
  417. package/keccak/asU8a.d.ts +30 -0
  418. package/keccak/asU8a.js +33 -0
  419. package/keccak/index.d.ts +4 -0
  420. package/keccak/index.js +4 -0
  421. package/key/DeriveJunction.d.ts +12 -0
  422. package/key/DeriveJunction.js +58 -0
  423. package/key/extractPath.d.ts +9 -0
  424. package/key/extractPath.js +23 -0
  425. package/key/extractSuri.d.ts +11 -0
  426. package/key/extractSuri.js +22 -0
  427. package/key/fromPath.d.ts +3 -0
  428. package/key/fromPath.js +18 -0
  429. package/key/hdkdDerive.d.ts +3 -0
  430. package/key/hdkdDerive.js +8 -0
  431. package/key/hdkdEcdsa.d.ts +1 -0
  432. package/key/hdkdEcdsa.js +4 -0
  433. package/key/hdkdEd25519.d.ts +1 -0
  434. package/key/hdkdEd25519.js +3 -0
  435. package/key/hdkdSr25519.d.ts +3 -0
  436. package/key/hdkdSr25519.js +7 -0
  437. package/key/index.d.ts +9 -0
  438. package/key/index.js +9 -0
  439. package/mnemonic/bip39.d.ts +5 -0
  440. package/mnemonic/bip39.js +82 -0
  441. package/mnemonic/generate.d.ts +13 -0
  442. package/mnemonic/generate.js +20 -0
  443. package/mnemonic/index.d.ts +8 -0
  444. package/mnemonic/index.js +8 -0
  445. package/mnemonic/toEntropy.d.ts +1 -0
  446. package/mnemonic/toEntropy.js +8 -0
  447. package/mnemonic/toLegacySeed.d.ts +18 -0
  448. package/mnemonic/toLegacySeed.js +34 -0
  449. package/mnemonic/toMiniSecret.d.ts +1 -0
  450. package/mnemonic/toMiniSecret.js +17 -0
  451. package/mnemonic/validate.d.ts +14 -0
  452. package/mnemonic/validate.js +21 -0
  453. package/mnemonic/wordlists/en.d.ts +2 -0
  454. package/mnemonic/wordlists/en.js +1 -0
  455. package/mnemonic/wordlists/es.d.ts +2 -0
  456. package/mnemonic/wordlists/es.js +1 -0
  457. package/mnemonic/wordlists/fr.d.ts +2 -0
  458. package/mnemonic/wordlists/fr.js +1 -0
  459. package/mnemonic/wordlists/index.d.ts +8 -0
  460. package/mnemonic/wordlists/index.js +8 -0
  461. package/mnemonic/wordlists/it.d.ts +2 -0
  462. package/mnemonic/wordlists/it.js +1 -0
  463. package/mnemonic/wordlists/jp.d.ts +2 -0
  464. package/mnemonic/wordlists/jp.js +1 -0
  465. package/mnemonic/wordlists/ko.d.ts +2 -0
  466. package/mnemonic/wordlists/ko.js +1 -0
  467. package/mnemonic/wordlists/zh-s.d.ts +2 -0
  468. package/mnemonic/wordlists/zh-s.js +1 -0
  469. package/mnemonic/wordlists/zh-t.d.ts +2 -0
  470. package/mnemonic/wordlists/zh-t.js +1 -0
  471. package/nacl/decrypt.d.ts +15 -0
  472. package/nacl/decrypt.js +18 -0
  473. package/nacl/encrypt.d.ts +20 -0
  474. package/nacl/encrypt.js +22 -0
  475. package/nacl/index.d.ts +5 -0
  476. package/nacl/index.js +5 -0
  477. package/nacl/tweetnacl.d.ts +2 -0
  478. package/nacl/tweetnacl.js +234 -0
  479. package/networks.d.ts +1 -0
  480. package/networks.js +1 -0
  481. package/package.json +2022 -10
  482. package/packageDetect.d.ts +1 -0
  483. package/packageDetect.js +6 -0
  484. package/packageInfo.d.ts +6 -0
  485. package/packageInfo.js +1 -0
  486. package/pbkdf2/encode.d.ts +7 -0
  487. package/pbkdf2/encode.js +16 -0
  488. package/pbkdf2/index.d.ts +1 -0
  489. package/pbkdf2/index.js +1 -0
  490. package/random/asNumber.d.ts +15 -0
  491. package/random/asNumber.js +20 -0
  492. package/random/asU8a.d.ts +20 -0
  493. package/random/asU8a.js +24 -0
  494. package/random/index.d.ts +5 -0
  495. package/random/index.js +5 -0
  496. package/scrypt/defaults.d.ts +3 -0
  497. package/scrypt/defaults.js +13 -0
  498. package/scrypt/encode.d.ts +8 -0
  499. package/scrypt/encode.js +15 -0
  500. package/scrypt/fromU8a.d.ts +7 -0
  501. package/scrypt/fromU8a.js +24 -0
  502. package/scrypt/index.d.ts +3 -0
  503. package/scrypt/index.js +3 -0
  504. package/scrypt/toU8a.d.ts +2 -0
  505. package/scrypt/toU8a.js +5 -0
  506. package/scrypt/types.d.ts +6 -0
  507. package/scrypt/types.js +1 -0
  508. package/secp256k1/compress.d.ts +1 -0
  509. package/secp256k1/compress.js +14 -0
  510. package/secp256k1/deriveHard.d.ts +1 -0
  511. package/secp256k1/deriveHard.js +10 -0
  512. package/secp256k1/expand.d.ts +1 -0
  513. package/secp256k1/expand.js +17 -0
  514. package/secp256k1/hasher.d.ts +2 -0
  515. package/secp256k1/hasher.js +7 -0
  516. package/secp256k1/index.d.ts +7 -0
  517. package/secp256k1/index.js +7 -0
  518. package/secp256k1/pair/fromSeed.d.ts +6 -0
  519. package/secp256k1/pair/fromSeed.js +31 -0
  520. package/secp256k1/recover.d.ts +6 -0
  521. package/secp256k1/recover.js +26 -0
  522. package/secp256k1/sign.d.ts +7 -0
  523. package/secp256k1/sign.js +20 -0
  524. package/secp256k1/tweakAdd.d.ts +1 -0
  525. package/secp256k1/tweakAdd.js +45 -0
  526. package/secp256k1/types.d.ts +1 -0
  527. package/secp256k1/types.js +1 -0
  528. package/secp256k1/verify.d.ts +6 -0
  529. package/secp256k1/verify.js +20 -0
  530. package/sha/asU8a.d.ts +15 -0
  531. package/sha/asU8a.js +19 -0
  532. package/sha/index.d.ts +4 -0
  533. package/sha/index.js +4 -0
  534. package/signature/index.d.ts +4 -0
  535. package/signature/index.js +4 -0
  536. package/signature/verify.d.ts +2 -0
  537. package/signature/verify.js +78 -0
  538. package/sr25519/agreement.d.ts +5 -0
  539. package/sr25519/agreement.js +17 -0
  540. package/sr25519/derive.d.ts +2 -0
  541. package/sr25519/derive.js +12 -0
  542. package/sr25519/deriveHard.d.ts +1 -0
  543. package/sr25519/deriveHard.js +3 -0
  544. package/sr25519/derivePublic.d.ts +1 -0
  545. package/sr25519/derivePublic.js +12 -0
  546. package/sr25519/deriveSoft.d.ts +1 -0
  547. package/sr25519/deriveSoft.js +3 -0
  548. package/sr25519/index.d.ts +9 -0
  549. package/sr25519/index.js +9 -0
  550. package/sr25519/pair/fromSeed.d.ts +6 -0
  551. package/sr25519/pair/fromSeed.js +18 -0
  552. package/sr25519/pair/fromU8a.d.ts +2 -0
  553. package/sr25519/pair/fromU8a.js +14 -0
  554. package/sr25519/pair/toU8a.d.ts +2 -0
  555. package/sr25519/pair/toU8a.js +4 -0
  556. package/sr25519/sign.d.ts +6 -0
  557. package/sr25519/sign.js +15 -0
  558. package/sr25519/verify.d.ts +5 -0
  559. package/sr25519/verify.js +17 -0
  560. package/sr25519/vrfSign.d.ts +6 -0
  561. package/sr25519/vrfSign.js +15 -0
  562. package/sr25519/vrfVerify.d.ts +5 -0
  563. package/sr25519/vrfVerify.js +18 -0
  564. package/types.d.ts +26 -0
  565. package/types.js +2 -0
  566. package/xxhash/asU8a.d.ts +20 -0
  567. package/xxhash/asU8a.js +35 -0
  568. package/xxhash/index.d.ts +4 -0
  569. package/xxhash/index.js +4 -0
  570. package/xxhash/xxhash64.d.ts +1 -0
  571. package/xxhash/xxhash64.js +100 -0
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.default = '的|一|是|在|不|了|有|和|人|這|中|大|為|上|個|國|我|以|要|他|時|來|用|們|生|到|作|地|於|出|就|分|對|成|會|可|主|發|年|動|同|工|也|能|下|過|子|說|產|種|面|而|方|後|多|定|行|學|法|所|民|得|經|十|三|之|進|著|等|部|度|家|電|力|裡|如|水|化|高|自|二|理|起|小|物|現|實|加|量|都|兩|體|制|機|當|使|點|從|業|本|去|把|性|好|應|開|它|合|還|因|由|其|些|然|前|外|天|政|四|日|那|社|義|事|平|形|相|全|表|間|樣|與|關|各|重|新|線|內|數|正|心|反|你|明|看|原|又|麼|利|比|或|但|質|氣|第|向|道|命|此|變|條|只|沒|結|解|問|意|建|月|公|無|系|軍|很|情|者|最|立|代|想|已|通|並|提|直|題|黨|程|展|五|果|料|象|員|革|位|入|常|文|總|次|品|式|活|設|及|管|特|件|長|求|老|頭|基|資|邊|流|路|級|少|圖|山|統|接|知|較|將|組|見|計|別|她|手|角|期|根|論|運|農|指|幾|九|區|強|放|決|西|被|幹|做|必|戰|先|回|則|任|取|據|處|隊|南|給|色|光|門|即|保|治|北|造|百|規|熱|領|七|海|口|東|導|器|壓|志|世|金|增|爭|濟|階|油|思|術|極|交|受|聯|什|認|六|共|權|收|證|改|清|美|再|採|轉|更|單|風|切|打|白|教|速|花|帶|安|場|身|車|例|真|務|具|萬|每|目|至|達|走|積|示|議|聲|報|鬥|完|類|八|離|華|名|確|才|科|張|信|馬|節|話|米|整|空|元|況|今|集|溫|傳|土|許|步|群|廣|石|記|需|段|研|界|拉|林|律|叫|且|究|觀|越|織|裝|影|算|低|持|音|眾|書|布|复|容|兒|須|際|商|非|驗|連|斷|深|難|近|礦|千|週|委|素|技|備|半|辦|青|省|列|習|響|約|支|般|史|感|勞|便|團|往|酸|歷|市|克|何|除|消|構|府|稱|太|準|精|值|號|率|族|維|劃|選|標|寫|存|候|毛|親|快|效|斯|院|查|江|型|眼|王|按|格|養|易|置|派|層|片|始|卻|專|狀|育|廠|京|識|適|屬|圓|包|火|住|調|滿|縣|局|照|參|紅|細|引|聽|該|鐵|價|嚴|首|底|液|官|德|隨|病|蘇|失|爾|死|講|配|女|黃|推|顯|談|罪|神|藝|呢|席|含|企|望|密|批|營|項|防|舉|球|英|氧|勢|告|李|台|落|木|幫|輪|破|亞|師|圍|注|遠|字|材|排|供|河|態|封|另|施|減|樹|溶|怎|止|案|言|士|均|武|固|葉|魚|波|視|僅|費|緊|愛|左|章|早|朝|害|續|輕|服|試|食|充|兵|源|判|護|司|足|某|練|差|致|板|田|降|黑|犯|負|擊|范|繼|興|似|餘|堅|曲|輸|修|故|城|夫|夠|送|筆|船|佔|右|財|吃|富|春|職|覺|漢|畫|功|巴|跟|雖|雜|飛|檢|吸|助|昇|陽|互|初|創|抗|考|投|壞|策|古|徑|換|未|跑|留|鋼|曾|端|責|站|簡|述|錢|副|盡|帝|射|草|衝|承|獨|令|限|阿|宣|環|雙|請|超|微|讓|控|州|良|軸|找|否|紀|益|依|優|頂|礎|載|倒|房|突|坐|粉|敵|略|客|袁|冷|勝|絕|析|塊|劑|測|絲|協|訴|念|陳|仍|羅|鹽|友|洋|錯|苦|夜|刑|移|頻|逐|靠|混|母|短|皮|終|聚|汽|村|雲|哪|既|距|衛|停|烈|央|察|燒|迅|境|若|印|洲|刻|括|激|孔|搞|甚|室|待|核|校|散|侵|吧|甲|遊|久|菜|味|舊|模|湖|貨|損|預|阻|毫|普|穩|乙|媽|植|息|擴|銀|語|揮|酒|守|拿|序|紙|醫|缺|雨|嗎|針|劉|啊|急|唱|誤|訓|願|審|附|獲|茶|鮮|糧|斤|孩|脫|硫|肥|善|龍|演|父|漸|血|歡|械|掌|歌|沙|剛|攻|謂|盾|討|晚|粒|亂|燃|矛|乎|殺|藥|寧|魯|貴|鐘|煤|讀|班|伯|香|介|迫|句|豐|培|握|蘭|擔|弦|蛋|沉|假|穿|執|答|樂|誰|順|煙|縮|徵|臉|喜|松|腳|困|異|免|背|星|福|買|染|井|概|慢|怕|磁|倍|祖|皇|促|靜|補|評|翻|肉|踐|尼|衣|寬|揚|棉|希|傷|操|垂|秋|宜|氫|套|督|振|架|亮|末|憲|慶|編|牛|觸|映|雷|銷|詩|座|居|抓|裂|胞|呼|娘|景|威|綠|晶|厚|盟|衡|雞|孫|延|危|膠|屋|鄉|臨|陸|顧|掉|呀|燈|歲|措|束|耐|劇|玉|趙|跳|哥|季|課|凱|胡|額|款|紹|卷|齊|偉|蒸|殖|永|宗|苗|川|爐|岩|弱|零|楊|奏|沿|露|桿|探|滑|鎮|飯|濃|航|懷|趕|庫|奪|伊|靈|稅|途|滅|賽|歸|召|鼓|播|盤|裁|險|康|唯|錄|菌|純|借|糖|蓋|橫|符|私|努|堂|域|槍|潤|幅|哈|竟|熟|蟲|澤|腦|壤|碳|歐|遍|側|寨|敢|徹|慮|斜|薄|庭|納|彈|飼|伸|折|麥|濕|暗|荷|瓦|塞|床|築|惡|戶|訪|塔|奇|透|梁|刀|旋|跡|卡|氯|遇|份|毒|泥|退|洗|擺|灰|彩|賣|耗|夏|擇|忙|銅|獻|硬|予|繁|圈|雪|函|亦|抽|篇|陣|陰|丁|尺|追|堆|雄|迎|泛|爸|樓|避|謀|噸|野|豬|旗|累|偏|典|館|索|秦|脂|潮|爺|豆|忽|托|驚|塑|遺|愈|朱|替|纖|粗|傾|尚|痛|楚|謝|奮|購|磨|君|池|旁|碎|骨|監|捕|弟|暴|割|貫|殊|釋|詞|亡|壁|頓|寶|午|塵|聞|揭|炮|殘|冬|橋|婦|警|綜|招|吳|付|浮|遭|徐|您|搖|谷|贊|箱|隔|訂|男|吹|園|紛|唐|敗|宋|玻|巨|耕|坦|榮|閉|灣|鍵|凡|駐|鍋|救|恩|剝|凝|鹼|齒|截|煉|麻|紡|禁|廢|盛|版|緩|淨|睛|昌|婚|涉|筒|嘴|插|岸|朗|莊|街|藏|姑|貿|腐|奴|啦|慣|乘|夥|恢|勻|紗|扎|辯|耳|彪|臣|億|璃|抵|脈|秀|薩|俄|網|舞|店|噴|縱|寸|汗|掛|洪|賀|閃|柬|爆|烯|津|稻|牆|軟|勇|像|滾|厘|蒙|芳|肯|坡|柱|盪|腿|儀|旅|尾|軋|冰|貢|登|黎|削|鑽|勒|逃|障|氨|郭|峰|幣|港|伏|軌|畝|畢|擦|莫|刺|浪|秘|援|株|健|售|股|島|甘|泡|睡|童|鑄|湯|閥|休|匯|舍|牧|繞|炸|哲|磷|績|朋|淡|尖|啟|陷|柴|呈|徒|顏|淚|稍|忘|泵|藍|拖|洞|授|鏡|辛|壯|鋒|貧|虛|彎|摩|泰|幼|廷|尊|窗|綱|弄|隸|疑|氏|宮|姐|震|瑞|怪|尤|琴|循|描|膜|違|夾|腰|緣|珠|窮|森|枝|竹|溝|催|繩|憶|邦|剩|幸|漿|欄|擁|牙|貯|禮|濾|鈉|紋|罷|拍|咱|喊|袖|埃|勤|罰|焦|潛|伍|墨|欲|縫|姓|刊|飽|仿|獎|鋁|鬼|麗|跨|默|挖|鏈|掃|喝|袋|炭|污|幕|諸|弧|勵|梅|奶|潔|災|舟|鑑|苯|訟|抱|毀|懂|寒|智|埔|寄|屆|躍|渡|挑|丹|艱|貝|碰|拔|爹|戴|碼|夢|芽|熔|赤|漁|哭|敬|顆|奔|鉛|仲|虎|稀|妹|乏|珍|申|桌|遵|允|隆|螺|倉|魏|銳|曉|氮|兼|隱|礙|赫|撥|忠|肅|缸|牽|搶|博|巧|殼|兄|杜|訊|誠|碧|祥|柯|頁|巡|矩|悲|灌|齡|倫|票|尋|桂|鋪|聖|恐|恰|鄭|趣|抬|荒|騰|貼|柔|滴|猛|闊|輛|妻|填|撤|儲|簽|鬧|擾|紫|砂|遞|戲|吊|陶|伐|餵|療|瓶|婆|撫|臂|摸|忍|蝦|蠟|鄰|胸|鞏|擠|偶|棄|槽|勁|乳|鄧|吉|仁|爛|磚|租|烏|艦|伴|瓜|淺|丙|暫|燥|橡|柳|迷|暖|牌|秧|膽|詳|簧|踏|瓷|譜|呆|賓|糊|洛|輝|憤|競|隙|怒|粘|乃|緒|肩|籍|敏|塗|熙|皆|偵|懸|掘|享|糾|醒|狂|鎖|淀|恨|牲|霸|爬|賞|逆|玩|陵|祝|秒|浙|貌|役|彼|悉|鴨|趨|鳳|晨|畜|輩|秩|卵|署|梯|炎|灘|棋|驅|篩|峽|冒|啥|壽|譯|浸|泉|帽|遲|矽|疆|貸|漏|稿|冠|嫩|脅|芯|牢|叛|蝕|奧|鳴|嶺|羊|憑|串|塘|繪|酵|融|盆|錫|廟|籌|凍|輔|攝|襲|筋|拒|僚|旱|鉀|鳥|漆|沈|眉|疏|添|棒|穗|硝|韓|逼|扭|僑|涼|挺|碗|栽|炒|杯|患|餾|勸|豪|遼|勃|鴻|旦|吏|拜|狗|埋|輥|掩|飲|搬|罵|辭|勾|扣|估|蔣|絨|霧|丈|朵|姆|擬|宇|輯|陝|雕|償|蓄|崇|剪|倡|廳|咬|駛|薯|刷|斥|番|賦|奉|佛|澆|漫|曼|扇|鈣|桃|扶|仔|返|俗|虧|腔|鞋|棱|覆|框|悄|叔|撞|騙|勘|旺|沸|孤|吐|孟|渠|屈|疾|妙|惜|仰|狠|脹|諧|拋|黴|桑|崗|嘛|衰|盜|滲|臟|賴|湧|甜|曹|閱|肌|哩|厲|烴|緯|毅|昨|偽|症|煮|嘆|釘|搭|莖|籠|酷|偷|弓|錐|恆|傑|坑|鼻|翼|綸|敘|獄|逮|罐|絡|棚|抑|膨|蔬|寺|驟|穆|冶|枯|冊|屍|凸|紳|坯|犧|焰|轟|欣|晉|瘦|禦|錠|錦|喪|旬|鍛|壟|搜|撲|邀|亭|酯|邁|舒|脆|酶|閒|憂|酚|頑|羽|漲|卸|仗|陪|闢|懲|杭|姚|肚|捉|飄|漂|昆|欺|吾|郎|烷|汁|呵|飾|蕭|雅|郵|遷|燕|撒|姻|赴|宴|煩|債|帳|斑|鈴|旨|醇|董|餅|雛|姿|拌|傅|腹|妥|揉|賢|拆|歪|葡|胺|丟|浩|徽|昂|墊|擋|覽|貪|慰|繳|汪|慌|馮|諾|姜|誼|兇|劣|誣|耀|昏|躺|盈|騎|喬|溪|叢|盧|抹|悶|諮|刮|駕|纜|悟|摘|鉺|擲|頗|幻|柄|惠|慘|佳|仇|臘|窩|滌|劍|瞧|堡|潑|蔥|罩|霍|撈|胎|蒼|濱|倆|捅|湘|砍|霞|邵|萄|瘋|淮|遂|熊|糞|烘|宿|檔|戈|駁|嫂|裕|徙|箭|捐|腸|撐|曬|辨|殿|蓮|攤|攪|醬|屏|疫|哀|蔡|堵|沫|皺|暢|疊|閣|萊|敲|轄|鉤|痕|壩|巷|餓|禍|丘|玄|溜|曰|邏|彭|嘗|卿|妨|艇|吞|韋|怨|矮|歇'.split('|');
@@ -0,0 +1,15 @@
1
+ /**
2
+ * @name naclDecrypt
3
+ * @summary Decrypts a message using the supplied secretKey and nonce
4
+ * @description
5
+ * Returns an decrypted message, using the `secret` and `nonce`.
6
+ * @example
7
+ * <BR>
8
+ *
9
+ * ```javascript
10
+ * import { naclDecrypt } from '@pezkuwi/util-crypto';
11
+ *
12
+ * naclDecrypt([...], [...], [...]); // => [...]
13
+ * ```
14
+ */
15
+ export declare function naclDecrypt(encrypted: Uint8Array, nonce: Uint8Array, secret: Uint8Array): Uint8Array | null;
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.naclDecrypt = naclDecrypt;
4
+ const tweetnacl_js_1 = require("./tweetnacl.js");
5
+ /**
6
+ * @name naclDecrypt
7
+ * @summary Decrypts a message using the supplied secretKey and nonce
8
+ * @description
9
+ * Returns an decrypted message, using the `secret` and `nonce`.
10
+ * @example
11
+ * <BR>
12
+ *
13
+ * ```javascript
14
+ * import { naclDecrypt } from '@pezkuwi/util-crypto';
15
+ *
16
+ * naclDecrypt([...], [...], [...]); // => [...]
17
+ * ```
18
+ */
19
+ function naclDecrypt(encrypted, nonce, secret) {
20
+ return (0, tweetnacl_js_1.naclSecretboxOpen)(encrypted, nonce, secret);
21
+ }
@@ -0,0 +1,20 @@
1
+ interface Encrypted {
2
+ encrypted: Uint8Array;
3
+ nonce: Uint8Array;
4
+ }
5
+ /**
6
+ * @name naclEncrypt
7
+ * @summary Encrypts a message using the supplied secretKey and nonce
8
+ * @description
9
+ * Returns an encrypted message, using the `secretKey` and `nonce`. If the `nonce` was not supplied, a random value is generated.
10
+ * @example
11
+ * <BR>
12
+ *
13
+ * ```javascript
14
+ * import { naclEncrypt } from '@pezkuwi/util-crypto';
15
+ *
16
+ * naclEncrypt([...], [...]); // => [...]
17
+ * ```
18
+ */
19
+ export declare function naclEncrypt(message: Uint8Array, secret: Uint8Array, nonce?: Uint8Array): Encrypted;
20
+ export {};
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.naclEncrypt = naclEncrypt;
4
+ const asU8a_js_1 = require("../random/asU8a.js");
5
+ const tweetnacl_js_1 = require("./tweetnacl.js");
6
+ /**
7
+ * @name naclEncrypt
8
+ * @summary Encrypts a message using the supplied secretKey and nonce
9
+ * @description
10
+ * Returns an encrypted message, using the `secretKey` and `nonce`. If the `nonce` was not supplied, a random value is generated.
11
+ * @example
12
+ * <BR>
13
+ *
14
+ * ```javascript
15
+ * import { naclEncrypt } from '@pezkuwi/util-crypto';
16
+ *
17
+ * naclEncrypt([...], [...]); // => [...]
18
+ * ```
19
+ */
20
+ function naclEncrypt(message, secret, nonce = (0, asU8a_js_1.randomAsU8a)(24)) {
21
+ return {
22
+ encrypted: (0, tweetnacl_js_1.naclSecretbox)(message, nonce, secret),
23
+ nonce
24
+ };
25
+ }
@@ -0,0 +1,5 @@
1
+ /**
2
+ * @summary Implements [NaCl](http://nacl.cr.yp.to/) secret-key authenticated encryption, public-key authenticated encryption
3
+ */
4
+ export { naclDecrypt } from './decrypt.js';
5
+ export { naclEncrypt } from './encrypt.js';
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.naclEncrypt = exports.naclDecrypt = void 0;
4
+ /**
5
+ * @summary Implements [NaCl](http://nacl.cr.yp.to/) secret-key authenticated encryption, public-key authenticated encryption
6
+ */
7
+ var decrypt_js_1 = require("./decrypt.js");
8
+ Object.defineProperty(exports, "naclDecrypt", { enumerable: true, get: function () { return decrypt_js_1.naclDecrypt; } });
9
+ var encrypt_js_1 = require("./encrypt.js");
10
+ Object.defineProperty(exports, "naclEncrypt", { enumerable: true, get: function () { return encrypt_js_1.naclEncrypt; } });
@@ -0,0 +1,2 @@
1
+ export declare function naclSecretbox(msg: Uint8Array, nonce: Uint8Array, key: Uint8Array): Uint8Array;
2
+ export declare function naclSecretboxOpen(box: Uint8Array, nonce: Uint8Array, key: Uint8Array): Uint8Array | null;
@@ -0,0 +1,238 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.naclSecretbox = naclSecretbox;
4
+ exports.naclSecretboxOpen = naclSecretboxOpen;
5
+ /* eslint-disable brace-style,camelcase,comma-spacing,curly,one-var,padding-line-between-statements,space-infix-ops */
6
+ function L32(x, c) { return (x << c) | (x >>> (32 - c)); }
7
+ function ld32(x, i) {
8
+ let u = x[i + 3] & 0xff;
9
+ u = (u << 8) | (x[i + 2] & 0xff);
10
+ u = (u << 8) | (x[i + 1] & 0xff);
11
+ return (u << 8) | (x[i + 0] & 0xff);
12
+ }
13
+ function st32(x, j, u) {
14
+ for (let i = 0; i < 4; i++) {
15
+ x[j + i] = u & 255;
16
+ u >>>= 8;
17
+ }
18
+ }
19
+ function vn(x, xi, y, yi, n) {
20
+ let d = 0;
21
+ for (let i = 0; i < n; i++)
22
+ d |= x[xi + i] ^ y[yi + i];
23
+ return (1 & ((d - 1) >>> 8)) - 1;
24
+ }
25
+ function core(out, inp, k, c, h) {
26
+ const w = new Uint32Array(16), x = new Uint32Array(16), y = new Uint32Array(16), t = new Uint32Array(4);
27
+ let i, j, m;
28
+ for (i = 0; i < 4; i++) {
29
+ x[5 * i] = ld32(c, 4 * i);
30
+ x[1 + i] = ld32(k, 4 * i);
31
+ x[6 + i] = ld32(inp, 4 * i);
32
+ x[11 + i] = ld32(k, 16 + 4 * i);
33
+ }
34
+ for (i = 0; i < 16; i++)
35
+ y[i] = x[i];
36
+ for (i = 0; i < 20; i++) {
37
+ for (j = 0; j < 4; j++) {
38
+ for (m = 0; m < 4; m++)
39
+ t[m] = x[(5 * j + 4 * m) % 16];
40
+ t[1] ^= L32((t[0] + t[3]) | 0, 7);
41
+ t[2] ^= L32((t[1] + t[0]) | 0, 9);
42
+ t[3] ^= L32((t[2] + t[1]) | 0, 13);
43
+ t[0] ^= L32((t[3] + t[2]) | 0, 18);
44
+ for (m = 0; m < 4; m++)
45
+ w[4 * j + (j + m) % 4] = t[m];
46
+ }
47
+ for (m = 0; m < 16; m++)
48
+ x[m] = w[m];
49
+ }
50
+ if (h) {
51
+ for (i = 0; i < 16; i++)
52
+ x[i] = (x[i] + y[i]) | 0;
53
+ for (i = 0; i < 4; i++) {
54
+ x[5 * i] = (x[5 * i] - ld32(c, 4 * i)) | 0;
55
+ x[6 + i] = (x[6 + i] - ld32(inp, 4 * i)) | 0;
56
+ }
57
+ for (i = 0; i < 4; i++) {
58
+ st32(out, 4 * i, x[5 * i]);
59
+ st32(out, 16 + 4 * i, x[6 + i]);
60
+ }
61
+ }
62
+ else {
63
+ for (i = 0; i < 16; i++)
64
+ st32(out, 4 * i, (x[i] + y[i]) | 0);
65
+ }
66
+ }
67
+ const sigma = new Uint8Array([101, 120, 112, 97, 110, 100, 32, 51, 50, 45, 98, 121, 116, 101, 32, 107]);
68
+ function crypto_stream_salsa20_xor(c, cpos, m, mpos, b, n, k) {
69
+ const z = new Uint8Array(16), x = new Uint8Array(64);
70
+ let u, i;
71
+ if (!b)
72
+ return 0;
73
+ for (i = 0; i < 16; i++)
74
+ z[i] = 0;
75
+ for (i = 0; i < 8; i++)
76
+ z[i] = n[i];
77
+ while (b >= 64) {
78
+ core(x, z, k, sigma, false);
79
+ for (i = 0; i < 64; i++)
80
+ c[cpos + i] = (m ? m[mpos + i] : 0) ^ x[i];
81
+ u = 1;
82
+ for (i = 8; i < 16; i++) {
83
+ u = u + (z[i] & 0xff) | 0;
84
+ z[i] = u & 0xff;
85
+ u >>>= 8;
86
+ }
87
+ b -= 64;
88
+ cpos += 64;
89
+ if (m)
90
+ mpos += 64;
91
+ }
92
+ if (b > 0) {
93
+ core(x, z, k, sigma, false);
94
+ for (i = 0; i < b; i++)
95
+ c[cpos + i] = (m ? m[mpos + i] : 0) ^ x[i];
96
+ }
97
+ return 0;
98
+ }
99
+ function crypto_stream_xor(c, cpos, m, mpos, d, n, k) {
100
+ const s = new Uint8Array(32);
101
+ core(s, n, k, sigma, true);
102
+ return crypto_stream_salsa20_xor(c, cpos, m, mpos, d, n.subarray(16), s);
103
+ }
104
+ function add1305(h, c) {
105
+ let u = 0;
106
+ for (let j = 0; j < 17; j++) {
107
+ u = (u + ((h[j] + c[j]) | 0)) | 0;
108
+ h[j] = u & 255;
109
+ u >>>= 8;
110
+ }
111
+ }
112
+ const minusp = new Uint32Array([5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 252]);
113
+ function crypto_onetimeauth(out, outpos, m, mpos, n, k) {
114
+ let i, j, u;
115
+ const x = new Uint32Array(17), r = new Uint32Array(17), h = new Uint32Array(17), c = new Uint32Array(17), g = new Uint32Array(17);
116
+ for (j = 0; j < 17; j++)
117
+ r[j] = h[j] = 0;
118
+ for (j = 0; j < 16; j++)
119
+ r[j] = k[j];
120
+ r[3] &= 15;
121
+ r[4] &= 252;
122
+ r[7] &= 15;
123
+ r[8] &= 252;
124
+ r[11] &= 15;
125
+ r[12] &= 252;
126
+ r[15] &= 15;
127
+ while (n > 0) {
128
+ for (j = 0; j < 17; j++)
129
+ c[j] = 0;
130
+ for (j = 0; (j < 16) && (j < n); ++j)
131
+ c[j] = m[mpos + j];
132
+ c[j] = 1;
133
+ mpos += j;
134
+ n -= j;
135
+ add1305(h, c);
136
+ for (i = 0; i < 17; i++) {
137
+ x[i] = 0;
138
+ for (j = 0; j < 17; j++)
139
+ x[i] = (x[i] + (h[j] * ((j <= i) ? r[i - j] : ((320 * r[i + 17 - j]) | 0))) | 0) | 0;
140
+ }
141
+ for (i = 0; i < 17; i++)
142
+ h[i] = x[i];
143
+ u = 0;
144
+ for (j = 0; j < 16; j++) {
145
+ u = (u + h[j]) | 0;
146
+ h[j] = u & 255;
147
+ u >>>= 8;
148
+ }
149
+ u = (u + h[16]) | 0;
150
+ h[16] = u & 3;
151
+ u = (5 * (u >>> 2)) | 0;
152
+ for (j = 0; j < 16; j++) {
153
+ u = (u + h[j]) | 0;
154
+ h[j] = u & 255;
155
+ u >>>= 8;
156
+ }
157
+ u = (u + h[16]) | 0;
158
+ h[16] = u;
159
+ }
160
+ for (j = 0; j < 17; j++)
161
+ g[j] = h[j];
162
+ add1305(h, minusp);
163
+ const s = (-(h[16] >>> 7) | 0);
164
+ for (j = 0; j < 17; j++)
165
+ h[j] ^= s & (g[j] ^ h[j]);
166
+ for (j = 0; j < 16; j++)
167
+ c[j] = k[j + 16];
168
+ c[16] = 0;
169
+ add1305(h, c);
170
+ for (j = 0; j < 16; j++)
171
+ out[outpos + j] = h[j];
172
+ return 0;
173
+ }
174
+ function crypto_onetimeauth_verify(h, hpos, m, mpos, n, k) {
175
+ const x = new Uint8Array(16);
176
+ crypto_onetimeauth(x, 0, m, mpos, n, k);
177
+ return vn(h, hpos, x, 0, 16);
178
+ }
179
+ function crypto_secretbox(c, m, d, n, k) {
180
+ if (d < 32)
181
+ return -1;
182
+ crypto_stream_xor(c, 0, m, 0, d, n, k);
183
+ crypto_onetimeauth(c, 16, c, 32, d - 32, c);
184
+ for (let i = 0; i < 16; i++)
185
+ c[i] = 0;
186
+ return 0;
187
+ }
188
+ function crypto_secretbox_open(m, c, d, n, k) {
189
+ const x = new Uint8Array(32);
190
+ if (d < 32)
191
+ return -1;
192
+ crypto_stream_xor(x, 0, null, 0, 32, n, k);
193
+ if (crypto_onetimeauth_verify(c, 16, c, 32, d - 32, x) !== 0)
194
+ return -1;
195
+ crypto_stream_xor(m, 0, c, 0, d, n, k);
196
+ for (let i = 0; i < 32; i++)
197
+ m[i] = 0;
198
+ return 0;
199
+ }
200
+ const crypto_secretbox_KEYBYTES = 32;
201
+ const crypto_secretbox_NONCEBYTES = 24;
202
+ const crypto_secretbox_ZEROBYTES = 32;
203
+ const crypto_secretbox_BOXZEROBYTES = 16;
204
+ function checkLengths(k, n) {
205
+ if (k.length !== crypto_secretbox_KEYBYTES)
206
+ throw new Error('bad key size');
207
+ if (n.length !== crypto_secretbox_NONCEBYTES)
208
+ throw new Error('bad nonce size');
209
+ }
210
+ function checkArrayTypes(...args) {
211
+ for (let i = 0, count = args.length; i < count; i++) {
212
+ if (!(args[i] instanceof Uint8Array))
213
+ throw new TypeError('unexpected type, use Uint8Array');
214
+ }
215
+ }
216
+ function naclSecretbox(msg, nonce, key) {
217
+ checkArrayTypes(msg, nonce, key);
218
+ checkLengths(key, nonce);
219
+ const m = new Uint8Array(crypto_secretbox_ZEROBYTES + msg.length);
220
+ const c = new Uint8Array(m.length);
221
+ for (let i = 0; i < msg.length; i++)
222
+ m[i + crypto_secretbox_ZEROBYTES] = msg[i];
223
+ crypto_secretbox(c, m, m.length, nonce, key);
224
+ return c.subarray(crypto_secretbox_BOXZEROBYTES);
225
+ }
226
+ function naclSecretboxOpen(box, nonce, key) {
227
+ checkArrayTypes(box, nonce, key);
228
+ checkLengths(key, nonce);
229
+ const c = new Uint8Array(crypto_secretbox_BOXZEROBYTES + box.length);
230
+ const m = new Uint8Array(c.length);
231
+ for (let i = 0; i < box.length; i++)
232
+ c[i + crypto_secretbox_BOXZEROBYTES] = box[i];
233
+ if (c.length < 32)
234
+ return null;
235
+ if (crypto_secretbox_open(m, c, c.length, nonce, key) !== 0)
236
+ return null;
237
+ return m.subarray(crypto_secretbox_ZEROBYTES);
238
+ }
@@ -0,0 +1 @@
1
+ export { allNetworks, availableNetworks, selectableNetworks } from '@pezkuwi/networks';
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.selectableNetworks = exports.availableNetworks = exports.allNetworks = void 0;
4
+ var networks_1 = require("@pezkuwi/networks");
5
+ Object.defineProperty(exports, "allNetworks", { enumerable: true, get: function () { return networks_1.allNetworks; } });
6
+ Object.defineProperty(exports, "availableNetworks", { enumerable: true, get: function () { return networks_1.availableNetworks; } });
7
+ Object.defineProperty(exports, "selectableNetworks", { enumerable: true, get: function () { return networks_1.selectableNetworks; } });
@@ -0,0 +1,3 @@
1
+ {
2
+ "type": "commonjs"
3
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const packageInfo_1 = require("@pezkuwi/networks/cjs/packageInfo");
4
+ const util_1 = require("@pezkuwi/util");
5
+ const packageInfo_2 = require("@pezkuwi/util/cjs/packageInfo");
6
+ const x_randomvalues_1 = require("@pezkuwi/x-randomvalues");
7
+ const packageInfo_js_1 = require("./packageInfo.js");
8
+ (0, util_1.detectPackage)(packageInfo_js_1.packageInfo, null, [packageInfo_1.packageInfo, x_randomvalues_1.packageInfo, packageInfo_2.packageInfo]);
@@ -0,0 +1,6 @@
1
+ export declare const packageInfo: {
2
+ name: string;
3
+ path: string;
4
+ type: string;
5
+ version: string;
6
+ };
@@ -0,0 +1,4 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.packageInfo = void 0;
4
+ exports.packageInfo = { name: '@pezkuwi/util-crypto', path: typeof __dirname === 'string' ? __dirname : 'auto', type: 'cjs', version: '14.0.10' };
@@ -0,0 +1,7 @@
1
+ interface Result {
2
+ password: Uint8Array;
3
+ rounds: number;
4
+ salt: Uint8Array;
5
+ }
6
+ export declare function pbkdf2Encode(passphrase?: string | Uint8Array, salt?: Uint8Array, rounds?: number, onlyJs?: boolean): Result;
7
+ export {};
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.pbkdf2Encode = pbkdf2Encode;
4
+ const pbkdf2_1 = require("@noble/hashes/pbkdf2");
5
+ const sha512_1 = require("@noble/hashes/sha512");
6
+ const util_1 = require("@pezkuwi/util");
7
+ const wasm_crypto_1 = require("@pezkuwi/wasm-crypto");
8
+ const asU8a_js_1 = require("../random/asU8a.js");
9
+ function pbkdf2Encode(passphrase, salt = (0, asU8a_js_1.randomAsU8a)(), rounds = 2048, onlyJs) {
10
+ const u8aPass = (0, util_1.u8aToU8a)(passphrase);
11
+ const u8aSalt = (0, util_1.u8aToU8a)(salt);
12
+ return {
13
+ password: !util_1.hasBigInt || (!onlyJs && (0, wasm_crypto_1.isReady)())
14
+ ? (0, wasm_crypto_1.pbkdf2)(u8aPass, u8aSalt, rounds)
15
+ : (0, pbkdf2_1.pbkdf2)(sha512_1.sha512, u8aPass, u8aSalt, { c: rounds, dkLen: 64 }),
16
+ rounds,
17
+ salt
18
+ };
19
+ }
@@ -0,0 +1 @@
1
+ export { pbkdf2Encode } from './encode.js';
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.pbkdf2Encode = void 0;
4
+ var encode_js_1 = require("./encode.js");
5
+ Object.defineProperty(exports, "pbkdf2Encode", { enumerable: true, get: function () { return encode_js_1.pbkdf2Encode; } });
@@ -0,0 +1,15 @@
1
+ /**
2
+ * @name randomAsNumber
3
+ * @summary Creates a random number from random bytes.
4
+ * @description
5
+ * Returns a random number generated from the secure bytes.
6
+ * @example
7
+ * <BR>
8
+ *
9
+ * ```javascript
10
+ * import { randomAsNumber } from '@pezkuwi/util-crypto';
11
+ *
12
+ * randomAsNumber(); // => <random number>
13
+ * ```
14
+ */
15
+ export declare function randomAsNumber(): number;
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.randomAsNumber = randomAsNumber;
4
+ const util_1 = require("@pezkuwi/util");
5
+ const asU8a_js_1 = require("./asU8a.js");
6
+ const BN_53 = new util_1.BN(0b11111111111111111111111111111111111111111111111111111);
7
+ /**
8
+ * @name randomAsNumber
9
+ * @summary Creates a random number from random bytes.
10
+ * @description
11
+ * Returns a random number generated from the secure bytes.
12
+ * @example
13
+ * <BR>
14
+ *
15
+ * ```javascript
16
+ * import { randomAsNumber } from '@pezkuwi/util-crypto';
17
+ *
18
+ * randomAsNumber(); // => <random number>
19
+ * ```
20
+ */
21
+ function randomAsNumber() {
22
+ return (0, util_1.hexToBn)((0, asU8a_js_1.randomAsHex)(8)).and(BN_53).toNumber();
23
+ }
@@ -0,0 +1,20 @@
1
+ /**
2
+ * @name randomAsU8a
3
+ * @summary Creates a Uint8Array filled with random bytes.
4
+ * @description
5
+ * Returns a `Uint8Array` with the specified (optional) length filled with random bytes.
6
+ * @example
7
+ * <BR>
8
+ *
9
+ * ```javascript
10
+ * import { randomAsU8a } from '@pezkuwi/util-crypto';
11
+ *
12
+ * randomAsU8a(); // => Uint8Array([...])
13
+ * ```
14
+ */
15
+ export declare function randomAsU8a(length?: number): Uint8Array;
16
+ /**
17
+ * @name randomAsHex
18
+ * @description Creates a hex string filled with random bytes.
19
+ */
20
+ export declare const randomAsHex: (length?: number | undefined) => import("@pezkuwi/util/types").HexString;
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.randomAsHex = void 0;
4
+ exports.randomAsU8a = randomAsU8a;
5
+ const x_randomvalues_1 = require("@pezkuwi/x-randomvalues");
6
+ const helpers_js_1 = require("../helpers.js");
7
+ /**
8
+ * @name randomAsU8a
9
+ * @summary Creates a Uint8Array filled with random bytes.
10
+ * @description
11
+ * Returns a `Uint8Array` with the specified (optional) length filled with random bytes.
12
+ * @example
13
+ * <BR>
14
+ *
15
+ * ```javascript
16
+ * import { randomAsU8a } from '@pezkuwi/util-crypto';
17
+ *
18
+ * randomAsU8a(); // => Uint8Array([...])
19
+ * ```
20
+ */
21
+ function randomAsU8a(length = 32) {
22
+ return (0, x_randomvalues_1.getRandomValues)(new Uint8Array(length));
23
+ }
24
+ /**
25
+ * @name randomAsHex
26
+ * @description Creates a hex string filled with random bytes.
27
+ */
28
+ exports.randomAsHex = (0, helpers_js_1.createAsHex)(randomAsU8a);
@@ -0,0 +1,5 @@
1
+ /**
2
+ * @summary Returns a sequence of secure random bytes in a variety of formats
3
+ */
4
+ export { randomAsNumber } from './asNumber.js';
5
+ export { randomAsHex, randomAsU8a } from './asU8a.js';
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.randomAsU8a = exports.randomAsHex = exports.randomAsNumber = void 0;
4
+ /**
5
+ * @summary Returns a sequence of secure random bytes in a variety of formats
6
+ */
7
+ var asNumber_js_1 = require("./asNumber.js");
8
+ Object.defineProperty(exports, "randomAsNumber", { enumerable: true, get: function () { return asNumber_js_1.randomAsNumber; } });
9
+ var asU8a_js_1 = require("./asU8a.js");
10
+ Object.defineProperty(exports, "randomAsHex", { enumerable: true, get: function () { return asU8a_js_1.randomAsHex; } });
11
+ Object.defineProperty(exports, "randomAsU8a", { enumerable: true, get: function () { return asU8a_js_1.randomAsU8a; } });
@@ -0,0 +1,3 @@
1
+ import type { ScryptParams } from './types.js';
2
+ export declare const ALLOWED_PARAMS: ScryptParams[];
3
+ export declare const DEFAULT_PARAMS: ScryptParams;
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DEFAULT_PARAMS = exports.ALLOWED_PARAMS = void 0;
4
+ exports.ALLOWED_PARAMS = [
5
+ { N: 1 << 13, p: 10, r: 8 },
6
+ { N: 1 << 14, p: 5, r: 8 },
7
+ { N: 1 << 15, p: 3, r: 8 },
8
+ { N: 1 << 15, p: 1, r: 8 },
9
+ { N: 1 << 16, p: 2, r: 8 },
10
+ { N: 1 << 17, p: 1, r: 8 }
11
+ ];
12
+ exports.DEFAULT_PARAMS = {
13
+ N: 1 << 17,
14
+ p: 1,
15
+ r: 8
16
+ };
@@ -0,0 +1,8 @@
1
+ import type { ScryptParams } from './types.js';
2
+ interface Result {
3
+ params: ScryptParams;
4
+ password: Uint8Array;
5
+ salt: Uint8Array;
6
+ }
7
+ export declare function scryptEncode(passphrase?: string | Uint8Array, salt?: Uint8Array, params?: ScryptParams, onlyJs?: boolean): Result;
8
+ export {};
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.scryptEncode = scryptEncode;
4
+ const scrypt_1 = require("@noble/hashes/scrypt");
5
+ const util_1 = require("@pezkuwi/util");
6
+ const wasm_crypto_1 = require("@pezkuwi/wasm-crypto");
7
+ const asU8a_js_1 = require("../random/asU8a.js");
8
+ const defaults_js_1 = require("./defaults.js");
9
+ function scryptEncode(passphrase, salt = (0, asU8a_js_1.randomAsU8a)(), params = defaults_js_1.DEFAULT_PARAMS, onlyJs) {
10
+ const u8a = (0, util_1.u8aToU8a)(passphrase);
11
+ return {
12
+ params,
13
+ password: !util_1.hasBigInt || (!onlyJs && (0, wasm_crypto_1.isReady)())
14
+ ? (0, wasm_crypto_1.scrypt)(u8a, salt, Math.log2(params.N), params.r, params.p)
15
+ : (0, scrypt_1.scrypt)(u8a, salt, (0, util_1.objectSpread)({ dkLen: 64 }, params)),
16
+ salt
17
+ };
18
+ }
@@ -0,0 +1,7 @@
1
+ import type { ScryptParams } from './types.js';
2
+ interface Result {
3
+ params: ScryptParams;
4
+ salt: Uint8Array;
5
+ }
6
+ export declare function scryptFromU8a(data: Uint8Array): Result;
7
+ export {};
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.scryptFromU8a = scryptFromU8a;
4
+ const util_1 = require("@pezkuwi/util");
5
+ const bn_js_1 = require("../bn.js");
6
+ const defaults_js_1 = require("./defaults.js");
7
+ function scryptFromU8a(data) {
8
+ if (!(data instanceof Uint8Array)) {
9
+ throw new Error('Expected input to be a Uint8Array');
10
+ }
11
+ // Ensure the input is exactly 44 bytes: 32 for salt + 3 * 4 for N, p, r
12
+ if (data.length < 32 + 12) {
13
+ throw new Error(`Invalid input length: expected 44 bytes, found ${data.length}`);
14
+ }
15
+ const salt = data.subarray(0, 32);
16
+ const N = (0, util_1.u8aToBn)(data.subarray(32, 36), bn_js_1.BN_LE_OPTS).toNumber();
17
+ const p = (0, util_1.u8aToBn)(data.subarray(36, 40), bn_js_1.BN_LE_OPTS).toNumber();
18
+ const r = (0, util_1.u8aToBn)(data.subarray(40, 44), bn_js_1.BN_LE_OPTS).toNumber();
19
+ if (N > (1 << 20) || p > 4 || r > 16) {
20
+ throw new Error('Scrypt parameters exceed safe limits');
21
+ }
22
+ const isAllowed = defaults_js_1.ALLOWED_PARAMS.some((preset) => preset.N === N && preset.p === p && preset.r === r);
23
+ if (!isAllowed) {
24
+ throw new Error('Invalid injected scrypt params found');
25
+ }
26
+ return { params: { N, p, r }, salt };
27
+ }
@@ -0,0 +1,3 @@
1
+ export { scryptEncode } from './encode.js';
2
+ export { scryptFromU8a } from './fromU8a.js';
3
+ export { scryptToU8a } from './toU8a.js';