@bitgo/account-lib 2.20.0-rc.2 → 2.20.0-rc.22

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 (481) hide show
  1. package/CHANGELOG.md +195 -0
  2. package/dist/resources/README.md +8 -2
  3. package/dist/resources/trx/protobuf/tron.js +5 -1
  4. package/dist/src/coin/avaxc/index.js +3 -3
  5. package/dist/src/coin/avaxc/keyPair.d.ts +1 -2
  6. package/dist/src/coin/avaxc/keyPair.d.ts.map +1 -1
  7. package/dist/src/coin/avaxc/keyPair.js +25 -44
  8. package/dist/src/coin/avaxc/resources.js +3 -3
  9. package/dist/src/coin/avaxc/transactionBuilder.d.ts.map +1 -1
  10. package/dist/src/coin/avaxc/transactionBuilder.js +22 -41
  11. package/dist/src/coin/avaxc/transferBuilder.js +8 -28
  12. package/dist/src/coin/avaxc/utils.js +14 -54
  13. package/dist/src/coin/celo/index.js +3 -3
  14. package/dist/src/coin/celo/resources.js +3 -3
  15. package/dist/src/coin/celo/stakingBuilder.d.ts +1 -1
  16. package/dist/src/coin/celo/stakingBuilder.d.ts.map +1 -1
  17. package/dist/src/coin/celo/stakingBuilder.js +102 -104
  18. package/dist/src/coin/celo/stakingCall.js +8 -26
  19. package/dist/src/coin/celo/stakingUtils.d.ts +1 -1
  20. package/dist/src/coin/celo/stakingUtils.d.ts.map +1 -1
  21. package/dist/src/coin/celo/stakingUtils.js +33 -34
  22. package/dist/src/coin/celo/transaction.js +10 -30
  23. package/dist/src/coin/celo/transactionBuilder.d.ts +1 -1
  24. package/dist/src/coin/celo/transactionBuilder.d.ts.map +1 -1
  25. package/dist/src/coin/celo/transactionBuilder.js +96 -115
  26. package/dist/src/coin/celo/transferBuilder.js +8 -28
  27. package/dist/src/coin/celo/types.js +71 -125
  28. package/dist/src/coin/celo/utils.js +25 -25
  29. package/dist/src/coin/dot/addressInitializationBuilder.d.ts +1 -2
  30. package/dist/src/coin/dot/addressInitializationBuilder.d.ts.map +1 -1
  31. package/dist/src/coin/dot/addressInitializationBuilder.js +60 -83
  32. package/dist/src/coin/dot/batchTransactionBuilder.d.ts +1 -1
  33. package/dist/src/coin/dot/batchTransactionBuilder.d.ts.map +1 -1
  34. package/dist/src/coin/dot/batchTransactionBuilder.js +55 -78
  35. package/dist/src/coin/dot/claimBuilder.d.ts +1 -2
  36. package/dist/src/coin/dot/claimBuilder.d.ts.map +1 -1
  37. package/dist/src/coin/dot/claimBuilder.js +46 -68
  38. package/dist/src/coin/dot/errors.d.ts +1 -1
  39. package/dist/src/coin/dot/errors.d.ts.map +1 -1
  40. package/dist/src/coin/dot/errors.js +12 -33
  41. package/dist/src/coin/dot/iface.d.ts +1 -2
  42. package/dist/src/coin/dot/iface.d.ts.map +1 -1
  43. package/dist/src/coin/dot/iface.js +1 -1
  44. package/dist/src/coin/dot/index.js +3 -3
  45. package/dist/src/coin/dot/keyPair.d.ts +1 -2
  46. package/dist/src/coin/dot/keyPair.d.ts.map +1 -1
  47. package/dist/src/coin/dot/keyPair.js +34 -52
  48. package/dist/src/coin/dot/singletonRegistry.js +6 -9
  49. package/dist/src/coin/dot/stakingBuilder.d.ts +1 -2
  50. package/dist/src/coin/dot/stakingBuilder.d.ts.map +1 -1
  51. package/dist/src/coin/dot/stakingBuilder.js +49 -71
  52. package/dist/src/coin/dot/transaction.d.ts +1 -2
  53. package/dist/src/coin/dot/transaction.d.ts.map +1 -1
  54. package/dist/src/coin/dot/transaction.js +146 -162
  55. package/dist/src/coin/dot/transactionBuilder.d.ts +2 -3
  56. package/dist/src/coin/dot/transactionBuilder.d.ts.map +1 -1
  57. package/dist/src/coin/dot/transactionBuilder.js +132 -204
  58. package/dist/src/coin/dot/transactionBuilderFactory.d.ts +1 -1
  59. package/dist/src/coin/dot/transactionBuilderFactory.d.ts.map +1 -1
  60. package/dist/src/coin/dot/transactionBuilderFactory.js +46 -65
  61. package/dist/src/coin/dot/transferBuilder.d.ts +1 -2
  62. package/dist/src/coin/dot/transferBuilder.d.ts.map +1 -1
  63. package/dist/src/coin/dot/transferBuilder.js +62 -85
  64. package/dist/src/coin/dot/txnSchema.js +17 -15
  65. package/dist/src/coin/dot/unnominateBuilder.d.ts +1 -1
  66. package/dist/src/coin/dot/unnominateBuilder.d.ts.map +1 -1
  67. package/dist/src/coin/dot/unnominateBuilder.js +24 -46
  68. package/dist/src/coin/dot/unstakeBuilder.d.ts +1 -1
  69. package/dist/src/coin/dot/unstakeBuilder.d.ts.map +1 -1
  70. package/dist/src/coin/dot/unstakeBuilder.js +38 -60
  71. package/dist/src/coin/dot/utils.d.ts +1 -2
  72. package/dist/src/coin/dot/utils.d.ts.map +1 -1
  73. package/dist/src/coin/dot/utils.js +97 -101
  74. package/dist/src/coin/dot/withdrawUnstakedBuilder.d.ts +1 -1
  75. package/dist/src/coin/dot/withdrawUnstakedBuilder.d.ts.map +1 -1
  76. package/dist/src/coin/dot/withdrawUnstakedBuilder.js +38 -60
  77. package/dist/src/coin/etc/index.js +3 -3
  78. package/dist/src/coin/etc/resources.js +3 -3
  79. package/dist/src/coin/etc/transactionBuilder.d.ts.map +1 -1
  80. package/dist/src/coin/etc/transactionBuilder.js +22 -41
  81. package/dist/src/coin/etc/transferBuilder.js +8 -28
  82. package/dist/src/coin/etc/utils.js +10 -50
  83. package/dist/src/coin/eth/contractCall.js +8 -9
  84. package/dist/src/coin/eth/iface.d.ts +1 -1
  85. package/dist/src/coin/eth/iface.d.ts.map +1 -1
  86. package/dist/src/coin/eth/iface.js +1 -1
  87. package/dist/src/coin/eth/index.js +3 -3
  88. package/dist/src/coin/eth/keyPair.d.ts +1 -2
  89. package/dist/src/coin/eth/keyPair.d.ts.map +1 -1
  90. package/dist/src/coin/eth/keyPair.js +25 -44
  91. package/dist/src/coin/eth/transaction.d.ts +1 -2
  92. package/dist/src/coin/eth/transaction.d.ts.map +1 -1
  93. package/dist/src/coin/eth/transaction.js +48 -114
  94. package/dist/src/coin/eth/transactionBuilder.d.ts +1 -2
  95. package/dist/src/coin/eth/transactionBuilder.d.ts.map +1 -1
  96. package/dist/src/coin/eth/transactionBuilder.js +232 -303
  97. package/dist/src/coin/eth/transferBuilder/baseNFTTransferBuilder.js +37 -38
  98. package/dist/src/coin/eth/transferBuilder/transferBuilderERC1155.js +36 -53
  99. package/dist/src/coin/eth/transferBuilder/transferBuilderERC721.js +32 -49
  100. package/dist/src/coin/eth/transferBuilder.js +58 -59
  101. package/dist/src/coin/eth/types.js +52 -56
  102. package/dist/src/coin/eth/utils.d.ts +1 -1
  103. package/dist/src/coin/eth/utils.d.ts.map +1 -1
  104. package/dist/src/coin/eth/utils.js +100 -147
  105. package/dist/src/coin/eth/walletUtil.d.ts +2 -0
  106. package/dist/src/coin/eth/walletUtil.d.ts.map +1 -1
  107. package/dist/src/coin/eth/walletUtil.js +4 -2
  108. package/dist/src/coin/eth2/keyPair.d.ts +1 -2
  109. package/dist/src/coin/eth2/keyPair.d.ts.map +1 -1
  110. package/dist/src/coin/eth2/keyPair.js +19 -37
  111. package/dist/src/coin/hbar/index.js +2 -2
  112. package/dist/src/coin/hbar/keyPair.d.ts +1 -2
  113. package/dist/src/coin/hbar/keyPair.d.ts.map +1 -1
  114. package/dist/src/coin/hbar/keyPair.js +30 -49
  115. package/dist/src/coin/hbar/transaction.d.ts +1 -2
  116. package/dist/src/coin/hbar/transaction.d.ts.map +1 -1
  117. package/dist/src/coin/hbar/transaction.js +77 -146
  118. package/dist/src/coin/hbar/transactionBuilder.d.ts +1 -2
  119. package/dist/src/coin/hbar/transactionBuilder.d.ts.map +1 -1
  120. package/dist/src/coin/hbar/transactionBuilder.js +110 -193
  121. package/dist/src/coin/hbar/transactionBuilderFactory.d.ts +1 -1
  122. package/dist/src/coin/hbar/transactionBuilderFactory.d.ts.map +1 -1
  123. package/dist/src/coin/hbar/transactionBuilderFactory.js +27 -45
  124. package/dist/src/coin/hbar/transferBuilder.d.ts +1 -1
  125. package/dist/src/coin/hbar/transferBuilder.d.ts.map +1 -1
  126. package/dist/src/coin/hbar/transferBuilder.js +49 -113
  127. package/dist/src/coin/hbar/utils.d.ts +2 -15
  128. package/dist/src/coin/hbar/utils.d.ts.map +1 -1
  129. package/dist/src/coin/hbar/utils.js +38 -57
  130. package/dist/src/coin/hbar/walletInitializationBuilder.d.ts.map +1 -1
  131. package/dist/src/coin/hbar/walletInitializationBuilder.js +42 -107
  132. package/dist/src/coin/near/contractCallWrapper.js +46 -65
  133. package/dist/src/coin/near/errors.d.ts +1 -1
  134. package/dist/src/coin/near/errors.d.ts.map +1 -1
  135. package/dist/src/coin/near/errors.js +7 -25
  136. package/dist/src/coin/near/iface.d.ts +1 -2
  137. package/dist/src/coin/near/iface.d.ts.map +1 -1
  138. package/dist/src/coin/near/iface.js +1 -1
  139. package/dist/src/coin/near/index.d.ts +3 -0
  140. package/dist/src/coin/near/index.d.ts.map +1 -1
  141. package/dist/src/coin/near/index.js +9 -3
  142. package/dist/src/coin/near/keyPair.d.ts +1 -2
  143. package/dist/src/coin/near/keyPair.d.ts.map +1 -1
  144. package/dist/src/coin/near/keyPair.js +23 -40
  145. package/dist/src/coin/near/stakingActivateBuilder.d.ts +1 -1
  146. package/dist/src/coin/near/stakingActivateBuilder.d.ts.map +1 -1
  147. package/dist/src/coin/near/stakingActivateBuilder.js +36 -105
  148. package/dist/src/coin/near/stakingDeactivateBuilder.d.ts +1 -1
  149. package/dist/src/coin/near/stakingDeactivateBuilder.d.ts.map +1 -1
  150. package/dist/src/coin/near/stakingDeactivateBuilder.js +36 -105
  151. package/dist/src/coin/near/stakingWithdrawBuilder.d.ts +1 -1
  152. package/dist/src/coin/near/stakingWithdrawBuilder.d.ts.map +1 -1
  153. package/dist/src/coin/near/stakingWithdrawBuilder.js +36 -105
  154. package/dist/src/coin/near/transaction.d.ts +1 -2
  155. package/dist/src/coin/near/transaction.d.ts.map +1 -1
  156. package/dist/src/coin/near/transaction.js +125 -154
  157. package/dist/src/coin/near/transactionBuilder.d.ts +1 -2
  158. package/dist/src/coin/near/transactionBuilder.d.ts.map +1 -1
  159. package/dist/src/coin/near/transactionBuilder.js +81 -144
  160. package/dist/src/coin/near/transactionBuilderFactory.d.ts +1 -1
  161. package/dist/src/coin/near/transactionBuilderFactory.d.ts.map +1 -1
  162. package/dist/src/coin/near/transactionBuilderFactory.js +33 -51
  163. package/dist/src/coin/near/transferBuilder.d.ts +1 -1
  164. package/dist/src/coin/near/transferBuilder.d.ts.map +1 -1
  165. package/dist/src/coin/near/transferBuilder.js +27 -91
  166. package/dist/src/coin/near/utils.d.ts +1 -1
  167. package/dist/src/coin/near/utils.d.ts.map +1 -1
  168. package/dist/src/coin/near/utils.js +35 -45
  169. package/dist/src/coin/near/walletInitializationBuilder.d.ts +1 -1
  170. package/dist/src/coin/near/walletInitializationBuilder.d.ts.map +1 -1
  171. package/dist/src/coin/near/walletInitializationBuilder.js +13 -70
  172. package/dist/src/coin/polygon/index.d.ts +8 -0
  173. package/dist/src/coin/polygon/index.d.ts.map +1 -0
  174. package/dist/src/coin/polygon/index.js +35 -0
  175. package/dist/src/coin/polygon/resources.d.ts +10 -0
  176. package/dist/src/coin/polygon/resources.d.ts.map +1 -0
  177. package/dist/src/coin/polygon/resources.js +25 -0
  178. package/dist/src/coin/polygon/transactionBuilder.d.ts +17 -0
  179. package/dist/src/coin/polygon/transactionBuilder.d.ts.map +1 -0
  180. package/dist/src/coin/polygon/transactionBuilder.js +44 -0
  181. package/dist/src/coin/polygon/transferBuilder.d.ts +19 -0
  182. package/dist/src/coin/polygon/transferBuilder.d.ts.map +1 -0
  183. package/dist/src/coin/polygon/transferBuilder.js +27 -0
  184. package/dist/src/coin/polygon/utils.d.ts +18 -0
  185. package/dist/src/coin/polygon/utils.d.ts.map +1 -0
  186. package/dist/src/coin/polygon/utils.js +42 -0
  187. package/dist/src/coin/polygon/walletUtil.d.ts +48 -0
  188. package/dist/src/coin/polygon/walletUtil.d.ts.map +1 -0
  189. package/dist/src/coin/polygon/walletUtil.js +632 -0
  190. package/dist/src/coin/rbtc/index.js +3 -3
  191. package/dist/src/coin/rbtc/resources.js +3 -3
  192. package/dist/src/coin/rbtc/transactionBuilder.d.ts.map +1 -1
  193. package/dist/src/coin/rbtc/transactionBuilder.js +21 -40
  194. package/dist/src/coin/rbtc/transferBuilder.js +8 -28
  195. package/dist/src/coin/rbtc/utils.js +10 -50
  196. package/dist/src/coin/sol/ataInitializationBuilder.d.ts +1 -1
  197. package/dist/src/coin/sol/ataInitializationBuilder.d.ts.map +1 -1
  198. package/dist/src/coin/sol/ataInitializationBuilder.js +52 -123
  199. package/dist/src/coin/sol/ataInitializationTransaction.d.ts.map +1 -1
  200. package/dist/src/coin/sol/ataInitializationTransaction.js +34 -57
  201. package/dist/src/coin/sol/iface.d.ts +1 -1
  202. package/dist/src/coin/sol/iface.d.ts.map +1 -1
  203. package/dist/src/coin/sol/iface.js +1 -1
  204. package/dist/src/coin/sol/index.js +3 -3
  205. package/dist/src/coin/sol/instructionParamsFactory.d.ts +1 -1
  206. package/dist/src/coin/sol/instructionParamsFactory.d.ts.map +1 -1
  207. package/dist/src/coin/sol/instructionParamsFactory.js +62 -67
  208. package/dist/src/coin/sol/keyPair.d.ts +1 -2
  209. package/dist/src/coin/sol/keyPair.d.ts.map +1 -1
  210. package/dist/src/coin/sol/keyPair.js +24 -42
  211. package/dist/src/coin/sol/solInstructionFactory.js +33 -33
  212. package/dist/src/coin/sol/stakingActivateBuilder.d.ts +1 -1
  213. package/dist/src/coin/sol/stakingActivateBuilder.d.ts.map +1 -1
  214. package/dist/src/coin/sol/stakingActivateBuilder.js +45 -113
  215. package/dist/src/coin/sol/stakingDeactivateBuilder.d.ts +1 -1
  216. package/dist/src/coin/sol/stakingDeactivateBuilder.d.ts.map +1 -1
  217. package/dist/src/coin/sol/stakingDeactivateBuilder.js +36 -104
  218. package/dist/src/coin/sol/stakingWithdrawBuilder.d.ts +1 -1
  219. package/dist/src/coin/sol/stakingWithdrawBuilder.d.ts.map +1 -1
  220. package/dist/src/coin/sol/stakingWithdrawBuilder.js +41 -109
  221. package/dist/src/coin/sol/tokenEncodeDecode.js +46 -75
  222. package/dist/src/coin/sol/tokenTransferBuilder.d.ts +1 -1
  223. package/dist/src/coin/sol/tokenTransferBuilder.d.ts.map +1 -1
  224. package/dist/src/coin/sol/tokenTransferBuilder.js +42 -115
  225. package/dist/src/coin/sol/transaction.d.ts +1 -2
  226. package/dist/src/coin/sol/transaction.d.ts.map +1 -1
  227. package/dist/src/coin/sol/transaction.js +130 -221
  228. package/dist/src/coin/sol/transactionBuilder.d.ts +1 -2
  229. package/dist/src/coin/sol/transactionBuilder.d.ts.map +1 -1
  230. package/dist/src/coin/sol/transactionBuilder.js +104 -171
  231. package/dist/src/coin/sol/transactionBuilderFactory.d.ts +1 -1
  232. package/dist/src/coin/sol/transactionBuilderFactory.d.ts.map +1 -1
  233. package/dist/src/coin/sol/transactionBuilderFactory.js +46 -64
  234. package/dist/src/coin/sol/transferBuilder.d.ts +1 -1
  235. package/dist/src/coin/sol/transferBuilder.d.ts.map +1 -1
  236. package/dist/src/coin/sol/transferBuilder.js +37 -108
  237. package/dist/src/coin/sol/utils.d.ts +1 -1
  238. package/dist/src/coin/sol/utils.d.ts.map +1 -1
  239. package/dist/src/coin/sol/utils.js +49 -117
  240. package/dist/src/coin/sol/walletInitializationBuilder.d.ts +1 -1
  241. package/dist/src/coin/sol/walletInitializationBuilder.d.ts.map +1 -1
  242. package/dist/src/coin/sol/walletInitializationBuilder.js +39 -107
  243. package/dist/src/coin/stx/abstractContractBuilder.d.ts.map +1 -1
  244. package/dist/src/coin/stx/abstractContractBuilder.js +34 -104
  245. package/dist/src/coin/stx/contractBuilder.js +38 -57
  246. package/dist/src/coin/stx/index.js +2 -2
  247. package/dist/src/coin/stx/keyPair.d.ts +1 -2
  248. package/dist/src/coin/stx/keyPair.d.ts.map +1 -1
  249. package/dist/src/coin/stx/keyPair.js +39 -62
  250. package/dist/src/coin/stx/sendmanyBuilder.js +43 -108
  251. package/dist/src/coin/stx/transaction.d.ts +1 -2
  252. package/dist/src/coin/stx/transaction.d.ts.map +1 -1
  253. package/dist/src/coin/stx/transaction.js +102 -183
  254. package/dist/src/coin/stx/transactionBuilder.d.ts +1 -2
  255. package/dist/src/coin/stx/transactionBuilder.d.ts.map +1 -1
  256. package/dist/src/coin/stx/transactionBuilder.js +121 -218
  257. package/dist/src/coin/stx/transactionBuilderFactory.d.ts +1 -1
  258. package/dist/src/coin/stx/transactionBuilderFactory.d.ts.map +1 -1
  259. package/dist/src/coin/stx/transactionBuilderFactory.js +36 -54
  260. package/dist/src/coin/stx/transferBuilder.d.ts.map +1 -1
  261. package/dist/src/coin/stx/transferBuilder.js +41 -111
  262. package/dist/src/coin/stx/utils.d.ts.map +1 -1
  263. package/dist/src/coin/stx/utils.js +58 -65
  264. package/dist/src/coin/trx/address.d.ts +1 -1
  265. package/dist/src/coin/trx/address.d.ts.map +1 -1
  266. package/dist/src/coin/trx/address.js +3 -6
  267. package/dist/src/coin/trx/contractCallBuilder.d.ts +1 -1
  268. package/dist/src/coin/trx/contractCallBuilder.d.ts.map +1 -1
  269. package/dist/src/coin/trx/contractCallBuilder.js +100 -160
  270. package/dist/src/coin/trx/iface.d.ts +1 -1
  271. package/dist/src/coin/trx/iface.d.ts.map +1 -1
  272. package/dist/src/coin/trx/iface.js +1 -1
  273. package/dist/src/coin/trx/index.js +4 -4
  274. package/dist/src/coin/trx/keyPair.d.ts +1 -3
  275. package/dist/src/coin/trx/keyPair.d.ts.map +1 -1
  276. package/dist/src/coin/trx/keyPair.js +37 -57
  277. package/dist/src/coin/trx/transaction.d.ts +1 -3
  278. package/dist/src/coin/trx/transaction.d.ts.map +1 -1
  279. package/dist/src/coin/trx/transaction.js +84 -124
  280. package/dist/src/coin/trx/transactionBuilder.d.ts +1 -2
  281. package/dist/src/coin/trx/transactionBuilder.d.ts.map +1 -1
  282. package/dist/src/coin/trx/transactionBuilder.js +72 -134
  283. package/dist/src/coin/trx/utils.js +57 -59
  284. package/dist/src/coin/trx/wrappedBuilder.d.ts +1 -2
  285. package/dist/src/coin/trx/wrappedBuilder.d.ts.map +1 -1
  286. package/dist/src/coin/trx/wrappedBuilder.js +43 -101
  287. package/dist/src/coin/xrp/index.js +2 -2
  288. package/dist/src/coin/xrp/keyPair.d.ts +1 -2
  289. package/dist/src/coin/xrp/keyPair.d.ts.map +1 -1
  290. package/dist/src/coin/xrp/keyPair.js +6 -23
  291. package/dist/src/coin/xrp/transaction.d.ts +1 -2
  292. package/dist/src/coin/xrp/transaction.d.ts.map +1 -1
  293. package/dist/src/coin/xrp/transaction.js +13 -34
  294. package/dist/src/coin/xrp/transactionBuilder.d.ts +1 -2
  295. package/dist/src/coin/xrp/transactionBuilder.d.ts.map +1 -1
  296. package/dist/src/coin/xrp/transactionBuilder.js +29 -51
  297. package/dist/src/coin/xrp/transactionBuilderFactory.d.ts +1 -1
  298. package/dist/src/coin/xrp/transactionBuilderFactory.d.ts.map +1 -1
  299. package/dist/src/coin/xrp/transactionBuilderFactory.js +17 -35
  300. package/dist/src/coin/xrp/transferBuilder.d.ts +1 -1
  301. package/dist/src/coin/xrp/transferBuilder.d.ts.map +1 -1
  302. package/dist/src/coin/xrp/transferBuilder.js +16 -73
  303. package/dist/src/coin/xrp/utils.d.ts +1 -1
  304. package/dist/src/coin/xrp/utils.d.ts.map +1 -1
  305. package/dist/src/coin/xrp/utils.js +22 -25
  306. package/dist/src/coin/xrp/walletInitializationBuilder.d.ts +1 -1
  307. package/dist/src/coin/xrp/walletInitializationBuilder.d.ts.map +1 -1
  308. package/dist/src/coin/xrp/walletInitializationBuilder.js +16 -73
  309. package/dist/src/coin/xtz/address.d.ts +1 -1
  310. package/dist/src/coin/xtz/address.d.ts.map +1 -1
  311. package/dist/src/coin/xtz/address.js +3 -6
  312. package/dist/src/coin/xtz/iface.d.ts +1 -1
  313. package/dist/src/coin/xtz/iface.d.ts.map +1 -1
  314. package/dist/src/coin/xtz/iface.js +1 -1
  315. package/dist/src/coin/xtz/index.js +4 -4
  316. package/dist/src/coin/xtz/keyPair.d.ts +1 -2
  317. package/dist/src/coin/xtz/keyPair.d.ts.map +1 -1
  318. package/dist/src/coin/xtz/keyPair.js +39 -59
  319. package/dist/src/coin/xtz/multisigUtils.js +64 -77
  320. package/dist/src/coin/xtz/transaction.d.ts +1 -2
  321. package/dist/src/coin/xtz/transaction.d.ts.map +1 -1
  322. package/dist/src/coin/xtz/transaction.js +175 -345
  323. package/dist/src/coin/xtz/transactionBuilder.d.ts +1 -2
  324. package/dist/src/coin/xtz/transactionBuilder.d.ts.map +1 -1
  325. package/dist/src/coin/xtz/transactionBuilder.js +212 -347
  326. package/dist/src/coin/xtz/transferBuilder.js +25 -28
  327. package/dist/src/coin/xtz/utils.d.ts.map +1 -1
  328. package/dist/src/coin/xtz/utils.js +54 -125
  329. package/dist/src/index.d.ts +7 -11
  330. package/dist/src/index.d.ts.map +1 -1
  331. package/dist/src/index.js +38 -44
  332. package/dist/src/keyPair/index.d.ts +1 -2
  333. package/dist/src/keyPair/index.d.ts.map +1 -1
  334. package/dist/src/keyPair/index.js +9 -9
  335. package/dist/src/utils/index.d.ts +1 -1
  336. package/dist/src/utils/index.d.ts.map +1 -1
  337. package/dist/src/utils/index.js +9 -9
  338. package/dist/tsconfig.tsbuildinfo +21131 -16701
  339. package/package.json +21 -43
  340. package/resources/README.md +8 -2
  341. package/resources/trx/protobuf/tron.js +5 -1
  342. package/dist/browser/bitgo-account-lib.js +0 -2
  343. package/dist/browser/bitgo-account-lib.js.LICENSE.txt +0 -335
  344. package/dist/src/coin/algo/assetTransferBuilder.d.ts +0 -43
  345. package/dist/src/coin/algo/assetTransferBuilder.d.ts.map +0 -1
  346. package/dist/src/coin/algo/assetTransferBuilder.js +0 -127
  347. package/dist/src/coin/algo/errors.d.ts +0 -11
  348. package/dist/src/coin/algo/errors.d.ts.map +0 -1
  349. package/dist/src/coin/algo/errors.js +0 -51
  350. package/dist/src/coin/algo/ifaces.d.ts +0 -46
  351. package/dist/src/coin/algo/ifaces.d.ts.map +0 -1
  352. package/dist/src/coin/algo/ifaces.js +0 -3
  353. package/dist/src/coin/algo/index.d.ts +0 -13
  354. package/dist/src/coin/algo/index.d.ts.map +0 -1
  355. package/dist/src/coin/algo/index.js +0 -47
  356. package/dist/src/coin/algo/keyPair.d.ts +0 -26
  357. package/dist/src/coin/algo/keyPair.d.ts.map +0 -1
  358. package/dist/src/coin/algo/keyPair.js +0 -95
  359. package/dist/src/coin/algo/keyRegistrationBuilder.d.ts +0 -104
  360. package/dist/src/coin/algo/keyRegistrationBuilder.d.ts.map +0 -1
  361. package/dist/src/coin/algo/keyRegistrationBuilder.js +0 -262
  362. package/dist/src/coin/algo/seedEncoding.d.ts +0 -25
  363. package/dist/src/coin/algo/seedEncoding.d.ts.map +0 -1
  364. package/dist/src/coin/algo/seedEncoding.js +0 -100
  365. package/dist/src/coin/algo/transaction.d.ts +0 -76
  366. package/dist/src/coin/algo/transaction.d.ts.map +0 -1
  367. package/dist/src/coin/algo/transaction.js +0 -287
  368. package/dist/src/coin/algo/transactionBuilder.d.ts +0 -205
  369. package/dist/src/coin/algo/transactionBuilder.d.ts.map +0 -1
  370. package/dist/src/coin/algo/transactionBuilder.js +0 -445
  371. package/dist/src/coin/algo/transactionBuilderFactory.d.ts +0 -16
  372. package/dist/src/coin/algo/transactionBuilderFactory.d.ts.map +0 -1
  373. package/dist/src/coin/algo/transactionBuilderFactory.js +0 -70
  374. package/dist/src/coin/algo/transferBuilder.d.ts +0 -41
  375. package/dist/src/coin/algo/transferBuilder.d.ts.map +0 -1
  376. package/dist/src/coin/algo/transferBuilder.js +0 -111
  377. package/dist/src/coin/algo/txnSchema.d.ts +0 -7
  378. package/dist/src/coin/algo/txnSchema.d.ts.map +0 -1
  379. package/dist/src/coin/algo/txnSchema.js +0 -68
  380. package/dist/src/coin/algo/utils.d.ts +0 -249
  381. package/dist/src/coin/algo/utils.d.ts.map +0 -1
  382. package/dist/src/coin/algo/utils.js +0 -544
  383. package/dist/src/coin/baseCoin/baseKeyPair.d.ts +0 -27
  384. package/dist/src/coin/baseCoin/baseKeyPair.d.ts.map +0 -1
  385. package/dist/src/coin/baseCoin/baseKeyPair.js +0 -3
  386. package/dist/src/coin/baseCoin/baseTransaction.d.ts +0 -71
  387. package/dist/src/coin/baseCoin/baseTransaction.d.ts.map +0 -1
  388. package/dist/src/coin/baseCoin/baseTransaction.js +0 -94
  389. package/dist/src/coin/baseCoin/baseTransactionBuilder.d.ts +0 -128
  390. package/dist/src/coin/baseCoin/baseTransactionBuilder.d.ts.map +0 -1
  391. package/dist/src/coin/baseCoin/baseTransactionBuilder.js +0 -179
  392. package/dist/src/coin/baseCoin/baseTransactionBuilderFactory.d.ts +0 -30
  393. package/dist/src/coin/baseCoin/baseTransactionBuilderFactory.d.ts.map +0 -1
  394. package/dist/src/coin/baseCoin/baseTransactionBuilderFactory.js +0 -20
  395. package/dist/src/coin/baseCoin/baseUtils.d.ts +0 -45
  396. package/dist/src/coin/baseCoin/baseUtils.d.ts.map +0 -1
  397. package/dist/src/coin/baseCoin/baseUtils.js +0 -3
  398. package/dist/src/coin/baseCoin/blsKeyPair.d.ts +0 -75
  399. package/dist/src/coin/baseCoin/blsKeyPair.d.ts.map +0 -1
  400. package/dist/src/coin/baseCoin/blsKeyPair.js +0 -232
  401. package/dist/src/coin/baseCoin/ed25519KeyPair.d.ts +0 -50
  402. package/dist/src/coin/baseCoin/ed25519KeyPair.d.ts.map +0 -1
  403. package/dist/src/coin/baseCoin/ed25519KeyPair.js +0 -141
  404. package/dist/src/coin/baseCoin/enum.d.ts +0 -43
  405. package/dist/src/coin/baseCoin/enum.d.ts.map +0 -1
  406. package/dist/src/coin/baseCoin/enum.js +0 -70
  407. package/dist/src/coin/baseCoin/errors.d.ts +0 -65
  408. package/dist/src/coin/baseCoin/errors.d.ts.map +0 -1
  409. package/dist/src/coin/baseCoin/errors.js +0 -156
  410. package/dist/src/coin/baseCoin/iface.d.ts +0 -162
  411. package/dist/src/coin/baseCoin/iface.d.ts.map +0 -1
  412. package/dist/src/coin/baseCoin/iface.js +0 -38
  413. package/dist/src/coin/baseCoin/index.d.ts +0 -12
  414. package/dist/src/coin/baseCoin/index.d.ts.map +0 -1
  415. package/dist/src/coin/baseCoin/index.js +0 -41
  416. package/dist/src/coin/baseCoin/secp256k1ExtendedKeyPair.d.ts +0 -55
  417. package/dist/src/coin/baseCoin/secp256k1ExtendedKeyPair.d.ts.map +0 -1
  418. package/dist/src/coin/baseCoin/secp256k1ExtendedKeyPair.js +0 -124
  419. package/dist/src/coin/cspr/constants.d.ts +0 -19
  420. package/dist/src/coin/cspr/constants.d.ts.map +0 -1
  421. package/dist/src/coin/cspr/constants.js +0 -28
  422. package/dist/src/coin/cspr/delegateBuilder.d.ts +0 -49
  423. package/dist/src/coin/cspr/delegateBuilder.d.ts.map +0 -1
  424. package/dist/src/coin/cspr/delegateBuilder.js +0 -175
  425. package/dist/src/coin/cspr/ifaces.d.ts +0 -69
  426. package/dist/src/coin/cspr/ifaces.d.ts.map +0 -1
  427. package/dist/src/coin/cspr/ifaces.js +0 -3
  428. package/dist/src/coin/cspr/index.d.ts +0 -5
  429. package/dist/src/coin/cspr/index.d.ts.map +0 -1
  430. package/dist/src/coin/cspr/index.js +0 -29
  431. package/dist/src/coin/cspr/keyPair.d.ts +0 -19
  432. package/dist/src/coin/cspr/keyPair.d.ts.map +0 -1
  433. package/dist/src/coin/cspr/keyPair.js +0 -94
  434. package/dist/src/coin/cspr/transaction.d.ts +0 -56
  435. package/dist/src/coin/cspr/transaction.d.ts.map +0 -1
  436. package/dist/src/coin/cspr/transaction.js +0 -251
  437. package/dist/src/coin/cspr/transactionBuilder.d.ts +0 -125
  438. package/dist/src/coin/cspr/transactionBuilder.d.ts.map +0 -1
  439. package/dist/src/coin/cspr/transactionBuilder.js +0 -383
  440. package/dist/src/coin/cspr/transactionBuilderFactory.d.ts +0 -46
  441. package/dist/src/coin/cspr/transactionBuilderFactory.d.ts.map +0 -1
  442. package/dist/src/coin/cspr/transactionBuilderFactory.js +0 -116
  443. package/dist/src/coin/cspr/transferBuilder.d.ts +0 -39
  444. package/dist/src/coin/cspr/transferBuilder.d.ts.map +0 -1
  445. package/dist/src/coin/cspr/transferBuilder.js +0 -169
  446. package/dist/src/coin/cspr/undelegateBuilder.d.ts +0 -49
  447. package/dist/src/coin/cspr/undelegateBuilder.d.ts.map +0 -1
  448. package/dist/src/coin/cspr/undelegateBuilder.js +0 -175
  449. package/dist/src/coin/cspr/utils.d.ts +0 -189
  450. package/dist/src/coin/cspr/utils.d.ts.map +0 -1
  451. package/dist/src/coin/cspr/utils.js +0 -483
  452. package/dist/src/coin/cspr/walletInitializationBuilder.d.ts +0 -27
  453. package/dist/src/coin/cspr/walletInitializationBuilder.d.ts.map +0 -1
  454. package/dist/src/coin/cspr/walletInitializationBuilder.js +0 -160
  455. package/dist/src/mpc/curves/baseCurve.d.ts +0 -18
  456. package/dist/src/mpc/curves/baseCurve.d.ts.map +0 -1
  457. package/dist/src/mpc/curves/baseCurve.js +0 -6
  458. package/dist/src/mpc/curves/ed25519.d.ts +0 -17
  459. package/dist/src/mpc/curves/ed25519.d.ts.map +0 -1
  460. package/dist/src/mpc/curves/ed25519.js +0 -96
  461. package/dist/src/mpc/curves/index.d.ts +0 -5
  462. package/dist/src/mpc/curves/index.d.ts.map +0 -1
  463. package/dist/src/mpc/curves/index.js +0 -6
  464. package/dist/src/mpc/hdTree.d.ts +0 -24
  465. package/dist/src/mpc/hdTree.d.ts.map +0 -1
  466. package/dist/src/mpc/hdTree.js +0 -143
  467. package/dist/src/mpc/shamir.d.ts +0 -26
  468. package/dist/src/mpc/shamir.d.ts.map +0 -1
  469. package/dist/src/mpc/shamir.js +0 -87
  470. package/dist/src/mpc/tss.d.ts +0 -98
  471. package/dist/src/mpc/tss.d.ts.map +0 -1
  472. package/dist/src/mpc/tss.js +0 -346
  473. package/dist/src/mpc/util.d.ts +0 -7
  474. package/dist/src/mpc/util.d.ts.map +0 -1
  475. package/dist/src/mpc/util.js +0 -38
  476. package/dist/src/utils/crypto.d.ts +0 -99
  477. package/dist/src/utils/crypto.d.ts.map +0 -1
  478. package/dist/src/utils/crypto.js +0 -260
  479. package/dist/src/utils/ed25519KeyDeriver.d.ts +0 -49
  480. package/dist/src/utils/ed25519KeyDeriver.d.ts.map +0 -1
  481. package/dist/src/utils/ed25519KeyDeriver.js +0 -92
