@aptos-labs/ts-sdk 1.27.1-zeta.0 → 1.28.0

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 (814) hide show
  1. package/dist/common/{accountAddress-BeSCq9i_.d.ts → accountAddress-OVl7-qVN.d.ts} +3 -3
  2. package/dist/common/chunk-HBPH2AD3.js +2 -0
  3. package/dist/common/chunk-HBPH2AD3.js.map +1 -0
  4. package/dist/common/cli/index.d.ts +1 -1
  5. package/dist/common/cli/index.js +1 -453
  6. package/dist/common/cli/index.js.map +1 -1
  7. package/dist/common/index.d.ts +67 -254
  8. package/dist/common/index.js +429 -12755
  9. package/dist/common/index.js.map +1 -1
  10. package/dist/esm/account/Account.mjs +1 -70
  11. package/dist/esm/account/Ed25519Account.mjs +1 -68
  12. package/dist/esm/account/EphemeralKeyPair.mjs +1 -49
  13. package/dist/esm/account/KeylessAccount.d.mts +3 -29
  14. package/dist/esm/account/KeylessAccount.mjs +1 -71
  15. package/dist/esm/account/MultiKeyAccount.d.mts +2 -1
  16. package/dist/esm/account/MultiKeyAccount.mjs +1 -70
  17. package/dist/esm/account/SingleKeyAccount.mjs +1 -68
  18. package/dist/esm/account/index.d.mts +1 -1
  19. package/dist/esm/account/index.mjs +1 -91
  20. package/dist/esm/api/account.d.mts +2 -1
  21. package/dist/esm/api/account.mjs +1 -81
  22. package/dist/esm/api/ans.mjs +1 -91
  23. package/dist/esm/api/aptos.d.mts +0 -2
  24. package/dist/esm/api/aptos.mjs +1 -124
  25. package/dist/esm/api/aptosConfig.mjs +1 -9
  26. package/dist/esm/api/coin.mjs +1 -90
  27. package/dist/esm/api/digitalAsset.mjs +1 -91
  28. package/dist/esm/api/event.mjs +1 -58
  29. package/dist/esm/api/faucet.mjs +1 -57
  30. package/dist/esm/api/fungibleAsset.mjs +1 -91
  31. package/dist/esm/api/general.mjs +1 -89
  32. package/dist/esm/api/index.d.mts +0 -2
  33. package/dist/esm/api/index.mjs +1 -128
  34. package/dist/esm/api/keyless.d.mts +16 -15
  35. package/dist/esm/api/keyless.mjs +1 -81
  36. package/dist/esm/api/object.mjs +1 -58
  37. package/dist/esm/api/staking.mjs +1 -58
  38. package/dist/esm/api/table.mjs +1 -36
  39. package/dist/esm/api/transaction.mjs +1 -98
  40. package/dist/esm/api/transactionSubmission/build.mjs +1 -89
  41. package/dist/esm/api/transactionSubmission/helpers.mjs +1 -9
  42. package/dist/esm/api/transactionSubmission/management.mjs +1 -93
  43. package/dist/esm/api/transactionSubmission/sign.mjs +1 -113
  44. package/dist/esm/api/transactionSubmission/sign.mjs.map +1 -1
  45. package/dist/esm/api/transactionSubmission/simulate.mjs +1 -90
  46. package/dist/esm/api/transactionSubmission/submit.mjs +1 -90
  47. package/dist/esm/api/utils.mjs +1 -34
  48. package/dist/esm/bcs/consts.mjs +1 -17
  49. package/dist/esm/bcs/deserializer.mjs +1 -8
  50. package/dist/esm/bcs/index.d.mts +1 -1
  51. package/dist/esm/bcs/index.mjs +1 -57
  52. package/dist/esm/bcs/serializable/entryFunctionBytes.mjs +1 -12
  53. package/dist/esm/bcs/serializable/fixedBytes.mjs +1 -11
  54. package/dist/esm/bcs/serializable/movePrimitives.mjs +1 -25
  55. package/dist/esm/bcs/serializable/moveStructs.d.mts +10 -1
  56. package/dist/esm/bcs/serializable/moveStructs.mjs +1 -18
  57. package/dist/esm/bcs/serializer.mjs +1 -18
  58. package/dist/esm/chunk-2CAGPXCX.mjs +2 -0
  59. package/dist/esm/{chunk-S7KNZC2A.mjs.map → chunk-2CAGPXCX.mjs.map} +1 -1
  60. package/dist/esm/chunk-2XYA7NOU.mjs +2 -0
  61. package/dist/esm/{chunk-MQALTYRJ.mjs.map → chunk-2XYA7NOU.mjs.map} +1 -1
  62. package/dist/esm/chunk-3F3FCWT5.mjs +2 -0
  63. package/dist/esm/{chunk-DPM4FHN4.mjs.map → chunk-3F3FCWT5.mjs.map} +1 -1
  64. package/dist/esm/chunk-3GOJQ5JD.mjs +2 -0
  65. package/dist/esm/{chunk-EKY7QRXH.mjs.map → chunk-3GOJQ5JD.mjs.map} +1 -1
  66. package/dist/esm/chunk-3HTSCV3R.mjs +2 -0
  67. package/dist/esm/{chunk-DXGNWBVW.mjs.map → chunk-3HTSCV3R.mjs.map} +1 -1
  68. package/dist/esm/chunk-4ENUSVZB.mjs +2 -0
  69. package/dist/esm/{chunk-GMGJ6Q5P.mjs.map → chunk-4ENUSVZB.mjs.map} +1 -1
  70. package/dist/esm/chunk-52HZTDBB.mjs +2 -0
  71. package/dist/esm/chunk-52HZTDBB.mjs.map +1 -0
  72. package/dist/esm/chunk-53DBMWMU.mjs +2 -0
  73. package/dist/esm/{chunk-64OZO6BS.mjs.map → chunk-53DBMWMU.mjs.map} +1 -1
  74. package/dist/esm/chunk-54QUDAAC.mjs +2 -0
  75. package/dist/esm/{chunk-HCIGCJ62.mjs.map → chunk-54QUDAAC.mjs.map} +1 -1
  76. package/dist/esm/chunk-56CNRT2K.mjs +2 -0
  77. package/dist/esm/{chunk-SBB4YEPT.mjs.map → chunk-56CNRT2K.mjs.map} +1 -1
  78. package/dist/esm/chunk-56F7EYFE.mjs +2 -0
  79. package/dist/esm/{chunk-CIPO346F.mjs.map → chunk-56F7EYFE.mjs.map} +1 -1
  80. package/dist/esm/chunk-5L3UXSQI.mjs +2 -0
  81. package/dist/esm/{chunk-ZR36Y2RX.mjs.map → chunk-5L3UXSQI.mjs.map} +1 -1
  82. package/dist/esm/chunk-5P7MXLZA.mjs +2 -0
  83. package/dist/esm/{chunk-PSRD6U34.mjs.map → chunk-5P7MXLZA.mjs.map} +1 -1
  84. package/dist/esm/chunk-5TBIWC7N.mjs +2 -0
  85. package/dist/esm/{chunk-FBRETS2O.mjs.map → chunk-5TBIWC7N.mjs.map} +1 -1
  86. package/dist/esm/chunk-6CHBLB3V.mjs +2 -0
  87. package/dist/esm/{chunk-6XNCA4KS.mjs.map → chunk-6CHBLB3V.mjs.map} +1 -1
  88. package/dist/esm/chunk-6EMN3BOV.mjs +2 -0
  89. package/dist/esm/{chunk-SIJELMDP.mjs.map → chunk-6EMN3BOV.mjs.map} +1 -1
  90. package/dist/esm/chunk-76OH2Z4Q.mjs +2 -0
  91. package/dist/esm/{chunk-L3E7YJBM.mjs.map → chunk-76OH2Z4Q.mjs.map} +1 -1
  92. package/dist/esm/chunk-A63SMUOU.mjs +2 -0
  93. package/dist/esm/{chunk-UZXDD3QH.mjs.map → chunk-A63SMUOU.mjs.map} +1 -1
  94. package/dist/esm/chunk-AH44UPM4.mjs +2 -0
  95. package/dist/esm/{chunk-EYHRMZPO.mjs.map → chunk-AH44UPM4.mjs.map} +1 -1
  96. package/dist/esm/chunk-AVSM2BJR.mjs +2 -0
  97. package/dist/esm/{chunk-7CNDQXDM.mjs.map → chunk-AVSM2BJR.mjs.map} +1 -1
  98. package/dist/esm/chunk-B5NYEWNM.mjs +2 -0
  99. package/dist/esm/{chunk-JKM62HRP.mjs.map → chunk-B5NYEWNM.mjs.map} +1 -1
  100. package/dist/esm/chunk-BCUSI3N6.mjs +2 -0
  101. package/dist/esm/{chunk-YV7M4CFP.mjs.map → chunk-BCUSI3N6.mjs.map} +1 -1
  102. package/dist/esm/chunk-BIGX2RJL.mjs +2 -0
  103. package/dist/esm/{chunk-AF7GBOBQ.mjs.map → chunk-BIGX2RJL.mjs.map} +1 -1
  104. package/dist/esm/chunk-BOYYQAB4.mjs +2 -0
  105. package/dist/esm/{chunk-26HCJOBL.mjs.map → chunk-BOYYQAB4.mjs.map} +1 -1
  106. package/dist/esm/chunk-BSUYPXRD.mjs +2 -0
  107. package/dist/esm/{chunk-G2VEDGO7.mjs.map → chunk-BSUYPXRD.mjs.map} +1 -1
  108. package/dist/esm/chunk-DCNBMUKN.mjs +2 -0
  109. package/dist/esm/chunk-DCNBMUKN.mjs.map +1 -0
  110. package/dist/esm/chunk-DVIRUFCY.mjs +2 -0
  111. package/dist/esm/{chunk-OL2YPOXZ.mjs.map → chunk-DVIRUFCY.mjs.map} +1 -1
  112. package/dist/esm/chunk-EJMPY5MF.mjs +2 -0
  113. package/dist/esm/{chunk-BEEISUWP.mjs.map → chunk-EJMPY5MF.mjs.map} +1 -1
  114. package/dist/esm/chunk-EQSON7Y5.mjs +2 -0
  115. package/dist/esm/{chunk-FBF77YDQ.mjs.map → chunk-EQSON7Y5.mjs.map} +1 -1
  116. package/dist/esm/chunk-EXMQBH3I.mjs +2 -0
  117. package/dist/esm/{chunk-EPUYKFAT.mjs.map → chunk-EXMQBH3I.mjs.map} +1 -1
  118. package/dist/esm/chunk-EXP5STXZ.mjs +2 -0
  119. package/dist/esm/chunk-EXP5STXZ.mjs.map +1 -0
  120. package/dist/esm/chunk-F5PNGH44.mjs +2 -0
  121. package/dist/esm/{chunk-UZLU45X7.mjs.map → chunk-F5PNGH44.mjs.map} +1 -1
  122. package/dist/esm/chunk-F7EMGK4M.mjs +2 -0
  123. package/dist/esm/{chunk-NMKCJNQM.mjs.map → chunk-F7EMGK4M.mjs.map} +1 -1
  124. package/dist/esm/chunk-FVA2OPG4.mjs +2 -0
  125. package/dist/esm/chunk-G5MGSV7Y.mjs +2 -0
  126. package/dist/esm/{chunk-ANOJYMO2.mjs.map → chunk-G5MGSV7Y.mjs.map} +1 -1
  127. package/dist/esm/chunk-G773HST5.mjs +2 -0
  128. package/dist/esm/chunk-G773HST5.mjs.map +1 -0
  129. package/dist/esm/chunk-GGPA6QTN.mjs +2 -0
  130. package/dist/esm/{chunk-CZ22MKHG.mjs.map → chunk-GGPA6QTN.mjs.map} +1 -1
  131. package/dist/esm/chunk-GKERWKMB.mjs +2 -0
  132. package/dist/esm/{chunk-LMUCX6RP.mjs.map → chunk-GKERWKMB.mjs.map} +1 -1
  133. package/dist/esm/chunk-GR4PHW7K.mjs +2 -0
  134. package/dist/esm/{chunk-I2ZYQVA3.mjs.map → chunk-GR4PHW7K.mjs.map} +1 -1
  135. package/dist/esm/chunk-H6YNXJNF.mjs +2 -0
  136. package/dist/esm/{chunk-ACAXM6CI.mjs.map → chunk-H6YNXJNF.mjs.map} +1 -1
  137. package/dist/esm/chunk-HAT5S2XX.mjs +2 -0
  138. package/dist/esm/{chunk-KWX2PWAP.mjs.map → chunk-HAT5S2XX.mjs.map} +1 -1
  139. package/dist/esm/chunk-HBQLX5QF.mjs +2 -0
  140. package/dist/esm/{chunk-WVT25KQR.mjs.map → chunk-HBQLX5QF.mjs.map} +1 -1
  141. package/dist/esm/chunk-IVOEXGOG.mjs +2 -0
  142. package/dist/esm/{chunk-LD2CRNA2.mjs.map → chunk-IVOEXGOG.mjs.map} +1 -1
  143. package/dist/esm/chunk-IVVWQKCF.mjs +2 -0
  144. package/dist/esm/{chunk-JWEFNE2S.mjs.map → chunk-IVVWQKCF.mjs.map} +1 -1
  145. package/dist/esm/chunk-JOROI7FE.mjs +2 -0
  146. package/dist/esm/{chunk-U6N546EH.mjs.map → chunk-JOROI7FE.mjs.map} +1 -1
  147. package/dist/esm/chunk-JUNVPIW4.mjs +2 -0
  148. package/dist/esm/chunk-JUNVPIW4.mjs.map +1 -0
  149. package/dist/esm/chunk-KEYAPEAX.mjs +2 -0
  150. package/dist/esm/{chunk-6J7C4S3H.mjs.map → chunk-KEYAPEAX.mjs.map} +1 -1
  151. package/dist/esm/chunk-KRIIRH5L.mjs +2 -0
  152. package/dist/esm/{chunk-67J3MGN7.mjs.map → chunk-KRIIRH5L.mjs.map} +1 -1
  153. package/dist/esm/chunk-LFUBUXHD.mjs +2 -0
  154. package/dist/esm/{chunk-J24CDBEH.mjs.map → chunk-LFUBUXHD.mjs.map} +1 -1
  155. package/dist/esm/chunk-LG7RJQ57.mjs +2 -0
  156. package/dist/esm/{chunk-QMM2KL6C.mjs.map → chunk-LG7RJQ57.mjs.map} +1 -1
  157. package/dist/esm/chunk-LJZPPBTH.mjs +2 -0
  158. package/dist/esm/chunk-LJZPPBTH.mjs.map +1 -0
  159. package/dist/esm/chunk-LR65XHSF.mjs +2 -0
  160. package/dist/esm/{chunk-PU5AFUX3.mjs.map → chunk-LR65XHSF.mjs.map} +1 -1
  161. package/dist/esm/chunk-LS6G4DZV.mjs +2 -0
  162. package/dist/esm/{chunk-2UN35LUX.mjs.map → chunk-LS6G4DZV.mjs.map} +1 -1
  163. package/dist/esm/chunk-MLDQ2TY2.mjs +2 -0
  164. package/dist/esm/{chunk-6BI4XTJN.mjs.map → chunk-MLDQ2TY2.mjs.map} +1 -1
  165. package/dist/esm/chunk-MNVDBUF3.mjs +2 -0
  166. package/dist/esm/{chunk-NGUFBDTH.mjs.map → chunk-MNVDBUF3.mjs.map} +1 -1
  167. package/dist/esm/chunk-MQGW234H.mjs +2 -0
  168. package/dist/esm/{chunk-IX2XMCWZ.mjs.map → chunk-MQGW234H.mjs.map} +1 -1
  169. package/dist/esm/chunk-NBO2BDDZ.mjs +2 -0
  170. package/dist/esm/{chunk-3WDVQYWL.mjs.map → chunk-NBO2BDDZ.mjs.map} +1 -1
  171. package/dist/esm/chunk-NDJKEFNU.mjs +2 -0
  172. package/dist/esm/{chunk-YSSWVBLZ.mjs.map → chunk-NDJKEFNU.mjs.map} +1 -1
  173. package/dist/esm/chunk-NKDHR2DA.mjs +2 -0
  174. package/dist/esm/{chunk-AW4P5HCX.mjs.map → chunk-NKDHR2DA.mjs.map} +1 -1
  175. package/dist/esm/chunk-NMD45OTM.mjs +2 -0
  176. package/dist/esm/{chunk-5J7P2N3A.mjs.map → chunk-NMD45OTM.mjs.map} +1 -1
  177. package/dist/esm/chunk-NPFW6ZFY.mjs +2 -0
  178. package/dist/esm/{chunk-4SPKF2Q3.mjs.map → chunk-NPFW6ZFY.mjs.map} +1 -1
  179. package/dist/esm/chunk-NWOMSL6K.mjs +2 -0
  180. package/dist/esm/{chunk-PLUMRBKI.mjs.map → chunk-NWOMSL6K.mjs.map} +1 -1
  181. package/dist/esm/chunk-O4BBULNE.mjs +2 -0
  182. package/dist/esm/{chunk-SRKSXJ5U.mjs.map → chunk-O4BBULNE.mjs.map} +1 -1
  183. package/dist/esm/chunk-OHRL766V.mjs +2 -0
  184. package/dist/esm/{chunk-IUC6XUYA.mjs.map → chunk-OHRL766V.mjs.map} +1 -1
  185. package/dist/esm/chunk-OPTI3MH2.mjs +2 -0
  186. package/dist/esm/{chunk-2P7TONQL.mjs.map → chunk-OPTI3MH2.mjs.map} +1 -1
  187. package/dist/esm/chunk-ORGMRM5K.mjs +2 -0
  188. package/dist/esm/{chunk-6LK3MDX7.mjs.map → chunk-ORGMRM5K.mjs.map} +1 -1
  189. package/dist/esm/chunk-OTNGLTKS.mjs +2 -0
  190. package/dist/esm/{chunk-I5BTSNTY.mjs.map → chunk-OTNGLTKS.mjs.map} +1 -1
  191. package/dist/esm/chunk-P2EKDA7R.mjs +2 -0
  192. package/dist/esm/{chunk-2LHXYQXO.mjs.map → chunk-P2EKDA7R.mjs.map} +1 -1
  193. package/dist/esm/chunk-P5V7OZNN.mjs +2 -0
  194. package/dist/esm/{chunk-6AO2MJMN.mjs.map → chunk-P5V7OZNN.mjs.map} +1 -1
  195. package/dist/esm/chunk-PDNA4H34.mjs +2 -0
  196. package/dist/esm/{chunk-DNMI5PWU.mjs.map → chunk-PDNA4H34.mjs.map} +1 -1
  197. package/dist/esm/chunk-Q7MD4V7H.mjs +2 -0
  198. package/dist/esm/{chunk-B673XLJY.mjs.map → chunk-Q7MD4V7H.mjs.map} +1 -1
  199. package/dist/esm/chunk-QQHA2Y46.mjs +2 -0
  200. package/dist/esm/{chunk-3V5WGOZH.mjs.map → chunk-QQHA2Y46.mjs.map} +1 -1
  201. package/dist/esm/chunk-QQU4IQ27.mjs +2 -0
  202. package/dist/esm/chunk-QQU4IQ27.mjs.map +1 -0
  203. package/dist/esm/chunk-SCHZ67F3.mjs +2 -0
  204. package/dist/esm/chunk-SCHZ67F3.mjs.map +1 -0
  205. package/dist/esm/chunk-SCYGW3VV.mjs +2 -0
  206. package/dist/esm/chunk-SCYGW3VV.mjs.map +1 -0
  207. package/dist/esm/chunk-SUAA25UP.mjs +2 -0
  208. package/dist/esm/{chunk-LMUNGBGS.mjs.map → chunk-SUAA25UP.mjs.map} +1 -1
  209. package/dist/esm/chunk-SUJLWCRN.mjs +2 -0
  210. package/dist/esm/{chunk-P3RTJ6VC.mjs.map → chunk-SUJLWCRN.mjs.map} +1 -1
  211. package/dist/esm/chunk-T53MZO2U.mjs +2 -0
  212. package/dist/esm/{chunk-7F5TMJVQ.mjs.map → chunk-T53MZO2U.mjs.map} +1 -1
  213. package/dist/esm/chunk-TDGQGILY.mjs +2 -0
  214. package/dist/esm/{chunk-LITCPMVC.mjs.map → chunk-TDGQGILY.mjs.map} +1 -1
  215. package/dist/esm/chunk-U6Z4FNB7.mjs +2 -0
  216. package/dist/esm/{chunk-AC3OGAL6.mjs.map → chunk-U6Z4FNB7.mjs.map} +1 -1
  217. package/dist/esm/chunk-UAL27G6B.mjs +2 -0
  218. package/dist/esm/chunk-UAL27G6B.mjs.map +1 -0
  219. package/dist/esm/chunk-UWPO7WWS.mjs +2 -0
  220. package/dist/esm/{chunk-GKF3HFY2.mjs.map → chunk-UWPO7WWS.mjs.map} +1 -1
  221. package/dist/esm/{chunk-NFA2AU5E.mjs → chunk-VHNX2NUR.mjs} +29 -352
  222. package/dist/esm/{chunk-NFA2AU5E.mjs.map → chunk-VHNX2NUR.mjs.map} +1 -1
  223. package/dist/esm/chunk-VQVNUN5Y.mjs +2 -0
  224. package/dist/esm/{chunk-7PLTJUOO.mjs.map → chunk-VQVNUN5Y.mjs.map} +1 -1
  225. package/dist/esm/chunk-VTEZ6TBO.mjs +2 -0
  226. package/dist/esm/{chunk-ZZA2BSOF.mjs.map → chunk-VTEZ6TBO.mjs.map} +1 -1
  227. package/dist/esm/chunk-VYXJ7FUF.mjs +2 -0
  228. package/dist/esm/{chunk-MXMVEGUO.mjs.map → chunk-VYXJ7FUF.mjs.map} +1 -1
  229. package/dist/esm/chunk-VYXS7TLB.mjs +2 -0
  230. package/dist/esm/{chunk-BMXV6WQK.mjs.map → chunk-VYXS7TLB.mjs.map} +1 -1
  231. package/dist/esm/chunk-WLZYSLHP.mjs +2 -0
  232. package/dist/esm/{chunk-PNGNBHMD.mjs.map → chunk-WLZYSLHP.mjs.map} +1 -1
  233. package/dist/esm/chunk-WRRQ7L5K.mjs +2 -0
  234. package/dist/esm/{chunk-V2LEZDNS.mjs.map → chunk-WRRQ7L5K.mjs.map} +1 -1
  235. package/dist/esm/chunk-WX6P3Q4I.mjs +2 -0
  236. package/dist/esm/{chunk-XBY4UM6M.mjs.map → chunk-WX6P3Q4I.mjs.map} +1 -1
  237. package/dist/esm/chunk-WYQLUB4H.mjs +2 -0
  238. package/dist/esm/{chunk-WKNU6EPA.mjs.map → chunk-WYQLUB4H.mjs.map} +1 -1
  239. package/dist/esm/chunk-XSTCHOUI.mjs +2 -0
  240. package/dist/esm/chunk-XSTCHOUI.mjs.map +1 -0
  241. package/dist/esm/chunk-YDZBU2DJ.mjs +2 -0
  242. package/dist/esm/{chunk-YJJTCGDT.mjs.map → chunk-YDZBU2DJ.mjs.map} +1 -1
  243. package/dist/esm/chunk-YFMFXRJX.mjs +2 -0
  244. package/dist/esm/{chunk-GDE3IBAB.mjs.map → chunk-YFMFXRJX.mjs.map} +1 -1
  245. package/dist/esm/chunk-YPHH6CAO.mjs +2 -0
  246. package/dist/esm/{chunk-GWS7OLIU.mjs.map → chunk-YPHH6CAO.mjs.map} +1 -1
  247. package/dist/esm/chunk-YPQZJ72F.mjs +2 -0
  248. package/dist/esm/{chunk-65TWSJTX.mjs.map → chunk-YPQZJ72F.mjs.map} +1 -1
  249. package/dist/esm/chunk-YUNDX5I7.mjs +2 -0
  250. package/dist/esm/{chunk-YQPKNTIN.mjs.map → chunk-YUNDX5I7.mjs.map} +1 -1
  251. package/dist/esm/chunk-Z2AJWV6D.mjs +2 -0
  252. package/dist/esm/chunk-Z2AJWV6D.mjs.map +1 -0
  253. package/dist/esm/chunk-ZNC3FRSK.mjs +2 -0
  254. package/dist/esm/{chunk-MY6PZIXF.mjs.map → chunk-ZNC3FRSK.mjs.map} +1 -1
  255. package/dist/esm/chunk-ZWX3NHGU.mjs +2 -0
  256. package/dist/esm/chunk-ZWX3NHGU.mjs.map +1 -0
  257. package/dist/esm/chunk-ZXVQ2OBJ.mjs +2 -0
  258. package/dist/esm/{chunk-N6K44CGJ.mjs.map → chunk-ZXVQ2OBJ.mjs.map} +1 -1
  259. package/dist/esm/chunk-ZXYTLPP6.mjs +2 -0
  260. package/dist/esm/{chunk-NUA7L6XF.mjs.map → chunk-ZXYTLPP6.mjs.map} +1 -1
  261. package/dist/esm/cli/index.mjs +1 -12
  262. package/dist/esm/cli/localNode.mjs +1 -8
  263. package/dist/esm/cli/move.mjs +1 -7
  264. package/dist/esm/client/core.mjs +1 -28
  265. package/dist/esm/client/get.mjs +1 -33
  266. package/dist/esm/client/index.mjs +1 -56
  267. package/dist/esm/client/post.mjs +1 -37
  268. package/dist/esm/client/types.mjs +1 -8
  269. package/dist/esm/core/account/index.mjs +1 -20
  270. package/dist/esm/core/account/utils/address.mjs +1 -18
  271. package/dist/esm/core/account/utils/index.mjs +1 -19
  272. package/dist/esm/core/accountAddress.mjs +1 -15
  273. package/dist/esm/core/authenticationKey.mjs +1 -14
  274. package/dist/esm/core/common.mjs +1 -7
  275. package/dist/esm/core/crypto/ed25519.mjs +1 -31
  276. package/dist/esm/core/crypto/ephemeral.mjs +1 -28
  277. package/dist/esm/core/crypto/hdKey.mjs +1 -25
  278. package/dist/esm/core/crypto/index.mjs +1 -143
  279. package/dist/esm/core/crypto/keyless.mjs +1 -71
  280. package/dist/esm/core/crypto/multiEd25519.mjs +1 -28
  281. package/dist/esm/core/crypto/multiKey.mjs +1 -47
  282. package/dist/esm/core/crypto/poseidon.mjs +1 -15
  283. package/dist/esm/core/crypto/privateKey.mjs +1 -1
  284. package/dist/esm/core/crypto/proof.mjs +1 -19
  285. package/dist/esm/core/crypto/publicKey.mjs +1 -21
  286. package/dist/esm/core/crypto/secp256k1.mjs +1 -27
  287. package/dist/esm/core/crypto/signature.mjs +1 -19
  288. package/dist/esm/core/crypto/singleKey.mjs +1 -46
  289. package/dist/esm/core/crypto/utils.mjs +1 -9
  290. package/dist/esm/core/hex.mjs +1 -10
  291. package/dist/esm/core/index.mjs +1 -170
  292. package/dist/esm/index.d.mts +4 -6
  293. package/dist/esm/index.mjs +1 -673
  294. package/dist/esm/internal/account.mjs +1 -112
  295. package/dist/esm/internal/ans.mjs +1 -128
  296. package/dist/esm/internal/coin.mjs +1 -89
  297. package/dist/esm/internal/digitalAsset.mjs +1 -135
  298. package/dist/esm/internal/event.mjs +1 -61
  299. package/dist/esm/internal/faucet.mjs +1 -56
  300. package/dist/esm/internal/fungibleAsset.mjs +1 -95
  301. package/dist/esm/internal/general.mjs +1 -41
  302. package/dist/esm/internal/keyless.d.mts +3 -14
  303. package/dist/esm/internal/keyless.mjs +1 -86
  304. package/dist/esm/internal/object.mjs +1 -57
  305. package/dist/esm/internal/staking.mjs +1 -59
  306. package/dist/esm/internal/table.mjs +1 -36
  307. package/dist/esm/internal/transaction.mjs +1 -55
  308. package/dist/esm/internal/transactionSubmission.mjs +1 -106
  309. package/dist/esm/internal/view.mjs +1 -90
  310. package/dist/esm/transactions/authenticator/account.mjs +1 -57
  311. package/dist/esm/transactions/authenticator/index.mjs +1 -76
  312. package/dist/esm/transactions/authenticator/transaction.mjs +1 -64
  313. package/dist/esm/transactions/index.mjs +1 -291
  314. package/dist/esm/transactions/instances/chainId.mjs +1 -11
  315. package/dist/esm/transactions/instances/identifier.mjs +1 -11
  316. package/dist/esm/transactions/instances/index.mjs +1 -112
  317. package/dist/esm/transactions/instances/moduleId.mjs +1 -54
  318. package/dist/esm/transactions/instances/multiAgentTransaction.mjs +1 -59
  319. package/dist/esm/transactions/instances/rawTransaction.mjs +1 -64
  320. package/dist/esm/transactions/instances/rotationProofChallenge.mjs +1 -20
  321. package/dist/esm/transactions/instances/signedTransaction.mjs +1 -61
  322. package/dist/esm/transactions/instances/simpleTransaction.mjs +1 -59
  323. package/dist/esm/transactions/instances/transactionArgument.mjs +1 -1
  324. package/dist/esm/transactions/instances/transactionPayload.mjs +1 -72
  325. package/dist/esm/transactions/management/accountSequenceNumber.mjs +1 -79
  326. package/dist/esm/transactions/management/asyncQueue.mjs +1 -9
  327. package/dist/esm/transactions/management/index.mjs +1 -99
  328. package/dist/esm/transactions/management/transactionWorker.mjs +1 -95
  329. package/dist/esm/transactions/transactionBuilder/helpers.mjs +1 -93
  330. package/dist/esm/transactions/transactionBuilder/index.mjs +1 -169
  331. package/dist/esm/transactions/transactionBuilder/remoteAbi.mjs +1 -91
  332. package/dist/esm/transactions/transactionBuilder/signingMessage.mjs +1 -73
  333. package/dist/esm/transactions/transactionBuilder/transactionBuilder.mjs +1 -103
  334. package/dist/esm/transactions/typeTag/index.mjs +1 -90
  335. package/dist/esm/transactions/typeTag/parser.mjs +1 -59
  336. package/dist/esm/transactions/types.d.mts +2 -2
  337. package/dist/esm/transactions/types.mjs +1 -1
  338. package/dist/esm/types/generated/queries.mjs +1 -61
  339. package/dist/esm/types/generated/types.mjs +1 -833
  340. package/dist/esm/types/generated/types.mjs.map +1 -1
  341. package/dist/esm/types/index.d.mts +3 -3
  342. package/dist/esm/types/index.mjs +1 -70
  343. package/dist/esm/types/indexer.mjs +1 -1
  344. package/dist/esm/utils/apiEndpoints.mjs +1 -21
  345. package/dist/esm/utils/const.d.mts +2 -1
  346. package/dist/esm/utils/const.mjs +1 -21
  347. package/dist/esm/utils/helpers.d.mts +41 -1
  348. package/dist/esm/utils/helpers.mjs +1 -17
  349. package/dist/esm/utils/index.d.mts +2 -2
  350. package/dist/esm/utils/index.mjs +1 -70
  351. package/dist/esm/utils/memoize.mjs +1 -9
  352. package/dist/esm/utils/normalizeBundle.mjs +1 -19
  353. package/dist/esm/version.d.mts +1 -1
  354. package/dist/esm/version.mjs +1 -7
  355. package/package.json +1 -1
  356. package/src/account/KeylessAccount.ts +1 -1
  357. package/src/account/MultiKeyAccount.ts +4 -4
  358. package/src/api/account.ts +31 -4
  359. package/src/api/keyless.ts +3 -35
  360. package/src/bcs/serializable/moveStructs.ts +39 -7
  361. package/src/cli/move.ts +1 -1
  362. package/src/core/crypto/singleKey.ts +0 -6
  363. package/src/internal/account.ts +6 -5
  364. package/src/internal/event.ts +10 -3
  365. package/src/internal/keyless.ts +2 -31
  366. package/src/transactions/instances/transactionPayload.ts +3 -1
  367. package/src/transactions/types.ts +4 -2
  368. package/src/types/index.ts +1 -1
  369. package/src/utils/apiEndpoints.ts +4 -6
  370. package/src/utils/const.ts +1 -0
  371. package/src/utils/helpers.ts +70 -0
  372. package/src/version.ts +1 -1
  373. package/dist/common/chunk-CZKNJSPC.js +0 -46
  374. package/dist/common/chunk-CZKNJSPC.js.map +0 -1
  375. package/dist/esm/account/FederatedKeylessAccount.d.mts +0 -177
  376. package/dist/esm/account/FederatedKeylessAccount.mjs +0 -71
  377. package/dist/esm/chunk-26HCJOBL.mjs +0 -23
  378. package/dist/esm/chunk-2CPL3GJ7.mjs +0 -132
  379. package/dist/esm/chunk-2CPL3GJ7.mjs.map +0 -1
  380. package/dist/esm/chunk-2LHXYQXO.mjs +0 -673
  381. package/dist/esm/chunk-2P7TONQL.mjs +0 -36
  382. package/dist/esm/chunk-2UN35LUX.mjs +0 -84
  383. package/dist/esm/chunk-2ZOJUUXC.mjs +0 -121
  384. package/dist/esm/chunk-2ZOJUUXC.mjs.map +0 -1
  385. package/dist/esm/chunk-3NHOLSZE.mjs +0 -65
  386. package/dist/esm/chunk-3NHOLSZE.mjs.map +0 -1
  387. package/dist/esm/chunk-3V5WGOZH.mjs +0 -118
  388. package/dist/esm/chunk-3WDVQYWL.mjs +0 -51
  389. package/dist/esm/chunk-4FVXWQGX.mjs +0 -211
  390. package/dist/esm/chunk-4FVXWQGX.mjs.map +0 -1
  391. package/dist/esm/chunk-4K4TZF3H.mjs +0 -38
  392. package/dist/esm/chunk-4K4TZF3H.mjs.map +0 -1
  393. package/dist/esm/chunk-4SPKF2Q3.mjs +0 -91
  394. package/dist/esm/chunk-5J7P2N3A.mjs +0 -92
  395. package/dist/esm/chunk-64OZO6BS.mjs +0 -54
  396. package/dist/esm/chunk-65TWSJTX.mjs +0 -252
  397. package/dist/esm/chunk-67J3MGN7.mjs +0 -195
  398. package/dist/esm/chunk-6AO2MJMN.mjs +0 -49
  399. package/dist/esm/chunk-6BI4XTJN.mjs +0 -22
  400. package/dist/esm/chunk-6J7C4S3H.mjs +0 -255
  401. package/dist/esm/chunk-6LK3MDX7.mjs +0 -578
  402. package/dist/esm/chunk-6SEUVXPK.mjs +0 -250
  403. package/dist/esm/chunk-6SEUVXPK.mjs.map +0 -1
  404. package/dist/esm/chunk-6XNCA4KS.mjs +0 -33
  405. package/dist/esm/chunk-7CNDQXDM.mjs +0 -429
  406. package/dist/esm/chunk-7F5TMJVQ.mjs +0 -410
  407. package/dist/esm/chunk-7PLTJUOO.mjs +0 -66
  408. package/dist/esm/chunk-AC3OGAL6.mjs +0 -87
  409. package/dist/esm/chunk-ACAXM6CI.mjs +0 -32
  410. package/dist/esm/chunk-AF7GBOBQ.mjs +0 -315
  411. package/dist/esm/chunk-ANOJYMO2.mjs +0 -94
  412. package/dist/esm/chunk-AW4P5HCX.mjs +0 -53
  413. package/dist/esm/chunk-B673XLJY.mjs +0 -309
  414. package/dist/esm/chunk-BBCNBKEC.mjs +0 -104
  415. package/dist/esm/chunk-BBCNBKEC.mjs.map +0 -1
  416. package/dist/esm/chunk-BEEISUWP.mjs +0 -42
  417. package/dist/esm/chunk-BMXV6WQK.mjs +0 -463
  418. package/dist/esm/chunk-CIPO346F.mjs +0 -35
  419. package/dist/esm/chunk-CZ22MKHG.mjs +0 -41
  420. package/dist/esm/chunk-DNMI5PWU.mjs +0 -100
  421. package/dist/esm/chunk-DPM4FHN4.mjs +0 -33
  422. package/dist/esm/chunk-DXGNWBVW.mjs +0 -127
  423. package/dist/esm/chunk-EKY7QRXH.mjs +0 -79
  424. package/dist/esm/chunk-EPUYKFAT.mjs +0 -73
  425. package/dist/esm/chunk-EYHRMZPO.mjs +0 -34
  426. package/dist/esm/chunk-FBF77YDQ.mjs +0 -243
  427. package/dist/esm/chunk-FBRETS2O.mjs +0 -74
  428. package/dist/esm/chunk-FH6RKWVF.mjs +0 -72
  429. package/dist/esm/chunk-FH6RKWVF.mjs.map +0 -1
  430. package/dist/esm/chunk-G2VEDGO7.mjs +0 -15
  431. package/dist/esm/chunk-GDE3IBAB.mjs +0 -126
  432. package/dist/esm/chunk-GKF3HFY2.mjs +0 -232
  433. package/dist/esm/chunk-GMGJ6Q5P.mjs +0 -166
  434. package/dist/esm/chunk-GWS7OLIU.mjs +0 -173
  435. package/dist/esm/chunk-HCIGCJ62.mjs +0 -70
  436. package/dist/esm/chunk-I2ZYQVA3.mjs +0 -142
  437. package/dist/esm/chunk-I5BTSNTY.mjs +0 -89
  438. package/dist/esm/chunk-IUC6XUYA.mjs +0 -346
  439. package/dist/esm/chunk-IX2XMCWZ.mjs +0 -22
  440. package/dist/esm/chunk-J24CDBEH.mjs +0 -91
  441. package/dist/esm/chunk-JKM62HRP.mjs +0 -109
  442. package/dist/esm/chunk-JRVQNM7A.mjs +0 -441
  443. package/dist/esm/chunk-JRVQNM7A.mjs.map +0 -1
  444. package/dist/esm/chunk-JWEFNE2S.mjs +0 -121
  445. package/dist/esm/chunk-K77JV6D7.mjs +0 -414
  446. package/dist/esm/chunk-K77JV6D7.mjs.map +0 -1
  447. package/dist/esm/chunk-KWX2PWAP.mjs +0 -349
  448. package/dist/esm/chunk-L3E7YJBM.mjs +0 -25
  449. package/dist/esm/chunk-LD2CRNA2.mjs +0 -265
  450. package/dist/esm/chunk-LITCPMVC.mjs +0 -41
  451. package/dist/esm/chunk-LMUCX6RP.mjs +0 -43
  452. package/dist/esm/chunk-LMUNGBGS.mjs +0 -58
  453. package/dist/esm/chunk-M55VZUKD.mjs +0 -64
  454. package/dist/esm/chunk-M55VZUKD.mjs.map +0 -1
  455. package/dist/esm/chunk-MQALTYRJ.mjs +0 -127
  456. package/dist/esm/chunk-MXMVEGUO.mjs +0 -93
  457. package/dist/esm/chunk-MY6PZIXF.mjs +0 -254
  458. package/dist/esm/chunk-N6K44CGJ.mjs +0 -7
  459. package/dist/esm/chunk-NGUFBDTH.mjs +0 -129
  460. package/dist/esm/chunk-NMKCJNQM.mjs +0 -20
  461. package/dist/esm/chunk-NUA7L6XF.mjs +0 -120
  462. package/dist/esm/chunk-NYELBSVO.mjs +0 -172
  463. package/dist/esm/chunk-NYELBSVO.mjs.map +0 -1
  464. package/dist/esm/chunk-OL2YPOXZ.mjs +0 -349
  465. package/dist/esm/chunk-OR7TEZ25.mjs +0 -16
  466. package/dist/esm/chunk-OR7TEZ25.mjs.map +0 -1
  467. package/dist/esm/chunk-P3RTJ6VC.mjs +0 -324
  468. package/dist/esm/chunk-PLUMRBKI.mjs +0 -241
  469. package/dist/esm/chunk-PNGNBHMD.mjs +0 -44
  470. package/dist/esm/chunk-PSRD6U34.mjs +0 -19
  471. package/dist/esm/chunk-PSW5OBY2.mjs +0 -359
  472. package/dist/esm/chunk-PSW5OBY2.mjs.map +0 -1
  473. package/dist/esm/chunk-PU5AFUX3.mjs +0 -52
  474. package/dist/esm/chunk-QMM2KL6C.mjs +0 -12
  475. package/dist/esm/chunk-S7KNZC2A.mjs +0 -45
  476. package/dist/esm/chunk-SBB4YEPT.mjs +0 -17
  477. package/dist/esm/chunk-SIJELMDP.mjs +0 -29
  478. package/dist/esm/chunk-SRKSXJ5U.mjs +0 -242
  479. package/dist/esm/chunk-U6N546EH.mjs +0 -43
  480. package/dist/esm/chunk-UZLU45X7.mjs +0 -274
  481. package/dist/esm/chunk-UZXDD3QH.mjs +0 -327
  482. package/dist/esm/chunk-V2LEZDNS.mjs +0 -29
  483. package/dist/esm/chunk-WKNU6EPA.mjs +0 -40
  484. package/dist/esm/chunk-WVT25KQR.mjs +0 -51
  485. package/dist/esm/chunk-XBY4UM6M.mjs +0 -206
  486. package/dist/esm/chunk-XUNU6GVQ.mjs +0 -319
  487. package/dist/esm/chunk-XUNU6GVQ.mjs.map +0 -1
  488. package/dist/esm/chunk-YJJTCGDT.mjs +0 -49
  489. package/dist/esm/chunk-YPHGPN2P.mjs +0 -33
  490. package/dist/esm/chunk-YPHGPN2P.mjs.map +0 -1
  491. package/dist/esm/chunk-YQPKNTIN.mjs +0 -23
  492. package/dist/esm/chunk-YSSWVBLZ.mjs +0 -135
  493. package/dist/esm/chunk-YV7M4CFP.mjs +0 -137
  494. package/dist/esm/chunk-ZR36Y2RX.mjs +0 -93
  495. package/dist/esm/chunk-ZZA2BSOF.mjs +0 -97
  496. package/dist/esm/core/crypto/federatedKeyless.d.mts +0 -97
  497. package/dist/esm/core/crypto/federatedKeyless.mjs +0 -43
  498. package/dist/esm/core/crypto/federatedKeyless.mjs.map +0 -1
  499. package/src/account/FederatedKeylessAccount.ts +0 -328
  500. package/src/core/crypto/federatedKeyless.ts +0 -134
  501. package/src/internal/move/jwks/build/jwk/BuildInfo.yaml +0 -56
  502. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/account.mv +0 -0
  503. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/aggregator.mv +0 -0
  504. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/aggregator_factory.mv +0 -0
  505. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/aggregator_v2.mv +0 -0
  506. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/aptos_account.mv +0 -0
  507. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/aptos_coin.mv +0 -0
  508. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/aptos_governance.mv +0 -0
  509. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/block.mv +0 -0
  510. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/chain_id.mv +0 -0
  511. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/chain_status.mv +0 -0
  512. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/code.mv +0 -0
  513. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/coin.mv +0 -0
  514. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/config_buffer.mv +0 -0
  515. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/consensus_config.mv +0 -0
  516. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/create_signer.mv +0 -0
  517. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/delegation_pool.mv +0 -0
  518. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/dispatchable_fungible_asset.mv +0 -0
  519. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/dkg.mv +0 -0
  520. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/event.mv +0 -0
  521. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/execution_config.mv +0 -0
  522. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/function_info.mv +0 -0
  523. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/fungible_asset.mv +0 -0
  524. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/gas_schedule.mv +0 -0
  525. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/genesis.mv +0 -0
  526. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/governance_proposal.mv +0 -0
  527. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/guid.mv +0 -0
  528. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/jwk_consensus_config.mv +0 -0
  529. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/jwks.mv +0 -0
  530. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/keyless_account.mv +0 -0
  531. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/managed_coin.mv +0 -0
  532. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/multisig_account.mv +0 -0
  533. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/object.mv +0 -0
  534. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/object_code_deployment.mv +0 -0
  535. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/optional_aggregator.mv +0 -0
  536. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/primary_fungible_store.mv +0 -0
  537. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/randomness.mv +0 -0
  538. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/randomness_api_v0_config.mv +0 -0
  539. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/randomness_config.mv +0 -0
  540. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/randomness_config_seqnum.mv +0 -0
  541. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/reconfiguration.mv +0 -0
  542. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/reconfiguration_state.mv +0 -0
  543. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/reconfiguration_with_dkg.mv +0 -0
  544. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/resource_account.mv +0 -0
  545. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/stake.mv +0 -0
  546. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/staking_config.mv +0 -0
  547. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/staking_contract.mv +0 -0
  548. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/staking_proxy.mv +0 -0
  549. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/state_storage.mv +0 -0
  550. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/storage_gas.mv +0 -0
  551. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/system_addresses.mv +0 -0
  552. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/timestamp.mv +0 -0
  553. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/transaction_context.mv +0 -0
  554. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/transaction_fee.mv +0 -0
  555. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/transaction_validation.mv +0 -0
  556. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/util.mv +0 -0
  557. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/validator_consensus_info.mv +0 -0
  558. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/version.mv +0 -0
  559. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/vesting.mv +0 -0
  560. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/voting.mv +0 -0
  561. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/any.mv +0 -0
  562. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/aptos_hash.mv +0 -0
  563. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/big_vector.mv +0 -0
  564. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/bls12381.mv +0 -0
  565. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/bls12381_algebra.mv +0 -0
  566. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/bn254_algebra.mv +0 -0
  567. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/capability.mv +0 -0
  568. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/comparator.mv +0 -0
  569. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/copyable_any.mv +0 -0
  570. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/crypto_algebra.mv +0 -0
  571. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/debug.mv +0 -0
  572. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/ed25519.mv +0 -0
  573. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/fixed_point64.mv +0 -0
  574. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/from_bcs.mv +0 -0
  575. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/math128.mv +0 -0
  576. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/math64.mv +0 -0
  577. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/math_fixed.mv +0 -0
  578. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/math_fixed64.mv +0 -0
  579. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/multi_ed25519.mv +0 -0
  580. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/pool_u64.mv +0 -0
  581. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/pool_u64_unbound.mv +0 -0
  582. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/ristretto255.mv +0 -0
  583. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/ristretto255_bulletproofs.mv +0 -0
  584. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/ristretto255_elgamal.mv +0 -0
  585. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/ristretto255_pedersen.mv +0 -0
  586. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/secp256k1.mv +0 -0
  587. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/simple_map.mv +0 -0
  588. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/smart_table.mv +0 -0
  589. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/smart_vector.mv +0 -0
  590. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/string_utils.mv +0 -0
  591. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/table.mv +0 -0
  592. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/table_with_length.mv +0 -0
  593. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/type_info.mv +0 -0
  594. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/MoveStdlib/acl.mv +0 -0
  595. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/MoveStdlib/bcs.mv +0 -0
  596. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/MoveStdlib/bit_vector.mv +0 -0
  597. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/MoveStdlib/error.mv +0 -0
  598. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/MoveStdlib/features.mv +0 -0
  599. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/MoveStdlib/fixed_point32.mv +0 -0
  600. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/MoveStdlib/hash.mv +0 -0
  601. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/MoveStdlib/option.mv +0 -0
  602. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/MoveStdlib/signer.mv +0 -0
  603. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/MoveStdlib/string.mv +0 -0
  604. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/MoveStdlib/vector.mv +0 -0
  605. package/src/internal/move/jwks/build/jwk/bytecode_scripts/main.mv +0 -0
  606. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/account.mvsm +0 -0
  607. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/aggregator.mvsm +0 -0
  608. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/aggregator_factory.mvsm +0 -0
  609. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/aggregator_v2.mvsm +0 -0
  610. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/aptos_account.mvsm +0 -0
  611. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/aptos_coin.mvsm +0 -0
  612. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/aptos_governance.mvsm +0 -0
  613. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/block.mvsm +0 -0
  614. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/chain_id.mvsm +0 -0
  615. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/chain_status.mvsm +0 -0
  616. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/code.mvsm +0 -0
  617. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/coin.mvsm +0 -0
  618. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/config_buffer.mvsm +0 -0
  619. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/consensus_config.mvsm +0 -0
  620. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/create_signer.mvsm +0 -0
  621. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/delegation_pool.mvsm +0 -0
  622. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/dispatchable_fungible_asset.mvsm +0 -0
  623. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/dkg.mvsm +0 -0
  624. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/event.mvsm +0 -0
  625. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/execution_config.mvsm +0 -0
  626. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/function_info.mvsm +0 -0
  627. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/fungible_asset.mvsm +0 -0
  628. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/gas_schedule.mvsm +0 -0
  629. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/genesis.mvsm +0 -0
  630. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/governance_proposal.mvsm +0 -0
  631. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/guid.mvsm +0 -0
  632. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/jwk_consensus_config.mvsm +0 -0
  633. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/jwks.mvsm +0 -0
  634. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/keyless_account.mvsm +0 -0
  635. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/managed_coin.mvsm +0 -0
  636. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/multisig_account.mvsm +0 -0
  637. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/object.mvsm +0 -0
  638. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/object_code_deployment.mvsm +0 -0
  639. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/optional_aggregator.mvsm +0 -0
  640. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/primary_fungible_store.mvsm +0 -0
  641. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/randomness.mvsm +0 -0
  642. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/randomness_api_v0_config.mvsm +0 -0
  643. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/randomness_config.mvsm +0 -0
  644. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/randomness_config_seqnum.mvsm +0 -0
  645. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/reconfiguration.mvsm +0 -0
  646. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/reconfiguration_state.mvsm +0 -0
  647. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/reconfiguration_with_dkg.mvsm +0 -0
  648. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/resource_account.mvsm +0 -0
  649. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/stake.mvsm +0 -0
  650. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/staking_config.mvsm +0 -0
  651. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/staking_contract.mvsm +0 -0
  652. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/staking_proxy.mvsm +0 -0
  653. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/state_storage.mvsm +0 -0
  654. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/storage_gas.mvsm +0 -0
  655. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/system_addresses.mvsm +0 -0
  656. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/timestamp.mvsm +0 -0
  657. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/transaction_context.mvsm +0 -0
  658. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/transaction_fee.mvsm +0 -0
  659. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/transaction_validation.mvsm +0 -0
  660. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/util.mvsm +0 -0
  661. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/validator_consensus_info.mvsm +0 -0
  662. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/version.mvsm +0 -0
  663. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/vesting.mvsm +0 -0
  664. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/voting.mvsm +0 -0
  665. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/any.mvsm +0 -0
  666. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/aptos_hash.mvsm +0 -0
  667. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/big_vector.mvsm +0 -0
  668. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/bls12381.mvsm +0 -0
  669. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/bls12381_algebra.mvsm +0 -0
  670. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/bn254_algebra.mvsm +0 -0
  671. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/capability.mvsm +0 -0
  672. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/comparator.mvsm +0 -0
  673. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/copyable_any.mvsm +0 -0
  674. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/crypto_algebra.mvsm +0 -0
  675. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/debug.mvsm +0 -0
  676. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/ed25519.mvsm +0 -0
  677. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/fixed_point64.mvsm +0 -0
  678. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/from_bcs.mvsm +0 -0
  679. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/math128.mvsm +0 -0
  680. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/math64.mvsm +0 -0
  681. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/math_fixed.mvsm +0 -0
  682. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/math_fixed64.mvsm +0 -0
  683. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/multi_ed25519.mvsm +0 -0
  684. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/pool_u64.mvsm +0 -0
  685. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/pool_u64_unbound.mvsm +0 -0
  686. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/ristretto255.mvsm +0 -0
  687. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/ristretto255_bulletproofs.mvsm +0 -0
  688. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/ristretto255_elgamal.mvsm +0 -0
  689. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/ristretto255_pedersen.mvsm +0 -0
  690. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/secp256k1.mvsm +0 -0
  691. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/simple_map.mvsm +0 -0
  692. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/smart_table.mvsm +0 -0
  693. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/smart_vector.mvsm +0 -0
  694. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/string_utils.mvsm +0 -0
  695. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/table.mvsm +0 -0
  696. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/table_with_length.mvsm +0 -0
  697. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/type_info.mvsm +0 -0
  698. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/MoveStdlib/acl.mvsm +0 -0
  699. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/MoveStdlib/bcs.mvsm +0 -0
  700. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/MoveStdlib/bit_vector.mvsm +0 -0
  701. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/MoveStdlib/error.mvsm +0 -0
  702. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/MoveStdlib/features.mvsm +0 -0
  703. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/MoveStdlib/fixed_point32.mvsm +0 -0
  704. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/MoveStdlib/hash.mvsm +0 -0
  705. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/MoveStdlib/option.mvsm +0 -0
  706. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/MoveStdlib/signer.mvsm +0 -0
  707. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/MoveStdlib/string.mvsm +0 -0
  708. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/MoveStdlib/vector.mvsm +0 -0
  709. package/src/internal/move/jwks/build/jwk/source_maps/main.mvsm +0 -0
  710. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/account.move +0 -1533
  711. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/aggregator.move +0 -48
  712. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/aggregator_factory.move +0 -66
  713. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/aggregator_v2.move +0 -280
  714. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/aptos_account.move +0 -443
  715. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/aptos_coin.move +0 -204
  716. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/aptos_governance.move +0 -1387
  717. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/block.move +0 -394
  718. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/chain_id.move +0 -41
  719. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/chain_status.move +0 -48
  720. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/code.move +0 -367
  721. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/coin.move +0 -2214
  722. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/config_buffer.move +0 -101
  723. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/consensus_config.move +0 -77
  724. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/create_signer.move +0 -21
  725. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/delegation_pool.move +0 -5568
  726. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/dispatchable_fungible_asset.move +0 -228
  727. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/dkg.move +0 -121
  728. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/event.move +0 -92
  729. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/execution_config.move +0 -66
  730. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/function_info.move +0 -100
  731. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/fungible_asset.move +0 -1566
  732. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/gas_schedule.move +0 -176
  733. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/genesis.move +0 -550
  734. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/governance_proposal.move +0 -23
  735. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/guid.move +0 -68
  736. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/jwk_consensus_config.move +0 -148
  737. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/jwks.move +0 -817
  738. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/keyless_account.move +0 -312
  739. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/managed_coin.move +0 -205
  740. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/multisig_account.move +0 -2477
  741. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/object.move +0 -1073
  742. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/object_code_deployment.move +0 -147
  743. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/optional_aggregator.move +0 -295
  744. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/primary_fungible_store.move +0 -405
  745. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/randomness.move +0 -574
  746. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/randomness_api_v0_config.move +0 -57
  747. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/randomness_config.move +0 -153
  748. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/randomness_config_seqnum.move +0 -49
  749. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/reconfiguration.move +0 -237
  750. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/reconfiguration_state.move +0 -132
  751. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/reconfiguration_with_dkg.move +0 -69
  752. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/resource_account.move +0 -267
  753. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/stake.move +0 -3286
  754. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/staking_config.move +0 -686
  755. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/staking_contract.move +0 -1618
  756. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/staking_proxy.move +0 -228
  757. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/state_storage.move +0 -90
  758. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/storage_gas.move +0 -622
  759. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/system_addresses.move +0 -82
  760. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/timestamp.move +0 -88
  761. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/transaction_context.move +0 -262
  762. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/transaction_fee.move +0 -457
  763. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/transaction_validation.move +0 -501
  764. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/util.move +0 -16
  765. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/validator_consensus_info.move +0 -42
  766. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/version.move +0 -115
  767. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/vesting.move +0 -2183
  768. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/voting.move +0 -1279
  769. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/any.move +0 -57
  770. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/aptos_hash.move +0 -253
  771. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/big_vector.move +0 -469
  772. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/bls12381.move +0 -985
  773. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/bls12381_algebra.move +0 -802
  774. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/bn254_algebra.move +0 -855
  775. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/capability.move +0 -193
  776. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/comparator.move +0 -173
  777. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/copyable_any.move +0 -45
  778. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/crypto_algebra.move +0 -351
  779. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/debug.move +0 -278
  780. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/ed25519.move +0 -262
  781. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/fixed_point64.move +0 -447
  782. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/from_bcs.move +0 -91
  783. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/math128.move +0 -381
  784. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/math64.move +0 -336
  785. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/math_fixed.move +0 -139
  786. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/math_fixed64.move +0 -142
  787. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/multi_ed25519.move +0 -482
  788. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/pool_u64.move +0 -571
  789. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/pool_u64_unbound.move +0 -270
  790. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/ristretto255.move +0 -1310
  791. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/ristretto255_bulletproofs.move +0 -253
  792. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/ristretto255_elgamal.move +0 -234
  793. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/ristretto255_pedersen.move +0 -158
  794. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/secp256k1.move +0 -114
  795. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/simple_map.move +0 -319
  796. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/smart_table.move +0 -769
  797. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/smart_vector.move +0 -766
  798. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/string_utils.move +0 -148
  799. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/table.move +0 -152
  800. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/table_with_length.move +0 -141
  801. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/type_info.move +0 -351
  802. package/src/internal/move/jwks/build/jwk/sources/dependencies/MoveStdlib/acl.move +0 -46
  803. package/src/internal/move/jwks/build/jwk/sources/dependencies/MoveStdlib/bcs.move +0 -27
  804. package/src/internal/move/jwks/build/jwk/sources/dependencies/MoveStdlib/bit_vector.move +0 -239
  805. package/src/internal/move/jwks/build/jwk/sources/dependencies/MoveStdlib/error.move +0 -88
  806. package/src/internal/move/jwks/build/jwk/sources/dependencies/MoveStdlib/features.move +0 -780
  807. package/src/internal/move/jwks/build/jwk/sources/dependencies/MoveStdlib/fixed_point32.move +0 -295
  808. package/src/internal/move/jwks/build/jwk/sources/dependencies/MoveStdlib/hash.move +0 -8
  809. package/src/internal/move/jwks/build/jwk/sources/dependencies/MoveStdlib/option.move +0 -356
  810. package/src/internal/move/jwks/build/jwk/sources/dependencies/MoveStdlib/signer.move +0 -21
  811. package/src/internal/move/jwks/build/jwk/sources/dependencies/MoveStdlib/string.move +0 -93
  812. package/src/internal/move/jwks/build/jwk/sources/dependencies/MoveStdlib/vector.move +0 -669
  813. package/src/internal/move/jwks/build/jwk/sources/main.move +0 -20
  814. /package/dist/esm/{account/FederatedKeylessAccount.mjs.map → chunk-FVA2OPG4.mjs.map} +0 -0
