@pezkuwi/util-crypto 14.0.1 → 14.0.3

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 (750) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +4 -4
  3. package/address/addressToEvm.d.ts +5 -0
  4. package/address/addressToEvm.js +8 -0
  5. package/address/check.d.ts +8 -0
  6. package/address/check.js +26 -0
  7. package/address/checksum.d.ts +1 -0
  8. package/address/checksum.js +16 -0
  9. package/address/decode.d.ts +2 -0
  10. package/address/decode.js +29 -0
  11. package/address/defaults.d.ts +6 -0
  12. package/address/defaults.js +8 -0
  13. package/address/derive.d.ts +8 -0
  14. package/address/derive.js +24 -0
  15. package/address/encode.d.ts +2 -0
  16. package/address/encode.js +23 -0
  17. package/address/encodeDerived.d.ts +9 -0
  18. package/address/encodeDerived.js +12 -0
  19. package/address/encodeMulti.d.ts +9 -0
  20. package/address/encodeMulti.js +11 -0
  21. package/address/eq.d.ts +15 -0
  22. package/{src/address/eq.ts → address/eq.js} +2 -7
  23. package/address/evmToAddress.d.ts +7 -0
  24. package/address/evmToAddress.js +14 -0
  25. package/{src/address/index.ts → address/index.d.ts} +0 -5
  26. package/address/index.js +16 -0
  27. package/address/is.d.ts +2 -0
  28. package/address/is.js +9 -0
  29. package/address/keyDerived.d.ts +2 -0
  30. package/address/keyDerived.js +8 -0
  31. package/address/keyMulti.d.ts +2 -0
  32. package/address/keyMulti.js +8 -0
  33. package/address/setSS58Format.d.ts +6 -0
  34. package/address/setSS58Format.js +11 -0
  35. package/address/sort.d.ts +2 -0
  36. package/address/sort.js +7 -0
  37. package/address/sshash.d.ts +1 -0
  38. package/address/sshash.js +6 -0
  39. package/address/types.d.ts +1 -0
  40. package/address/types.js +1 -0
  41. package/address/util.d.ts +1 -0
  42. package/address/util.js +4 -0
  43. package/address/validate.d.ts +2 -0
  44. package/address/validate.js +4 -0
  45. package/base32/bs32.d.ts +26 -0
  46. package/{src/base32/bs32.ts → base32/bs32.js} +8 -21
  47. package/base32/helpers.d.ts +25 -0
  48. package/base32/helpers.js +61 -0
  49. package/{src/base32/index.ts → base32/index.d.ts} +0 -4
  50. package/base32/index.js +4 -0
  51. package/base58/bs58.d.ts +26 -0
  52. package/{src/base58/bs58.ts → base58/bs58.js} +4 -13
  53. package/{src/base58/index.ts → base58/index.d.ts} +0 -4
  54. package/base58/index.js +4 -0
  55. package/base64/bs64.d.ts +26 -0
  56. package/{src/base64/bs64.ts → base64/bs64.js} +4 -13
  57. package/{src/base64/index.ts → base64/index.d.ts} +0 -4
  58. package/base64/index.js +6 -0
  59. package/base64/pad.d.ts +5 -0
  60. package/base64/pad.js +7 -0
  61. package/base64/trim.d.ts +5 -0
  62. package/base64/trim.js +10 -0
  63. package/blake2/asU8a.d.ts +20 -0
  64. package/{src/blake2/asU8a.ts → blake2/asU8a.js} +8 -16
  65. package/{src/blake2/index.ts → blake2/index.d.ts} +0 -4
  66. package/blake2/index.js +4 -0
  67. package/bn.d.ts +30 -0
  68. package/{src/bn.ts → bn.js} +0 -7
  69. package/bundle-polkadot-util-crypto.js +11813 -0
  70. package/{src/bundle.ts → bundle.d.ts} +0 -7
  71. package/bundle.js +26 -0
  72. package/bundleInit.d.ts +1 -0
  73. package/bundleInit.js +5 -0
  74. package/cjs/address/addressToEvm.d.ts +5 -0
  75. package/cjs/address/addressToEvm.js +11 -0
  76. package/cjs/address/check.d.ts +8 -0
  77. package/cjs/address/check.js +29 -0
  78. package/cjs/address/checksum.d.ts +1 -0
  79. package/cjs/address/checksum.js +19 -0
  80. package/cjs/address/decode.d.ts +2 -0
  81. package/cjs/address/decode.js +32 -0
  82. package/cjs/address/defaults.d.ts +6 -0
  83. package/cjs/address/defaults.js +11 -0
  84. package/cjs/address/derive.d.ts +8 -0
  85. package/cjs/address/derive.js +27 -0
  86. package/cjs/address/encode.d.ts +2 -0
  87. package/cjs/address/encode.js +26 -0
  88. package/cjs/address/encodeDerived.d.ts +9 -0
  89. package/cjs/address/encodeDerived.js +15 -0
  90. package/cjs/address/encodeMulti.d.ts +9 -0
  91. package/cjs/address/encodeMulti.js +14 -0
  92. package/cjs/address/eq.d.ts +15 -0
  93. package/cjs/address/eq.js +22 -0
  94. package/cjs/address/evmToAddress.d.ts +7 -0
  95. package/cjs/address/evmToAddress.js +17 -0
  96. package/cjs/address/index.d.ts +16 -0
  97. package/cjs/address/index.js +35 -0
  98. package/cjs/address/is.d.ts +2 -0
  99. package/cjs/address/is.js +12 -0
  100. package/cjs/address/keyDerived.d.ts +2 -0
  101. package/cjs/address/keyDerived.js +11 -0
  102. package/cjs/address/keyMulti.d.ts +2 -0
  103. package/cjs/address/keyMulti.js +11 -0
  104. package/cjs/address/setSS58Format.d.ts +6 -0
  105. package/cjs/address/setSS58Format.js +14 -0
  106. package/cjs/address/sort.d.ts +2 -0
  107. package/cjs/address/sort.js +10 -0
  108. package/cjs/address/sshash.d.ts +1 -0
  109. package/cjs/address/sshash.js +9 -0
  110. package/cjs/address/types.d.ts +1 -0
  111. package/cjs/address/types.js +2 -0
  112. package/cjs/address/util.d.ts +1 -0
  113. package/cjs/address/util.js +7 -0
  114. package/cjs/address/validate.d.ts +2 -0
  115. package/cjs/address/validate.js +7 -0
  116. package/cjs/base32/bs32.d.ts +26 -0
  117. package/cjs/base32/bs32.js +43 -0
  118. package/cjs/base32/helpers.d.ts +25 -0
  119. package/cjs/base32/helpers.js +67 -0
  120. package/cjs/base32/index.d.ts +4 -0
  121. package/cjs/base32/index.js +11 -0
  122. package/cjs/base58/bs58.d.ts +26 -0
  123. package/cjs/base58/bs58.js +37 -0
  124. package/cjs/base58/index.d.ts +4 -0
  125. package/cjs/base58/index.js +11 -0
  126. package/cjs/base64/bs64.d.ts +26 -0
  127. package/cjs/base64/bs64.js +37 -0
  128. package/cjs/base64/index.d.ts +6 -0
  129. package/cjs/base64/index.js +15 -0
  130. package/cjs/base64/pad.d.ts +5 -0
  131. package/cjs/base64/pad.js +10 -0
  132. package/cjs/base64/trim.d.ts +5 -0
  133. package/cjs/base64/trim.js +13 -0
  134. package/cjs/blake2/asU8a.d.ts +20 -0
  135. package/cjs/blake2/asU8a.js +36 -0
  136. package/cjs/blake2/index.d.ts +4 -0
  137. package/cjs/blake2/index.js +9 -0
  138. package/cjs/bn.d.ts +30 -0
  139. package/cjs/bn.js +11 -0
  140. package/cjs/bundle.d.ts +26 -0
  141. package/cjs/bundle.js +31 -0
  142. package/cjs/bundleInit.d.ts +1 -0
  143. package/cjs/bundleInit.js +7 -0
  144. package/cjs/crypto.d.ts +3 -0
  145. package/cjs/crypto.js +16 -0
  146. package/cjs/ed25519/deriveHard.d.ts +1 -0
  147. package/cjs/ed25519/deriveHard.js +12 -0
  148. package/{src/ed25519/index.ts → cjs/ed25519/index.d.ts} +0 -3
  149. package/cjs/ed25519/index.js +20 -0
  150. package/cjs/ed25519/pair/fromRandom.d.ts +16 -0
  151. package/cjs/ed25519/pair/fromRandom.js +22 -0
  152. package/cjs/ed25519/pair/fromSecret.d.ts +16 -0
  153. package/{src/ed25519/pair/fromSecret.ts → cjs/ed25519/pair/fromSecret.js} +11 -14
  154. package/cjs/ed25519/pair/fromSeed.d.ts +16 -0
  155. package/cjs/ed25519/pair/fromSeed.js +34 -0
  156. package/cjs/ed25519/pair/fromString.d.ts +16 -0
  157. package/cjs/ed25519/pair/fromString.js +23 -0
  158. package/cjs/ed25519/sign.d.ts +16 -0
  159. package/cjs/ed25519/sign.js +33 -0
  160. package/cjs/ed25519/verify.d.ts +15 -0
  161. package/cjs/ed25519/verify.js +39 -0
  162. package/cjs/ethereum/encode.d.ts +2 -0
  163. package/cjs/ethereum/encode.js +28 -0
  164. package/{src/ethereum/index.ts → cjs/ethereum/index.d.ts} +0 -3
  165. package/cjs/ethereum/index.js +9 -0
  166. package/cjs/ethereum/isAddress.d.ts +1 -0
  167. package/cjs/ethereum/isAddress.js +14 -0
  168. package/cjs/ethereum/isChecksum.d.ts +1 -0
  169. package/cjs/ethereum/isChecksum.js +20 -0
  170. package/cjs/hd/ethereum/index.d.ts +2 -0
  171. package/cjs/hd/ethereum/index.js +47 -0
  172. package/{src/hd/index.ts → cjs/hd/index.d.ts} +0 -3
  173. package/cjs/hd/index.js +9 -0
  174. package/cjs/hd/ledger/derivePrivate.d.ts +1 -0
  175. package/cjs/hd/ledger/derivePrivate.js +15 -0
  176. package/cjs/hd/ledger/index.d.ts +2 -0
  177. package/cjs/hd/ledger/index.js +33 -0
  178. package/cjs/hd/ledger/master.d.ts +1 -0
  179. package/cjs/hd/ledger/master.js +19 -0
  180. package/cjs/hd/validatePath.d.ts +2 -0
  181. package/cjs/hd/validatePath.js +20 -0
  182. package/cjs/helpers.d.ts +12 -0
  183. package/cjs/helpers.js +24 -0
  184. package/cjs/hmac/index.d.ts +1 -0
  185. package/cjs/hmac/index.js +7 -0
  186. package/cjs/hmac/shaAsU8a.d.ts +15 -0
  187. package/cjs/hmac/shaAsU8a.js +40 -0
  188. package/cjs/index.d.ts +2 -0
  189. package/cjs/index.js +5 -0
  190. package/cjs/json/constants.d.ts +6 -0
  191. package/cjs/json/constants.js +8 -0
  192. package/cjs/json/decrypt.d.ts +2 -0
  193. package/cjs/json/decrypt.js +16 -0
  194. package/cjs/json/decryptData.d.ts +2 -0
  195. package/cjs/json/decryptData.js +32 -0
  196. package/cjs/json/encrypt.d.ts +2 -0
  197. package/cjs/json/encrypt.js +18 -0
  198. package/cjs/json/encryptFormat.d.ts +2 -0
  199. package/cjs/json/encryptFormat.js +17 -0
  200. package/{src/json/index.ts → cjs/json/index.d.ts} +0 -3
  201. package/cjs/json/index.js +11 -0
  202. package/cjs/json/types.d.ts +16 -0
  203. package/cjs/json/types.js +2 -0
  204. package/cjs/keccak/asU8a.d.ts +30 -0
  205. package/cjs/keccak/asU8a.js +36 -0
  206. package/{src/keccak/index.ts → cjs/keccak/index.d.ts} +0 -4
  207. package/cjs/keccak/index.js +11 -0
  208. package/cjs/key/DeriveJunction.d.ts +12 -0
  209. package/cjs/key/DeriveJunction.js +62 -0
  210. package/cjs/key/extractPath.d.ts +9 -0
  211. package/cjs/key/extractPath.js +26 -0
  212. package/cjs/key/extractSuri.d.ts +11 -0
  213. package/cjs/key/extractSuri.js +25 -0
  214. package/cjs/key/fromPath.d.ts +3 -0
  215. package/cjs/key/fromPath.js +21 -0
  216. package/cjs/key/hdkdDerive.d.ts +3 -0
  217. package/cjs/key/hdkdDerive.js +11 -0
  218. package/cjs/key/hdkdEcdsa.d.ts +1 -0
  219. package/cjs/key/hdkdEcdsa.js +7 -0
  220. package/cjs/key/hdkdEd25519.d.ts +1 -0
  221. package/cjs/key/hdkdEd25519.js +6 -0
  222. package/cjs/key/hdkdSr25519.d.ts +3 -0
  223. package/cjs/key/hdkdSr25519.js +10 -0
  224. package/{src/key/index.ts → cjs/key/index.d.ts} +0 -3
  225. package/cjs/key/index.js +18 -0
  226. package/cjs/mnemonic/bip39.d.ts +5 -0
  227. package/cjs/mnemonic/bip39.js +90 -0
  228. package/cjs/mnemonic/generate.d.ts +13 -0
  229. package/cjs/mnemonic/generate.js +23 -0
  230. package/{src/mnemonic/index.ts → cjs/mnemonic/index.d.ts} +0 -3
  231. package/cjs/mnemonic/index.js +16 -0
  232. package/cjs/mnemonic/toEntropy.d.ts +1 -0
  233. package/cjs/mnemonic/toEntropy.js +11 -0
  234. package/cjs/mnemonic/toLegacySeed.d.ts +18 -0
  235. package/cjs/mnemonic/toLegacySeed.js +37 -0
  236. package/cjs/mnemonic/toMiniSecret.d.ts +1 -0
  237. package/cjs/mnemonic/toMiniSecret.js +20 -0
  238. package/cjs/mnemonic/validate.d.ts +14 -0
  239. package/cjs/mnemonic/validate.js +24 -0
  240. package/cjs/mnemonic/wordlists/en.d.ts +2 -0
  241. package/cjs/mnemonic/wordlists/en.js +3 -0
  242. package/cjs/mnemonic/wordlists/es.d.ts +2 -0
  243. package/cjs/mnemonic/wordlists/es.js +3 -0
  244. package/cjs/mnemonic/wordlists/fr.d.ts +2 -0
  245. package/cjs/mnemonic/wordlists/fr.js +3 -0
  246. package/{src/mnemonic/wordlists/index.ts → cjs/mnemonic/wordlists/index.d.ts} +0 -3
  247. package/cjs/mnemonic/wordlists/index.js +20 -0
  248. package/cjs/mnemonic/wordlists/it.d.ts +2 -0
  249. package/cjs/mnemonic/wordlists/it.js +3 -0
  250. package/cjs/mnemonic/wordlists/jp.d.ts +2 -0
  251. package/cjs/mnemonic/wordlists/jp.js +3 -0
  252. package/cjs/mnemonic/wordlists/ko.d.ts +2 -0
  253. package/cjs/mnemonic/wordlists/ko.js +3 -0
  254. package/cjs/mnemonic/wordlists/zh-s.d.ts +2 -0
  255. package/cjs/mnemonic/wordlists/zh-s.js +3 -0
  256. package/cjs/mnemonic/wordlists/zh-t.d.ts +2 -0
  257. package/cjs/mnemonic/wordlists/zh-t.js +3 -0
  258. package/cjs/nacl/decrypt.d.ts +15 -0
  259. package/cjs/nacl/decrypt.js +21 -0
  260. package/cjs/nacl/encrypt.d.ts +20 -0
  261. package/cjs/nacl/encrypt.js +25 -0
  262. package/{src/nacl/index.ts → cjs/nacl/index.d.ts} +0 -3
  263. package/cjs/nacl/index.js +10 -0
  264. package/cjs/nacl/tweetnacl.d.ts +2 -0
  265. package/cjs/nacl/tweetnacl.js +238 -0
  266. package/cjs/networks.d.ts +1 -0
  267. package/cjs/networks.js +7 -0
  268. package/cjs/package.json +3 -0
  269. package/cjs/packageDetect.d.ts +1 -0
  270. package/cjs/packageDetect.js +8 -0
  271. package/cjs/packageInfo.d.ts +6 -0
  272. package/cjs/packageInfo.js +4 -0
  273. package/cjs/pbkdf2/encode.d.ts +7 -0
  274. package/cjs/pbkdf2/encode.js +19 -0
  275. package/cjs/pbkdf2/index.d.ts +1 -0
  276. package/cjs/pbkdf2/index.js +5 -0
  277. package/cjs/random/asNumber.d.ts +15 -0
  278. package/cjs/random/asNumber.js +23 -0
  279. package/cjs/random/asU8a.d.ts +20 -0
  280. package/cjs/random/asU8a.js +28 -0
  281. package/{src/random/index.ts → cjs/random/index.d.ts} +0 -4
  282. package/cjs/random/index.js +11 -0
  283. package/cjs/scrypt/defaults.d.ts +3 -0
  284. package/cjs/scrypt/defaults.js +16 -0
  285. package/cjs/scrypt/encode.d.ts +8 -0
  286. package/cjs/scrypt/encode.js +18 -0
  287. package/cjs/scrypt/fromU8a.d.ts +7 -0
  288. package/cjs/scrypt/fromU8a.js +27 -0
  289. package/{src/scrypt/index.ts → cjs/scrypt/index.d.ts} +0 -3
  290. package/cjs/scrypt/index.js +9 -0
  291. package/cjs/scrypt/toU8a.d.ts +2 -0
  292. package/cjs/scrypt/toU8a.js +8 -0
  293. package/cjs/scrypt/types.d.ts +6 -0
  294. package/cjs/scrypt/types.js +2 -0
  295. package/cjs/secp256k1/compress.d.ts +1 -0
  296. package/cjs/secp256k1/compress.js +17 -0
  297. package/cjs/secp256k1/deriveHard.d.ts +1 -0
  298. package/cjs/secp256k1/deriveHard.js +13 -0
  299. package/cjs/secp256k1/expand.d.ts +1 -0
  300. package/cjs/secp256k1/expand.js +20 -0
  301. package/cjs/secp256k1/hasher.d.ts +2 -0
  302. package/cjs/secp256k1/hasher.js +10 -0
  303. package/{src/secp256k1/index.ts → cjs/secp256k1/index.d.ts} +0 -3
  304. package/cjs/secp256k1/index.js +17 -0
  305. package/cjs/secp256k1/pair/fromSeed.d.ts +6 -0
  306. package/cjs/secp256k1/pair/fromSeed.js +34 -0
  307. package/cjs/secp256k1/recover.d.ts +6 -0
  308. package/cjs/secp256k1/recover.js +29 -0
  309. package/cjs/secp256k1/sign.d.ts +7 -0
  310. package/cjs/secp256k1/sign.js +23 -0
  311. package/cjs/secp256k1/tweakAdd.d.ts +1 -0
  312. package/cjs/secp256k1/tweakAdd.js +48 -0
  313. package/cjs/secp256k1/types.d.ts +1 -0
  314. package/cjs/secp256k1/types.js +2 -0
  315. package/cjs/secp256k1/verify.d.ts +6 -0
  316. package/cjs/secp256k1/verify.js +23 -0
  317. package/cjs/sha/asU8a.d.ts +15 -0
  318. package/cjs/sha/asU8a.js +22 -0
  319. package/{src/sha/index.ts → cjs/sha/index.d.ts} +0 -4
  320. package/cjs/sha/index.js +10 -0
  321. package/cjs/signature/index.d.ts +4 -0
  322. package/cjs/signature/index.js +8 -0
  323. package/cjs/signature/verify.d.ts +2 -0
  324. package/cjs/signature/verify.js +81 -0
  325. package/cjs/sr25519/agreement.d.ts +5 -0
  326. package/cjs/sr25519/agreement.js +20 -0
  327. package/cjs/sr25519/derive.d.ts +2 -0
  328. package/cjs/sr25519/derive.js +16 -0
  329. package/cjs/sr25519/deriveHard.d.ts +1 -0
  330. package/cjs/sr25519/deriveHard.js +7 -0
  331. package/cjs/sr25519/derivePublic.d.ts +1 -0
  332. package/cjs/sr25519/derivePublic.js +16 -0
  333. package/cjs/sr25519/deriveSoft.d.ts +1 -0
  334. package/cjs/sr25519/deriveSoft.js +7 -0
  335. package/{src/sr25519/index.ts → cjs/sr25519/index.d.ts} +0 -3
  336. package/cjs/sr25519/index.js +21 -0
  337. package/cjs/sr25519/pair/fromSeed.d.ts +6 -0
  338. package/cjs/sr25519/pair/fromSeed.js +22 -0
  339. package/cjs/sr25519/pair/fromU8a.d.ts +2 -0
  340. package/cjs/sr25519/pair/fromU8a.js +17 -0
  341. package/cjs/sr25519/pair/toU8a.d.ts +2 -0
  342. package/cjs/sr25519/pair/toU8a.js +7 -0
  343. package/cjs/sr25519/sign.d.ts +6 -0
  344. package/cjs/sr25519/sign.js +19 -0
  345. package/cjs/sr25519/verify.d.ts +5 -0
  346. package/cjs/sr25519/verify.js +21 -0
  347. package/cjs/sr25519/vrfSign.d.ts +6 -0
  348. package/cjs/sr25519/vrfSign.js +19 -0
  349. package/cjs/sr25519/vrfVerify.d.ts +5 -0
  350. package/cjs/sr25519/vrfVerify.js +22 -0
  351. package/cjs/types.d.ts +26 -0
  352. package/cjs/types.js +5 -0
  353. package/cjs/xxhash/asU8a.d.ts +20 -0
  354. package/cjs/xxhash/asU8a.js +39 -0
  355. package/{src/xxhash/index.ts → cjs/xxhash/index.d.ts} +0 -4
  356. package/cjs/xxhash/index.js +9 -0
  357. package/cjs/xxhash/xxhash64.d.ts +1 -0
  358. package/cjs/xxhash/xxhash64.js +103 -0
  359. package/crypto.d.ts +3 -0
  360. package/crypto.js +12 -0
  361. package/ed25519/deriveHard.d.ts +1 -0
  362. package/ed25519/deriveHard.js +9 -0
  363. package/ed25519/index.d.ts +10 -0
  364. package/ed25519/index.js +10 -0
  365. package/ed25519/pair/fromRandom.d.ts +16 -0
  366. package/{src/ed25519/pair/fromRandom.ts → ed25519/pair/fromRandom.js} +2 -8
  367. package/ed25519/pair/fromSecret.d.ts +16 -0
  368. package/ed25519/pair/fromSecret.js +23 -0
  369. package/ed25519/pair/fromSeed.d.ts +16 -0
  370. package/{src/ed25519/pair/fromSeed.ts → ed25519/pair/fromSeed.js} +11 -21
  371. package/ed25519/pair/fromString.d.ts +16 -0
  372. package/{src/ed25519/pair/fromString.ts → ed25519/pair/fromString.js} +2 -13
  373. package/ed25519/sign.d.ts +16 -0
  374. package/ed25519/sign.js +30 -0
  375. package/ed25519/verify.d.ts +15 -0
  376. package/ed25519/verify.js +36 -0
  377. package/ethereum/encode.d.ts +2 -0
  378. package/ethereum/encode.js +25 -0
  379. package/ethereum/index.d.ts +3 -0
  380. package/ethereum/index.js +3 -0
  381. package/ethereum/isAddress.d.ts +1 -0
  382. package/ethereum/isAddress.js +11 -0
  383. package/ethereum/isChecksum.d.ts +1 -0
  384. package/ethereum/isChecksum.js +17 -0
  385. package/hd/ethereum/index.d.ts +2 -0
  386. package/hd/ethereum/index.js +44 -0
  387. package/hd/index.d.ts +3 -0
  388. package/hd/index.js +3 -0
  389. package/hd/ledger/derivePrivate.d.ts +1 -0
  390. package/hd/ledger/derivePrivate.js +12 -0
  391. package/hd/ledger/index.d.ts +2 -0
  392. package/hd/ledger/index.js +30 -0
  393. package/hd/ledger/master.d.ts +1 -0
  394. package/hd/ledger/master.js +16 -0
  395. package/hd/validatePath.d.ts +2 -0
  396. package/hd/validatePath.js +16 -0
  397. package/helpers.d.ts +12 -0
  398. package/helpers.js +19 -0
  399. package/hmac/index.d.ts +1 -0
  400. package/hmac/index.js +1 -0
  401. package/hmac/shaAsU8a.d.ts +15 -0
  402. package/{src/hmac/shaAsU8a.ts → hmac/shaAsU8a.js} +11 -23
  403. package/index.d.ts +2 -0
  404. package/index.js +2 -0
  405. package/json/constants.d.ts +6 -0
  406. package/json/constants.js +5 -0
  407. package/json/decrypt.d.ts +2 -0
  408. package/json/decrypt.js +13 -0
  409. package/json/decryptData.d.ts +2 -0
  410. package/json/decryptData.js +29 -0
  411. package/json/encrypt.d.ts +2 -0
  412. package/json/encrypt.js +15 -0
  413. package/json/encryptFormat.d.ts +2 -0
  414. package/json/encryptFormat.js +14 -0
  415. package/json/index.d.ts +4 -0
  416. package/json/index.js +4 -0
  417. package/json/types.d.ts +16 -0
  418. package/json/types.js +1 -0
  419. package/keccak/asU8a.d.ts +30 -0
  420. package/{src/keccak/asU8a.ts → keccak/asU8a.js} +1 -13
  421. package/keccak/index.d.ts +4 -0
  422. package/keccak/index.js +4 -0
  423. package/key/DeriveJunction.d.ts +12 -0
  424. package/key/DeriveJunction.js +58 -0
  425. package/key/extractPath.d.ts +9 -0
  426. package/key/extractPath.js +23 -0
  427. package/key/extractSuri.d.ts +11 -0
  428. package/key/extractSuri.js +22 -0
  429. package/key/fromPath.d.ts +3 -0
  430. package/key/fromPath.js +18 -0
  431. package/key/hdkdDerive.d.ts +3 -0
  432. package/key/hdkdDerive.js +8 -0
  433. package/key/hdkdEcdsa.d.ts +1 -0
  434. package/{src/key/hdkdEcdsa.ts → key/hdkdEcdsa.js} +0 -4
  435. package/key/hdkdEd25519.d.ts +1 -0
  436. package/{src/key/hdkdEd25519.ts → key/hdkdEd25519.js} +0 -4
  437. package/key/hdkdSr25519.d.ts +3 -0
  438. package/key/hdkdSr25519.js +7 -0
  439. package/key/index.d.ts +9 -0
  440. package/key/index.js +9 -0
  441. package/mnemonic/bip39.d.ts +5 -0
  442. package/mnemonic/bip39.js +82 -0
  443. package/mnemonic/generate.d.ts +13 -0
  444. package/{src/mnemonic/generate.ts → mnemonic/generate.js} +4 -9
  445. package/mnemonic/index.d.ts +8 -0
  446. package/mnemonic/index.js +8 -0
  447. package/mnemonic/toEntropy.d.ts +1 -0
  448. package/mnemonic/toEntropy.js +8 -0
  449. package/mnemonic/toLegacySeed.d.ts +18 -0
  450. package/{src/mnemonic/toLegacySeed.ts → mnemonic/toLegacySeed.js} +12 -17
  451. package/mnemonic/toMiniSecret.d.ts +1 -0
  452. package/mnemonic/toMiniSecret.js +17 -0
  453. package/mnemonic/validate.d.ts +14 -0
  454. package/{src/mnemonic/validate.ts → mnemonic/validate.js} +4 -9
  455. package/mnemonic/wordlists/en.d.ts +2 -0
  456. package/{src/mnemonic/wordlists/en.ts → mnemonic/wordlists/en.js} +0 -6
  457. package/mnemonic/wordlists/es.d.ts +2 -0
  458. package/{src/mnemonic/wordlists/es.ts → mnemonic/wordlists/es.js} +0 -6
  459. package/mnemonic/wordlists/fr.d.ts +2 -0
  460. package/{src/mnemonic/wordlists/fr.ts → mnemonic/wordlists/fr.js} +0 -6
  461. package/mnemonic/wordlists/index.d.ts +8 -0
  462. package/mnemonic/wordlists/index.js +8 -0
  463. package/mnemonic/wordlists/it.d.ts +2 -0
  464. package/{src/mnemonic/wordlists/it.ts → mnemonic/wordlists/it.js} +0 -6
  465. package/mnemonic/wordlists/jp.d.ts +2 -0
  466. package/{src/mnemonic/wordlists/jp.ts → mnemonic/wordlists/jp.js} +0 -6
  467. package/mnemonic/wordlists/ko.d.ts +2 -0
  468. package/{src/mnemonic/wordlists/ko.ts → mnemonic/wordlists/ko.js} +0 -6
  469. package/mnemonic/wordlists/zh-s.d.ts +2 -0
  470. package/{src/mnemonic/wordlists/zh-s.ts → mnemonic/wordlists/zh-s.js} +0 -6
  471. package/mnemonic/wordlists/zh-t.d.ts +2 -0
  472. package/{src/mnemonic/wordlists/zh-t.ts → mnemonic/wordlists/zh-t.js} +0 -6
  473. package/nacl/decrypt.d.ts +15 -0
  474. package/{src/nacl/decrypt.ts → nacl/decrypt.js} +2 -6
  475. package/nacl/encrypt.d.ts +20 -0
  476. package/{src/nacl/encrypt.ts → nacl/encrypt.js} +5 -14
  477. package/nacl/index.d.ts +5 -0
  478. package/nacl/index.js +5 -0
  479. package/nacl/tweetnacl.d.ts +2 -0
  480. package/nacl/tweetnacl.js +234 -0
  481. package/networks.d.ts +1 -0
  482. package/networks.js +1 -0
  483. package/package.json +2020 -8
  484. package/packageDetect.d.ts +1 -0
  485. package/{src/packageDetect.ts → packageDetect.js} +0 -8
  486. package/packageInfo.d.ts +6 -0
  487. package/packageInfo.js +1 -0
  488. package/pbkdf2/encode.d.ts +7 -0
  489. package/pbkdf2/encode.js +16 -0
  490. package/pbkdf2/index.d.ts +1 -0
  491. package/pbkdf2/index.js +1 -0
  492. package/random/asNumber.d.ts +15 -0
  493. package/{src/random/asNumber.ts → random/asNumber.js} +2 -10
  494. package/random/asU8a.d.ts +20 -0
  495. package/{src/random/asU8a.ts → random/asU8a.js} +2 -8
  496. package/random/index.d.ts +5 -0
  497. package/random/index.js +5 -0
  498. package/scrypt/defaults.d.ts +3 -0
  499. package/scrypt/defaults.js +13 -0
  500. package/scrypt/encode.d.ts +8 -0
  501. package/scrypt/encode.js +15 -0
  502. package/scrypt/fromU8a.d.ts +7 -0
  503. package/scrypt/fromU8a.js +24 -0
  504. package/scrypt/index.d.ts +3 -0
  505. package/scrypt/index.js +3 -0
  506. package/scrypt/toU8a.d.ts +2 -0
  507. package/scrypt/toU8a.js +5 -0
  508. package/scrypt/types.d.ts +6 -0
  509. package/scrypt/types.js +1 -0
  510. package/secp256k1/compress.d.ts +1 -0
  511. package/secp256k1/compress.js +14 -0
  512. package/secp256k1/deriveHard.d.ts +1 -0
  513. package/secp256k1/deriveHard.js +10 -0
  514. package/secp256k1/expand.d.ts +1 -0
  515. package/secp256k1/expand.js +17 -0
  516. package/secp256k1/hasher.d.ts +2 -0
  517. package/secp256k1/hasher.js +7 -0
  518. package/secp256k1/index.d.ts +7 -0
  519. package/secp256k1/index.js +7 -0
  520. package/secp256k1/pair/fromSeed.d.ts +6 -0
  521. package/secp256k1/pair/fromSeed.js +31 -0
  522. package/secp256k1/recover.d.ts +6 -0
  523. package/secp256k1/recover.js +26 -0
  524. package/secp256k1/sign.d.ts +7 -0
  525. package/secp256k1/sign.js +20 -0
  526. package/secp256k1/tweakAdd.d.ts +1 -0
  527. package/secp256k1/tweakAdd.js +45 -0
  528. package/secp256k1/types.d.ts +1 -0
  529. package/secp256k1/types.js +1 -0
  530. package/secp256k1/verify.d.ts +6 -0
  531. package/secp256k1/verify.js +20 -0
  532. package/sha/asU8a.d.ts +15 -0
  533. package/{src/sha/asU8a.ts → sha/asU8a.js} +1 -12
  534. package/sha/index.d.ts +4 -0
  535. package/sha/index.js +4 -0
  536. package/signature/index.d.ts +4 -0
  537. package/signature/index.js +4 -0
  538. package/signature/verify.d.ts +2 -0
  539. package/signature/verify.js +78 -0
  540. package/sr25519/agreement.d.ts +5 -0
  541. package/sr25519/agreement.js +17 -0
  542. package/sr25519/derive.d.ts +2 -0
  543. package/sr25519/derive.js +12 -0
  544. package/sr25519/deriveHard.d.ts +1 -0
  545. package/{src/sr25519/deriveHard.ts → sr25519/deriveHard.js} +0 -6
  546. package/sr25519/derivePublic.d.ts +1 -0
  547. package/sr25519/derivePublic.js +12 -0
  548. package/sr25519/deriveSoft.d.ts +1 -0
  549. package/{src/sr25519/deriveSoft.ts → sr25519/deriveSoft.js} +0 -6
  550. package/sr25519/index.d.ts +9 -0
  551. package/sr25519/index.js +9 -0
  552. package/sr25519/pair/fromSeed.d.ts +6 -0
  553. package/sr25519/pair/fromSeed.js +18 -0
  554. package/sr25519/pair/fromU8a.d.ts +2 -0
  555. package/sr25519/pair/fromU8a.js +14 -0
  556. package/sr25519/pair/toU8a.d.ts +2 -0
  557. package/sr25519/pair/toU8a.js +4 -0
  558. package/sr25519/sign.d.ts +6 -0
  559. package/sr25519/sign.js +15 -0
  560. package/sr25519/verify.d.ts +5 -0
  561. package/sr25519/verify.js +17 -0
  562. package/sr25519/vrfSign.d.ts +6 -0
  563. package/sr25519/vrfSign.js +15 -0
  564. package/sr25519/vrfVerify.d.ts +5 -0
  565. package/sr25519/vrfVerify.js +18 -0
  566. package/types.d.ts +26 -0
  567. package/types.js +2 -0
  568. package/xxhash/asU8a.d.ts +20 -0
  569. package/{src/xxhash/asU8a.ts → xxhash/asU8a.js} +11 -21
  570. package/xxhash/index.d.ts +4 -0
  571. package/xxhash/index.js +4 -0
  572. package/xxhash/xxhash64.d.ts +1 -0
  573. package/xxhash/xxhash64.js +100 -0
  574. package/src/address/addressToEvm.spec.ts +0 -16
  575. package/src/address/addressToEvm.ts +0 -12
  576. package/src/address/check.spec.ts +0 -44
  577. package/src/address/check.ts +0 -34
  578. package/src/address/checksum.spec.ts +0 -45
  579. package/src/address/checksum.ts +0 -25
  580. package/src/address/decode.spec.ts +0 -138
  581. package/src/address/decode.ts +0 -41
  582. package/src/address/defaults.ts +0 -12
  583. package/src/address/derive.spec.ts +0 -26
  584. package/src/address/derive.ts +0 -36
  585. package/src/address/encode.spec.ts +0 -177
  586. package/src/address/encode.ts +0 -43
  587. package/src/address/encodeDerived.spec.ts +0 -14
  588. package/src/address/encodeDerived.ts +0 -19
  589. package/src/address/encodeMulti.spec.ts +0 -18
  590. package/src/address/encodeMulti.ts +0 -18
  591. package/src/address/eq.spec.ts +0 -45
  592. package/src/address/evmToAddress.spec.ts +0 -20
  593. package/src/address/evmToAddress.ts +0 -24
  594. package/src/address/is.spec.ts +0 -113
  595. package/src/address/is.ts +0 -14
  596. package/src/address/keyDerived.spec.ts +0 -24
  597. package/src/address/keyDerived.ts +0 -22
  598. package/src/address/keyMulti.spec.ts +0 -20
  599. package/src/address/keyMulti.ts +0 -23
  600. package/src/address/setSS58Format.spec.ts +0 -21
  601. package/src/address/setSS58Format.ts +0 -20
  602. package/src/address/sort.spec.ts +0 -22
  603. package/src/address/sort.ts +0 -17
  604. package/src/address/sshash.ts +0 -12
  605. package/src/address/types.ts +0 -6
  606. package/src/address/util.ts +0 -8
  607. package/src/address/validate.spec.ts +0 -113
  608. package/src/address/validate.ts +0 -10
  609. package/src/base32/decode.spec.ts +0 -34
  610. package/src/base32/encode.spec.ts +0 -30
  611. package/src/base32/helpers.ts +0 -93
  612. package/src/base32/is.spec.ts +0 -32
  613. package/src/base32/validate.spec.ts +0 -44
  614. package/src/base58/decode.spec.ts +0 -31
  615. package/src/base58/encode.spec.ts +0 -26
  616. package/src/base58/validate.spec.ts +0 -20
  617. package/src/base64/decode.spec.ts +0 -42
  618. package/src/base64/encode.spec.ts +0 -14
  619. package/src/base64/pad.spec.ts +0 -14
  620. package/src/base64/pad.ts +0 -10
  621. package/src/base64/trim.spec.ts +0 -14
  622. package/src/base64/trim.ts +0 -14
  623. package/src/base64/validate.spec.ts +0 -32
  624. package/src/blake2/asHex.spec.ts +0 -57
  625. package/src/blake2/asU8a.spec.ts +0 -74
  626. package/src/bundleInit.ts +0 -11
  627. package/src/crypto.spec.ts +0 -18
  628. package/src/crypto.ts +0 -18
  629. package/src/ed25519/deriveHard.ts +0 -18
  630. package/src/ed25519/pair/fromRandom.spec.ts +0 -28
  631. package/src/ed25519/pair/fromSecret.spec.ts +0 -33
  632. package/src/ed25519/pair/fromSeed.spec.ts +0 -42
  633. package/src/ed25519/pair/fromString.spec.ts +0 -17
  634. package/src/ed25519/sign.spec.ts +0 -40
  635. package/src/ed25519/sign.ts +0 -38
  636. package/src/ed25519/verify.spec.ts +0 -84
  637. package/src/ed25519/verify.ts +0 -41
  638. package/src/ethereum/encode.spec.ts +0 -59
  639. package/src/ethereum/encode.ts +0 -39
  640. package/src/ethereum/isAddress.spec.ts +0 -34
  641. package/src/ethereum/isAddress.ts +0 -16
  642. package/src/ethereum/isChecksum.ts +0 -27
  643. package/src/ethereum/isCheksum.spec.ts +0 -30
  644. package/src/hd/ethereum/index.spec.ts +0 -54
  645. package/src/hd/ethereum/index.ts +0 -69
  646. package/src/hd/ledger/derivePrivate.ts +0 -34
  647. package/src/hd/ledger/index.spec.ts +0 -64
  648. package/src/hd/ledger/index.ts +0 -42
  649. package/src/hd/ledger/master.spec.ts +0 -19
  650. package/src/hd/ledger/master.ts +0 -26
  651. package/src/hd/validatePath.spec.ts +0 -30
  652. package/src/hd/validatePath.ts +0 -24
  653. package/src/helpers.ts +0 -38
  654. package/src/hmac/index.ts +0 -4
  655. package/src/hmac/shaAsU8a.spec.ts +0 -45
  656. package/src/index.ts +0 -6
  657. package/src/json/constants.ts +0 -11
  658. package/src/json/decrypt.ts +0 -25
  659. package/src/json/decryptData.ts +0 -45
  660. package/src/json/encrypt.ts +0 -25
  661. package/src/json/encryptFormat.ts +0 -20
  662. package/src/json/types.ts +0 -22
  663. package/src/keccak/asHex.spec.ts +0 -30
  664. package/src/keccak/asU8a.spec.ts +0 -56
  665. package/src/key/DeriveJunction.ts +0 -79
  666. package/src/key/extractPath.spec.ts +0 -51
  667. package/src/key/extractPath.ts +0 -37
  668. package/src/key/extractSuri.spec.ts +0 -147
  669. package/src/key/extractSuri.ts +0 -40
  670. package/src/key/fromPath.ts +0 -28
  671. package/src/key/hdkdDerive.ts +0 -17
  672. package/src/key/hdkdSr25519.ts +0 -14
  673. package/src/mnemonic/bip39.spec.ts +0 -80
  674. package/src/mnemonic/bip39.ts +0 -127
  675. package/src/mnemonic/generate.spec.ts +0 -58
  676. package/src/mnemonic/toEntropy.spec.ts +0 -36
  677. package/src/mnemonic/toEntropy.ts +0 -13
  678. package/src/mnemonic/toLegacySeed.spec.ts +0 -52
  679. package/src/mnemonic/toMiniSecret.spec.ts +0 -67
  680. package/src/mnemonic/toMiniSecret.ts +0 -23
  681. package/src/mnemonic/toMiniSecretCmp.spec.ts +0 -64
  682. package/src/mnemonic/validate.spec.ts +0 -39
  683. package/src/mod.ts +0 -4
  684. package/src/nacl/decrypt.spec.ts +0 -26
  685. package/src/nacl/encrypt.spec.ts +0 -20
  686. package/src/nacl/tweetnacl-secretbox-data.spec.ts +0 -4629
  687. package/src/nacl/tweetnacl-secretbox.spec.ts +0 -161
  688. package/src/nacl/tweetnacl.ts +0 -1159
  689. package/src/networks.ts +0 -5
  690. package/src/packageInfo.ts +0 -6
  691. package/src/pbkdf2/encode.spec.ts +0 -54
  692. package/src/pbkdf2/encode.ts +0 -29
  693. package/src/pbkdf2/index.ts +0 -4
  694. package/src/random/asHex.spec.ts +0 -38
  695. package/src/random/asNumber.spec.ts +0 -16
  696. package/src/random/asU8a.spec.ts +0 -36
  697. package/src/scrypt/defaults.ts +0 -19
  698. package/src/scrypt/encode.spec.ts +0 -43
  699. package/src/scrypt/encode.ts +0 -30
  700. package/src/scrypt/fromU8a.ts +0 -44
  701. package/src/scrypt/toU8a.ts +0 -17
  702. package/src/scrypt/types.ts +0 -9
  703. package/src/secp256k1/compress.spec.ts +0 -47
  704. package/src/secp256k1/compress.ts +0 -21
  705. package/src/secp256k1/deriveHard.ts +0 -17
  706. package/src/secp256k1/expand.spec.ts +0 -47
  707. package/src/secp256k1/expand.ts +0 -30
  708. package/src/secp256k1/hasher.spec.ts +0 -24
  709. package/src/secp256k1/hasher.ts +0 -13
  710. package/src/secp256k1/pair/fromSeed.spec.ts +0 -75
  711. package/src/secp256k1/pair/fromSeed.ts +0 -42
  712. package/src/secp256k1/recover.spec.ts +0 -35
  713. package/src/secp256k1/recover.ts +0 -36
  714. package/src/secp256k1/sign.spec.ts +0 -39
  715. package/src/secp256k1/sign.ts +0 -37
  716. package/src/secp256k1/signVerify.spec.ts +0 -94
  717. package/src/secp256k1/tweakAdd.spec.ts +0 -35
  718. package/src/secp256k1/tweakAdd.ts +0 -65
  719. package/src/secp256k1/types.ts +0 -4
  720. package/src/secp256k1/verify.spec.ts +0 -81
  721. package/src/secp256k1/verify.ts +0 -32
  722. package/src/sha/asU8a256.spec.ts +0 -55
  723. package/src/sha/asU8a512.spec.ts +0 -33
  724. package/src/signature/index.ts +0 -8
  725. package/src/signature/verify.spec.ts +0 -230
  726. package/src/signature/verify.ts +0 -114
  727. package/src/sr25519/agreement.spec.ts +0 -31
  728. package/src/sr25519/agreement.ts +0 -23
  729. package/src/sr25519/derive.ts +0 -21
  730. package/src/sr25519/derivePublic.ts +0 -18
  731. package/src/sr25519/pair/fromSeed.spec.ts +0 -35
  732. package/src/sr25519/pair/fromSeed.ts +0 -28
  733. package/src/sr25519/pair/fromU8a.ts +0 -23
  734. package/src/sr25519/pair/testing.spec.ts +0 -161
  735. package/src/sr25519/pair/toU8a.ts +0 -10
  736. package/src/sr25519/sign.spec.ts +0 -28
  737. package/src/sr25519/sign.ts +0 -22
  738. package/src/sr25519/verify.spec.ts +0 -42
  739. package/src/sr25519/verify.ts +0 -23
  740. package/src/sr25519/vrfSign.ts +0 -24
  741. package/src/sr25519/vrfSignVerify.spec.ts +0 -73
  742. package/src/sr25519/vrfVerify.ts +0 -25
  743. package/src/test/index.ts +0 -8
  744. package/src/test/performance.ts +0 -17
  745. package/src/types.ts +0 -33
  746. package/src/xxhash/asHex.spec.ts +0 -36
  747. package/src/xxhash/asU8a.spec.ts +0 -48
  748. package/src/xxhash/xxhash64.ts +0 -155
  749. package/tsconfig.build.json +0 -18
  750. package/tsconfig.spec.json +0 -20
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ed25519PairFromRandom = ed25519PairFromRandom;
4
+ const index_js_1 = require("../../random/index.js");
5
+ const fromSeed_js_1 = require("./fromSeed.js");
6
+ /**
7
+ * @name ed25519PairFromRandom
8
+ * @summary Creates a new public/secret keypair.
9
+ * @description
10
+ * Returns a new generate object containing a `publicKey` & `secretKey`.
11
+ * @example
12
+ * <BR>
13
+ *
14
+ * ```javascript
15
+ * import { ed25519PairFromRandom } from '@pezkuwi/util-crypto';
16
+ *
17
+ * ed25519PairFromRandom(); // => { secretKey: [...], publicKey: [...] }
18
+ * ```
19
+ */
20
+ function ed25519PairFromRandom() {
21
+ return (0, fromSeed_js_1.ed25519PairFromSeed)((0, index_js_1.randomAsU8a)());
22
+ }
@@ -0,0 +1,16 @@
1
+ import type { Keypair } from '../../types.js';
2
+ /**
3
+ * @name ed25519PairFromSecret
4
+ * @summary Creates a new public/secret keypair from a secret.
5
+ * @description
6
+ * Returns a object containing a `publicKey` & `secretKey` generated from the supplied secret.
7
+ * @example
8
+ * <BR>
9
+ *
10
+ * ```javascript
11
+ * import { ed25519PairFromSecret } from '@polkadot/util-crypto';
12
+ *
13
+ * ed25519PairFromSecret(...); // => { secretKey: [...], publicKey: [...] }
14
+ * ```
15
+ */
16
+ export declare function ed25519PairFromSecret(secretKey: Uint8Array): Keypair;
@@ -1,8 +1,6 @@
1
- // Copyright 2017-2025 @polkadot/util-crypto authors & contributors
2
- // SPDX-License-Identifier: Apache-2.0
3
-
4
- import type { Keypair } from '../../types.js';
5
-
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ed25519PairFromSecret = ed25519PairFromSecret;
6
4
  /**
7
5
  * @name ed25519PairFromSecret
8
6
  * @summary Creates a new public/secret keypair from a secret.
@@ -17,13 +15,12 @@ import type { Keypair } from '../../types.js';
17
15
  * ed25519PairFromSecret(...); // => { secretKey: [...], publicKey: [...] }
18
16
  * ```
19
17
  */