@@ -1,38 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.clamp = exports.bigIntToBufferBE = exports.bigIntFromBufferBE = exports.bigIntToBufferLE = exports.bigIntFromBufferLE = void 0;
4
- function bigIntFromBufferLE(buf) {
5
- return BigInt('0x' + Buffer.from(buf).reverse().toString('hex'));
6
- }
7
- exports.bigIntFromBufferLE = bigIntFromBufferLE;
8
- function bigIntToBufferLE(n, bytes) {
9
- var v = n.toString(16);
10
- v = '0'.slice(0, v.length % 2) + v;
11
- var buf = Buffer.from(v, 'hex').reverse();
12
- if (bytes && buf.length < bytes) {
13
- return Buffer.concat([buf, Buffer.alloc(bytes - buf.length)]);
14
- }
15
- return buf;
16
- }
17
- exports.bigIntToBufferLE = bigIntToBufferLE;
18
- function bigIntFromBufferBE(buf) {
19
- return BigInt('0x' + buf.toString('hex'));
20
- }
21
- exports.bigIntFromBufferBE = bigIntFromBufferBE;
22
- function bigIntToBufferBE(n, bytes) {
23
- var v = n.toString(16);
24
- v = '0'.slice(0, v.length % 2) + v;
25
- var buf = Buffer.from(v, 'hex');
26
- if (bytes && buf.length < bytes) {
27
- return Buffer.concat([Buffer.alloc(bytes - buf.length), buf]);
28
- }
29
- return buf;
30
- }
31
- exports.bigIntToBufferBE = bigIntToBufferBE;
32
- function clamp(u) {
33
- u &= BigInt('0x7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8');
34
- u |= BigInt('0x4000000000000000000000000000000000000000000000000000000000000000');
35
- return u;
36
- }
37
- exports.clamp = clamp;
38
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9tcGMvdXRpbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxTQUFnQixrQkFBa0IsQ0FBQyxHQUFXO0lBQzVDLE9BQU8sTUFBTSxDQUFDLElBQUksR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0FBQ25FLENBQUM7QUFGRCxnREFFQztBQUVELFNBQWdCLGdCQUFnQixDQUFDLENBQVMsRUFBRSxLQUFjO0lBQ3hELElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDdkIsQ0FBQyxHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ25DLElBQU0sR0FBRyxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQzVDLElBQUksS0FBSyxJQUFJLEdBQUcsQ0FBQyxNQUFNLEdBQUcsS0FBSyxFQUFFO1FBQy9CLE9BQU8sTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsRUFBRSxNQUFNLENBQUMsS0FBSyxDQUFDLEtBQUssR0FBRyxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO0tBQy9EO0lBQ0QsT0FBTyxHQUFHLENBQUM7QUFDYixDQUFDO0FBUkQsNENBUUM7QUFFRCxTQUFnQixrQkFBa0IsQ0FBQyxHQUFXO0lBQzVDLE9BQU8sTUFBTSxDQUFDLElBQUksR0FBRyxHQUFHLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7QUFDNUMsQ0FBQztBQUZELGdEQUVDO0FBRUQsU0FBZ0IsZ0JBQWdCLENBQUMsQ0FBUyxFQUFFLEtBQWM7SUFDeEQsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUN2QixDQUFDLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDbkMsSUFBTSxHQUFHLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDbEMsSUFBSSxLQUFLLElBQUksR0FBRyxDQUFDLE1BQU0sR0FBRyxLQUFLLEVBQUU7UUFDL0IsT0FBTyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxLQUFLLEdBQUcsR0FBRyxDQUFDLE1BQU0sQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUM7S0FDL0Q7SUFDRCxPQUFPLEdBQUcsQ0FBQztBQUNiLENBQUM7QUFSRCw0Q0FRQztBQUVELFNBQWdCLEtBQUssQ0FBQyxDQUFTO0lBQzdCLENBQUMsSUFBSSxNQUFNLENBQUMsb0VBQW9FLENBQUMsQ0FBQztJQUNsRixDQUFDLElBQUksTUFBTSxDQUFDLG9FQUFvRSxDQUFDLENBQUM7SUFDbEYsT0FBTyxDQUFDLENBQUM7QUFDWCxDQUFDO0FBSkQsc0JBSUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZnVuY3Rpb24gYmlnSW50RnJvbUJ1ZmZlckxFKGJ1ZjogQnVmZmVyKTogYmlnaW50IHtcbiAgcmV0dXJuIEJpZ0ludCgnMHgnICsgQnVmZmVyLmZyb20oYnVmKS5yZXZlcnNlKCkudG9TdHJpbmcoJ2hleCcpKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGJpZ0ludFRvQnVmZmVyTEUobjogYmlnaW50LCBieXRlcz86IG51bWJlcik6IEJ1ZmZlciB7XG4gIGxldCB2ID0gbi50b1N0cmluZygxNik7XG4gIHYgPSAnMCcuc2xpY2UoMCwgdi5sZW5ndGggJSAyKSArIHY7XG4gIGNvbnN0IGJ1ZiA9IEJ1ZmZlci5mcm9tKHYsICdoZXgnKS5yZXZlcnNlKCk7XG4gIGlmIChieXRlcyAmJiBidWYubGVuZ3RoIDwgYnl0ZXMpIHtcbiAgICByZXR1cm4gQnVmZmVyLmNvbmNhdChbYnVmLCBCdWZmZXIuYWxsb2MoYnl0ZXMgLSBidWYubGVuZ3RoKV0pO1xuICB9XG4gIHJldHVybiBidWY7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBiaWdJbnRGcm9tQnVmZmVyQkUoYnVmOiBCdWZmZXIpOiBiaWdpbnQge1xuICByZXR1cm4gQmlnSW50KCcweCcgKyBidWYudG9TdHJpbmcoJ2hleCcpKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGJpZ0ludFRvQnVmZmVyQkUobjogYmlnaW50LCBieXRlcz86IG51bWJlcik6IEJ1ZmZlciB7XG4gIGxldCB2ID0gbi50b1N0cmluZygxNik7XG4gIHYgPSAnMCcuc2xpY2UoMCwgdi5sZW5ndGggJSAyKSArIHY7XG4gIGNvbnN0IGJ1ZiA9IEJ1ZmZlci5mcm9tKHYsICdoZXgnKTtcbiAgaWYgKGJ5dGVzICYmIGJ1Zi5sZW5ndGggPCBieXRlcykge1xuICAgIHJldHVybiBCdWZmZXIuY29uY2F0KFtCdWZmZXIuYWxsb2MoYnl0ZXMgLSBidWYubGVuZ3RoKSwgYnVmXSk7XG4gIH1cbiAgcmV0dXJuIGJ1Zjtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGNsYW1wKHU6IGJpZ2ludCk6IGJpZ2ludCB7XG4gIHUgJj0gQmlnSW50KCcweDdmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjgnKTtcbiAgdSB8PSBCaWdJbnQoJzB4NDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCcpO1xuICByZXR1cm4gdTtcbn1cbiJdfQ==
@@ -1,99 +0,0 @@
1
- /// <reference types="node" />
2
- import { ExtendedKeys } from '../coin/baseCoin/iface';
3
- /**
4
- * @param {string} xpub - a base-58 encoded extended public key (BIP32)
5
- * @returns {string} the uncompressed public key in hexadecimal
6
- */
7
- export declare function xpubToUncompressedPub(xpub: string): string;
8
- /**
9
- * @param {string} xprv - base58-encoded extended private key (BIP32)
10
- * @returns {string} the hex-encoded raw private key
11
- */
12
- export declare function xprvToRawPrv(xprv: string): string;
13
- /**
14
- * @param {string} prv - Private key in hex format to get the extended keys for
15
- * @returns {ExtendedKeys} xprv and xpub in string format
16
- */
17
- export declare function rawPrvToExtendedKeys(prv: string): ExtendedKeys;
18
- /**
19
- * Whether the input is a valid BIP32 xpub or not
20
- *
21
- * @param xpub
22
- */
23
- export declare function isValidXpub(xpub: string): boolean;
24
- /**
25
- * Whether the input is a valid BIP32 xprv or not
26
- *
27
- * @param xprv
28
- */
29
- export declare function isValidXprv(xprv: string): boolean;
30
- /**
31
- * Whether the input is a valid secp256k1 public key
32
- *
33
- * @param pub
34
- */
35
- export declare function isValidPub(pub: string): boolean;
36
- /**
37
- * Whether the input is a valid secp256k1 private key
38
- *
39
- * @param prv
40
- */
41
- export declare function isValidPrv(prv: string): boolean;
42
- /**
43
- * Whether the input is a valid ed25519 private key
44
- *
45
- * @param {string} prv A hexadecimal private key to validate
46
- * @returns {boolean} Whether the input is a valid public key or not
47
- */
48
- export declare function isValidEd25519Seed(prv: string): boolean;
49
- /**
50
- * Whether the input is a valid ed25519 private key
51
- *
52
- * @param {string} prv A hexadecimal private key to validate
53
- * @returns {boolean} Whether the input is a valid public key or not
54
- */
55
- export declare function isValidEd25519SecretKey(prv: string): boolean;
56
- /**
57
- * Whether the input is a valid ed25519 public key
58
- *
59
- * @param {string} pub A hexadecimal public key to validate
60
- * @returns {boolean} Whether the input is a valid public key or not
61
- */
62
- export declare function isValidEd25519PublicKey(pub: string): boolean;
63
- /**
64
- * Whether the input is a valid BLS private key
65
- *
66
- * @param {string} prv a private key to validate
67
- * @returns {boolean} Whether the input is a valid private key or not
68
- */
69
- export declare function isValidBLSPrivateKey(prv: string): boolean;
70
- /**
71
- * Whether input is a valid BLS public key
72
- *
73
- * @param {string} pub the public key to validate
74
- * @returns {boolean} Whether input is a valid public key or not
75
- */
76
- export declare function isValidBLSPublicKey(pub: string): boolean;
77
- /**
78
- * Returns an hex string of the given buffer
79
- *
80
- * @param {Buffer | Uint8Array} buffer - the buffer to be converted to hex
81
- * @returns {string} - the hex value
82
- */
83
- export declare function toHex(buffer: Buffer | Uint8Array): string;
84
- /**
85
- * Returns an hex string of the given bigint
86
- *
87
- * @param {bigint} bigint - the bigint to be converted to hex
88
- * @returns {string} - the hex value
89
- */
90
- export declare function bigIntToHex(bigint: bigint): string;
91
- /**
92
- * Check if base58 decoded string is equale to length
93
- *
94
- * @param {string} value - string to be checked
95
- * @param {number} length - expected decoded length
96
- * @return {boolean} if the string can decoded as base58 and match the expected length
97
- */
98
- export declare function isBase58(value: string, length: number): boolean;
99
- //# sourceMappingURL=crypto.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"crypto.d.ts","sourceRoot":"","sources":["../../../src/utils/crypto.ts"],"names":[],"mappings":";AAMA,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAItD;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAO1D;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAUjD;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,MAAM,GAAG,YAAY,CAM9D;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAYjD;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAYjD;AAED;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAO/C;AAED;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAO/C;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAOvD;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAO5D;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAO5D;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAMzD;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAOxD;AAED;;;;;GAKG;AACH,wBAAgB,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,UAAU,GAAG,MAAM,CAEzD;AAED;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAGlD;AAED;;;;;;GAMG;AAEH,wBAAgB,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAM/D"}
@@ -1,260 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
- }) : (function(o, m, k, k2) {
6
- if (k2 === undefined) k2 = k;
7
- o[k2] = m[k];
8
- }));
9
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
10
- Object.defineProperty(o, "default", { enumerable: true, value: v });
11
- }) : function(o, v) {
12
- o["default"] = v;
13
- });
14
- var __importStar = (this && this.__importStar) || function (mod) {
15
- if (mod && mod.__esModule) return mod;
16
- var result = {};
17
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
18
- __setModuleDefault(result, mod);
19
- return result;
20
- };
21
- var __importDefault = (this && this.__importDefault) || function (mod) {
22
- return (mod && mod.__esModule) ? mod : { "default": mod };
23
- };
24
- Object.defineProperty(exports, "__esModule", { value: true });
25
- exports.isBase58 = exports.bigIntToHex = exports.toHex = exports.isValidBLSPublicKey = exports.isValidBLSPrivateKey = exports.isValidEd25519PublicKey = exports.isValidEd25519SecretKey = exports.isValidEd25519Seed = exports.isValidPrv = exports.isValidPub = exports.isValidXprv = exports.isValidXpub = exports.rawPrvToExtendedKeys = exports.xprvToRawPrv = exports.xpubToUncompressedPub = void 0;
26
- var bip32 = __importStar(require("bip32"));
27
- var bitcoinjs_lib_1 = require("bitcoinjs-lib");
28
- var nacl = __importStar(require("tweetnacl"));
29
- var hex = __importStar(require("@stablelib/hex"));
30
- var bls = __importStar(require("noble-bls12-381"));
31
- var ethereumjs_utils_old_1 = require("ethereumjs-utils-old");
32
- var utils_1 = require("../coin/hbar/utils");
33
- var bs58_1 = __importDefault(require("bs58"));
34
- /**
35
- * @param {string} xpub - a base-58 encoded extended public key (BIP32)
36
- * @returns {string} the uncompressed public key in hexadecimal
37
- */
38
- function xpubToUncompressedPub(xpub) {
39
- if (!isValidXpub(xpub)) {
40
- throw new Error('invalid xpub');
41
- }
42
- return bitcoinjs_lib_1.ECPair.fromPublicKey(bip32.fromBase58(xpub, bitcoinjs_lib_1.networks.bitcoin).publicKey, {
43
- compressed: false,
44
- }).publicKey.toString('hex');
45
- }
46
- exports.xpubToUncompressedPub = xpubToUncompressedPub;
47
- /**
48
- * @param {string} xprv - base58-encoded extended private key (BIP32)
49
- * @returns {string} the hex-encoded raw private key
50
- */
51
- function xprvToRawPrv(xprv) {
52
- if (!isValidXprv(xprv)) {
53
- throw new Error('invalid xprv');
54
- }
55
- var privateKey = bip32.fromBase58(xprv, bitcoinjs_lib_1.networks.bitcoin).privateKey;
56
- if (!privateKey) {
57
- throw new Error('invalid xprv');
58
- }
59
- return privateKey.toString('hex');
60
- }
61
- exports.xprvToRawPrv = xprvToRawPrv;
62
- /**
63
- * @param {string} prv - Private key in hex format to get the extended keys for
64
- * @returns {ExtendedKeys} xprv and xpub in string format
65
- */
66
- function rawPrvToExtendedKeys(prv) {
67
- var hd = bip32.fromPrivateKey(Buffer.from(prv, 'hex'), Buffer.alloc(32));
68
- return {
69
- xprv: hd.toBase58(),
70
- xpub: hd.neutered().toBase58(),
71
- };
72
- }
73
- exports.rawPrvToExtendedKeys = rawPrvToExtendedKeys;
74
- /**
75
- * Whether the input is a valid BIP32 xpub or not
76
- *
77
- * @param xpub
78
- */
79
- function isValidXpub(xpub) {
80
- if (xpub.substr(0, 4) !== 'xpub') {
81
- // check for xpub formats we don't support, such as tpub
82
- return false;
83
- }
84
- try {
85
- bip32.fromBase58(xpub, bitcoinjs_lib_1.networks.bitcoin);
86
- }
87
- catch (err) {
88
- return false;
89
- }
90
- // if HD generation didn't throw, it is a valid xpub
91
- return true;
92
- }
93
- exports.isValidXpub = isValidXpub;
94
- /**
95
- * Whether the input is a valid BIP32 xprv or not
96
- *
97
- * @param xprv
98
- */
99
- function isValidXprv(xprv) {
100
- if (xprv.substr(0, 4) !== 'xprv') {
101
- // check for xprv formats we don't support
102
- return false;
103
- }
104
- try {
105
- bip32.fromBase58(xprv, bitcoinjs_lib_1.networks.bitcoin);
106
- }
107
- catch (err) {
108
- return false;
109
- }
110
- // if HD generation didn't throw, it is a valid xprv
111
- return true;
112
- }
113
- exports.isValidXprv = isValidXprv;
114
- /**
115
- * Whether the input is a valid secp256k1 public key
116
- *
117
- * @param pub
118
- */
119
- function isValidPub(pub) {
120
- try {
121
- bitcoinjs_lib_1.ECPair.fromPublicKey(Buffer.from(pub, 'hex'));
122
- }
123
- catch (e) {
124
- return false;
125
- }
126
- return true;
127
- }
128
- exports.isValidPub = isValidPub;
129
- /**
130
- * Whether the input is a valid secp256k1 private key
131
- *
132
- * @param prv
133
- */
134
- function isValidPrv(prv) {
135
- try {
136
- bitcoinjs_lib_1.ECPair.fromPrivateKey(Buffer.from(prv, 'hex'));
137
- }
138
- catch (e) {
139
- return false;
140
- }
141
- return true;
142
- }
143
- exports.isValidPrv = isValidPrv;
144
- /**
145
- * Whether the input is a valid ed25519 private key
146
- *
147
- * @param {string} prv A hexadecimal private key to validate
148
- * @returns {boolean} Whether the input is a valid public key or not
149
- */
150
- function isValidEd25519Seed(prv) {
151
- try {
152
- var decodedPrv = utils_1.toUint8Array(prv);
153
- return decodedPrv.length === nacl.sign.seedLength;
154
- }
155
- catch (e) {
156
- return false;
157
- }
158
- }
159
- exports.isValidEd25519Seed = isValidEd25519Seed;
160
- /**
161
- * Whether the input is a valid ed25519 private key
162
- *
163
- * @param {string} prv A hexadecimal private key to validate
164
- * @returns {boolean} Whether the input is a valid public key or not
165
- */
166
- function isValidEd25519SecretKey(prv) {
167
- try {
168
- var decodedPrv = utils_1.toUint8Array(prv);
169
- return decodedPrv.length === nacl.sign.secretKeyLength;
170
- }
171
- catch (e) {
172
- return false;
173
- }
174
- }
175
- exports.isValidEd25519SecretKey = isValidEd25519SecretKey;
176
- /**
177
- * Whether the input is a valid ed25519 public key
178
- *
179
- * @param {string} pub A hexadecimal public key to validate
180
- * @returns {boolean} Whether the input is a valid public key or not
181
- */
182
- function isValidEd25519PublicKey(pub) {
183
- try {
184
- var decodedPub = new Uint8Array(Buffer.from(pub, 'hex'));
185
- return decodedPub.length === nacl.sign.publicKeyLength;
186
- }
187
- catch (e) {
188
- return false;
189
- }
190
- }
191
- exports.isValidEd25519PublicKey = isValidEd25519PublicKey;
192
- /**
193
- * Whether the input is a valid BLS private key
194
- *
195
- * @param {string} prv a private key to validate
196
- * @returns {boolean} Whether the input is a valid private key or not
197
- */
198
- function isValidBLSPrivateKey(prv) {
199
- try {
200
- return bls.Fr.isValid(BigInt(prv));
201
- }
202
- catch (e) {
203
- return false;
204
- }
205
- }
206
- exports.isValidBLSPrivateKey = isValidBLSPrivateKey;
207
- /**
208
- * Whether input is a valid BLS public key
209
- *
210
- * @param {string} pub the public key to validate
211
- * @returns {boolean} Whether input is a valid public key or not
212
- */
213
- function isValidBLSPublicKey(pub) {
214
- try {
215
- bls.PointG1.fromCompressedHex(ethereumjs_utils_old_1.stripHexPrefix(pub)).assertValidity();
216
- return true;
217
- }
218
- catch (e) {
219
- return false;
220
- }
221
- }
222
- exports.isValidBLSPublicKey = isValidBLSPublicKey;
223
- /**
224
- * Returns an hex string of the given buffer
225
- *
226
- * @param {Buffer | Uint8Array} buffer - the buffer to be converted to hex
227
- * @returns {string} - the hex value
228
- */
229
- function toHex(buffer) {
230
- return hex.encode(buffer, true);
231
- }
232
- exports.toHex = toHex;
233
- /**
234
- * Returns an hex string of the given bigint
235
- *
236
- * @param {bigint} bigint - the bigint to be converted to hex
237
- * @returns {string} - the hex value
238
- */
239
- function bigIntToHex(bigint) {
240
- var hex = bigint.toString(16);
241
- return '0x' + '0'.slice(0, hex.length % 2) + hex;
242
- }
243
- exports.bigIntToHex = bigIntToHex;
244
- /**
245
- * Check if base58 decoded string is equale to length
246
- *
247
- * @param {string} value - string to be checked
248
- * @param {number} length - expected decoded length
249
- * @return {boolean} if the string can decoded as base58 and match the expected length
250
- */
251
- function isBase58(value, length) {
252
- try {
253
- return !!value && bs58_1.default.decode(value).length === length;
254
- }
255
- catch (e) {
256
- return false;
257
- }
258
- }
259
- exports.isBase58 = isBase58;
260
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3J5cHRvLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3V0aWxzL2NyeXB0by50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsMkNBQStCO0FBQy9CLCtDQUFpRDtBQUNqRCw4Q0FBa0M7QUFDbEMsa0RBQXNDO0FBQ3RDLG1EQUF1QztBQUN2Qyw2REFBc0Q7QUFFdEQsNENBQWtEO0FBQ2xELDhDQUF3QjtBQUV4Qjs7O0dBR0c7QUFDSCxTQUFnQixxQkFBcUIsQ0FBQyxJQUFZO0lBQ2hELElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEVBQUU7UUFDdEIsTUFBTSxJQUFJLEtBQUssQ0FBQyxjQUFjLENBQUMsQ0FBQztLQUNqQztJQUNELE9BQU8sc0JBQU0sQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxJQUFJLEVBQUUsd0JBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxTQUFTLEVBQUU7UUFDOUUsVUFBVSxFQUFFLEtBQUs7S0FDbEIsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7QUFDL0IsQ0FBQztBQVBELHNEQU9DO0FBRUQ7OztHQUdHO0FBQ0gsU0FBZ0IsWUFBWSxDQUFDLElBQVk7SUFDdkMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsRUFBRTtRQUN0QixNQUFNLElBQUksS0FBSyxDQUFDLGNBQWMsQ0FBQyxDQUFDO0tBQ2pDO0lBRU8sSUFBQSxVQUFVLEdBQUssS0FBSyxDQUFDLFVBQVUsQ0FBQyxJQUFJLEVBQUUsd0JBQVEsQ0FBQyxPQUFPLENBQUMsV0FBN0MsQ0FBOEM7SUFDaEUsSUFBSSxDQUFDLFVBQVUsRUFBRTtRQUNmLE1BQU0sSUFBSSxLQUFLLENBQUMsY0FBYyxDQUFDLENBQUM7S0FDakM7SUFDRCxPQUFPLFVBQVUsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7QUFDcEMsQ0FBQztB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Q3hDLElBQU0sR0FBRyxHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDaEMsT0FBTyxJQUFJLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsR0FBRyxHQUFHLENBQUM7QUFDbkQsQ0FBQztBQUhELGtDQUdDO0FBRUQ7Ozs7OztHQU1HO0FBRUgsU0FBZ0IsUUFBUSxDQUFDLEtBQWEsRUFBRSxNQUFjO0lBQ3BELElBQUk7UUFDRixPQUFPLENBQUMsQ0FBQyxLQUFLLElBQUksY0FBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxNQUFNLEtBQUssTUFBTSxDQUFDO0tBQ3hEO0lBQUMsT0FBTyxDQUFDLEVBQUU7UUFDVixPQUFPLEtBQUssQ0FBQztLQUNkO0FBQ0gsQ0FBQztBQU5ELDRCQU1DIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgYmlwMzIgZnJvbSAnYmlwMzInO1xuaW1wb3J0IHsgRUNQYWlyLCBuZXR3b3JrcyB9IGZyb20gJ2JpdGNvaW5qcy1saWInO1xuaW1wb3J0ICogYXMgbmFjbCBmcm9tICd0d2VldG5hY2wnO1xuaW1wb3J0ICogYXMgaGV4IGZyb20gJ0BzdGFibGVsaWIvaGV4JztcbmltcG9ydCAqIGFzIGJscyBmcm9tICdub2JsZS1ibHMxMi0zODEnO1xuaW1wb3J0IHsgc3RyaXBIZXhQcmVmaXggfSBmcm9tICdldGhlcmV1bWpzLXV0aWxzLW9sZCc7XG5pbXBvcnQgeyBFeHRlbmRlZEtleXMgfSBmcm9tICcuLi9jb2luL2Jhc2VDb2luL2lmYWNlJztcbmltcG9ydCB7IHRvVWludDhBcnJheSB9IGZyb20gJy4uL2NvaW4vaGJhci91dGlscyc7XG5pbXBvcnQgYnM1OCBmcm9tICdiczU4JztcblxuLyoqXG4gKiBAcGFyYW0ge3N0cmluZ30geHB1YiAtIGEgYmFzZS01OCBlbmNvZGVkIGV4dGVuZGVkIHB1YmxpYyBrZXkgKEJJUDMyKVxuICogQHJldHVybnMge3N0cmluZ30gdGhlIHVuY29tcHJlc3NlZCBwdWJsaWMga2V5IGluIGhleGFkZWNpbWFsXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB4cHViVG9VbmNvbXByZXNzZWRQdWIoeHB1Yjogc3RyaW5nKTogc3RyaW5nIHtcbiAgaWYgKCFpc1ZhbGlkWHB1Yih4cHViKSkge1xuICAgIHRocm93IG5ldyBFcnJvcignaW52YWxpZCB4cHViJyk7XG4gIH1cbiAgcmV0dXJuIEVDUGFpci5mcm9tUHVibGljS2V5KGJpcDMyLmZyb21CYXNlNTgoeHB1YiwgbmV0d29ya3MuYml0Y29pbikucHVibGljS2V5LCB7XG4gICAgY29tcHJlc3NlZDogZmFsc2UsXG4gIH0pLnB1YmxpY0tleS50b1N0cmluZygnaGV4Jyk7XG59XG5cbi8qKlxuICogQHBhcmFtIHtzdHJpbmd9IHhwcnYgLSBiYXNlNTgtZW5jb2RlZCBleHRlbmRlZCBwcml2YXRlIGtleSAoQklQMzIpXG4gKiBAcmV0dXJucyB7c3RyaW5nfSB0aGUgaGV4LWVuY29kZWQgcmF3IHByaXZhdGUga2V5XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB4cHJ2VG9SYXdQcnYoeHBydjogc3RyaW5nKTogc3RyaW5nIHtcbiAgaWYgKCFpc1ZhbGlkWHBydih4cHJ2KSkge1xuICAgIHRocm93IG5ldyBFcnJvcignaW52YWxpZCB4cHJ2Jyk7XG4gIH1cblxuICBjb25zdCB7IHByaXZhdGVLZXkgfSA9IGJpcDMyLmZyb21CYXNlNTgoeHBydiwgbmV0d29ya3MuYml0Y29pbik7XG4gIGlmICghcHJpdmF0ZUtleSkge1xuICAgIHRocm93IG5ldyBFcnJvcignaW52YWxpZCB4cHJ2Jyk7XG4gIH1cbiAgcmV0dXJuIHByaXZhdGVLZXkudG9TdHJpbmcoJ2hleCcpO1xufVxuXG4vKipcbiAqIEBwYXJhbSB7c3RyaW5nfSBwcnYgLSBQcml2YXRlIGtleSBpbiBoZXggZm9ybWF0IHRvIGdldCB0aGUgZXh0ZW5kZWQga2V5cyBmb3JcbiAqIEByZXR1cm5zIHtFeHRlbmRlZEtleXN9IHhwcnYgYW5kIHhwdWIgaW4gc3RyaW5nIGZvcm1hdFxuICovXG5leHBvcnQgZnVuY3Rpb24gcmF3UHJ2VG9FeHRlbmRlZEtleXMocHJ2OiBzdHJpbmcpOiBFeHRlbmRlZEtleXMge1xuICBjb25zdCBoZCA9IGJpcDMyLmZyb21Qcml2YXRlS2V5KEJ1ZmZlci5mcm9tKHBydiwgJ2hleCcpLCBCdWZmZXIuYWxsb2MoMzIpKTtcbiAgcmV0dXJuIHtcbiAgICB4cHJ2OiBoZC50b0Jhc2U1OCgpLFxuICAgIHhwdWI6IGhkLm5ldXRlcmVkKCkudG9CYXNlNTgoKSxcbiAgfTtcbn1cblxuLyoqXG4gKiBXaGV0aGVyIHRoZSBpbnB1dCBpcyBhIHZhbGlkIEJJUDMyIHhwdWIgb3Igbm90XG4gKlxuICogQHBhcmFtIHhwdWJcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGlzVmFsaWRYcHViKHhwdWI6IHN0cmluZyk6IGJvb2xlYW4ge1xuICBpZiAoeHB1Yi5zdWJzdHIoMCwgNCkgIT09ICd4cHViJykge1xuICAgIC8vIGNoZWNrIGZvciB4cHViIGZvcm1hdHMgd2UgZG9uJ3Qgc3VwcG9ydCwgc3VjaCBhcyB0cHViXG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG4gIHRyeSB7XG4gICAgYmlwMzIuZnJvbUJhc2U1OCh4cHViLCBuZXR3b3Jrcy5iaXRjb2luKTtcbiAgfSBjYXRjaCAoZXJyKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG4gIC8vIGlmIEhEIGdlbmVyYXRpb24gZGlkbid0IHRocm93LCBpdCBpcyBhIHZhbGlkIHhwdWJcbiAgcmV0dXJuIHRydWU7XG59XG5cbi8qKlxuICogV2hldGhlciB0aGUgaW5wdXQgaXMgYSB2YWxpZCBCSVAzMiB4cHJ2IG9yIG5vdFxuICpcbiAqIEBwYXJhbSB4cHJ2XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc1ZhbGlkWHBydih4cHJ2OiBzdHJpbmcpOiBib29sZWFuIHtcbiAgaWYgKHhwcnYuc3Vic3RyKDAsIDQpICE9PSAneHBydicpIHtcbiAgICAvLyBjaGVjayBmb3IgeHBydiBmb3JtYXRzIHdlIGRvbid0IHN1cHBvcnRcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cbiAgdHJ5IHtcbiAgICBiaXAzMi5mcm9tQmFzZTU4KHhwcnYsIG5ldHdvcmtzLmJpdGNvaW4pO1xuICB9IGNhdGNoIChlcnIpIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cbiAgLy8gaWYgSEQgZ2VuZXJhdGlvbiBkaWRuJ3QgdGhyb3csIGl0IGlzIGEgdmFsaWQgeHBydlxuICByZXR1cm4gdHJ1ZTtcbn1cblxuLyoqXG4gKiBXaGV0aGVyIHRoZSBpbnB1dCBpcyBhIHZhbGlkIHNlY3AyNTZrMSBwdWJsaWMga2V5XG4gKlxuICogQHBhcmFtIHB1YlxuICovXG5leHBvcnQgZnVuY3Rpb24gaXNWYWxpZFB1YihwdWI6IHN0cmluZyk6IGJvb2xlYW4ge1xuICB0cnkge1xuICAgIEVDUGFpci5mcm9tUHVibGljS2V5KEJ1ZmZlci5mcm9tKHB1YiwgJ2hleCcpKTtcbiAgfSBjYXRjaCAoZSkge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuICByZXR1cm4gdHJ1ZTtcbn1cblxuLyoqXG4gKiBXaGV0aGVyIHRoZSBpbnB1dCBpcyBhIHZhbGlkIHNlY3AyNTZrMSBwcml2YXRlIGtleVxuICpcbiAqIEBwYXJhbSBwcnZcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGlzVmFsaWRQcnYocHJ2OiBzdHJpbmcpOiBib29sZWFuIHtcbiAgdHJ5IHtcbiAgICBFQ1BhaXIuZnJvbVByaXZhdGVLZXkoQnVmZmVyLmZyb20ocHJ2LCAnaGV4JykpO1xuICB9IGNhdGNoIChlKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG4gIHJldHVybiB0cnVlO1xufVxuXG4vKipcbiAqIFdoZXRoZXIgdGhlIGlucHV0IGlzIGEgdmFsaWQgZWQyNTUxOSBwcml2YXRlIGtleVxuICpcbiAqIEBwYXJhbSB7c3RyaW5nfSBwcnYgQSBoZXhhZGVjaW1hbCBwcml2YXRlIGtleSB0byB2YWxpZGF0ZVxuICogQHJldHVybnMge2Jvb2xlYW59IFdoZXRoZXIgdGhlIGlucHV0IGlzIGEgdmFsaWQgcHVibGljIGtleSBvciBub3RcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGlzVmFsaWRFZDI1NTE5U2VlZChwcnY6IHN0cmluZyk6IGJvb2xlYW4ge1xuICB0cnkge1xuICAgIGNvbnN0IGRlY29kZWRQcnYgPSB0b1VpbnQ4QXJyYXkocHJ2KTtcbiAgICByZXR1cm4gZGVjb2RlZFBydi5sZW5ndGggPT09IG5hY2wuc2lnbi5zZWVkTGVuZ3RoO1xuICB9IGNhdGNoIChlKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG59XG5cbi8qKlxuICogV2hldGhlciB0aGUgaW5wdXQgaXMgYSB2YWxpZCBlZDI1NTE5IHByaXZhdGUga2V5XG4gKlxuICogQHBhcmFtIHtzdHJpbmd9IHBydiBBIGhleGFkZWNpbWFsIHByaXZhdGUga2V5IHRvIHZhbGlkYXRlXG4gKiBAcmV0dXJucyB7Ym9vbGVhbn0gV2hldGhlciB0aGUgaW5wdXQgaXMgYSB2YWxpZCBwdWJsaWMga2V5IG9yIG5vdFxuICovXG5leHBvcnQgZnVuY3Rpb24gaXNWYWxpZEVkMjU1MTlTZWNyZXRLZXkocHJ2OiBzdHJpbmcpOiBib29sZWFuIHtcbiAgdHJ5IHtcbiAgICBjb25zdCBkZWNvZGVkUHJ2ID0gdG9VaW50OEFycmF5KHBydik7XG4gICAgcmV0dXJuIGRlY29kZWRQcnYubGVuZ3RoID09PSBuYWNsLnNpZ24uc2VjcmV0S2V5TGVuZ3RoO1xuICB9IGNhdGNoIChlKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG59XG5cbi8qKlxuICogV2hldGhlciB0aGUgaW5wdXQgaXMgYSB2YWxpZCBlZDI1NTE5IHB1YmxpYyBrZXlcbiAqXG4gKiBAcGFyYW0ge3N0cmluZ30gcHViIEEgaGV4YWRlY2ltYWwgcHVibGljIGtleSB0byB2YWxpZGF0ZVxuICogQHJldHVybnMge2Jvb2xlYW59IFdoZXRoZXIgdGhlIGlucHV0IGlzIGEgdmFsaWQgcHVibGljIGtleSBvciBub3RcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGlzVmFsaWRFZDI1NTE5UHVibGljS2V5KHB1Yjogc3RyaW5nKTogYm9vbGVhbiB7XG4gIHRyeSB7XG4gICAgY29uc3QgZGVjb2RlZFB1YiA9IG5ldyBVaW50OEFycmF5KEJ1ZmZlci5mcm9tKHB1YiwgJ2hleCcpKTtcbiAgICByZXR1cm4gZGVjb2RlZFB1Yi5sZW5ndGggPT09IG5hY2wuc2lnbi5wdWJsaWNLZXlMZW5ndGg7XG4gIH0gY2F0Y2ggKGUpIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cbn1cblxuLyoqXG4gKiBXaGV0aGVyIHRoZSBpbnB1dCBpcyBhIHZhbGlkIEJMUyBwcml2YXRlIGtleVxuICpcbiAqIEBwYXJhbSB7c3RyaW5nfSBwcnYgYSBwcml2YXRlIGtleSB0byB2YWxpZGF0ZVxuICogQHJldHVybnMge2Jvb2xlYW59IFdoZXRoZXIgdGhlIGlucHV0IGlzIGEgdmFsaWQgcHJpdmF0ZSBrZXkgb3Igbm90XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc1ZhbGlkQkxTUHJpdmF0ZUtleShwcnY6IHN0cmluZyk6IGJvb2xlYW4ge1xuICB0cnkge1xuICAgIHJldHVybiBibHMuRnIuaXNWYWxpZChCaWdJbnQocHJ2KSk7XG4gIH0gY2F0Y2ggKGUpIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cbn1cblxuLyoqXG4gKiBXaGV0aGVyIGlucHV0IGlzIGEgdmFsaWQgQkxTIHB1YmxpYyBrZXlcbiAqXG4gKiBAcGFyYW0ge3N0cmluZ30gcHViIHRoZSBwdWJsaWMga2V5IHRvIHZhbGlkYXRlXG4gKiBAcmV0dXJucyB7Ym9vbGVhbn0gV2hldGhlciBpbnB1dCBpcyBhIHZhbGlkIHB1YmxpYyBrZXkgb3Igbm90XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc1ZhbGlkQkxTUHVibGljS2V5KHB1Yjogc3RyaW5nKTogYm9vbGVhbiB7XG4gIHRyeSB7XG4gICAgYmxzLlBvaW50RzEuZnJvbUNvbXByZXNzZWRIZXgoc3RyaXBIZXhQcmVmaXgocHViKSkuYXNzZXJ0VmFsaWRpdHkoKTtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfSBjYXRjaCAoZSkge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxufVxuXG4vKipcbiAqIFJldHVybnMgYW4gaGV4IHN0cmluZyBvZiB0aGUgZ2l2ZW4gYnVmZmVyXG4gKlxuICogQHBhcmFtIHtCdWZmZXIgfCBVaW50OEFycmF5fSBidWZmZXIgLSB0aGUgYnVmZmVyIHRvIGJlIGNvbnZlcnRlZCB0byBoZXhcbiAqIEByZXR1cm5zIHtzdHJpbmd9IC0gdGhlIGhleCB2YWx1ZVxuICovXG5leHBvcnQgZnVuY3Rpb24gdG9IZXgoYnVmZmVyOiBCdWZmZXIgfCBVaW50OEFycmF5KTogc3RyaW5nIHtcbiAgcmV0dXJuIGhleC5lbmNvZGUoYnVmZmVyLCB0cnVlKTtcbn1cblxuLyoqXG4gKiBSZXR1cm5zIGFuIGhleCBzdHJpbmcgb2YgdGhlIGdpdmVuIGJpZ2ludFxuICpcbiAqIEBwYXJhbSB7YmlnaW50fSBiaWdpbnQgLSB0aGUgYmlnaW50IHRvIGJlIGNvbnZlcnRlZCB0byBoZXhcbiAqIEByZXR1cm5zIHtzdHJpbmd9IC0gdGhlIGhleCB2YWx1ZVxuICovXG5leHBvcnQgZnVuY3Rpb24gYmlnSW50VG9IZXgoYmlnaW50OiBiaWdpbnQpOiBzdHJpbmcge1xuICBjb25zdCBoZXggPSBiaWdpbnQudG9TdHJpbmcoMTYpO1xuICByZXR1cm4gJzB4JyArICcwJy5zbGljZSgwLCBoZXgubGVuZ3RoICUgMikgKyBoZXg7XG59XG5cbi8qKlxuICogQ2hlY2sgaWYgYmFzZTU4IGRlY29kZWQgc3RyaW5nIGlzIGVxdWFsZSB0byBsZW5ndGhcbiAqXG4gKiBAcGFyYW0ge3N0cmluZ30gdmFsdWUgLSBzdHJpbmcgdG8gYmUgY2hlY2tlZFxuICogQHBhcmFtIHtudW1iZXJ9IGxlbmd0aCAtIGV4cGVjdGVkIGRlY29kZWQgbGVuZ3RoXG4gKiBAcmV0dXJuIHtib29sZWFufSBpZiB0aGUgc3RyaW5nIGNhbiBkZWNvZGVkIGFzIGJhc2U1OCBhbmQgbWF0Y2ggdGhlIGV4cGVjdGVkIGxlbmd0aFxuICovXG5cbmV4cG9ydCBmdW5jdGlvbiBpc0Jhc2U1OCh2YWx1ZTogc3RyaW5nLCBsZW5ndGg6IG51bWJlcik6IGJvb2xlYW4ge1xuICB0cnkge1xuICAgIHJldHVybiAhIXZhbHVlICYmIGJzNTguZGVjb2RlKHZhbHVlKS5sZW5ndGggPT09IGxlbmd0aDtcbiAgfSBjYXRjaCAoZSkge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxufVxuIl19
@@ -1,49 +0,0 @@
1
- /// <reference types="node" />
2
- export interface HdKeypair {
3
- key: Buffer;
4
- chainCode: Buffer;
5
- }
6
- /**
7
- * Heirarchical determinisitic key derivation for the ed25519 elliptic curve,
8
- * as defined in SLIP-0010.
9
- *
10
- * https://github.com/stellar/stellar-protocol/blob/master/ecosystem/sep-0005.md
11
- * https://github.com/satoshilabs/slips/blob/master/slip-0010.md
12
- */
13
- export declare class Ed25519KeyDeriver {
14
- /**
15
- * This key derivation code was copied and adapted from:
16
- * https://github.com/chatch/stellar-hd-wallet/blob/612c12325ca9047dce460016fb7d148f55f575ca/src/hd-key.js
17
- *
18
- * There have been some slight modifications to improve typescript support.
19
- *
20
- * The original ed25519-hd-key module is licensed under "GPL-3".
21
- */
22
- private static readonly ED25519_CURVE;
23
- private static readonly HARDENED_OFFSET;
24
- private static readonly PATH_REGEX;
25
- /**
26
- * Derive a SLIP-0010 key given a path and master key seed.
27
- *
28
- * @param path derivation path
29
- * @param seed key seed
30
- */
31
- static derivePath(path: string, seed: string): HdKeypair;
32
- /**
33
- * Generate a SLIP-0010 master key from the entropy seed
34
- *
35
- * @param seed master key seed used to recreate master key
36
- */
37
- private static getMasterKeyFromSeed;
38
- /**
39
- * Calculate a child private key given the parent key, the chain code, and the child index.
40
- *
41
- * @param key parent key
42
- * @param chainCode chain code for parent key
43
- * @param index index of child to derive
44
- */
45
- private static CKDPriv;
46
- private static replaceDerive;
47
- private static isValidPath;
48
- }
49
- //# sourceMappingURL=ed25519KeyDeriver.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ed25519KeyDeriver.d.ts","sourceRoot":"","sources":["../../../src/utils/ed25519KeyDeriver.ts"],"names":[],"mappings":";AAKA,MAAM,WAAW,SAAS;IACxB,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;;;;;GAMG;AACH,qBAAa,iBAAiB;IAC5B;;;;;;;OAOG;IAEH,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,aAAa,CAAkB;IACvD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,eAAe,CAAc;IACrD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAkC;IAEpE;;;;;OAKG;WACW,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,SAAS;IAY/D;;;;OAIG;IACH,OAAO,CAAC,MAAM,CAAC,oBAAoB;IAWnC;;;;;;OAMG;IACH,OAAO,CAAC,MAAM,CAAC,OAAO;IAatB,OAAO,CAAC,MAAM,CAAC,aAAa,CAA+D;IAC3F,OAAO,CAAC,MAAM,CAAC,WAAW;CAM3B"}
@@ -1,92 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.Ed25519KeyDeriver = void 0;
7
- /**
8
- * @prettier
9
- */
10
- var create_hmac_1 = __importDefault(require("create-hmac"));
11
- /**
12
- * Heirarchical determinisitic key derivation for the ed25519 elliptic curve,
13
- * as defined in SLIP-0010.
14
- *
15
- * https://github.com/stellar/stellar-protocol/blob/master/ecosystem/sep-0005.md
16
- * https://github.com/satoshilabs/slips/blob/master/slip-0010.md
17
- */
18
- var Ed25519KeyDeriver = /** @class */ (function () {
19
- function Ed25519KeyDeriver() {
20
- }
21
- /**
22
- * Derive a SLIP-0010 key given a path and master key seed.
23
- *
24
- * @param path derivation path
25
- * @param seed key seed
26
- */
27
- Ed25519KeyDeriver.derivePath = function (path, seed) {
28
- var _this = this;
29
- if (!this.isValidPath(path)) {
30
- throw new Error('Invalid derivation path');
31
- }
32
- var _a = this.getMasterKeyFromSeed(seed), key = _a.key, chainCode = _a.chainCode;
33
- var segments = path.split('/').slice(1).map(this.replaceDerive);
34
- return segments.reduce(function (parentKeys, segment) { return _this.CKDPriv(parentKeys, segment + Ed25519KeyDeriver.HARDENED_OFFSET); }, { key: key, chainCode: chainCode });
35
- };
36
- /**
37
- * Generate a SLIP-0010 master key from the entropy seed
38
- *
39
- * @param seed master key seed used to recreate master key
40
- */
41
- Ed25519KeyDeriver.getMasterKeyFromSeed = function (seed) {
42
- var hmac = create_hmac_1.default('sha512', Ed25519KeyDeriver.ED25519_CURVE);
43
- var I = hmac.update(Buffer.from(seed, 'hex')).digest();
44
- var IL = I.slice(0, 32);
45
- var IR = I.slice(32);
46
- return {
47
- key: IL,
48
- chainCode: IR,
49
- };
50
- };
51
- /**
52
- * Calculate a child private key given the parent key, the chain code, and the child index.
53
- *
54
- * @param key parent key
55
- * @param chainCode chain code for parent key
56
- * @param index index of child to derive
57
- */
58
- Ed25519KeyDeriver.CKDPriv = function (_a, index) {
59
- var key = _a.key, chainCode = _a.chainCode;
60
- var indexBuffer = Buffer.allocUnsafe(4);
61
- indexBuffer.writeUInt32BE(index, 0);
62
- var data = Buffer.concat([Buffer.alloc(1, 0), key, indexBuffer]);
63
- var I = create_hmac_1.default('sha512', chainCode).update(data).digest();
64
- var IL = I.slice(0, 32);
65
- var IR = I.slice(32);
66
- return {
67
- key: IL,
68
- chainCode: IR,
69
- };
70
- };
71
- Ed25519KeyDeriver.isValidPath = function (path) {
72
- if (!Ed25519KeyDeriver.PATH_REGEX.test(path)) {
73
- return false;
74
- }
75
- return !path.split('/').slice(1).map(this.replaceDerive).some(isNaN);
76
- };
77
- /**
78
- * This key derivation code was copied and adapted from:
79
- * https://github.com/chatch/stellar-hd-wallet/blob/612c12325ca9047dce460016fb7d148f55f575ca/src/hd-key.js
80
- *
81
- * There have been some slight modifications to improve typescript support.
82
- *
83
- * The original ed25519-hd-key module is licensed under "GPL-3".
84
- */
85
- Ed25519KeyDeriver.ED25519_CURVE = 'ed25519 seed';
86
- Ed25519KeyDeriver.HARDENED_OFFSET = 0x80000000;
87
- Ed25519KeyDeriver.PATH_REGEX = new RegExp("^m(\\/[0-9]+')+$");
88
- Ed25519KeyDeriver.replaceDerive = function (val) { return parseInt(val.replace("'", ''), 10); };
89
- return Ed25519KeyDeriver;
90
- }());
91
- exports.Ed25519KeyDeriver = Ed25519KeyDeriver;
92
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWQyNTUxOUtleURlcml2ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdXRpbHMvZWQyNTUxOUtleURlcml2ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUE7O0dBRUc7QUFDSCw0REFBcUM7QUFPckM7Ozs7OztHQU1HO0FBQ0g7SUFBQTtJQTJFQSxDQUFDO0lBN0RDOzs7OztPQUtHO0lBQ1csNEJBQVUsR0FBeEIsVUFBeUIsSUFBWSxFQUFFLElBQVk7UUFBbkQsaUJBVUM7UUFUQyxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUMzQixNQUFNLElBQUksS0FBSyxDQUFDLHlCQUF5QixDQUFDLENBQUM7U0FDNUM7UUFDSyxJQUFBLEtBQXFCLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsRUFBbEQsR0FBRyxTQUFBLEVBQUUsU0FBUyxlQUFvQyxDQUFDO1FBQzNELElBQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDbEUsT0FBTyxRQUFRLENBQUMsTUFBTSxDQUNwQixVQUFDLFVBQVUsRUFBRSxPQUFPLElBQUssT0FBQSxLQUFJLENBQUMsT0FBTyxDQUFDLFVBQVUsRUFBRSxPQUFPLEdBQUcsaUJBQWlCLENBQUMsZUFBZSxDQUFDLEVBQXJFLENBQXFFLEVBQzlGLEVBQUUsR0FBRyxLQUFBLEVBQUUsU0FBUyxXQUFBLEVBQUUsQ0FDbkIsQ0FBQztJQUNKLENBQUM7SUFFRDs7OztPQUlHO0lBQ1ksc0NBQW9CLEdBQW5DLFVBQW9DLElBQVk7UUFDOUMsSUFBTSxJQUFJLEdBQUcscUJBQVUsQ0FBQyxRQUFRLEVBQUUsaUJBQWlCLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDbkUsSUFBTSxDQUFDLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ3pELElBQU0sRUFBRSxHQUFHLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQzFCLElBQU0sRUFBRSxHQUFHLENBQUMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDdkIsT0FBTztZQUNMLEdBQUcsRUFBRSxFQUFFO1lBQ1AsU0FBUyxFQUFFLEVBQUU7U0FDZCxDQUFDO0lBQ0osQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNZLHlCQUFPLEdBQXRCLFVBQXVCLEVBQTZCLEVBQUUsS0FBYTtZQUExQyxHQUFHLFNBQUEsRUFBRSxTQUFTLGVBQUE7UUFDckMsSUFBTSxXQUFXLEdBQUcsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUMxQyxXQUFXLENBQUMsYUFBYSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQztRQUNwQyxJQUFNLElBQUksR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsR0FBRyxFQUFFLFdBQVcsQ0FBQyxDQUFDLENBQUM7UUFDbkUsSUFBTSxDQUFDLEdBQUcscUJBQVUsQ0FBQyxRQUFRLEVBQUUsU0FBUyxDQUFDLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ2hFLElBQU0sRUFBRSxHQUFHLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQzFCLElBQU0sRUFBRSxHQUFHLENBQUMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDdkIsT0FBTztZQUNMLEdBQUcsRUFBRSxFQUFFO1lBQ1AsU0FBUyxFQUFFLEVBQUU7U0FDZCxDQUFDO0lBQ0osQ0FBQztJQUdjLDZCQUFXLEdBQTFCLFVBQTJCLElBQVk7UUFDckMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDNUMsT0FBTyxLQUFLLENBQUM7U0FDZDtRQUNELE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN2RSxDQUFDO0lBekVEOzs7Ozs7O09BT0c7SUFFcUIsK0JBQWEsR0FBRyxjQUFjLENBQUM7SUFDL0IsaUNBQWUsR0FBRyxVQUFVLENBQUM7SUFDN0IsNEJBQVUsR0FBRyxJQUFJLE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO0lBd0RyRCwrQkFBYSxHQUFHLFVBQUMsR0FBVyxJQUFhLE9BQUEsUUFBUSxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxFQUFsQyxDQUFrQyxDQUFDO0lBTzdGLHdCQUFDO0NBQUEsQUEzRUQsSUEyRUM7QUEzRVksOENBQWlCIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAcHJldHRpZXJcbiAqL1xuaW1wb3J0IGNyZWF0ZUhtYWMgZnJvbSAnY3JlYXRlLWhtYWMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIEhkS2V5cGFpciB7XG4gIGtleTogQnVmZmVyO1xuICBjaGFpbkNvZGU6IEJ1ZmZlcjtcbn1cblxuLyoqXG4gKiBIZWlyYXJjaGljYWwgZGV0ZXJtaW5pc2l0aWMga2V5IGRlcml2YXRpb24gZm9yIHRoZSBlZDI1NTE5IGVsbGlwdGljIGN1cnZlLFxuICogYXMgZGVmaW5lZCBpbiBTTElQLTAwMTAuXG4gKlxuICogaHR0cHM6Ly9naXRodWIuY29tL3N0ZWxsYXIvc3RlbGxhci1wcm90b2NvbC9ibG9iL21hc3Rlci9lY29zeXN0ZW0vc2VwLTAwMDUubWRcbiAqIGh0dHBzOi8vZ2l0aHViLmNvbS9zYXRvc2hpbGFicy9zbGlwcy9ibG9iL21hc3Rlci9zbGlwLTAwMTAubWRcbiAqL1xuZXhwb3J0IGNsYXNzIEVkMjU1MTlLZXlEZXJpdmVyIHtcbiAgLyoqXG4gICAqIFRoaXMga2V5IGRlcml2YXRpb24gY29kZSB3YXMgY29waWVkIGFuZCBhZGFwdGVkIGZyb206XG4gICAqIGh0dHBzOi8vZ2l0aHViLmNvbS9jaGF0Y2gvc3RlbGxhci1oZC13YWxsZXQvYmxvYi82MTJjMTIzMjVjYTkwNDdkY2U0NjAwMTZmYjdkMTQ4ZjU1ZjU3NWNhL3NyYy9oZC1rZXkuanNcbiAgICpcbiAgICogVGhlcmUgaGF2ZSBiZWVuIHNvbWUgc2xpZ2h0IG1vZGlmaWNhdGlvbnMgdG8gaW1wcm92ZSB0eXBlc2NyaXB0IHN1cHBvcnQuXG4gICAqXG4gICAqIFRoZSBvcmlnaW5hbCBlZDI1NTE5LWhkLWtleSBtb2R1bGUgaXMgbGljZW5zZWQgdW5kZXIgXCJHUEwtM1wiLlxuICAgKi9cblxuICBwcml2YXRlIHN0YXRpYyByZWFkb25seSBFRDI1NTE5X0NVUlZFID0gJ2VkMjU1MTkgc2VlZCc7XG4gIHByaXZhdGUgc3RhdGljIHJlYWRvbmx5IEhBUkRFTkVEX09GRlNFVCA9IDB4ODAwMDAwMDA7XG4gIHByaXZhdGUgc3RhdGljIHJlYWRvbmx5IFBBVEhfUkVHRVggPSBuZXcgUmVnRXhwKFwiXm0oXFxcXC9bMC05XSsnKSskXCIpO1xuXG4gIC8qKlxuICAgKiBEZXJpdmUgYSBTTElQLTAwMTAga2V5IGdpdmVuIGEgcGF0aCBhbmQgbWFzdGVyIGtleSBzZWVkLlxuICAgKlxuICAgKiBAcGFyYW0gcGF0aCBkZXJpdmF0aW9uIHBhdGhcbiAgICogQHBhcmFtIHNlZWQga2V5IHNlZWRcbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgZGVyaXZlUGF0aChwYXRoOiBzdHJpbmcsIHNlZWQ6IHN0cmluZyk6IEhkS2V5cGFpciB7XG4gICAgaWYgKCF0aGlzLmlzVmFsaWRQYXRoKHBhdGgpKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0ludmFsaWQgZGVyaXZhdGlvbiBwYXRoJyk7XG4gICAgfVxuICAgIGNvbnN0IHsga2V5LCBjaGFpbkNvZGUgfSA9IHRoaXMuZ2V0TWFzdGVyS2V5RnJvbVNlZWQoc2VlZCk7XG4gICAgY29uc3Qgc2VnbWVudHMgPSBwYXRoLnNwbGl0KCcvJykuc2xpY2UoMSkubWFwKHRoaXMucmVwbGFjZURlcml2ZSk7XG4gICAgcmV0dXJuIHNlZ21lbnRzLnJlZHVjZShcbiAgICAgIChwYXJlbnRLZXlzLCBzZWdtZW50KSA9PiB0aGlzLkNLRFByaXYocGFyZW50S2V5cywgc2VnbWVudCArIEVkMjU1MTlLZXlEZXJpdmVyLkhBUkRFTkVEX09GRlNFVCksXG4gICAgICB7IGtleSwgY2hhaW5Db2RlIH0sXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZW5lcmF0ZSBhIFNMSVAtMDAxMCBtYXN0ZXIga2V5IGZyb20gdGhlIGVudHJvcHkgc2VlZFxuICAgKlxuICAgKiBAcGFyYW0gc2VlZCBtYXN0ZXIga2V5IHNlZWQgdXNlZCB0byByZWNyZWF0ZSBtYXN0ZXIga2V5XG4gICAqL1xuICBwcml2YXRlIHN0YXRpYyBnZXRNYXN0ZXJLZXlGcm9tU2VlZChzZWVkOiBzdHJpbmcpIHtcbiAgICBjb25zdCBobWFjID0gY3JlYXRlSG1hYygnc2hhNTEyJywgRWQyNTUxOUtleURlcml2ZXIuRUQyNTUxOV9DVVJWRSk7XG4gICAgY29uc3QgSSA9IGhtYWMudXBkYXRlKEJ1ZmZlci5mcm9tKHNlZWQsICdoZXgnKSkuZGlnZXN0KCk7XG4gICAgY29uc3QgSUwgPSBJLnNsaWNlKDAsIDMyKTtcbiAgICBjb25zdCBJUiA9IEkuc2xpY2UoMzIpO1xuICAgIHJldHVybiB7XG4gICAgICBrZXk6IElMLFxuICAgICAgY2hhaW5Db2RlOiBJUixcbiAgICB9O1xuICB9XG5cbiAgLyoqXG4gICAqIENhbGN1bGF0ZSBhIGNoaWxkIHByaXZhdGUga2V5IGdpdmVuIHRoZSBwYXJlbnQga2V5LCB0aGUgY2hhaW4gY29kZSwgYW5kIHRoZSBjaGlsZCBpbmRleC5cbiAgICpcbiAgICogQHBhcmFtIGtleSBwYXJlbnQga2V5XG4gICAqIEBwYXJhbSBjaGFpbkNvZGUgY2hhaW4gY29kZSBmb3IgcGFyZW50IGtleVxuICAgKiBAcGFyYW0gaW5kZXggaW5kZXggb2YgY2hpbGQgdG8gZGVyaXZlXG4gICAqL1xuICBwcml2YXRlIHN0YXRpYyBDS0RQcml2KHsga2V5LCBjaGFpbkNvZGUgfTogSGRLZXlwYWlyLCBpbmRleDogbnVtYmVyKTogSGRLZXlwYWlyIHtcbiAgICBjb25zdCBpbmRleEJ1ZmZlciA9IEJ1ZmZlci5hbGxvY1Vuc2FmZSg0KTtcbiAgICBpbmRleEJ1ZmZlci53cml0ZVVJbnQzMkJFKGluZGV4LCAwKTtcbiAgICBjb25zdCBkYXRhID0gQnVmZmVyLmNvbmNhdChbQnVmZmVyLmFsbG9jKDEsIDApLCBrZXksIGluZGV4QnVmZmVyXSk7XG4gICAgY29uc3QgSSA9IGNyZWF0ZUhtYWMoJ3NoYTUxMicsIGNoYWluQ29kZSkudXBkYXRlKGRhdGEpLmRpZ2VzdCgpO1xuICAgIGNvbnN0IElMID0gSS5zbGljZSgwLCAzMik7XG4gICAgY29uc3QgSVIgPSBJLnNsaWNlKDMyKTtcbiAgICByZXR1cm4ge1xuICAgICAga2V5OiBJTCxcbiAgICAgIGNoYWluQ29kZTogSVIsXG4gICAgfTtcbiAgfVxuXG4gIHByaXZhdGUgc3RhdGljIHJlcGxhY2VEZXJpdmUgPSAodmFsOiBzdHJpbmcpOiBudW1iZXIgPT4gcGFyc2VJbnQodmFsLnJlcGxhY2UoXCInXCIsICcnKSwgMTApO1xuICBwcml2YXRlIHN0YXRpYyBpc1ZhbGlkUGF0aChwYXRoOiBzdHJpbmcpIHtcbiAgICBpZiAoIUVkMjU1MTlLZXlEZXJpdmVyLlBBVEhfUkVHRVgudGVzdChwYXRoKSkge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgICByZXR1cm4gIXBhdGguc3BsaXQoJy8nKS5zbGljZSgxKS5tYXAodGhpcy5yZXBsYWNlRGVyaXZlKS5zb21lKGlzTmFOKTtcbiAgfVxufVxuIl19