@@ -1,985 +0,0 @@
1
- /// Contains functions for:
2
- ///
3
- /// The minimum-pubkey-size variant of [Boneh-Lynn-Shacham (BLS) signatures](https://en.wikipedia.org/wiki/BLS_digital_signature),
4
- /// where public keys are BLS12-381 elliptic-curve points in $\mathbb{G}_1$ and signatures are in $\mathbb{G}_2$,
5
- /// as per the [IETF BLS draft standard](https://datatracker.ietf.org/doc/html/draft-irtf-cfrg-bls-signature#section-2.1).
6
-
7
- module aptos_std::bls12381 {
8
- use std::option::{Self, Option};
9
- #[test_only]
10
- use std::error::invalid_argument;
11
-
12
- /// The signature size, in bytes
13
- const SIGNATURE_SIZE: u64 = 96;
14
-
15
- /// The public key size, in bytes
16
- const PUBLIC_KEY_NUM_BYTES: u64 = 48;
17
-
18
- /// The caller was supposed to input one or more public keys.
19
- const EZERO_PUBKEYS: u64 = 1;
20
-
21
- /// One of the given inputs has the wrong size.s
22
- const EWRONG_SIZE: u64 = 2;
23
-
24
- /// The number of signers does not match the number of messages to be signed.
25
- const E_NUM_SIGNERS_MUST_EQ_NUM_MESSAGES: u64 = 3;
26
-
27
- // TODO: Performance would increase if structs in this module are implemented natively via handles (similar to Table and
28
- // RistrettoPoint). This will avoid unnecessary (de)serialization. We would need to allow storage of these structs too.
29
-
30
- #[test_only]
31
- struct SecretKey has copy, drop {
32
- bytes: vector<u8>,
33
- }
34
-
35
- /// A *validated* public key that:
36
- /// (1) is a point in the prime-order subgroup of the BLS12-381 elliptic curve, and
37
- /// (2) is not the identity point
38
- ///
39
- /// This struct can be used to verify a normal (non-aggregated) signature.
40
- ///
41
- /// This struct can be combined with a ProofOfPossession struct in order to create a PublicKeyWithPop struct, which
42
- /// can be used to verify a multisignature.
43
- struct PublicKey has copy, drop, store {
44
- bytes: vector<u8>
45
- }
46
-
47
- /// A proof-of-possession (PoP).
48
- /// Given such a struct and a PublicKey struct, one can construct a PublicKeyWithPoP (see below).
49
- struct ProofOfPossession has copy, drop, store {
50
- bytes: vector<u8>
51
- }
52
-
53
- /// A *validated* public key that had a successfully-verified proof-of-possession (PoP).
54
- ///
55
- /// A vector of these structs can be either:
56
- /// (1) used to verify an aggregate signature
57
- /// (2) aggregated with other PublicKeyWithPoP structs into an AggrPublicKeysWithPoP, which in turn can be used
58
- /// to verify a multisignature
59
- struct PublicKeyWithPoP has copy, drop, store {
60
- bytes: vector<u8>
61
- }
62
-
63
- /// An aggregation of public keys with verified PoPs, which can be used to verify multisignatures.
64
- struct AggrPublicKeysWithPoP has copy, drop, store {
65
- bytes: vector<u8>
66
- }
67
-
68
- /// A BLS signature. This can be either a:
69
- /// (1) normal (non-aggregated) signature
70
- /// (2) signature share (for a multisignature or aggregate signature)
71
- struct Signature has copy, drop, store {
72
- bytes: vector<u8>
73
- }
74
-
75
- /// An aggregation of BLS signatures. This can be either a:
76
- /// (4) aggregated signature (i.e., an aggregation of signatures s_i, each on a message m_i)
77
- /// (3) multisignature (i.e., an aggregation of signatures s_i, each on the same message m)
78
- ///
79
- /// We distinguish between a Signature type and a AggrOrMultiSignature type to prevent developers from interchangeably
80
- /// calling `verify_multisignature` and `verify_signature_share` to verify both multisignatures and signature shares,
81
- /// which could create problems down the line.
82
- struct AggrOrMultiSignature has copy, drop, store {
83
- bytes: vector<u8>
84
- }
85
-
86
- /// Creates a new public key from a sequence of bytes.
87
- public fun public_key_from_bytes(bytes: vector<u8>): Option<PublicKey> {
88
- if (validate_pubkey_internal(bytes)) {
89
- option::some(PublicKey {
90
- bytes
91
- })
92
- } else {
93
- option::none<PublicKey>()
94
- }
95
- }
96
-
97
- /// Serializes a public key into 48 bytes.
98
- public fun public_key_to_bytes(pk: &PublicKey): vector<u8> {
99
- pk.bytes
100
- }
101
-
102
- /// Creates a new proof-of-possession (PoP) which can be later used to create a PublicKeyWithPoP struct,
103
- public fun proof_of_possession_from_bytes(bytes: vector<u8>): ProofOfPossession {
104
- ProofOfPossession {
105
- bytes
106
- }
107
- }
108
-
109
- /// Serializes the signature into 96 bytes.
110
- public fun proof_of_possession_to_bytes(pop: &ProofOfPossession): vector<u8> {
111
- pop.bytes
112
- }
113
-
114
- /// Creates a PoP'd public key from a normal public key and a corresponding proof-of-possession.
115
- public fun public_key_from_bytes_with_pop(pk_bytes: vector<u8>, pop: &ProofOfPossession): Option<PublicKeyWithPoP> {
116
- if (verify_proof_of_possession_internal(pk_bytes, pop.bytes)) {
117
- option::some(PublicKeyWithPoP {
118
- bytes: pk_bytes
119
- })
120
- } else {
121
- option::none<PublicKeyWithPoP>()
122
- }
123
- }
124
-
125
- /// Creates a normal public key from a PoP'd public key.
126
- public fun public_key_with_pop_to_normal(pkpop: &PublicKeyWithPoP): PublicKey {
127
- PublicKey {
128
- bytes: pkpop.bytes
129
- }
130
- }
131
-
132
- /// Serializes a PoP'd public key into 48 bytes.
133
- public fun public_key_with_pop_to_bytes(pk: &PublicKeyWithPoP): vector<u8> {
134
- pk.bytes
135
- }
136
-
137
- /// Creates a new signature from a sequence of bytes. Does not check the signature for prime-order subgroup
138
- /// membership since that is done implicitly during verification.
139
- public fun signature_from_bytes(bytes: vector<u8>): Signature {
140
- Signature {
141
- bytes
142
- }
143
- }
144
-
145
- /// Serializes the signature into 96 bytes.
146
- public fun signature_to_bytes(sig: &Signature): vector<u8> {
147
- sig.bytes
148
- }
149
-
150
- /// Checks that the group element that defines a signature is in the prime-order subgroup.
151
- /// This check is implicitly performed when verifying any signature via this module, but we expose this functionality
152
- /// in case it might be useful for applications to easily dismiss invalid signatures early on.
153
- public fun signature_subgroup_check(signature: &Signature): bool {
154
- signature_subgroup_check_internal(signature.bytes)
155
- }
156
-
157
- /// Given a vector of public keys with verified PoPs, combines them into an *aggregated* public key which can be used
158
- /// to verify multisignatures using `verify_multisignature` and aggregate signatures using `verify_aggregate_signature`.
159
- /// Aborts if no public keys are given as input.
160
- public fun aggregate_pubkeys(public_keys: vector<PublicKeyWithPoP>): AggrPublicKeysWithPoP {
161
- let (bytes, success) = aggregate_pubkeys_internal(public_keys);
162
- assert!(success, std::error::invalid_argument(EZERO_PUBKEYS));
163
-
164
- AggrPublicKeysWithPoP {
165
- bytes
166
- }
167
- }
168
-
169
- /// Serializes an aggregate public key into 48 bytes.
170
- public fun aggregate_pubkey_to_bytes(apk: &AggrPublicKeysWithPoP): vector<u8> {
171
- apk.bytes
172
- }
173
-
174
- /// Aggregates the input signatures into an aggregate-or-multi-signature structure, which can be later verified via
175
- /// `verify_aggregate_signature` or `verify_multisignature`. Returns `None` if zero signatures are given as input
176
- /// or if some of the signatures are not valid group elements.
177
- public fun aggregate_signatures(signatures: vector<Signature>): Option<AggrOrMultiSignature> {
178
- let (bytes, success) = aggregate_signatures_internal(signatures);
179
- if (success) {
180
- option::some(
181
- AggrOrMultiSignature {
182
- bytes
183
- }
184
- )
185
- } else {
186
- option::none<AggrOrMultiSignature>()
187
- }
188
- }
189
-
190
- /// Serializes an aggregate-or-multi-signature into 96 bytes.
191
- public fun aggr_or_multi_signature_to_bytes(sig: &AggrOrMultiSignature): vector<u8> {
192
- sig.bytes
193
- }
194
-
195
- /// Deserializes an aggregate-or-multi-signature from 96 bytes.
196
- public fun aggr_or_multi_signature_from_bytes(bytes: vector<u8>): AggrOrMultiSignature {
197
- assert!(std::vector::length(&bytes) == SIGNATURE_SIZE, std::error::invalid_argument(EWRONG_SIZE));
198
-
199
- AggrOrMultiSignature {
200
- bytes
201
- }
202
- }
203
-
204
-
205
- /// Checks that the group element that defines an aggregate-or-multi-signature is in the prime-order subgroup.
206
- public fun aggr_or_multi_signature_subgroup_check(signature: &AggrOrMultiSignature): bool {
207
- signature_subgroup_check_internal(signature.bytes)
208
- }
209
-
210
- /// Verifies an aggregate signature, an aggregation of many signatures `s_i`, each on a different message `m_i`.
211
- public fun verify_aggregate_signature(
212
- aggr_sig: &AggrOrMultiSignature,
213
- public_keys: vector<PublicKeyWithPoP>,
214
- messages: vector<vector<u8>>,
215
- ): bool {
216
- verify_aggregate_signature_internal(aggr_sig.bytes, public_keys, messages)
217
- }
218
-
219
- /// Verifies a multisignature: an aggregation of many signatures, each on the same message `m`.
220
- public fun verify_multisignature(
221
- multisig: &AggrOrMultiSignature,
222
- aggr_public_key: &AggrPublicKeysWithPoP,
223
- message: vector<u8>
224
- ): bool {
225
- verify_multisignature_internal(multisig.bytes, aggr_public_key.bytes, message)
226
- }
227
-
228
- /// Verifies a normal, non-aggregated signature.
229
- public fun verify_normal_signature(
230
- signature: &Signature,
231
- public_key: &PublicKey,
232
- message: vector<u8>
233
- ): bool {
234
- verify_normal_signature_internal(signature.bytes, public_key.bytes, message)
235
- }
236
-
237
- /// Verifies a signature share in the multisignature share or an aggregate signature share.
238
- public fun verify_signature_share(
239
- signature_share: &Signature,
240
- public_key: &PublicKeyWithPoP,
241
- message: vector<u8>
242
- ): bool {
243
- verify_signature_share_internal(signature_share.bytes, public_key.bytes, message)
244
- }
245
-
246
- #[test_only]
247
- /// Generates a BLS key-pair: a secret key with its corresponding public key.
248
- public fun generate_keys(): (SecretKey, PublicKeyWithPoP) {
249
- let (sk_bytes, pk_bytes) = generate_keys_internal();
250
- let sk = SecretKey {
251
- bytes: sk_bytes
252
- };
253
- let pkpop = PublicKeyWithPoP {
254
- bytes: pk_bytes
255
- };
256
- (sk, pkpop)
257
- }
258
-
259
- #[test_only]
260
- /// Generates a BLS signature for a message with a signing key.
261
- public fun sign_arbitrary_bytes(signing_key: &SecretKey, message: vector<u8>): Signature {
262
- Signature {
263
- bytes: sign_internal(signing_key.bytes, message)
264
- }
265
- }
266
-
267
- #[test_only]
268
- /// Generates a multi-signature for a message with multiple signing keys.
269
- public fun multi_sign_arbitrary_bytes(signing_keys: &vector<SecretKey>, message: vector<u8>): AggrOrMultiSignature {
270
- let n = std::vector::length(signing_keys);
271
- let sigs = vector[];
272
- let i: u64 = 0;
273
- while (i < n) {
274
- let sig = sign_arbitrary_bytes(std::vector::borrow(signing_keys, i), message);
275
- std::vector::push_back(&mut sigs, sig);
276
- i = i + 1;
277
- };
278
- let multisig = aggregate_signatures(sigs);
279
- option::extract(&mut multisig)
280
- }
281
-
282
- #[test_only]
283
- /// Generates an aggregated signature over all messages in messages, where signing_keys[i] signs messages[i].
284
- public fun aggr_sign_arbitrary_bytes(signing_keys: &vector<SecretKey>, messages: &vector<vector<u8>>): AggrOrMultiSignature {
285
- let signing_key_count = std::vector::length(signing_keys);
286
- let message_count = std::vector::length(messages);
287
- assert!(signing_key_count == message_count, invalid_argument(E_NUM_SIGNERS_MUST_EQ_NUM_MESSAGES));
288
- let sigs = vector[];
289
- let i: u64 = 0;
290
- while (i < signing_key_count) {
291
- let sig = sign_arbitrary_bytes(std::vector::borrow(signing_keys, i), *std::vector::borrow(messages, i));
292
- std::vector::push_back(&mut sigs, sig);
293
- i = i + 1;
294
- };
295
- let aggr_sig = aggregate_signatures(sigs);
296
- option::extract(&mut aggr_sig)
297
- }
298
-
299
- #[test_only]
300
- /// Returns a mauled copy of a byte array.
301
- public fun maul_bytes(bytes: &vector<u8>): vector<u8> {
302
- let new_bytes = *bytes;
303
- let first_byte = std::vector::borrow_mut(&mut new_bytes, 0);
304
- *first_byte = *first_byte ^ 0xff;
305
- new_bytes
306
- }
307
-
308
- #[test_only]
309
- /// Returns a mauled copy of a normal signature.
310
- public fun maul_signature(sig: &Signature): Signature {
311
- Signature {
312
- bytes: maul_bytes(&signature_to_bytes(sig))
313
- }
314
- }
315
-
316
- #[test_only]
317
- /// Returns a mauled copy of an aggregated signature or a multi-signature.
318
- public fun maul_aggr_or_multi_signature(sig: &AggrOrMultiSignature): AggrOrMultiSignature {
319
- AggrOrMultiSignature {
320
- bytes: maul_bytes(&aggr_or_multi_signature_to_bytes(sig))
321
- }
322
- }
323
-
324
- #[test_only]
325
- /// Returns a mauled copy of a normal public key.
326
- public fun maul_public_key(pk: &PublicKey): PublicKey {
327
- PublicKey {
328
- bytes: maul_bytes(&public_key_to_bytes(pk))
329
- }
330
- }
331
-
332
- #[test_only]
333
- /// Returns a mauled copy of a PoP'd public key.
334
- public fun maul_public_key_with_pop(pk: &PublicKeyWithPoP): PublicKeyWithPoP {
335
- PublicKeyWithPoP {
336
- bytes: maul_bytes(&public_key_with_pop_to_bytes(pk))
337
- }
338
- }
339
-
340
- #[test_only]
341
- /// Returns a mauled copy of an aggregated public key.
342
- public fun maul_aggregated_public_key(pk: &AggrPublicKeysWithPoP): AggrPublicKeysWithPoP {
343
- AggrPublicKeysWithPoP {
344
- bytes: maul_bytes(&aggregate_pubkey_to_bytes(pk))
345
- }
346
- }
347
-
348
- #[test_only]
349
- /// Returns a mauled copy of a proof-of-possession.
350
- public fun maul_proof_of_possession(pop: &ProofOfPossession): ProofOfPossession {
351
- ProofOfPossession {
352
- bytes: maul_bytes(&proof_of_possession_to_bytes(pop))
353
- }
354
- }
355
-
356
-
357
- #[test_only]
358
- /// Generates a proof-of-possession (PoP) for the public key associated with the secret key `sk`.
359
- public fun generate_proof_of_possession(sk: &SecretKey): ProofOfPossession {
360
- ProofOfPossession {
361
- bytes: generate_proof_of_possession_internal(sk.bytes)
362
- }
363
- }
364
-
365
- //
366
- // Native functions
367
- //
368
-
369
- /// CRYPTOGRAPHY WARNING: This function assumes that the caller verified all public keys have a valid
370
- /// proof-of-possesion (PoP) using `verify_proof_of_possession`.
371
- ///
372
- /// Given a vector of serialized public keys, combines them into an aggregated public key, returning `(bytes, true)`,
373
- /// where `bytes` store the serialized public key.
374
- /// Aborts if no public keys are given as input.
375
- native fun aggregate_pubkeys_internal(public_keys: vector<PublicKeyWithPoP>): (vector<u8>, bool);
376
-
377
-
378
- /// CRYPTOGRAPHY WARNING: This function can be safely called without verifying that the input signatures are elements
379
- /// of the prime-order subgroup of the BLS12-381 curve.
380
- ///
381
- /// Given a vector of serialized signatures, combines them into an aggregate signature, returning `(bytes, true)`,
382
- /// where `bytes` store the serialized signature.
383
- /// Does not check the input signatures nor the final aggregated signatures for prime-order subgroup membership.
384
- /// Returns `(_, false)` if no signatures are given as input.
385
- /// Does not abort.
386
- native fun aggregate_signatures_internal(signatures: vector<Signature>): (vector<u8>, bool);
387
-
388
- /// Return `true` if the bytes in `public_key` are a valid BLS12-381 public key:
389
- /// (1) it is NOT the identity point, and
390
- /// (2) it is a BLS12-381 elliptic curve point, and
391
- /// (3) it is a prime-order point
392
- /// Return `false` otherwise.
393
- /// Does not abort.
394
- native fun validate_pubkey_internal(public_key: vector<u8>): bool;
395
-
396
- /// Return `true` if the elliptic curve point serialized in `signature`:
397
- /// (1) is NOT the identity point, and
398
- /// (2) is a BLS12-381 elliptic curve point, and
399
- /// (3) is a prime-order point
400
- /// Return `false` otherwise.
401
- /// Does not abort.
402
- native fun signature_subgroup_check_internal(signature: vector<u8>): bool;
403
-
404
- /// CRYPTOGRAPHY WARNING: First, this function assumes all public keys have a valid proof-of-possesion (PoP).
405
- /// This prevents both small-subgroup attacks and rogue-key attacks. Second, this function can be safely called
406
- /// without verifying that the aggregate signature is in the prime-order subgroup of the BLS12-381 curve.
407
- ///
408
- /// Returns `true` if the aggregate signature `aggsig` on `messages` under `public_keys` verifies (where `messages[i]`
409
- /// should be signed by `public_keys[i]`).
410
- ///
411
- /// Returns `false` if either:
412
- /// - no public keys or messages are given as input,
413
- /// - number of messages does not equal number of public keys
414
- /// - `aggsig` (1) is the identity point, or (2) is NOT a BLS12-381 elliptic curve point, or (3) is NOT a
415
- /// prime-order point
416
- /// Does not abort.
417
- native fun verify_aggregate_signature_internal(
418
- aggsig: vector<u8>,
419
- public_keys: vector<PublicKeyWithPoP>,
420
- messages: vector<vector<u8>>,
421
- ): bool;
422
-
423
- /// CRYPTOGRAPHY WARNING: This function assumes verified proofs-of-possesion (PoP) for the public keys used in
424
- /// computing the aggregate public key. This prevents small-subgroup attacks and rogue-key attacks.
425
- ///
426
- /// Return `true` if the BLS `multisignature` on `message` verifies against the BLS aggregate public key `agg_public_key`.
427
- /// Returns `false` otherwise.
428
- /// Does not abort.
429
- native fun verify_multisignature_internal(
430
- multisignature: vector<u8>,
431
- agg_public_key: vector<u8>,
432
- message: vector<u8>
433
- ): bool;
434
-
435
- /// CRYPTOGRAPHY WARNING: This function WILL check that the public key is a prime-order point, in order to prevent
436
- /// library users from misusing the library by forgetting to validate public keys before giving them as arguments to
437
- /// this function.
438
- ///
439
- /// Returns `true` if the `signature` on `message` verifies under `public key`.
440
- /// Returns `false` otherwise.
441
- /// Does not abort.
442
- native fun verify_normal_signature_internal(
443
- signature: vector<u8>,
444
- public_key: vector<u8>,
445
- message: vector<u8>
446
- ): bool;
447
-
448
- /// Return `true` if the bytes in `public_key` are a valid bls12381 public key (as per `validate_pubkey`)
449
- /// *and* this public key has a valid proof-of-possesion (PoP).
450
- /// Return `false` otherwise.
451
- /// Does not abort.
452
- native fun verify_proof_of_possession_internal(
453
- public_key: vector<u8>,
454
- proof_of_possesion: vector<u8>
455
- ): bool;
456
-
457
- /// CRYPTOGRAPHY WARNING: Assumes the public key has a valid proof-of-possesion (PoP). This prevents rogue-key
458
- /// attacks later on during signature aggregation.
459
- ///
460
- /// Returns `true` if the `signature_share` on `message` verifies under `public key`.
461
- /// Returns `false` otherwise, similar to `verify_multisignature`.
462
- /// Does not abort.
463
- native fun verify_signature_share_internal(
464
- signature_share: vector<u8>,
465
- public_key: vector<u8>,
466
- message: vector<u8>
467
- ): bool;
468
-
469
- #[test_only]
470
- native fun generate_keys_internal(): (vector<u8>, vector<u8>);
471
-
472
- #[test_only]
473
- native fun sign_internal(sk: vector<u8>, msg: vector<u8>): vector<u8>;
474
-
475
- #[test_only]
476
- native fun generate_proof_of_possession_internal(sk: vector<u8>): vector<u8>;
477
-
478
- //
479
- // Constants and helpers for tests
480
- //
481
-
482
- /// Random signature generated by running `cargo test -- bls12381_sample_signature --nocapture --include-ignored` in `crates/aptos-crypto`.
483
- /// The message signed is "Hello Aptos!" and the associated SK is 07416693b6b32c84abe45578728e2379f525729e5b94762435a31e65ecc728da.
484
- const RANDOM_SIGNATURE: vector<u8> = x"a01a65854f987d3434149b7f08f70730e30b241984e8712bc2aca885d632aafced4c3f661209debb6b1c8601326623cc16ca2f6c9edc53b7b88b7435fb6b05ddece418d2c34dc6aca2f5a11a79e67774582c14084a01dcb7820e4cb4bad0ea8d";
485
-
486
- /// Random signature generated by running `cargo test -- bls12381_sample_signature --nocapture --include-ignored` in `crates/aptos-crypto`.
487
- /// The associated SK is 07416693b6b32c84abe45578728e2379f525729e5b94762435a31e65ecc728da.
488
- const RANDOM_PK: vector<u8> = x"8a53e7ae5270e3e765cd8a4032c2e77c6f7e87a44ebb85bf28a4d7865565698f975346714262f9e47c6f3e0d5d951660";
489
-
490
- //
491
- // Tests
492
- //
493
-
494
- #[test_only]
495
- fun get_random_aggsig(): AggrOrMultiSignature {
496
- assert!(signature_subgroup_check_internal(RANDOM_SIGNATURE), 1);
497
-
498
- AggrOrMultiSignature { bytes: RANDOM_SIGNATURE }
499
- }
500
-
501
- #[test_only]
502
- fun get_random_pk_with_pop(): PublicKeyWithPoP {
503
- assert!(validate_pubkey_internal(RANDOM_PK), 1);
504
-
505
- PublicKeyWithPoP {
506
- bytes: RANDOM_PK
507
- }
508
- }
509
-
510
- #[test]
511
- fun test_pubkey_validation() {
512
- // test low order points (in group for PK)
513
- assert!(option::is_none(&public_key_from_bytes(x"ae3cd9403b69c20a0d455fd860e977fe6ee7140a7f091f26c860f2caccd3e0a7a7365798ac10df776675b3a67db8faa0")), 1);
514
- assert!(option::is_none(&public_key_from_bytes(x"928d4862a40439a67fd76a9c7560e2ff159e770dcf688ff7b2dd165792541c88ee76c82eb77dd6e9e72c89cbf1a56a68")), 1);
515
- assert!(option::is_some(&public_key_from_bytes(x"b3e4921277221e01ed71284be5e3045292b26c7f465a6fcdba53ee47edd39ec5160da3b229a73c75671024dcb36de091")), 1);
516
- }
517
-
518
- #[test]
519
- #[expected_failure(abort_code = 65537, location = Self)]
520
- fun test_empty_pubkey_aggregation() {
521
- // First, make sure if no inputs are given, the function returns None
522
- // assert!(aggregate_pop_verified_pubkeys(vector::empty()) == option::none(), 1);
523
- aggregate_pubkeys(std::vector::empty());
524
- }
525
-
526
- #[test]
527
- fun test_pubkey_aggregation() {
528
- // Second, try some test-cases generated by running the following command in `crates/aptos-crypto`:
529
- // $ cargo test -- sample_aggregate_pk_and_multisig --nocapture --include-ignored
530
- let pks = vector[
531
- PublicKeyWithPoP { bytes: x"92e201a806af246f805f460fbdc6fc90dd16a18d6accc236e85d3578671d6f6690dde22134d19596c58ce9d63252410a" },
532
- PublicKeyWithPoP { bytes: x"ab9df801c6f96ade1c0490c938c87d5bcc2e52ccb8768e1b5d14197c5e8bfa562783b96711b702dda411a1a9f08ebbfa" },
533
- PublicKeyWithPoP { bytes: x"b698c932cf7097d99c17bd6e9c9dc4eeba84278c621700a8f80ec726b1daa11e3ab55fc045b4dbadefbeef05c4182494" },
534
- PublicKeyWithPoP { bytes: x"934706a8b876d47a996d427e1526ce52c952d5ec0858d49cd262efb785b62b1972d06270b0a7adda1addc98433ad1843" },
535
- PublicKeyWithPoP { bytes: x"a4cd352daad3a0651c1998dfbaa7a748e08d248a54347544bfedd51a197e016bb6008e9b8e45a744e1a030cc3b27d2da" },
536
- ];
537
-
538
- // agg_pks[i] = \sum_{j <= i} pk[j]
539
- let agg_pks = vector[
540
- AggrPublicKeysWithPoP { bytes: x"92e201a806af246f805f460fbdc6fc90dd16a18d6accc236e85d3578671d6f6690dde22134d19596c58ce9d63252410a" },
541
- AggrPublicKeysWithPoP { bytes: x"b79ad47abb441d7eda9b220a626df2e4e4910738c5f777947f0213398ecafae044ec0c20d552d1348347e9abfcf3eca1" },
542
- AggrPublicKeysWithPoP { bytes: x"b5f5eb6153ab5388a1a76343d714e4a2dcf224c5d0722d1e8e90c6bcead05c573fffe986460bd4000645a655bf52bc60" },
543
- AggrPublicKeysWithPoP { bytes: x"b922006ec14c183572a8864c31dc6632dccffa9f9c86411796f8b1b5a93a2457762c8e2f5ef0a2303506c4bca9a4e0bf" },
544
- AggrPublicKeysWithPoP { bytes: x"b53df1cfee2168f59e5792e710bf22928dc0553e6531dae5c7656c0a66fc12cb82fbb04863938c953dc901a5a79cc0f3" },
545
- ];
546
-
547
- let i = 0;
548
- let accum_pk = std::vector::empty<PublicKeyWithPoP>();
549
- while (i < std::vector::length(&pks)) {
550
- std::vector::push_back(&mut accum_pk, *std::vector::borrow(&pks, i));
551
-
552
- let apk = aggregate_pubkeys(accum_pk);
553
-
554
- // Make sure PKs were aggregated correctly
555
- assert!(apk == *std::vector::borrow(&agg_pks, i), 1);
556
- assert!(validate_pubkey_internal(apk.bytes), 1);
557
-
558
- i = i + 1;
559
- };
560
- }
561
-
562
- #[test]
563
- fun test_pubkey_validation_against_invalid_keys() {
564
- let (_sk, pk) = generate_keys();
565
- let pk_bytes = public_key_with_pop_to_bytes(&pk);
566
- assert!(option::is_some(&public_key_from_bytes(pk_bytes)), 1);
567
- assert!(option::is_none(&public_key_from_bytes(maul_bytes(&pk_bytes))), 1);
568
- }
569
-
570
- #[test]
571
- fun test_signature_aggregation() {
572
- // First, test empty aggregation
573
- assert!(option::is_none(&mut aggregate_signatures(vector[])), 1);
574
-
575
- // Second, try some test-cases generated by running the following command in `crates/aptos-crypto`:
576
- // $ cargo test -- sample_aggregate_sigs --nocapture --include-ignored
577
-
578
- // Signatures of each signer i
579
- let sigs = vector[
580
- signature_from_bytes(x"a55ac2d64b4c1d141b15d876d3e54ad1eea07ee488e8287cce7cdf3eec551458ab5795ab196f8c112590346f7bc7c97e0053cd5be0f9bd74b93a87cd44458e98d125d6d5c6950ea5e62666beb34422ead79121f8cb0815dae41a986688d03eaf"),
581
- signature_from_bytes(x"90a639a44491191c46379a843266c293de3a46197714ead2ad3886233dd5c2b608b6437fa32fbf9d218b20f1cbfa7970182663beb9c148e2e9412b148e16abf283ffa51b8a536c0e55d61b2e5c849edc49f636c0ef07cb99f125cbcf602e22bb"),
582
- signature_from_bytes(x"9527d81aa15863ef3a3bf96bea6d58157d5063a93a6d0eb9d8b4f4bbda3b31142ec4586cb519da2cd7600941283d1bad061b5439703fd584295b44037a969876962ae1897dcc7cadf909d06faae213c4fef8e015dfb33ec109af02ab0c3f6833"),
583
- signature_from_bytes(x"a54d264f5cab9654b1744232c4650c42b29adf2b19bd00bbdaf4a4d792ee4dfd40a1fe1b067f298bcfd8ae4fdc8250660a2848bd4a80d96585afccec5c6cfa617033dd7913c9acfdf98a72467e8a5155d4cad589a72d6665be7cb410aebc0068"),
584
- signature_from_bytes(x"8d22876bdf73e6ad36ed98546018f6258cd47e45904b87c071e774a6ef4b07cac323258cb920b2fe2b07cca1f2b24bcb0a3194ec76f32edb92391ed2c39e1ada8919f8ea755c5e39873d33ff3a8f4fba21b1261c1ddb9d1688c2b40b77e355d1"),
585
- ];
586
-
587
- // multisigs[i] is a signature on "Hello, Aptoverse!" from signers 1 through i (inclusive)
588
- let multisigs = vector[
589
- AggrOrMultiSignature { bytes: x"a55ac2d64b4c1d141b15d876d3e54ad1eea07ee488e8287cce7cdf3eec551458ab5795ab196f8c112590346f7bc7c97e0053cd5be0f9bd74b93a87cd44458e98d125d6d5c6950ea5e62666beb34422ead79121f8cb0815dae41a986688d03eaf" },
590
- AggrOrMultiSignature { bytes: x"8f1949a06b95c3cb62898d861f889350c0d2cb740da513bfa195aa0ab8fa006ea2efe004a7bbbd9bb363637a279aed20132efd0846f520e7ee0e8ed847a1c6969bb986ad2239bcc9af561b6c2aa6d3016e1c722146471f1e28313de189fe7ebc" },
591
- AggrOrMultiSignature { bytes: x"ab5ad42bb8f350f8a6b4ae897946a05dbe8f2b22db4f6c37eff6ff737aebd6c5d75bd1abdfc99345ac8ec38b9a449700026f98647752e1c99f69bb132340f063b8a989728e0a3d82a753740bf63e5d8f51e413ebd9a36f6acbe1407a00c4b3e7" },
592
- AggrOrMultiSignature { bytes: x"ae307a0d055d3ba55ad6ec7094adef27ed821bdcf735fb509ab2c20b80952732394bc67ea1fd8c26ea963540df7448f8102509f7b8c694e4d75f30a43c455f251b6b3fd8b580b9228ffeeb9039834927aacefccd3069bef4b847180d036971cf" },
593
- AggrOrMultiSignature { bytes: x"8284e4e3983f29cb45020c3e2d89066df2eae533a01cb6ca2c4d466b5e02dd22467f59640aa120db2b9cc49e931415c3097e3d54ff977fd9067b5bc6cfa1c885d9d8821aef20c028999a1d97e783ae049d8fa3d0bbac36ce4ca8e10e551d3461" },
594
- ];
595
-
596
- let i = 0;
597
- let accum_sigs = std::vector::empty<Signature>();
598
- while (i < std::vector::length(&sigs)) {
599
- std::vector::push_back(&mut accum_sigs, *std::vector::borrow(&sigs, i));
600
-
601
- let multisig = option::extract(&mut aggregate_signatures(accum_sigs));
602
-
603
- // Make sure sigs were aggregated correctly
604
- assert!(multisig == *std::vector::borrow(&multisigs, i), 1);
605
- assert!(signature_subgroup_check_internal(multisig.bytes), 1);
606
-
607
- i = i + 1;
608
- };
609
- }
610
-
611
- #[test]
612
- fun test_empty_signature_aggregation() {
613
- assert!(option::is_none(&mut aggregate_signatures(vector[])), 1);
614
- }
615
-
616
- #[test]
617
- fun test_verify_multisig() {
618
- // Second, try some test-cases generated by running the following command in `crates/aptos-crypto`:
619
- // $ cargo test -- sample_aggregate_pk_and_multisig --nocapture --include-ignored
620
- let pks = vector[
621
- PublicKeyWithPoP { bytes: x"92e201a806af246f805f460fbdc6fc90dd16a18d6accc236e85d3578671d6f6690dde22134d19596c58ce9d63252410a" },
622
- PublicKeyWithPoP { bytes: x"ab9df801c6f96ade1c0490c938c87d5bcc2e52ccb8768e1b5d14197c5e8bfa562783b96711b702dda411a1a9f08ebbfa" },
623
- PublicKeyWithPoP { bytes: x"b698c932cf7097d99c17bd6e9c9dc4eeba84278c621700a8f80ec726b1daa11e3ab55fc045b4dbadefbeef05c4182494" },
624
- PublicKeyWithPoP { bytes: x"934706a8b876d47a996d427e1526ce52c952d5ec0858d49cd262efb785b62b1972d06270b0a7adda1addc98433ad1843" },
625
- PublicKeyWithPoP { bytes: x"a4cd352daad3a0651c1998dfbaa7a748e08d248a54347544bfedd51a197e016bb6008e9b8e45a744e1a030cc3b27d2da" },
626
- ];
627
-
628
- // agg_pks[i] = \sum_{j <= i} pk[j]
629
- let agg_pks = vector[
630
- AggrPublicKeysWithPoP { bytes: x"92e201a806af246f805f460fbdc6fc90dd16a18d6accc236e85d3578671d6f6690dde22134d19596c58ce9d63252410a" },
631
- AggrPublicKeysWithPoP { bytes: x"b79ad47abb441d7eda9b220a626df2e4e4910738c5f777947f0213398ecafae044ec0c20d552d1348347e9abfcf3eca1" },
632
- AggrPublicKeysWithPoP { bytes: x"b5f5eb6153ab5388a1a76343d714e4a2dcf224c5d0722d1e8e90c6bcead05c573fffe986460bd4000645a655bf52bc60" },
633
- AggrPublicKeysWithPoP { bytes: x"b922006ec14c183572a8864c31dc6632dccffa9f9c86411796f8b1b5a93a2457762c8e2f5ef0a2303506c4bca9a4e0bf" },
634
- AggrPublicKeysWithPoP { bytes: x"b53df1cfee2168f59e5792e710bf22928dc0553e6531dae5c7656c0a66fc12cb82fbb04863938c953dc901a5a79cc0f3" },
635
- ];
636
-
637
- // multisigs[i] is a signature on "Hello, Aptoverse!" under agg_pks[i]
638
- let multisigs = vector[
639
- AggrOrMultiSignature { bytes: x"ade45c67bff09ae57e0575feb0be870f2d351ce078e8033d847615099366da1299c69497027b77badb226ff1708543cd062597030c3f1553e0aef6c17e7af5dd0de63c1e4f1f9da68c966ea6c1dcade2cdc646bd5e8bcd4773931021ec5be3fd" },
640
- AggrOrMultiSignature { bytes: x"964af3d83436f6a9a382f34590c0c14e4454dc1de536af205319ce1ed417b87a2374863d5df7b7d5ed900cf91dffa7a105d3f308831d698c0d74fb2259d4813434fb86425db0ded664ae8f85d02ec1d31734910317d4155cbf69017735900d4d" },
641
- AggrOrMultiSignature { bytes: x"b523a31813e771e55aa0fc99a48db716ecc1085f9899ccadb64e759ecb481a2fb1cdcc0b266f036695f941361de773081729311f6a1bca9d47393f5359c8c87dc34a91f5dae335590aacbff974076ad1f910dd81750553a72ccbcad3c8cc0f07" },
642
- AggrOrMultiSignature { bytes: x"a945f61699df58617d37530a85e67bd1181349678b89293951ed29d1fb7588b5c12ebb7917dfc9d674f3f4fde4d062740b85a5f4927f5a4f0091e46e1ac6e41bbd650a74dd49e91445339d741e3b10bdeb9bc8bba46833e0011ff91fa5c77bd2" },
643
- AggrOrMultiSignature { bytes: x"b627b2cfd8ae59dcf5e58cc6c230ae369985fd096e1bc3be38da5deafcbed7d939f07cccc75383539940c56c6b6453db193f563f5b6e4fe54915afd9e1baea40a297fa7eda74abbdcd4cc5c667d6db3b9bd265782f7693798894400f2beb4637" },
644
- ];
645
-
646
- let i = 0;
647
- let accum_pk = std::vector::empty<PublicKeyWithPoP>();
648
- while (i < std::vector::length(&pks)) {
649
- std::vector::push_back(&mut accum_pk, *std::vector::borrow(&pks, i));
650
-
651
- let apk = aggregate_pubkeys(accum_pk);
652
-
653
- assert!(apk == *std::vector::borrow(&agg_pks, i), 1);
654
-
655
- assert!(verify_multisignature(std::vector::borrow(&multisigs, i), &apk, b"Hello, Aptoverse!"), 1);
656
-
657
- i = i + 1;
658
- };
659
- }
660
-
661
- #[test]
662
- fun test_verify_multisignature_randomized() {
663
- let signer_count = 1;
664
- let max_signer_count = 5;
665
- let msg = b"hello world";
666
- while (signer_count <= max_signer_count) {
667
- // Generate key pairs.
668
- let signing_keys = vector[];
669
- let public_keys = vector[];
670
- let i = 0;
671
- while (i < signer_count) {
672
- let (sk, pk) = generate_keys();
673
- std::vector::push_back(&mut signing_keys, sk);
674
- std::vector::push_back(&mut public_keys, pk);
675
- i = i + 1;
676
- };
677
-
678
- // Generate multi-signature.
679
- let aggr_pk = aggregate_pubkeys(public_keys);
680
- let multisig = multi_sign_arbitrary_bytes(&signing_keys, msg);
681
-
682
- // Test signature verification.
683
- assert!(verify_multisignature(&multisig, &aggr_pk, msg), 1);
684
- assert!(!verify_multisignature(&maul_aggr_or_multi_signature(&multisig), &aggr_pk, msg), 1);
685
- assert!(!verify_multisignature(&multisig, &maul_aggregated_public_key(&aggr_pk), msg), 1);
686
- assert!(!verify_multisignature(&multisig, &aggr_pk, maul_bytes(&msg)), 1);
687
-
688
- // Also test signature aggregation.
689
- let signatures = vector[];
690
- let i = 0;
691
- while (i < signer_count) {
692
- let sk = std::vector::borrow(&signing_keys, i);
693
- let sig = sign_arbitrary_bytes(sk, msg);
694
- std::vector::push_back(&mut signatures, sig);
695
- i = i + 1;
696
- };
697
- let aggregated_signature = option::extract(&mut aggregate_signatures(signatures));
698
- assert!(aggr_or_multi_signature_subgroup_check(&aggregated_signature), 1);
699
- assert!(aggr_or_multi_signature_to_bytes(&aggregated_signature) == aggr_or_multi_signature_to_bytes(&multisig), 1);
700
-
701
- signer_count = signer_count + 1;
702
- }
703
- }
704
-
705
- #[test]
706
- fun test_verify_aggsig() {
707
- assert!(aggr_or_multi_signature_to_bytes(&aggr_or_multi_signature_from_bytes(RANDOM_SIGNATURE)) == RANDOM_SIGNATURE, 1);
708
-
709
- // First, make sure verification returns None when no inputs are given or |pks| != |msgs|
710
- assert!(verify_aggregate_signature(&get_random_aggsig(), vector[], vector[]) == false, 1);
711
-
712
- assert!(verify_aggregate_signature(
713
- &get_random_aggsig(),
714
- vector[ get_random_pk_with_pop() ],
715
- vector[]) == false, 1);
716
-
717
- assert!(verify_aggregate_signature(
718
- &get_random_aggsig(),
719
- vector[],
720
- vector[ x"ab" ]) == false, 1);
721
-
722
- assert!(verify_aggregate_signature(
723
- &get_random_aggsig(),
724
- vector[ get_random_pk_with_pop() ],
725
- vector[
726
- x"cd", x"ef"
727
- ]) == false, 1);
728
-
729
- assert!(verify_aggregate_signature(
730
- &get_random_aggsig(),
731
- vector[
732
- get_random_pk_with_pop(),
733
- get_random_pk_with_pop(),
734
- get_random_pk_with_pop(),
735
- ],
736
- vector[
737
- x"cd", x"ef"
738
- ]) == false, 1);
739
-
740
- // Second, try some test-cases generated by running the following command in `crates/aptos-crypto`:
741
- // $ cargo test -- bls12381_sample_aggregate_pk_and_aggsig --nocapture --ignored
742
-
743
- // The signed messages are "Hello, Aptos <i>!", where <i> \in {1, ..., 5}
744
- let msgs = vector[
745
- x"48656c6c6f2c204170746f73203121",
746
- x"48656c6c6f2c204170746f73203221",
747
- x"48656c6c6f2c204170746f73203321",
748
- x"48656c6c6f2c204170746f73203421",
749
- x"48656c6c6f2c204170746f73203521",
750
- ];
751
-
752
- // Public key of signer i
753
- let pks = vector[
754
- PublicKeyWithPoP { bytes: x"b93d6aabb2b83e52f4b8bda43c24ea920bbced87a03ffc80f8f70c814a8b3f5d69fbb4e579ca76ee008d61365747dbc6" },
755
- PublicKeyWithPoP { bytes: x"b45648ceae3a983bcb816a96db599b5aef3b688c5753fa20ce36ac7a4f2c9ed792ab20af6604e85e42dab746398bb82c" },
756
- PublicKeyWithPoP { bytes: x"b3e4921277221e01ed71284be5e3045292b26c7f465a6fcdba53ee47edd39ec5160da3b229a73c75671024dcb36de091" },
757
- PublicKeyWithPoP { bytes: x"8463b8671c9775a7dbd98bf76d3deba90b5a90535fc87dc8c13506bb5c7bbd99be4d257e60c548140e1e30b107ff5822" },
758
- PublicKeyWithPoP { bytes: x"a79e3d0e9d04587a3b27d05efe5717da05fd93485dc47978c866dc70a01695c2efd247d1dd843a011a4b6b24079d7384" },
759
- ];
760
-
761
- // aggsigs[i] = \sum_{j <= i} sigs[j], where sigs[j] is a signature on msgs[j] under pks[j]
762
- let aggsigs = vector[
763
- AggrOrMultiSignature { bytes: x"a2bc8bdebe6215ba74b5b53c5ed2aa0c68221a4adf868989ccdcfb62bb0eecc6537def9ee686a7960169c5917d25e5220177ed1c5e95ecfd68c09694062e76efcb00759beac874e4f9a715fd144210883bf9bb272f156b0a1fa15d0e9460f01f" },
764
- AggrOrMultiSignature { bytes: x"a523aa3c3f1f1074d968ffecf017c7b93ae5243006bf0abd2e45c036ddbec99302984b650ebe5ba306cda4071d281ba50a99ef0e66c3957fab94163296f9d673fc58a36de4276f82bfb1d9180b591df93b5c2804d40dd68cf0f72cd92f86442e" },
765
- AggrOrMultiSignature { bytes: x"abed10f464de74769121fc09715e59a3ac96a5054a43a9d43cc890a2d4d332614c74c7fb4cceef6d25f85c65dee337330f062f89f23fec9ecf7ce3193fbba2c886630d753be6a4513a4634428904b767af2f230c5cadbcb53a451dd9c7d977f6" },
766
- AggrOrMultiSignature { bytes: x"8362871631ba822742a31209fa4abce6dc94b741ac4725995459da2951324b51efbbf6bc3ab4681e547ebfbadd80e0360dc078c04188198f0acea26c12645ace9107a4a23cf8db46abc7a402637f16a0477c72569fc9966fe804ef4dc0e5e758" },
767
- AggrOrMultiSignature { bytes: x"a44d967935fbe63a763ce2dd2b16981f967ecd31e20d3266eef5517530cdc233c8a18273b6d9fd7f61dd39178826e3f115df4e7b304f2de17373a95ea0c9a14293dcfd6f0ef416e06fa23f6a3c850d638e4d8f97ab4562ef55d49a96a50baa13" },
768
- ];
769
-
770
- let i = 0;
771
- let msg_subset = std::vector::empty<vector<u8>>();
772
- let pk_subset = std::vector::empty<PublicKeyWithPoP>();
773
- while (i < std::vector::length(&pks)) {
774
- let aggsig = *std::vector::borrow(&aggsigs, i);
775
-
776
- std::vector::push_back(&mut pk_subset, *std::vector::borrow(&pks, i));
777
- std::vector::push_back(&mut msg_subset, *std::vector::borrow(&msgs, i));
778
-
779
- assert!(verify_aggregate_signature(&aggsig, pk_subset, msg_subset), 1);
780
-
781
- i = i + 1;
782
- };
783
- }
784
-
785
- #[test]
786
- fun test_verify_aggregated_signature_randomized() {
787
- let signer_count = 1;
788
- let max_signer_count = 5;
789
- while (signer_count <= max_signer_count) {
790
- // Generate key pairs and messages.
791
- let signing_keys = vector[];
792
- let public_keys = vector[];
793
- let messages: vector<vector<u8>> = vector[];
794
- let i = 0;
795
- while (i < signer_count) {
796
- let (sk, pk) = generate_keys();
797
- std::vector::push_back(&mut signing_keys, sk);
798
- std::vector::push_back(&mut public_keys, pk);
799
- let msg: vector<u8> = vector[104, 101, 108, 108, 111, 32, 97, 112, 116, 111, 115, 32, 117, 115, 101, 114, 32, 48+(i as u8)]; //"hello aptos user {i}"
800
- std::vector::push_back(&mut messages, msg);
801
- i = i + 1;
802
- };
803
-
804
- // Maul messages and public keys.
805
- let mauled_public_keys = vector[maul_public_key_with_pop(std::vector::borrow(&public_keys, 0))];
806
- let mauled_messages = vector[maul_bytes(std::vector::borrow(&messages, 0))];
807
- let i = 1;
808
- while (i < signer_count) {
809
- let pk = std::vector::borrow(&public_keys, i);
810
- let msg = std::vector::borrow(&messages, i);
811
- std::vector::push_back(&mut mauled_public_keys, *pk);
812
- std::vector::push_back(&mut mauled_messages, *msg);
813
- i = i + 1;
814
- };
815
-
816
- // Generate aggregated signature.
817
- let aggrsig = aggr_sign_arbitrary_bytes(&signing_keys, &messages);
818
-
819
- // Test signature verification.
820
- assert!(verify_aggregate_signature(&aggrsig, public_keys, messages), 1);
821
- assert!(!verify_aggregate_signature(&maul_aggr_or_multi_signature(&aggrsig), public_keys, messages), 1);
822
- assert!(!verify_aggregate_signature(&aggrsig, mauled_public_keys, messages), 1);
823
- assert!(!verify_aggregate_signature(&aggrsig, public_keys, mauled_messages), 1);
824
-
825
- // Also test signature aggregation.
826
- let signatures = vector[];
827
- let i = 0;
828
- while (i < signer_count) {
829
- let sk = std::vector::borrow(&signing_keys, i);
830
- let msg = std::vector::borrow(&messages, i);
831
- let sig = sign_arbitrary_bytes(sk, *msg);
832
- std::vector::push_back(&mut signatures, sig);
833
- i = i + 1;
834
- };
835
- let aggrsig_another = option::extract(&mut aggregate_signatures(signatures));
836
- assert!(aggr_or_multi_signature_to_bytes(&aggrsig_another) == aggr_or_multi_signature_to_bytes(&aggrsig), 1);
837
-
838
- signer_count = signer_count + 1;
839
- }
840
- }
841
-
842
- #[test]
843
- /// Tests verification of a random BLS signature created using sk = x""
844
- fun test_verify_normal_and_verify_sigshare() {
845
- // Test case generated by running `cargo test -- bls12381_sample_signature --nocapture --include-ignored` in
846
- // `crates/aptos-crypto`
847
- // =============================================================================================================
848
- // SK: 077c8a56f26259215a4a245373ab6ddf328ac6e00e5ea38d8700efa361bdc58d
849
-
850
- let message = b"Hello Aptos!";
851
-
852
- // First, test signatures that verify
853
- let ok = verify_normal_signature(
854
- &signature_from_bytes(x"b01ce4632e94d8c611736e96aa2ad8e0528a02f927a81a92db8047b002a8c71dc2d6bfb94729d0973790c10b6ece446817e4b7543afd7ca9a17c75de301ae835d66231c26a003f11ae26802b98d90869a9e73788c38739f7ac9d52659e1f7cf7"),
855
- &option::extract(&mut public_key_from_bytes(x"94209a296b739577cb076d3bfb1ca8ee936f29b69b7dae436118c4dd1cc26fd43dcd16249476a006b8b949bf022a7858")),
856
- message,
857
- );
858
- assert!(ok == true, 1);
859
-
860
- let pk = option::extract(&mut public_key_from_bytes(x"94209a296b739577cb076d3bfb1ca8ee936f29b69b7dae436118c4dd1cc26fd43dcd16249476a006b8b949bf022a7858"));
861
- let pk_with_pop = PublicKeyWithPoP { bytes: pk.bytes };
862
-
863
- let ok = verify_signature_share(
864
- &signature_from_bytes(x"b01ce4632e94d8c611736e96aa2ad8e0528a02f927a81a92db8047b002a8c71dc2d6bfb94729d0973790c10b6ece446817e4b7543afd7ca9a17c75de301ae835d66231c26a003f11ae26802b98d90869a9e73788c38739f7ac9d52659e1f7cf7"),
865
- &pk_with_pop,
866
- message,
867
- );
868
- assert!(ok == true, 1);
869
-
870
- // Second, test signatures that do NOT verify
871
- let sigs = vector[
872
- Signature { bytes: x"a01ce4632e94d8c611736e96aa2ad8e0528a02f927a81a92db8047b002a8c71dc2d6bfb94729d0973790c10b6ece446817e4b7543afd7ca9a17c75de301ae835d66231c26a003f11ae26802b98d90869a9e73788c38739f7ac9d52659e1f7cf7" },
873
- Signature { bytes: x"b01ce4632e94d8c611736e96aa2ad8e0528a02f927a81a92db8047b002a8c71dc2d6bfb94729d0973790c10b6ece446817e4b7543afd7ca9a17c75de301ae835d66231c26a003f11ae26802b98d90869a9e73788c38739f7ac9d52659e1f7cf7" },
874
- Signature { bytes: x"b01ce4632e94d8c611736e96aa2ad8e0528a02f927a81a92db8047b002a8c71dc2d6bfb94729d0973790c10b6ece446817e4b7543afd7ca9a17c75de301ae835d66231c26a003f11ae26802b98d90869a9e73788c38739f7ac9d52659e1f7cf7" },
875
- ];
876
- let pks = vector[
877
- x"94209a296b739577cb076d3bfb1ca8ee936f29b69b7dae436118c4dd1cc26fd43dcd16249476a006b8b949bf022a7858",
878
- x"ae4851bb9e7782027437ed0e2c026dd63b77a972ddf4bd9f72bcc218e327986568317e3aa9f679c697a2cb7cebf992f3",
879
- x"82ed7bb5528303a2e306775040a7309e0bd597b70d9949d8c6198a01a7be0b00079320ebfeaf7bbd5bfe86809940d252",
880
- ];
881
- let messages = vector[
882
- b"Hello Aptos!",
883
- b"Hello Aptos!",
884
- b"Bello Aptos!",
885
- ];
886
-
887
- let i = 0;
888
- while (i < std::vector::length(&pks)) {
889
- let sig = std::vector::borrow(&sigs, i);
890
- let pk = *std::vector::borrow(&pks, i);
891
- let msg = *std::vector::borrow(&messages, i);
892
-
893
- let pk = option::extract(&mut public_key_from_bytes(pk));
894
-
895
- let notok = verify_normal_signature(
896
- sig,
897
- &pk,
898
- msg,
899
- );
900
- assert!(notok == false, 1);
901
-
902
- let notok = verify_signature_share(
903
- sig,
904
- &PublicKeyWithPoP { bytes: pk.bytes },
905
- msg,
906
- );
907
- assert!(notok == false, 1);
908
-
909
- i = i + 1;
910
- }
911
- }
912
-
913
- #[test]
914
- fun test_verify_normal_signature_or_signature_share_randomized() {
915
- let (sk, pkpop) = generate_keys();
916
- let pk = public_key_with_pop_to_normal(&pkpop);
917
-
918
- let msg = b"hello world";
919
- let sig = sign_arbitrary_bytes(&sk, msg);
920
- assert!(verify_normal_signature(&sig, &pk, msg), 1);
921
- assert!(!verify_normal_signature(&maul_signature(&sig), &pk, msg), 1);
922
- assert!(!verify_normal_signature(&sig, &maul_public_key(&pk), msg), 1);
923
- assert!(!verify_normal_signature(&sig, &pk, maul_bytes(&msg)), 1);
924
-
925
- assert!(verify_signature_share(&sig, &pkpop, msg), 1);
926
- assert!(!verify_signature_share(&maul_signature(&sig), &pkpop, msg), 1);
927
- assert!(!verify_signature_share(&sig, &maul_public_key_with_pop(&pkpop), msg), 1);
928
- assert!(!verify_signature_share(&sig, &pkpop, maul_bytes(&msg)), 1);
929
- }
930
-
931
- #[test]
932
- /// Tests verification of random BLS proofs-of-possession (PoPs)
933
- fun test_verify_pop() {
934
- // Test case generated by running `cargo test -- sample_pop --nocapture --include-ignored` in `crates/aptos-crypto`
935
- // =============================================================================================================
936
-
937
- let pks = vector[
938
- x"808864c91ae7a9998b3f5ee71f447840864e56d79838e4785ff5126c51480198df3d972e1e0348c6da80d396983e42d7",
939
- x"8843843c76d167c02842a214c21277bad0bfd83da467cb5cf2d3ee67b2dcc7221b9fafa6d430400164012580e0c34d27",
940
- x"a23b524d4308d46e43ee8cbbf57f3e1c20c47061ad9c3f915212334ea6532451dd5c01d3d3ada6bea10fe180b2c3b450",
941
- x"a2aaa3eae1df3fc36365491afa1da5181acbb03801afd1430f04bb3b3eb18036f8b756b3508e4caee04beff50d455d1c",
942
- x"84985b7e983dbdaddfca1f0b7dad9660bb39fff660e329acec15f69ac48c75dfa5d2df9f0dc320e4e7b7658166e0ac1c",
943
- ];
944
-
945
- let pops = vector[
946
- proof_of_possession_from_bytes(x"ab42afff92510034bf1232a37a0d31bc8abfc17e7ead9170d2d100f6cf6c75ccdcfedbd31699a112b4464a06fd636f3f190595863677d660b4c5d922268ace421f9e86e3a054946ee34ce29e1f88c1a10f27587cf5ec528d65ba7c0dc4863364"),
947
- proof_of_possession_from_bytes(x"a6da5f2bc17df70ce664cff3e3a3e09d17162e47e652032b9fedc0c772fd5a533583242cba12095602e422e579c5284b1735009332dbdd23430bbcf61cc506ae37e41ff9a1fc78f0bc0d99b6bc7bf74c8f567dfb59079a035842bdc5fa3a0464"),
948
- proof_of_possession_from_bytes(x"b8eef236595e2eab34d3c1abdab65971f5cfa1988c731ef62bd63c9a9ad3dfc9259f4f183bfffbc8375a38ba62e1c41a11173209705996ce889859bcbb3ddd7faa3c4ea3d8778f30a9ff814fdcfea1fb163d745c54dfb4dcc5a8cee092ee0070"),
949
- proof_of_possession_from_bytes(x"a03a12fab68ad59d85c15dd1528560eff2c89250070ad0654ba260fda4334da179811d2ecdaca57693f80e9ce977d62011e3b1ee7bb4f7e0eb9b349468dd758f10fc35d54e0d0b8536ca713a77a301944392a5c192b6adf2a79ae2b38912dc98"),
950
- proof_of_possession_from_bytes(x"8899b294f3c066e6dfb59bc0843265a1ccd6afc8f0f38a074d45ded8799c39d25ee0376cd6d6153b0d4d2ff8655e578b140254f1287b9e9df4e2aecc5b049d8556a4ab07f574df68e46348fd78e5298b7913377cf5bb3cf4796bfc755902bfdd"),
951
- ];
952
-
953
- assert!(std::vector::length(&pks) == std::vector::length(&pops), 1);
954
-
955
- let i = 0;
956
- while (i < std::vector::length(&pks)) {
957
- let opt_pk = public_key_from_bytes_with_pop(*std::vector::borrow(&pks, i), std::vector::borrow(&pops, i));
958
- assert!(option::is_some(&opt_pk), 1);
959
-
960
- i = i + 1;
961
- };
962
-
963
- // assert first PK's PoP does not verify against modifed PK' = 0xa0 | PK[1:]
964
- let opt_pk = public_key_from_bytes_with_pop(
965
- x"a08864c91ae7a9998b3f5ee71f447840864e56d79838e4785ff5126c51480198df3d972e1e0348c6da80d396983e42d7",
966
- &proof_of_possession_from_bytes(x"ab42afff92510034bf1232a37a0d31bc8abfc17e7ead9170d2d100f6cf6c75ccdcfedbd31699a112b4464a06fd636f3f190595863677d660b4c5d922268ace421f9e86e3a054946ee34ce29e1f88c1a10f27587cf5ec528d65ba7c0dc4863364"));
967
- assert!(option::is_none(&opt_pk), 1);
968
-
969
- // assert first PK's PoP does not verify if modifed as pop' = 0xb0 | pop[1:]
970
- let opt_pk = public_key_from_bytes_with_pop(
971
- x"808864c91ae7a9998b3f5ee71f447840864e56d79838e4785ff5126c51480198df3d972e1e0348c6da80d396983e42d7",
972
- &proof_of_possession_from_bytes(x"bb42afff92510034bf1232a37a0d31bc8abfc17e7ead9170d2d100f6cf6c75ccdcfedbd31699a112b4464a06fd636f3f190595863677d660b4c5d922268ace421f9e86e3a054946ee34ce29e1f88c1a10f27587cf5ec528d65ba7c0dc4863364"));
973
- assert!(option::is_none(&opt_pk), 1);
974
- }
975
-
976
- #[test]
977
- fun test_verify_pop_randomized() {
978
- let (sk, pk) = generate_keys();
979
- let pk_bytes = public_key_with_pop_to_bytes(&pk);
980
- let pop = generate_proof_of_possession(&sk);
981
- assert!(option::is_some(&public_key_from_bytes_with_pop(pk_bytes, &pop)), 1);
982
- assert!(option::is_none(&public_key_from_bytes_with_pop(pk_bytes, &maul_proof_of_possession(&pop))), 1);
983
- assert!(option::is_none(&public_key_from_bytes_with_pop(maul_bytes(&pk_bytes), &pop)), 1);
984
- }
985
- }