20
- export function ed25519PairFromSecret (secretKey: Uint8Array): Keypair {
21
- if (secretKey.length !== 64) {
22
- throw new Error('Invalid secretKey provided');
23
- }
24
-
25
- return {
26
- publicKey: secretKey.slice(32),
27
- secretKey
28
- };
18
+ function ed25519PairFromSecret(secretKey) {
19
+ if (secretKey.length !== 64) {
20
+ throw new Error('Invalid secretKey provided');
21
+ }
22
+ return {
23
+ publicKey: secretKey.slice(32),
24
+ secretKey
25
+ };
29
26
  }
@@ -0,0 +1,16 @@
1
+ import type { Keypair } from '../../types.js';
2
+ /**
3
+ * @name ed25519PairFromSeed
4
+ * @summary Creates a new public/secret keypair from a seed.
5
+ * @description
6
+ * Returns a object containing a `publicKey` & `secretKey` generated from the supplied seed.
7
+ * @example
8
+ * <BR>
9
+ *
10
+ * ```javascript
11
+ * import { ed25519PairFromSeed } from '@polkadot/util-crypto';
12
+ *
13
+ * ed25519PairFromSeed(...); // => { secretKey: [...], publicKey: [...] }
14
+ * ```
15
+ */
16
+ export declare function ed25519PairFromSeed(seed: Uint8Array, onlyJs?: boolean): Keypair;
@@ -0,0 +1,34 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ed25519PairFromSeed = ed25519PairFromSeed;
4
+ const ed25519_1 = require("@noble/curves/ed25519");
5
+ const util_1 = require("@pezkuwi/util");
6
+ const wasm_crypto_1 = require("@pezkuwi/wasm-crypto");
7
+ /**
8
+ * @name ed25519PairFromSeed
9
+ * @summary Creates a new public/secret keypair from a seed.
10
+ * @description
11
+ * Returns a object containing a `publicKey` & `secretKey` generated from the supplied seed.
12
+ * @example
13
+ * <BR>
14
+ *
15
+ * ```javascript
16
+ * import { ed25519PairFromSeed } from '@pezkuwi/util-crypto';
17
+ *
18
+ * ed25519PairFromSeed(...); // => { secretKey: [...], publicKey: [...] }
19
+ * ```
20
+ */
21
+ function ed25519PairFromSeed(seed, onlyJs) {
22
+ if (!util_1.hasBigInt || (!onlyJs && (0, wasm_crypto_1.isReady)())) {
23
+ const full = (0, wasm_crypto_1.ed25519KeypairFromSeed)(seed);
24
+ return {
25
+ publicKey: full.slice(32),
26
+ secretKey: full.slice(0, 64)
27
+ };
28
+ }
29
+ const publicKey = ed25519_1.ed25519.getPublicKey(seed);
30
+ return {
31
+ publicKey,
32
+ secretKey: (0, util_1.u8aConcatStrict)([seed, publicKey])
33
+ };
34
+ }
@@ -0,0 +1,16 @@
1
+ import type { Keypair } from '../../types.js';
2
+ /**
3
+ * @name ed25519PairFromString
4
+ * @summary Creates a new public/secret keypair from a string.
5
+ * @description
6
+ * Returns a object containing a `publicKey` & `secretKey` generated from the supplied string. The string is hashed and the value used as the input seed.
7
+ * @example
8
+ * <BR>
9
+ *
10
+ * ```javascript
11
+ * import { ed25519PairFromString } from '@polkadot/util-crypto';
12
+ *
13
+ * ed25519PairFromString('test'); // => { secretKey: [...], publicKey: [...] }
14
+ * ```
15
+ */
16
+ export declare function ed25519PairFromString(value: string): Keypair;
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ed25519PairFromString = ed25519PairFromString;
4
+ const util_1 = require("@pezkuwi/util");
5
+ const asU8a_js_1 = require("../../blake2/asU8a.js");
6
+ const fromSeed_js_1 = require("./fromSeed.js");
7
+ /**
8
+ * @name ed25519PairFromString
9
+ * @summary Creates a new public/secret keypair from a string.
10
+ * @description
11
+ * Returns a object containing a `publicKey` & `secretKey` generated from the supplied string. The string is hashed and the value used as the input seed.
12
+ * @example
13
+ * <BR>
14
+ *
15
+ * ```javascript
16
+ * import { ed25519PairFromString } from '@pezkuwi/util-crypto';
17
+ *
18
+ * ed25519PairFromString('test'); // => { secretKey: [...], publicKey: [...] }
19
+ * ```
20
+ */
21
+ function ed25519PairFromString(value) {
22
+ return (0, fromSeed_js_1.ed25519PairFromSeed)((0, asU8a_js_1.blake2AsU8a)((0, util_1.stringToU8a)(value)));
23
+ }
@@ -0,0 +1,16 @@
1
+ import type { Keypair } from '../types.js';
2
+ /**
3
+ * @name ed25519Sign
4
+ * @summary Signs a message using the supplied secretKey
5
+ * @description
6
+ * Returns message signature of `message`, using the `secretKey`.
7
+ * @example
8
+ * <BR>
9
+ *
10
+ * ```javascript
11
+ * import { ed25519Sign } from '@polkadot/util-crypto';
12
+ *
13
+ * ed25519Sign([...], [...]); // => [...]
14
+ * ```
15
+ */
16
+ export declare function ed25519Sign(message: string | Uint8Array, { publicKey, secretKey }: Partial<Keypair>, onlyJs?: boolean): Uint8Array;
@@ -0,0 +1,33 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ed25519Sign = ed25519Sign;
4
+ const ed25519_1 = require("@noble/curves/ed25519");
5
+ const util_1 = require("@pezkuwi/util");
6
+ const wasm_crypto_1 = require("@pezkuwi/wasm-crypto");
7
+ /**
8
+ * @name ed25519Sign
9
+ * @summary Signs a message using the supplied secretKey
10
+ * @description
11
+ * Returns message signature of `message`, using the `secretKey`.
12
+ * @example
13
+ * <BR>
14
+ *
15
+ * ```javascript
16
+ * import { ed25519Sign } from '@pezkuwi/util-crypto';
17
+ *
18
+ * ed25519Sign([...], [...]); // => [...]
19
+ * ```
20
+ */
21
+ function ed25519Sign(message, { publicKey, secretKey }, onlyJs) {
22
+ if (!secretKey) {
23
+ throw new Error('Expected a valid secretKey');
24
+ }
25
+ else if (!publicKey) {
26
+ throw new Error('Expected a valid publicKey');
27
+ }
28
+ const messageU8a = (0, util_1.u8aToU8a)(message);
29
+ const privateU8a = secretKey.subarray(0, 32);
30
+ return !util_1.hasBigInt || (!onlyJs && (0, wasm_crypto_1.isReady)())
31
+ ? (0, wasm_crypto_1.ed25519Sign)(publicKey, privateU8a, messageU8a)
32
+ : ed25519_1.ed25519.sign(messageU8a, privateU8a);
33
+ }
@@ -0,0 +1,15 @@
1
+ /**
2
+ * @name ed25519Sign
3
+ * @summary Verifies the signature on the supplied message.
4
+ * @description
5
+ * Verifies the `signature` on `message` with the supplied `publicKey`. Returns `true` on sucess, `false` otherwise.
6
+ * @example
7
+ * <BR>
8
+ *
9
+ * ```javascript
10
+ * import { ed25519Verify } from '@polkadot/util-crypto';
11
+ *
12
+ * ed25519Verify([...], [...], [...]); // => true/false
13
+ * ```
14
+ */
15
+ export declare function ed25519Verify(message: string | Uint8Array, signature: string | Uint8Array, publicKey: string | Uint8Array, onlyJs?: boolean): boolean;
@@ -0,0 +1,39 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ed25519Verify = ed25519Verify;
4
+ const ed25519_1 = require("@noble/curves/ed25519");
5
+ const util_1 = require("@pezkuwi/util");
6
+ const wasm_crypto_1 = require("@pezkuwi/wasm-crypto");
7
+ /**
8
+ * @name ed25519Sign
9
+ * @summary Verifies the signature on the supplied message.
10
+ * @description
11
+ * Verifies the `signature` on `message` with the supplied `publicKey`. Returns `true` on sucess, `false` otherwise.
12
+ * @example
13
+ * <BR>
14
+ *
15
+ * ```javascript
16
+ * import { ed25519Verify } from '@pezkuwi/util-crypto';
17
+ *
18
+ * ed25519Verify([...], [...], [...]); // => true/false
19
+ * ```
20
+ */
21
+ function ed25519Verify(message, signature, publicKey, onlyJs) {
22
+ const messageU8a = (0, util_1.u8aToU8a)(message);
23
+ const publicKeyU8a = (0, util_1.u8aToU8a)(publicKey);
24
+ const signatureU8a = (0, util_1.u8aToU8a)(signature);
25
+ if (publicKeyU8a.length !== 32) {
26
+ throw new Error(`Invalid publicKey, received ${publicKeyU8a.length}, expected 32`);
27
+ }
28
+ else if (signatureU8a.length !== 64) {
29
+ throw new Error(`Invalid signature, received ${signatureU8a.length} bytes, expected 64`);
30
+ }
31
+ try {
32
+ return !util_1.hasBigInt || (!onlyJs && (0, wasm_crypto_1.isReady)())
33
+ ? (0, wasm_crypto_1.ed25519Verify)(signatureU8a, messageU8a, publicKeyU8a)
34
+ : ed25519_1.ed25519.verify(signatureU8a, messageU8a, publicKeyU8a);
35
+ }
36
+ catch {
37
+ return false;
38
+ }
39
+ }
@@ -0,0 +1,2 @@
1
+ import type { HexString } from '@polkadot/util/types';
2
+ export declare function ethereumEncode(addressOrPublic?: string | Uint8Array): HexString;
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ethereumEncode = ethereumEncode;
4
+ const util_1 = require("@pezkuwi/util");
5
+ const index_js_1 = require("../keccak/index.js");
6
+ const index_js_2 = require("../secp256k1/index.js");
7
+ function getH160(u8a) {
8
+ if ([33, 65].includes(u8a.length)) {
9
+ u8a = (0, index_js_1.keccakAsU8a)((0, index_js_2.secp256k1Expand)(u8a));
10
+ }
11
+ return u8a.slice(-20);
12
+ }
13
+ function ethereumEncode(addressOrPublic) {
14
+ if (!addressOrPublic) {
15
+ return '0x';
16
+ }
17
+ const u8aAddress = (0, util_1.u8aToU8a)(addressOrPublic);
18
+ if (![20, 32, 33, 65].includes(u8aAddress.length)) {
19
+ throw new Error(`Invalid address or publicKey provided, received ${u8aAddress.length} bytes input`);
20
+ }
21
+ const address = (0, util_1.u8aToHex)(getH160(u8aAddress), -1, false);
22
+ const hash = (0, util_1.u8aToHex)((0, index_js_1.keccakAsU8a)(address), -1, false);
23
+ let result = '';
24
+ for (let i = 0; i < 40; i++) {
25
+ result = `${result}${parseInt(hash[i], 16) > 7 ? address[i].toUpperCase() : address[i]}`;
26
+ }
27
+ return `0x${result}`;
28
+ }
@@ -1,6 +1,3 @@
1
- // Copyright 2017-2025 @polkadot/util-crypto authors & contributors
2
- // SPDX-License-Identifier: Apache-2.0
3
-
4
1
  export { ethereumEncode } from './encode.js';
5
2
  export { isEthereumAddress } from './isAddress.js';
6
3
  export { isEthereumChecksum } from './isChecksum.js';
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isEthereumChecksum = exports.isEthereumAddress = exports.ethereumEncode = void 0;
4
+ var encode_js_1 = require("./encode.js");
5
+ Object.defineProperty(exports, "ethereumEncode", { enumerable: true, get: function () { return encode_js_1.ethereumEncode; } });
6
+ var isAddress_js_1 = require("./isAddress.js");
7
+ Object.defineProperty(exports, "isEthereumAddress", { enumerable: true, get: function () { return isAddress_js_1.isEthereumAddress; } });
8
+ var isChecksum_js_1 = require("./isChecksum.js");
9
+ Object.defineProperty(exports, "isEthereumChecksum", { enumerable: true, get: function () { return isChecksum_js_1.isEthereumChecksum; } });
@@ -0,0 +1 @@
1
+ export declare function isEthereumAddress(address?: string): boolean;
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isEthereumAddress = isEthereumAddress;
4
+ const util_1 = require("@pezkuwi/util");
5
+ const isChecksum_js_1 = require("./isChecksum.js");
6
+ function isEthereumAddress(address) {
7
+ if (!address || address.length !== 42 || !(0, util_1.isHex)(address)) {
8
+ return false;
9
+ }
10
+ else if (/^(0x)?[0-9a-f]{40}$/.test(address) || /^(0x)?[0-9A-F]{40}$/.test(address)) {
11
+ return true;
12
+ }
13
+ return (0, isChecksum_js_1.isEthereumChecksum)(address);
14
+ }
@@ -0,0 +1 @@
1
+ export declare function isEthereumChecksum(_address: string): boolean;
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isEthereumChecksum = isEthereumChecksum;
4
+ const util_1 = require("@pezkuwi/util");
5
+ const index_js_1 = require("../keccak/index.js");
6
+ function isInvalidChar(char, byte) {
7
+ return char !== (byte > 7
8
+ ? char.toUpperCase()
9
+ : char.toLowerCase());
10
+ }
11
+ function isEthereumChecksum(_address) {
12
+ const address = _address.replace('0x', '');
13
+ const hash = (0, util_1.u8aToHex)((0, index_js_1.keccakAsU8a)(address.toLowerCase()), -1, false);
14
+ for (let i = 0; i < 40; i++) {
15
+ if (isInvalidChar(address[i], parseInt(hash[i], 16))) {
16
+ return false;
17
+ }
18
+ }
19
+ return true;
20
+ }
@@ -0,0 +1,2 @@
1
+ import type { Keypair } from '../../types.js';
2
+ export declare function hdEthereum(seed: Uint8Array, path?: string): Keypair;
@@ -0,0 +1,47 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.hdEthereum = hdEthereum;
4
+ const util_1 = require("@pezkuwi/util");
5
+ const bn_js_1 = require("../../bn.js");
6
+ const index_js_1 = require("../../hmac/index.js");
7
+ const index_js_2 = require("../../secp256k1/index.js");
8
+ const validatePath_js_1 = require("../validatePath.js");
9
+ const MASTER_SECRET = (0, util_1.stringToU8a)('Bitcoin seed');
10
+ function createCoded(secretKey, chainCode) {
11
+ return {
12
+ chainCode,
13
+ publicKey: (0, index_js_2.secp256k1PairFromSeed)(secretKey).publicKey,
14
+ secretKey
15
+ };
16
+ }
17
+ function deriveChild(hd, index) {
18
+ const indexBuffer = (0, util_1.bnToU8a)(index, bn_js_1.BN_BE_32_OPTS);
19
+ const data = index >= validatePath_js_1.HARDENED
20
+ ? (0, util_1.u8aConcat)(new Uint8Array(1), hd.secretKey, indexBuffer)
21
+ : (0, util_1.u8aConcat)(hd.publicKey, indexBuffer);
22
+ try {
23
+ const I = (0, index_js_1.hmacShaAsU8a)(hd.chainCode, data, 512);
24
+ return createCoded((0, index_js_2.secp256k1PrivateKeyTweakAdd)(hd.secretKey, I.slice(0, 32)), I.slice(32));
25
+ }
26
+ catch {
27
+ // In case parse256(IL) >= n or ki == 0, proceed with the next value for i
28
+ return deriveChild(hd, index + 1);
29
+ }
30
+ }
31
+ function hdEthereum(seed, path = '') {
32
+ const I = (0, index_js_1.hmacShaAsU8a)(MASTER_SECRET, seed, 512);
33
+ let hd = createCoded(I.slice(0, 32), I.slice(32));
34
+ if (!path || path === 'm' || path === 'M' || path === "m'" || path === "M'") {
35
+ return hd;
36
+ }
37
+ if (!(0, validatePath_js_1.hdValidatePath)(path)) {
38
+ throw new Error('Invalid derivation path');
39
+ }
40
+ const parts = path.split('/').slice(1);
41
+ for (const p of parts) {
42
+ hd = deriveChild(hd, parseInt(p, 10) + ((p.length > 1) && p.endsWith("'")
43
+ ? validatePath_js_1.HARDENED
44
+ : 0));
45
+ }
46
+ return hd;
47
+ }
@@ -1,6 +1,3 @@
1
- // Copyright 2017-2025 @polkadot/util-crypto authors & contributors
2
- // SPDX-License-Identifier: Apache-2.0
3
-
4
1
  export { hdEthereum } from './ethereum/index.js';
5
2
  export { hdLedger } from './ledger/index.js';
6
3
  export { hdValidatePath } from './validatePath.js';
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.hdValidatePath = exports.hdLedger = exports.hdEthereum = void 0;
4
+ var index_js_1 = require("./ethereum/index.js");
5
+ Object.defineProperty(exports, "hdEthereum", { enumerable: true, get: function () { return index_js_1.hdEthereum; } });
6
+ var index_js_2 = require("./ledger/index.js");
7
+ Object.defineProperty(exports, "hdLedger", { enumerable: true, get: function () { return index_js_2.hdLedger; } });
8
+ var validatePath_js_1 = require("./validatePath.js");
9
+ Object.defineProperty(exports, "hdValidatePath", { enumerable: true, get: function () { return validatePath_js_1.hdValidatePath; } });
@@ -0,0 +1 @@
1
+ export declare function ledgerDerivePrivate(xprv: Uint8Array, index: number): Uint8Array;
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ledgerDerivePrivate = ledgerDerivePrivate;
4
+ const util_1 = require("@pezkuwi/util");
5
+ const bn_js_1 = require("../../bn.js");
6
+ const index_js_1 = require("../../hmac/index.js");
7
+ function ledgerDerivePrivate(xprv, index) {
8
+ const kl = xprv.subarray(0, 32);
9
+ const kr = xprv.subarray(32, 64);
10
+ const cc = xprv.subarray(64, 96);
11
+ const data = (0, util_1.u8aConcat)([0], kl, kr, (0, util_1.bnToU8a)(index, bn_js_1.BN_LE_32_OPTS));
12
+ const z = (0, index_js_1.hmacShaAsU8a)(cc, data, 512);
13
+ data[0] = 0x01;
14
+ return (0, util_1.u8aConcat)((0, util_1.bnToU8a)((0, util_1.u8aToBn)(kl, bn_js_1.BN_LE_OPTS).iadd((0, util_1.u8aToBn)(z.subarray(0, 28), bn_js_1.BN_LE_OPTS).imul(util_1.BN_EIGHT)), bn_js_1.BN_LE_512_OPTS).subarray(0, 32), (0, util_1.bnToU8a)((0, util_1.u8aToBn)(kr, bn_js_1.BN_LE_OPTS).iadd((0, util_1.u8aToBn)(z.subarray(32, 64), bn_js_1.BN_LE_OPTS)), bn_js_1.BN_LE_512_OPTS).subarray(0, 32), (0, index_js_1.hmacShaAsU8a)(cc, data, 512).subarray(32, 64));
15
+ }
@@ -0,0 +1,2 @@
1
+ import type { Keypair } from '../../types.js';
2
+ export declare function hdLedger(_mnemonic: string, path: string): Keypair;
@@ -0,0 +1,33 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.hdLedger = hdLedger;
4
+ const index_js_1 = require("../../ed25519/index.js");
5
+ const index_js_2 = require("../../mnemonic/index.js");
6
+ const validatePath_js_1 = require("../validatePath.js");
7
+ const derivePrivate_js_1 = require("./derivePrivate.js");
8
+ const master_js_1 = require("./master.js");
9
+ function hdLedger(_mnemonic, path) {
10
+ const words = _mnemonic
11
+ .split(' ')
12
+ .map((s) => s.trim())
13
+ .filter((s) => s);
14
+ if (![12, 24, 25].includes(words.length)) {
15
+ throw new Error('Expected a mnemonic with 24 words (or 25 including a password)');
16
+ }
17
+ const [mnemonic, password] = words.length === 25
18
+ ? [words.slice(0, 24).join(' '), words[24]]
19
+ : [words.join(' '), ''];
20
+ if (!(0, index_js_2.mnemonicValidate)(mnemonic)) {
21
+ throw new Error('Invalid mnemonic passed to ledger derivation');
22
+ }
23
+ else if (!(0, validatePath_js_1.hdValidatePath)(path)) {
24
+ throw new Error('Invalid derivation path');
25
+ }
26
+ const parts = path.split('/').slice(1);
27
+ let seed = (0, master_js_1.ledgerMaster)(mnemonic, password);
28
+ for (const p of parts) {
29
+ const n = parseInt(p.replace(/'$/, ''), 10);
30
+ seed = (0, derivePrivate_js_1.ledgerDerivePrivate)(seed, (n < validatePath_js_1.HARDENED) ? (n + validatePath_js_1.HARDENED) : n);
31
+ }
32
+ return (0, index_js_1.ed25519PairFromSeed)(seed.slice(0, 32));
33
+ }
@@ -0,0 +1 @@
1
+ export declare function ledgerMaster(mnemonic: string, password?: string): Uint8Array;
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ledgerMaster = ledgerMaster;
4
+ const util_1 = require("@pezkuwi/util");
5
+ const index_js_1 = require("../../hmac/index.js");
6
+ const bip39_js_1 = require("../../mnemonic/bip39.js");
7
+ const ED25519_CRYPTO = 'ed25519 seed';
8
+ function ledgerMaster(mnemonic, password) {
9
+ const seed = (0, bip39_js_1.mnemonicToSeedSync)(mnemonic, password);
10
+ const chainCode = (0, index_js_1.hmacShaAsU8a)(ED25519_CRYPTO, new Uint8Array([1, ...seed]), 256);
11
+ let priv;
12
+ while (!priv || (priv[31] & 0b0010_0000)) {
13
+ priv = (0, index_js_1.hmacShaAsU8a)(ED25519_CRYPTO, priv || seed, 512);
14
+ }
15
+ priv[0] &= 0b1111_1000;
16
+ priv[31] &= 0b0111_1111;
17
+ priv[31] |= 0b0100_0000;
18
+ return (0, util_1.u8aConcat)(priv, chainCode);
19
+ }
@@ -0,0 +1,2 @@
1
+ export declare const HARDENED = 2147483648;
2
+ export declare function hdValidatePath(path: string): boolean;
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.HARDENED = void 0;
4
+ exports.hdValidatePath = hdValidatePath;
5
+ exports.HARDENED = 0x80000000;
6
+ function hdValidatePath(path) {
7
+ if (!path.startsWith('m/')) {
8
+ return false;
9
+ }
10
+ const parts = path.split('/').slice(1);
11
+ for (const p of parts) {
12
+ const n = /^\d+'?$/.test(p)
13
+ ? parseInt(p.replace(/'$/, ''), 10)
14
+ : Number.NaN;
15
+ if (isNaN(n) || (n >= exports.HARDENED) || (n < 0)) {
16
+ return false;
17
+ }
18
+ }
19
+ return true;
20
+ }
@@ -0,0 +1,12 @@
1
+ import type { HexString } from '@polkadot/util/types';
2
+ export type { HexString } from '@polkadot/util/types';
3
+ interface DualHash {
4
+ 256: (u8a: Uint8Array) => Uint8Array;
5
+ 512: (u8a: Uint8Array) => Uint8Array;
6
+ }
7
+ /** @internal */
8
+ export declare function createAsHex<T extends (...args: never[]) => Uint8Array>(fn: T): (...args: Parameters<T>) => HexString;
9
+ /** @internal */
10
+ export declare function createBitHasher(bitLength: 256 | 512, fn: (data: string | Uint8Array, bitLength: 256 | 512, onlyJs?: boolean) => Uint8Array): (data: string | Uint8Array, onlyJs?: boolean) => Uint8Array;
11
+ /** @internal */
12
+ export declare function createDualHasher(wa: DualHash, js: DualHash): (value: string | Uint8Array, bitLength?: 256 | 512, onlyJs?: boolean) => Uint8Array;
package/cjs/helpers.js ADDED
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createAsHex = createAsHex;
4
+ exports.createBitHasher = createBitHasher;
5
+ exports.createDualHasher = createDualHasher;
6
+ const util_1 = require("@pezkuwi/util");
7
+ const wasm_crypto_1 = require("@pezkuwi/wasm-crypto");
8
+ /** @internal */
9
+ function createAsHex(fn) {
10
+ return (...args) => (0, util_1.u8aToHex)(fn(...args));
11
+ }
12
+ /** @internal */
13
+ function createBitHasher(bitLength, fn) {
14
+ return (data, onlyJs) => fn(data, bitLength, onlyJs);
15
+ }
16
+ /** @internal */
17
+ function createDualHasher(wa, js) {
18
+ return (value, bitLength = 256, onlyJs) => {
19
+ const u8a = (0, util_1.u8aToU8a)(value);
20
+ return !util_1.hasBigInt || (!onlyJs && (0, wasm_crypto_1.isReady)())
21
+ ? wa[bitLength](u8a)
22
+ : js[bitLength](u8a);
23
+ };
24
+ }
@@ -0,0 +1 @@
1
+ export { hmacSha256AsU8a, hmacSha512AsU8a, hmacShaAsU8a } from './shaAsU8a.js';
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.hmacShaAsU8a = exports.hmacSha512AsU8a = exports.hmacSha256AsU8a = void 0;
4
+ var shaAsU8a_js_1 = require("./shaAsU8a.js");
5
+ Object.defineProperty(exports, "hmacSha256AsU8a", { enumerable: true, get: function () { return shaAsU8a_js_1.hmacSha256AsU8a; } });
6
+ Object.defineProperty(exports, "hmacSha512AsU8a", { enumerable: true, get: function () { return shaAsU8a_js_1.hmacSha512AsU8a; } });
7
+ Object.defineProperty(exports, "hmacShaAsU8a", { enumerable: true, get: function () { return shaAsU8a_js_1.hmacShaAsU8a; } });
@@ -0,0 +1,15 @@
1
+ /**
2
+ * @name hmacShaAsU8a
3
+ * @description creates a Hmac Sha (256/512) Uint8Array from the key & data
4
+ */
5
+ export declare function hmacShaAsU8a(key: Uint8Array | string, data: Uint8Array, bitLength?: 256 | 512, onlyJs?: boolean): Uint8Array;
6
+ /**
7
+ * @name hmacSha256AsU8a
8
+ * @description creates a Hmac Sha256 Uint8Array from the key & data
9
+ */
10
+ export declare const hmacSha256AsU8a: (key: Uint8Array | string, data: Uint8Array, onlyJs?: boolean) => Uint8Array;
11
+ /**
12
+ * @name hmacSha512AsU8a
13
+ * @description creates a Hmac Sha512 Uint8Array from the key & data
14
+ */
15
+ export declare const hmacSha512AsU8a: (key: Uint8Array | string, data: Uint8Array, onlyJs?: boolean) => Uint8Array;