@aptos-labs/ts-sdk 1.35.0-zeta.2 → 1.36.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 (866) hide show
  1. package/dist/common/{accountAddress-Ce4Cv60D.d.ts → accountAddress-jrha_M3l.d.ts} +11 -99
  2. package/dist/common/chunk-PA2XFIP3.js +4 -0
  3. package/dist/common/chunk-PA2XFIP3.js.map +1 -0
  4. package/dist/common/cli/index.d.ts +1 -1
  5. package/dist/common/cli/index.js +1 -486
  6. package/dist/common/cli/index.js.map +1 -1
  7. package/dist/common/index.d.ts +54 -47
  8. package/dist/common/index.js +436 -18333
  9. package/dist/common/index.js.map +1 -1
  10. package/dist/esm/account/AbstractKeylessAccount.mjs +1 -75
  11. package/dist/esm/account/AbstractedAccount.mjs +1 -74
  12. package/dist/esm/account/Account.mjs +1 -72
  13. package/dist/esm/account/AccountUtils.mjs +1 -78
  14. package/dist/esm/account/Ed25519Account.mjs +1 -70
  15. package/dist/esm/account/EphemeralKeyPair.mjs +1 -50
  16. package/dist/esm/account/FederatedKeylessAccount.mjs +1 -72
  17. package/dist/esm/account/KeylessAccount.mjs +1 -72
  18. package/dist/esm/account/MultiEd25519Account.mjs +1 -70
  19. package/dist/esm/account/MultiKeyAccount.mjs +1 -74
  20. package/dist/esm/account/SingleKeyAccount.mjs +1 -72
  21. package/dist/esm/account/index.mjs +1 -119
  22. package/dist/esm/account/utils.mjs +1 -54
  23. package/dist/esm/api/account/abstraction.mjs +1 -101
  24. package/dist/esm/api/account.d.mts +1 -17
  25. package/dist/esm/api/account.mjs +1 -105
  26. package/dist/esm/api/ans.mjs +1 -101
  27. package/dist/esm/api/aptos.mjs +1 -139
  28. package/dist/esm/api/aptosConfig.mjs +1 -9
  29. package/dist/esm/api/coin.d.mts +2 -2
  30. package/dist/esm/api/coin.mjs +1 -100
  31. package/dist/esm/api/digitalAsset.mjs +1 -101
  32. package/dist/esm/api/event.mjs +1 -59
  33. package/dist/esm/api/experimental.mjs +1 -85
  34. package/dist/esm/api/faucet.mjs +1 -58
  35. package/dist/esm/api/fungibleAsset.mjs +1 -101
  36. package/dist/esm/api/general.mjs +1 -85
  37. package/dist/esm/api/index.mjs +1 -143
  38. package/dist/esm/api/keyless.d.mts +1 -1
  39. package/dist/esm/api/keyless.mjs +1 -102
  40. package/dist/esm/api/object.mjs +1 -59
  41. package/dist/esm/api/staking.mjs +1 -59
  42. package/dist/esm/api/table.mjs +1 -38
  43. package/dist/esm/api/transaction.mjs +1 -110
  44. package/dist/esm/api/transactionSubmission/build.mjs +1 -99
  45. package/dist/esm/api/transactionSubmission/helpers.mjs +1 -9
  46. package/dist/esm/api/transactionSubmission/management.mjs +1 -105
  47. package/dist/esm/api/transactionSubmission/sign.mjs +1 -218
  48. package/dist/esm/api/transactionSubmission/sign.mjs.map +1 -1
  49. package/dist/esm/api/transactionSubmission/simulate.mjs +1 -100
  50. package/dist/esm/api/transactionSubmission/submit.mjs +1 -100
  51. package/dist/esm/api/utils.mjs +1 -36
  52. package/dist/esm/bcs/consts.mjs +1 -17
  53. package/dist/esm/bcs/deserializer.mjs +1 -10
  54. package/dist/esm/bcs/index.mjs +1 -60
  55. package/dist/esm/bcs/serializable/entryFunctionBytes.mjs +1 -12
  56. package/dist/esm/bcs/serializable/fixedBytes.mjs +1 -11
  57. package/dist/esm/bcs/serializable/movePrimitives.mjs +1 -26
  58. package/dist/esm/bcs/serializable/moveStructs.mjs +1 -22
  59. package/dist/esm/bcs/serializer.mjs +1 -18
  60. package/dist/esm/chunk-2N4EPY2J.mjs +2 -0
  61. package/dist/esm/{chunk-A7LYGPFL.mjs.map → chunk-2N4EPY2J.mjs.map} +1 -1
  62. package/dist/esm/chunk-2OBSQ2FK.mjs +2 -0
  63. package/dist/esm/{chunk-UK7SPHIE.mjs.map → chunk-2OBSQ2FK.mjs.map} +1 -1
  64. package/dist/esm/chunk-2P27DDVV.mjs +2 -0
  65. package/dist/esm/{chunk-6T3V5LXK.mjs.map → chunk-2P27DDVV.mjs.map} +1 -1
  66. package/dist/esm/chunk-2SAOCLIU.mjs +2 -0
  67. package/dist/esm/{chunk-YT7V6AVJ.mjs.map → chunk-2SAOCLIU.mjs.map} +1 -1
  68. package/dist/esm/chunk-2V636AYW.mjs +2 -0
  69. package/dist/esm/{chunk-3IWV2Q3K.mjs.map → chunk-2V636AYW.mjs.map} +1 -1
  70. package/dist/esm/chunk-35DKMW7Q.mjs +2 -0
  71. package/dist/esm/{chunk-GUA5YTIK.mjs.map → chunk-35DKMW7Q.mjs.map} +1 -1
  72. package/dist/esm/chunk-36H47QOE.mjs +2 -0
  73. package/dist/esm/{chunk-UGKZQUGE.mjs.map → chunk-36H47QOE.mjs.map} +1 -1
  74. package/dist/esm/chunk-3DHWWNJ3.mjs +2 -0
  75. package/dist/esm/{chunk-HL337SEM.mjs.map → chunk-3DHWWNJ3.mjs.map} +1 -1
  76. package/dist/esm/chunk-3OLFJ65O.mjs +2 -0
  77. package/dist/esm/{chunk-G4NBRMZ2.mjs.map → chunk-3OLFJ65O.mjs.map} +1 -1
  78. package/dist/esm/chunk-4KKJ36IO.mjs +2 -0
  79. package/dist/esm/{chunk-HQDHSKVS.mjs.map → chunk-4KKJ36IO.mjs.map} +1 -1
  80. package/dist/esm/chunk-4PW3JKQZ.mjs +2 -0
  81. package/dist/esm/{chunk-I5G7XFGT.mjs.map → chunk-4PW3JKQZ.mjs.map} +1 -1
  82. package/dist/esm/chunk-4QK4SKAT.mjs +2 -0
  83. package/dist/esm/{chunk-7F32C225.mjs.map → chunk-4QK4SKAT.mjs.map} +1 -1
  84. package/dist/esm/chunk-4RXKALLC.mjs +2 -0
  85. package/dist/esm/{chunk-SFLQPB72.mjs.map → chunk-4RXKALLC.mjs.map} +1 -1
  86. package/dist/esm/chunk-4SWK3JHQ.mjs +2 -0
  87. package/dist/esm/{chunk-3DAVHDK4.mjs.map → chunk-4SWK3JHQ.mjs.map} +1 -1
  88. package/dist/esm/chunk-553ZRNUL.mjs +2 -0
  89. package/dist/esm/{chunk-6SNGKTWE.mjs.map → chunk-553ZRNUL.mjs.map} +1 -1
  90. package/dist/esm/chunk-56CNRT2K.mjs +2 -0
  91. package/dist/esm/{chunk-SBB4YEPT.mjs.map → chunk-56CNRT2K.mjs.map} +1 -1
  92. package/dist/esm/chunk-5AD7ZF6G.mjs +2 -0
  93. package/dist/esm/{chunk-RCXGTN36.mjs.map → chunk-5AD7ZF6G.mjs.map} +1 -1
  94. package/dist/esm/chunk-5MVHOQKD.mjs +2 -0
  95. package/dist/esm/{chunk-T4BFWV46.mjs.map → chunk-5MVHOQKD.mjs.map} +1 -1
  96. package/dist/esm/chunk-5W5XV63W.mjs +2 -0
  97. package/dist/esm/{chunk-QYNYDQE3.mjs.map → chunk-5W5XV63W.mjs.map} +1 -1
  98. package/dist/esm/chunk-5WWU3WSU.mjs +2 -0
  99. package/dist/esm/{chunk-F4VI7BNX.mjs.map → chunk-5WWU3WSU.mjs.map} +1 -1
  100. package/dist/esm/chunk-6FQDCTMA.mjs +2 -0
  101. package/dist/esm/{chunk-2WBJAKBO.mjs.map → chunk-6FQDCTMA.mjs.map} +1 -1
  102. package/dist/esm/chunk-6IULVNLQ.mjs +2 -0
  103. package/dist/esm/{chunk-XIBOO3WF.mjs.map → chunk-6IULVNLQ.mjs.map} +1 -1
  104. package/dist/esm/chunk-6KI24ZRR.mjs +2 -0
  105. package/dist/esm/{chunk-IPUAVRGL.mjs.map → chunk-6KI24ZRR.mjs.map} +1 -1
  106. package/dist/esm/chunk-6KZT3KFZ.mjs +2 -0
  107. package/dist/esm/{chunk-FMNMYKYH.mjs.map → chunk-6KZT3KFZ.mjs.map} +1 -1
  108. package/dist/esm/chunk-6VGLRQBT.mjs +2 -0
  109. package/dist/esm/{chunk-AGKEC2IM.mjs.map → chunk-6VGLRQBT.mjs.map} +1 -1
  110. package/dist/esm/chunk-6YPM7TK2.mjs +2 -0
  111. package/dist/esm/{chunk-Y3M32DIB.mjs.map → chunk-6YPM7TK2.mjs.map} +1 -1
  112. package/dist/esm/chunk-7CRQNXR5.mjs +2 -0
  113. package/dist/esm/{chunk-YU65LNIC.mjs.map → chunk-7CRQNXR5.mjs.map} +1 -1
  114. package/dist/esm/chunk-7HC33TEX.mjs +2 -0
  115. package/dist/esm/{chunk-X4N5BN3S.mjs.map → chunk-7HC33TEX.mjs.map} +1 -1
  116. package/dist/esm/chunk-7KHKP7DY.mjs +2 -0
  117. package/dist/esm/{chunk-TL4Z4KHK.mjs.map → chunk-7KHKP7DY.mjs.map} +1 -1
  118. package/dist/esm/chunk-7OUPEQRN.mjs +2 -0
  119. package/dist/esm/{chunk-TFW6N66T.mjs.map → chunk-7OUPEQRN.mjs.map} +1 -1
  120. package/dist/esm/chunk-A3VO773Q.mjs +2 -0
  121. package/dist/esm/{chunk-KLUO6XPE.mjs.map → chunk-A3VO773Q.mjs.map} +1 -1
  122. package/dist/esm/chunk-A5L76YP7.mjs +2 -0
  123. package/dist/esm/{chunk-PT2QHUB6.mjs.map → chunk-A5L76YP7.mjs.map} +1 -1
  124. package/dist/esm/chunk-ACE3NEV6.mjs +2 -0
  125. package/dist/esm/{chunk-WXQUBQK4.mjs.map → chunk-ACE3NEV6.mjs.map} +1 -1
  126. package/dist/esm/chunk-AEGA5N2W.mjs +2 -0
  127. package/dist/esm/{chunk-QJ6CGH7N.mjs.map → chunk-AEGA5N2W.mjs.map} +1 -1
  128. package/dist/esm/chunk-AIPHJFJL.mjs +2 -0
  129. package/dist/esm/{chunk-6I37A76G.mjs.map → chunk-AIPHJFJL.mjs.map} +1 -1
  130. package/dist/esm/chunk-APGCD5FH.mjs +2 -0
  131. package/dist/esm/{chunk-UGFIWCJQ.mjs.map → chunk-APGCD5FH.mjs.map} +1 -1
  132. package/dist/esm/chunk-BMPHQ3E7.mjs +2 -0
  133. package/dist/esm/{chunk-MWXBQ6HR.mjs.map → chunk-BMPHQ3E7.mjs.map} +1 -1
  134. package/dist/esm/chunk-C3Q23D22.mjs +2 -0
  135. package/dist/esm/{chunk-F7W7KS5C.mjs.map → chunk-C3Q23D22.mjs.map} +1 -1
  136. package/dist/esm/chunk-CGTMSLVZ.mjs +2 -0
  137. package/dist/esm/{chunk-AKXCFBYF.mjs.map → chunk-CGTMSLVZ.mjs.map} +1 -1
  138. package/dist/esm/chunk-CU6HQJSE.mjs +2 -0
  139. package/dist/esm/{chunk-RQS33JAS.mjs.map → chunk-CU6HQJSE.mjs.map} +1 -1
  140. package/dist/esm/chunk-DAR3R4UP.mjs +2 -0
  141. package/dist/esm/{chunk-TDLL7QX5.mjs.map → chunk-DAR3R4UP.mjs.map} +1 -1
  142. package/dist/esm/chunk-DOVH6HPL.mjs +2 -0
  143. package/dist/esm/{chunk-THWEBWUC.mjs.map → chunk-DOVH6HPL.mjs.map} +1 -1
  144. package/dist/esm/chunk-DUJJUR7O.mjs +2 -0
  145. package/dist/esm/{chunk-JFMFZ2IL.mjs.map → chunk-DUJJUR7O.mjs.map} +1 -1
  146. package/dist/esm/chunk-EHTTY7EF.mjs +2 -0
  147. package/dist/esm/{chunk-2FTF6J7F.mjs.map → chunk-EHTTY7EF.mjs.map} +1 -1
  148. package/dist/esm/chunk-ERLDXTIY.mjs +2 -0
  149. package/dist/esm/{chunk-6ASWESA2.mjs.map → chunk-ERLDXTIY.mjs.map} +1 -1
  150. package/dist/esm/chunk-FCHN3LT7.mjs +2 -0
  151. package/dist/esm/{chunk-GCQK2S5Q.mjs.map → chunk-FCHN3LT7.mjs.map} +1 -1
  152. package/dist/esm/chunk-GJOUTA7U.mjs +2 -0
  153. package/dist/esm/{chunk-JEVGHYEP.mjs.map → chunk-GJOUTA7U.mjs.map} +1 -1
  154. package/dist/esm/chunk-GOXRBEIJ.mjs +2 -0
  155. package/dist/esm/{chunk-APM7OSLS.mjs.map → chunk-GOXRBEIJ.mjs.map} +1 -1
  156. package/dist/esm/chunk-H4YAL2IL.mjs +2 -0
  157. package/dist/esm/{chunk-R4JTQQBX.mjs.map → chunk-H4YAL2IL.mjs.map} +1 -1
  158. package/dist/esm/chunk-HHWJHOFZ.mjs +2 -0
  159. package/dist/esm/{chunk-KSK3XIGF.mjs.map → chunk-HHWJHOFZ.mjs.map} +1 -1
  160. package/dist/esm/chunk-HTP5ZVX5.mjs +2 -0
  161. package/dist/esm/{chunk-IP7GATDH.mjs.map → chunk-HTP5ZVX5.mjs.map} +1 -1
  162. package/dist/esm/chunk-HWMMVLTP.mjs +2 -0
  163. package/dist/esm/{chunk-WLTQHGIJ.mjs.map → chunk-HWMMVLTP.mjs.map} +1 -1
  164. package/dist/esm/chunk-HWNPKEOJ.mjs +2 -0
  165. package/dist/esm/chunk-HWNPKEOJ.mjs.map +1 -0
  166. package/dist/esm/chunk-IF4UU2MT.mjs +2 -0
  167. package/dist/esm/{chunk-QPT4BSAB.mjs.map → chunk-IF4UU2MT.mjs.map} +1 -1
  168. package/dist/esm/chunk-ILUFGYLO.mjs +2 -0
  169. package/dist/esm/{chunk-56UCIGTO.mjs.map → chunk-ILUFGYLO.mjs.map} +1 -1
  170. package/dist/esm/chunk-IM4O756A.mjs +2 -0
  171. package/dist/esm/{chunk-FRLS4GRM.mjs.map → chunk-IM4O756A.mjs.map} +1 -1
  172. package/dist/esm/chunk-IMTC3J2M.mjs +2 -0
  173. package/dist/esm/{chunk-LJRNGZMY.mjs.map → chunk-IMTC3J2M.mjs.map} +1 -1
  174. package/dist/esm/chunk-IMYNN4TW.mjs +2 -0
  175. package/dist/esm/{chunk-JQIRRM7G.mjs.map → chunk-IMYNN4TW.mjs.map} +1 -1
  176. package/dist/esm/chunk-JA7CXAVY.mjs +2 -0
  177. package/dist/esm/{chunk-TJDF4CXI.mjs.map → chunk-JA7CXAVY.mjs.map} +1 -1
  178. package/dist/esm/chunk-JBARRS6K.mjs +2 -0
  179. package/dist/esm/{chunk-WUM247HF.mjs.map → chunk-JBARRS6K.mjs.map} +1 -1
  180. package/dist/esm/chunk-JLZGYZBX.mjs +2 -0
  181. package/dist/esm/{chunk-XQFUKBY7.mjs.map → chunk-JLZGYZBX.mjs.map} +1 -1
  182. package/dist/esm/chunk-JNNFNYDO.mjs +2 -0
  183. package/dist/esm/{chunk-ECTX2FGD.mjs.map → chunk-JNNFNYDO.mjs.map} +1 -1
  184. package/dist/esm/chunk-JXHGJ3AA.mjs +2 -0
  185. package/dist/esm/{chunk-7WW735TU.mjs.map → chunk-JXHGJ3AA.mjs.map} +1 -1
  186. package/dist/esm/chunk-K4JUKMMY.mjs +2 -0
  187. package/dist/esm/chunk-K4JUKMMY.mjs.map +1 -0
  188. package/dist/esm/chunk-KBC4ECVP.mjs +2 -0
  189. package/dist/esm/{chunk-YK66QBML.mjs.map → chunk-KBC4ECVP.mjs.map} +1 -1
  190. package/dist/esm/chunk-KDMSOCZY.mjs +2 -0
  191. package/dist/esm/chunk-KSLLV3ZC.mjs +2 -0
  192. package/dist/esm/{chunk-OFUNBTK4.mjs.map → chunk-KSLLV3ZC.mjs.map} +1 -1
  193. package/dist/esm/chunk-LET633ZK.mjs +2 -0
  194. package/dist/esm/{chunk-DDZGHA66.mjs.map → chunk-LET633ZK.mjs.map} +1 -1
  195. package/dist/esm/chunk-LQOSHBB7.mjs +4 -0
  196. package/dist/esm/{chunk-CXLXUSCG.mjs.map → chunk-LQOSHBB7.mjs.map} +1 -1
  197. package/dist/esm/chunk-LS3IDL2N.mjs +2 -0
  198. package/dist/esm/{chunk-MYEYZ7PF.mjs.map → chunk-LS3IDL2N.mjs.map} +1 -1
  199. package/dist/esm/chunk-M2GGYCLU.mjs +2 -0
  200. package/dist/esm/{chunk-XX6C2QGI.mjs.map → chunk-M2GGYCLU.mjs.map} +1 -1
  201. package/dist/esm/chunk-MY2BEHYF.mjs +2 -0
  202. package/dist/esm/{chunk-WHSS6I7T.mjs.map → chunk-MY2BEHYF.mjs.map} +1 -1
  203. package/dist/esm/chunk-MZVVBJVV.mjs +2 -0
  204. package/dist/esm/{chunk-62LC4PPC.mjs.map → chunk-MZVVBJVV.mjs.map} +1 -1
  205. package/dist/esm/chunk-N73S2K2V.mjs +2 -0
  206. package/dist/esm/{chunk-SRXIHVZE.mjs.map → chunk-N73S2K2V.mjs.map} +1 -1
  207. package/dist/esm/chunk-NIDF2LHF.mjs +2 -0
  208. package/dist/esm/{chunk-FDMI4BUL.mjs.map → chunk-NIDF2LHF.mjs.map} +1 -1
  209. package/dist/esm/chunk-OSZWSLJA.mjs +2 -0
  210. package/dist/esm/{chunk-R45SPK6Q.mjs.map → chunk-OSZWSLJA.mjs.map} +1 -1
  211. package/dist/esm/chunk-P265EC4T.mjs +2 -0
  212. package/dist/esm/{chunk-C7EEG6SW.mjs.map → chunk-P265EC4T.mjs.map} +1 -1
  213. package/dist/esm/chunk-PDAWVDI7.mjs +2 -0
  214. package/dist/esm/{chunk-MFFBZ43D.mjs.map → chunk-PDAWVDI7.mjs.map} +1 -1
  215. package/dist/esm/chunk-PE7KT5ZB.mjs +2 -0
  216. package/dist/esm/{chunk-SPI2HO3E.mjs.map → chunk-PE7KT5ZB.mjs.map} +1 -1
  217. package/dist/esm/chunk-PICZWW35.mjs +2 -0
  218. package/dist/esm/{chunk-A33OBGVN.mjs.map → chunk-PICZWW35.mjs.map} +1 -1
  219. package/dist/esm/chunk-PWGTRRSJ.mjs +2 -0
  220. package/dist/esm/{chunk-UOHCJOXI.mjs.map → chunk-PWGTRRSJ.mjs.map} +1 -1
  221. package/dist/esm/chunk-Q3AVJUBL.mjs +2 -0
  222. package/dist/esm/{chunk-PGFEUN7K.mjs.map → chunk-Q3AVJUBL.mjs.map} +1 -1
  223. package/dist/esm/chunk-QLEZDMIK.mjs +2 -0
  224. package/dist/esm/{chunk-BMM72IIP.mjs.map → chunk-QLEZDMIK.mjs.map} +1 -1
  225. package/dist/esm/chunk-QXTQNFEQ.mjs +2 -0
  226. package/dist/esm/{chunk-ZRBUAZZD.mjs.map → chunk-QXTQNFEQ.mjs.map} +1 -1
  227. package/dist/esm/chunk-R6I6Z3AA.mjs +2 -0
  228. package/dist/esm/{chunk-HBXBODME.mjs.map → chunk-R6I6Z3AA.mjs.map} +1 -1
  229. package/dist/esm/chunk-R6QCPXQG.mjs +2 -0
  230. package/dist/esm/{chunk-SQNS4SFV.mjs.map → chunk-R6QCPXQG.mjs.map} +1 -1
  231. package/dist/esm/chunk-RIINVEZA.mjs +2 -0
  232. package/dist/esm/{chunk-Y3ENAKRC.mjs.map → chunk-RIINVEZA.mjs.map} +1 -1
  233. package/dist/esm/chunk-RJ7F4JDV.mjs +2 -0
  234. package/dist/esm/chunk-RJ7F4JDV.mjs.map +1 -0
  235. package/dist/esm/chunk-RXHER6EA.mjs +2 -0
  236. package/dist/esm/{chunk-C7T6GW5P.mjs.map → chunk-RXHER6EA.mjs.map} +1 -1
  237. package/dist/esm/chunk-SCLWOTHD.mjs +2 -0
  238. package/dist/esm/{chunk-EBFKT35C.mjs.map → chunk-SCLWOTHD.mjs.map} +1 -1
  239. package/dist/esm/chunk-SZU5Q6CF.mjs +2 -0
  240. package/dist/esm/{chunk-T573PCIR.mjs.map → chunk-SZU5Q6CF.mjs.map} +1 -1
  241. package/dist/esm/chunk-T3VLXADE.mjs +2 -0
  242. package/dist/esm/{chunk-KW64NP2F.mjs.map → chunk-T3VLXADE.mjs.map} +1 -1
  243. package/dist/esm/chunk-TJICLFR2.mjs +2 -0
  244. package/dist/esm/{chunk-G7BB6K4B.mjs.map → chunk-TJICLFR2.mjs.map} +1 -1
  245. package/dist/esm/chunk-TKXEVD7A.mjs +2 -0
  246. package/dist/esm/{chunk-QSYWLSSN.mjs.map → chunk-TKXEVD7A.mjs.map} +1 -1
  247. package/dist/esm/chunk-TTY5GFMN.mjs +2 -0
  248. package/dist/esm/{chunk-PKUXOBIV.mjs.map → chunk-TTY5GFMN.mjs.map} +1 -1
  249. package/dist/esm/chunk-U6ZD22B5.mjs +2 -0
  250. package/dist/esm/{chunk-ORCQEMJL.mjs.map → chunk-U6ZD22B5.mjs.map} +1 -1
  251. package/dist/esm/chunk-UOBDL2BZ.mjs +2 -0
  252. package/dist/esm/{chunk-3TUV6YMI.mjs.map → chunk-UOBDL2BZ.mjs.map} +1 -1
  253. package/dist/esm/chunk-UP36QQGG.mjs +4 -0
  254. package/dist/esm/chunk-UP36QQGG.mjs.map +1 -0
  255. package/dist/esm/chunk-VHNX2NUR.mjs +473 -0
  256. package/dist/esm/chunk-VHNX2NUR.mjs.map +1 -0
  257. package/dist/esm/chunk-VHY6ZATX.mjs +2 -0
  258. package/dist/esm/{chunk-BDM6FBUO.mjs.map → chunk-VHY6ZATX.mjs.map} +1 -1
  259. package/dist/esm/chunk-VIXTXBYA.mjs +2 -0
  260. package/dist/esm/{chunk-G6R77JKO.mjs.map → chunk-VIXTXBYA.mjs.map} +1 -1
  261. package/dist/esm/chunk-W4BSN6SK.mjs +2 -0
  262. package/dist/esm/{chunk-ZWCTF3NQ.mjs.map → chunk-W4BSN6SK.mjs.map} +1 -1
  263. package/dist/esm/chunk-WYV4W2IM.mjs +2 -0
  264. package/dist/esm/{chunk-D6RXVCE3.mjs.map → chunk-WYV4W2IM.mjs.map} +1 -1
  265. package/dist/esm/chunk-X5ORWYVO.mjs +7 -0
  266. package/dist/esm/{chunk-32UQAST6.mjs.map → chunk-X5ORWYVO.mjs.map} +1 -1
  267. package/dist/esm/chunk-X5UJYMJU.mjs +2 -0
  268. package/dist/esm/{chunk-5ORUQZAR.mjs.map → chunk-X5UJYMJU.mjs.map} +1 -1
  269. package/dist/esm/chunk-X5YB74NB.mjs +2 -0
  270. package/dist/esm/{chunk-I25AX6PQ.mjs.map → chunk-X5YB74NB.mjs.map} +1 -1
  271. package/dist/esm/chunk-X6H4G6NE.mjs +2 -0
  272. package/dist/esm/{chunk-DMFRIING.mjs.map → chunk-X6H4G6NE.mjs.map} +1 -1
  273. package/dist/esm/chunk-XFL3B4WZ.mjs +2 -0
  274. package/dist/esm/{chunk-D4MW64RH.mjs.map → chunk-XFL3B4WZ.mjs.map} +1 -1
  275. package/dist/esm/chunk-XX4SFNZY.mjs +2 -0
  276. package/dist/esm/{chunk-JAZJE3OR.mjs.map → chunk-XX4SFNZY.mjs.map} +1 -1
  277. package/dist/esm/chunk-YMXJ6GYE.mjs +2 -0
  278. package/dist/esm/{chunk-ILTEOGFF.mjs.map → chunk-YMXJ6GYE.mjs.map} +1 -1
  279. package/dist/esm/chunk-YOZBVVKL.mjs +2 -0
  280. package/dist/esm/{chunk-BEYIOC2H.mjs.map → chunk-YOZBVVKL.mjs.map} +1 -1
  281. package/dist/esm/chunk-ZD2TY5N3.mjs +2 -0
  282. package/dist/esm/{chunk-NUT2VOX2.mjs.map → chunk-ZD2TY5N3.mjs.map} +1 -1
  283. package/dist/esm/chunk-ZJCTELB4.mjs +2 -0
  284. package/dist/esm/{chunk-K5OCDM3W.mjs.map → chunk-ZJCTELB4.mjs.map} +1 -1
  285. package/dist/esm/chunk-ZOY6N6UM.mjs +2 -0
  286. package/dist/esm/{chunk-BU43ZFDJ.mjs.map → chunk-ZOY6N6UM.mjs.map} +1 -1
  287. package/dist/esm/chunk-ZVYTHOS5.mjs +2 -0
  288. package/dist/esm/{chunk-G34CJDST.mjs.map → chunk-ZVYTHOS5.mjs.map} +1 -1
  289. package/dist/esm/cli/index.mjs +1 -20
  290. package/dist/esm/cli/localNode.mjs +1 -16
  291. package/dist/esm/cli/move.mjs +1 -7
  292. package/dist/esm/client/core.mjs +1 -34
  293. package/dist/esm/client/get.mjs +1 -41
  294. package/dist/esm/client/index.mjs +1 -69
  295. package/dist/esm/client/post.mjs +1 -43
  296. package/dist/esm/core/account/index.mjs +1 -21
  297. package/dist/esm/core/account/utils/address.mjs +1 -19
  298. package/dist/esm/core/account/utils/index.mjs +1 -20
  299. package/dist/esm/core/accountAddress.mjs +1 -16
  300. package/dist/esm/core/authenticationKey.mjs +1 -15
  301. package/dist/esm/core/common.mjs +1 -7
  302. package/dist/esm/core/crypto/abstraction.mjs +1 -26
  303. package/dist/esm/core/crypto/ed25519.mjs +1 -33
  304. package/dist/esm/core/crypto/ephemeral.mjs +1 -30
  305. package/dist/esm/core/crypto/federatedKeyless.mjs +1 -44
  306. package/dist/esm/core/crypto/hdKey.mjs +1 -25
  307. package/dist/esm/core/crypto/index.mjs +1 -173
  308. package/dist/esm/core/crypto/keyless.mjs +1 -83
  309. package/dist/esm/core/crypto/multiEd25519.mjs +1 -50
  310. package/dist/esm/core/crypto/multiKey.mjs +1 -51
  311. package/dist/esm/core/crypto/poseidon.mjs +1 -15
  312. package/dist/esm/core/crypto/privateKey.mjs +1 -12
  313. package/dist/esm/core/crypto/proof.mjs +1 -20
  314. package/dist/esm/core/crypto/publicKey.mjs +1 -22
  315. package/dist/esm/core/crypto/secp256k1.mjs +1 -29
  316. package/dist/esm/core/crypto/signature.mjs +1 -20
  317. package/dist/esm/core/crypto/singleKey.d.mts +2 -2
  318. package/dist/esm/core/crypto/singleKey.mjs +1 -48
  319. package/dist/esm/core/crypto/utils.mjs +1 -9
  320. package/dist/esm/core/hex.mjs +1 -12
  321. package/dist/esm/core/index.mjs +1 -202
  322. package/dist/esm/errors/index.mjs +1 -25
  323. package/dist/esm/index.d.mts +3 -3
  324. package/dist/esm/index.mjs +1 -798
  325. package/dist/esm/internal/abstraction.mjs +1 -103
  326. package/dist/esm/internal/account.d.mts +5 -22
  327. package/dist/esm/internal/account.mjs +1 -142
  328. package/dist/esm/internal/ans.mjs +1 -138
  329. package/dist/esm/internal/coin.mjs +1 -99
  330. package/dist/esm/internal/digitalAsset.mjs +1 -145
  331. package/dist/esm/internal/event.mjs +1 -62
  332. package/dist/esm/internal/experimental.mjs +1 -84
  333. package/dist/esm/internal/faucet.mjs +1 -57
  334. package/dist/esm/internal/fungibleAsset.mjs +1 -105
  335. package/dist/esm/internal/general.mjs +1 -43
  336. package/dist/esm/internal/keyless.d.mts +1 -12
  337. package/dist/esm/internal/keyless.mjs +1 -107
  338. package/dist/esm/internal/object.mjs +1 -58
  339. package/dist/esm/internal/staking.mjs +1 -60
  340. package/dist/esm/internal/table.mjs +1 -38
  341. package/dist/esm/internal/transaction.mjs +1 -57
  342. package/dist/esm/internal/transactionSubmission.mjs +1 -118
  343. package/dist/esm/internal/utils/index.mjs +1 -38
  344. package/dist/esm/internal/utils/utils.mjs +1 -37
  345. package/dist/esm/internal/view.mjs +1 -86
  346. package/dist/esm/transactions/authenticator/account.mjs +1 -67
  347. package/dist/esm/transactions/authenticator/index.mjs +1 -82
  348. package/dist/esm/transactions/authenticator/transaction.mjs +1 -66
  349. package/dist/esm/transactions/index.d.mts +1 -1
  350. package/dist/esm/transactions/index.mjs +1 -296
  351. package/dist/esm/transactions/instances/chainId.mjs +1 -11
  352. package/dist/esm/transactions/instances/identifier.mjs +1 -11
  353. package/dist/esm/transactions/instances/index.mjs +1 -114
  354. package/dist/esm/transactions/instances/moduleId.mjs +1 -55
  355. package/dist/esm/transactions/instances/multiAgentTransaction.mjs +1 -60
  356. package/dist/esm/transactions/instances/rawTransaction.mjs +1 -65
  357. package/dist/esm/transactions/instances/rotationProofChallenge.mjs +1 -21
  358. package/dist/esm/transactions/instances/signedTransaction.mjs +1 -63
  359. package/dist/esm/transactions/instances/simpleTransaction.mjs +1 -60
  360. package/dist/esm/transactions/instances/transactionArgument.mjs +1 -1
  361. package/dist/esm/transactions/instances/transactionPayload.mjs +1 -73
  362. package/dist/esm/transactions/management/accountSequenceNumber.mjs +1 -101
  363. package/dist/esm/transactions/management/asyncQueue.mjs +1 -9
  364. package/dist/esm/transactions/management/index.mjs +1 -111
  365. package/dist/esm/transactions/management/transactionWorker.mjs +1 -107
  366. package/dist/esm/transactions/scriptComposer/index.mjs +1 -80
  367. package/dist/esm/transactions/transactionBuilder/helpers.mjs +1 -92
  368. package/dist/esm/transactions/transactionBuilder/index.d.mts +1 -1
  369. package/dist/esm/transactions/transactionBuilder/index.mjs +1 -166
  370. package/dist/esm/transactions/transactionBuilder/remoteAbi.d.mts +29 -18
  371. package/dist/esm/transactions/transactionBuilder/remoteAbi.mjs +1 -74
  372. package/dist/esm/transactions/transactionBuilder/signingMessage.mjs +1 -75
  373. package/dist/esm/transactions/transactionBuilder/transactionBuilder.mjs +1 -97
  374. package/dist/esm/transactions/typeTag/index.d.mts +16 -0
  375. package/dist/esm/transactions/typeTag/index.mjs +1 -91
  376. package/dist/esm/transactions/typeTag/parser.mjs +1 -60
  377. package/dist/esm/transactions/types.mjs +1 -1
  378. package/dist/esm/types/abstraction.mjs +1 -7
  379. package/dist/esm/types/generated/operations.d.mts +10 -63
  380. package/dist/esm/types/generated/queries.d.mts +2 -10
  381. package/dist/esm/types/generated/queries.mjs +1 -69
  382. package/dist/esm/types/generated/types.d.mts +1054 -824
  383. package/dist/esm/types/generated/types.mjs +1 -774
  384. package/dist/esm/types/generated/types.mjs.map +1 -1
  385. package/dist/esm/types/index.d.mts +2 -2
  386. package/dist/esm/types/index.mjs +1 -82
  387. package/dist/esm/types/indexer.d.mts +2 -14
  388. package/dist/esm/types/indexer.mjs +1 -1
  389. package/dist/esm/types/types.d.mts +3 -58
  390. package/dist/esm/types/types.mjs +1 -77
  391. package/dist/esm/utils/apiEndpoints.mjs +1 -21
  392. package/dist/esm/utils/const.d.mts +1 -1
  393. package/dist/esm/utils/const.mjs +1 -25
  394. package/dist/esm/utils/helpers.mjs +1 -37
  395. package/dist/esm/utils/index.mjs +1 -88
  396. package/dist/esm/utils/memoize.mjs +1 -9
  397. package/dist/esm/utils/normalizeBundle.mjs +1 -20
  398. package/dist/esm/version.d.mts +1 -1
  399. package/dist/esm/version.mjs +1 -7
  400. package/package.json +2 -2
  401. package/src/api/account.ts +2 -56
  402. package/src/internal/account.ts +2 -395
  403. package/src/internal/keyless.ts +9 -17
  404. package/src/transactions/scriptComposer/index.ts +19 -6
  405. package/src/transactions/transactionBuilder/remoteAbi.ts +107 -35
  406. package/src/transactions/typeTag/index.ts +22 -0
  407. package/src/types/codegen.yaml +1 -1
  408. package/src/types/generated/operations.ts +8 -69
  409. package/src/types/generated/queries.ts +0 -111
  410. package/src/types/generated/types.ts +1159 -951
  411. package/src/types/indexer.ts +0 -16
  412. package/src/types/types.ts +3 -62
  413. package/src/utils/const.ts +1 -1
  414. package/src/version.ts +1 -1
  415. package/dist/common/chunk-JMOQXLED.js +0 -1305
  416. package/dist/common/chunk-JMOQXLED.js.map +0 -1
  417. package/dist/esm/chunk-2FTF6J7F.mjs +0 -97
  418. package/dist/esm/chunk-2HL7JEFC.mjs +0 -829
  419. package/dist/esm/chunk-2HL7JEFC.mjs.map +0 -1
  420. package/dist/esm/chunk-2WBJAKBO.mjs +0 -53
  421. package/dist/esm/chunk-32UQAST6.mjs +0 -296
  422. package/dist/esm/chunk-3DAVHDK4.mjs +0 -195
  423. package/dist/esm/chunk-3IWV2Q3K.mjs +0 -12
  424. package/dist/esm/chunk-3TUV6YMI.mjs +0 -305
  425. package/dist/esm/chunk-56UCIGTO.mjs +0 -21
  426. package/dist/esm/chunk-5ORUQZAR.mjs +0 -100
  427. package/dist/esm/chunk-5QHMFYVL.mjs +0 -42
  428. package/dist/esm/chunk-5QHMFYVL.mjs.map +0 -1
  429. package/dist/esm/chunk-62LC4PPC.mjs +0 -128
  430. package/dist/esm/chunk-6ASWESA2.mjs +0 -77
  431. package/dist/esm/chunk-6I37A76G.mjs +0 -29
  432. package/dist/esm/chunk-6OFCIXWS.mjs +0 -379
  433. package/dist/esm/chunk-6OFCIXWS.mjs.map +0 -1
  434. package/dist/esm/chunk-6SNGKTWE.mjs +0 -91
  435. package/dist/esm/chunk-6T3V5LXK.mjs +0 -119
  436. package/dist/esm/chunk-7F32C225.mjs +0 -219
  437. package/dist/esm/chunk-7WW735TU.mjs +0 -276
  438. package/dist/esm/chunk-A33OBGVN.mjs +0 -1014
  439. package/dist/esm/chunk-A7LYGPFL.mjs +0 -208
  440. package/dist/esm/chunk-AGKEC2IM.mjs +0 -250
  441. package/dist/esm/chunk-AKXCFBYF.mjs +0 -49
  442. package/dist/esm/chunk-APM7OSLS.mjs +0 -122
  443. package/dist/esm/chunk-BDM6FBUO.mjs +0 -198
  444. package/dist/esm/chunk-BEYIOC2H.mjs +0 -34
  445. package/dist/esm/chunk-BMM72IIP.mjs +0 -250
  446. package/dist/esm/chunk-BU43ZFDJ.mjs +0 -281
  447. package/dist/esm/chunk-C7EEG6SW.mjs +0 -689
  448. package/dist/esm/chunk-C7T6GW5P.mjs +0 -376
  449. package/dist/esm/chunk-CXLXUSCG.mjs +0 -417
  450. package/dist/esm/chunk-D4MW64RH.mjs +0 -188
  451. package/dist/esm/chunk-D6RXVCE3.mjs +0 -86
  452. package/dist/esm/chunk-DDZGHA66.mjs +0 -495
  453. package/dist/esm/chunk-DGDZNHUJ.mjs +0 -72
  454. package/dist/esm/chunk-DGDZNHUJ.mjs.map +0 -1
  455. package/dist/esm/chunk-DMFRIING.mjs +0 -286
  456. package/dist/esm/chunk-EBFKT35C.mjs +0 -66
  457. package/dist/esm/chunk-ECTX2FGD.mjs +0 -355
  458. package/dist/esm/chunk-EPTUAWRA.mjs +0 -895
  459. package/dist/esm/chunk-EPTUAWRA.mjs.map +0 -1
  460. package/dist/esm/chunk-F4VI7BNX.mjs +0 -58
  461. package/dist/esm/chunk-F7W7KS5C.mjs +0 -52
  462. package/dist/esm/chunk-FDMI4BUL.mjs +0 -611
  463. package/dist/esm/chunk-FMNMYKYH.mjs +0 -71
  464. package/dist/esm/chunk-FRLS4GRM.mjs +0 -62
  465. package/dist/esm/chunk-G34CJDST.mjs +0 -139
  466. package/dist/esm/chunk-G4NBRMZ2.mjs +0 -7
  467. package/dist/esm/chunk-G6R77JKO.mjs +0 -121
  468. package/dist/esm/chunk-G7BB6K4B.mjs +0 -167
  469. package/dist/esm/chunk-GCQK2S5Q.mjs +0 -43
  470. package/dist/esm/chunk-GUA5YTIK.mjs +0 -362
  471. package/dist/esm/chunk-HBXBODME.mjs +0 -84
  472. package/dist/esm/chunk-HKQY5GXT.mjs +0 -231
  473. package/dist/esm/chunk-HKQY5GXT.mjs.map +0 -1
  474. package/dist/esm/chunk-HL337SEM.mjs +0 -219
  475. package/dist/esm/chunk-HQDHSKVS.mjs +0 -74
  476. package/dist/esm/chunk-I25AX6PQ.mjs +0 -7
  477. package/dist/esm/chunk-I5G7XFGT.mjs +0 -86
  478. package/dist/esm/chunk-IJ7XCPP3.mjs +0 -480
  479. package/dist/esm/chunk-IJ7XCPP3.mjs.map +0 -1
  480. package/dist/esm/chunk-ILTEOGFF.mjs +0 -407
  481. package/dist/esm/chunk-IP7GATDH.mjs +0 -322
  482. package/dist/esm/chunk-IPUAVRGL.mjs +0 -248
  483. package/dist/esm/chunk-IQVHXOD3.mjs +0 -192
  484. package/dist/esm/chunk-IQVHXOD3.mjs.map +0 -1
  485. package/dist/esm/chunk-JAZJE3OR.mjs +0 -45
  486. package/dist/esm/chunk-JEVGHYEP.mjs +0 -162
  487. package/dist/esm/chunk-JFMFZ2IL.mjs +0 -147
  488. package/dist/esm/chunk-JQIRRM7G.mjs +0 -195
  489. package/dist/esm/chunk-JXCZTOYC.mjs +0 -1
  490. package/dist/esm/chunk-K5OCDM3W.mjs +0 -207
  491. package/dist/esm/chunk-KLUO6XPE.mjs +0 -33
  492. package/dist/esm/chunk-KSK3XIGF.mjs +0 -502
  493. package/dist/esm/chunk-KW64NP2F.mjs +0 -71
  494. package/dist/esm/chunk-LJRNGZMY.mjs +0 -10
  495. package/dist/esm/chunk-MFFBZ43D.mjs +0 -45
  496. package/dist/esm/chunk-MWXBQ6HR.mjs +0 -15
  497. package/dist/esm/chunk-MYEYZ7PF.mjs +0 -46
  498. package/dist/esm/chunk-NUT2VOX2.mjs +0 -317
  499. package/dist/esm/chunk-OFUNBTK4.mjs +0 -169
  500. package/dist/esm/chunk-ORCQEMJL.mjs +0 -51
  501. package/dist/esm/chunk-PGFEUN7K.mjs +0 -129
  502. package/dist/esm/chunk-PKUXOBIV.mjs +0 -138
  503. package/dist/esm/chunk-PT2QHUB6.mjs +0 -96
  504. package/dist/esm/chunk-QJ6CGH7N.mjs +0 -71
  505. package/dist/esm/chunk-QPT4BSAB.mjs +0 -20
  506. package/dist/esm/chunk-QSYWLSSN.mjs +0 -216
  507. package/dist/esm/chunk-QYNYDQE3.mjs +0 -288
  508. package/dist/esm/chunk-R45SPK6Q.mjs +0 -61
  509. package/dist/esm/chunk-R4JTQQBX.mjs +0 -37
  510. package/dist/esm/chunk-RCXGTN36.mjs +0 -58
  511. package/dist/esm/chunk-RQS33JAS.mjs +0 -77
  512. package/dist/esm/chunk-SAWN7RJP.mjs +0 -15
  513. package/dist/esm/chunk-SAWN7RJP.mjs.map +0 -1
  514. package/dist/esm/chunk-SBB4YEPT.mjs +0 -17
  515. package/dist/esm/chunk-SFLQPB72.mjs +0 -63
  516. package/dist/esm/chunk-SPI2HO3E.mjs +0 -177
  517. package/dist/esm/chunk-SPVJXZL5.mjs +0 -865
  518. package/dist/esm/chunk-SPVJXZL5.mjs.map +0 -1
  519. package/dist/esm/chunk-SQNS4SFV.mjs +0 -232
  520. package/dist/esm/chunk-SRXIHVZE.mjs +0 -50
  521. package/dist/esm/chunk-T4BFWV46.mjs +0 -63
  522. package/dist/esm/chunk-T573PCIR.mjs +0 -700
  523. package/dist/esm/chunk-TDLL7QX5.mjs +0 -239
  524. package/dist/esm/chunk-TFW6N66T.mjs +0 -415
  525. package/dist/esm/chunk-THWEBWUC.mjs +0 -20
  526. package/dist/esm/chunk-TJDF4CXI.mjs +0 -513
  527. package/dist/esm/chunk-TL4Z4KHK.mjs +0 -70
  528. package/dist/esm/chunk-UGFIWCJQ.mjs +0 -130
  529. package/dist/esm/chunk-UGKZQUGE.mjs +0 -367
  530. package/dist/esm/chunk-UIRAXHDH.mjs +0 -1
  531. package/dist/esm/chunk-UIRAXHDH.mjs.map +0 -1
  532. package/dist/esm/chunk-UK7SPHIE.mjs +0 -420
  533. package/dist/esm/chunk-UOHCJOXI.mjs +0 -150
  534. package/dist/esm/chunk-WHSS6I7T.mjs +0 -90
  535. package/dist/esm/chunk-WLTQHGIJ.mjs +0 -177
  536. package/dist/esm/chunk-WUM247HF.mjs +0 -125
  537. package/dist/esm/chunk-WXQUBQK4.mjs +0 -19
  538. package/dist/esm/chunk-X4N5BN3S.mjs +0 -40
  539. package/dist/esm/chunk-XIBOO3WF.mjs +0 -168
  540. package/dist/esm/chunk-XQFUKBY7.mjs +0 -136
  541. package/dist/esm/chunk-XX6C2QGI.mjs +0 -160
  542. package/dist/esm/chunk-Y3ENAKRC.mjs +0 -73
  543. package/dist/esm/chunk-Y3M32DIB.mjs +0 -79
  544. package/dist/esm/chunk-YK66QBML.mjs +0 -89
  545. package/dist/esm/chunk-YT7V6AVJ.mjs +0 -66
  546. package/dist/esm/chunk-YU65LNIC.mjs +0 -72
  547. package/dist/esm/chunk-ZRBUAZZD.mjs +0 -36
  548. package/dist/esm/chunk-ZWCTF3NQ.mjs +0 -25
  549. package/src/internal/move/jwks/build/jwk/BuildInfo.yaml +0 -56
  550. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/account.mv +0 -0
  551. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/aggregator.mv +0 -0
  552. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/aggregator_factory.mv +0 -0
  553. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/aggregator_v2.mv +0 -0
  554. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/aptos_account.mv +0 -0
  555. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/aptos_coin.mv +0 -0
  556. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/aptos_governance.mv +0 -0
  557. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/block.mv +0 -0
  558. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/chain_id.mv +0 -0
  559. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/chain_status.mv +0 -0
  560. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/code.mv +0 -0
  561. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/coin.mv +0 -0
  562. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/config_buffer.mv +0 -0
  563. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/consensus_config.mv +0 -0
  564. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/create_signer.mv +0 -0
  565. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/delegation_pool.mv +0 -0
  566. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/dispatchable_fungible_asset.mv +0 -0
  567. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/dkg.mv +0 -0
  568. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/event.mv +0 -0
  569. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/execution_config.mv +0 -0
  570. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/function_info.mv +0 -0
  571. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/fungible_asset.mv +0 -0
  572. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/gas_schedule.mv +0 -0
  573. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/genesis.mv +0 -0
  574. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/governance_proposal.mv +0 -0
  575. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/guid.mv +0 -0
  576. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/jwk_consensus_config.mv +0 -0
  577. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/jwks.mv +0 -0
  578. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/keyless_account.mv +0 -0
  579. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/managed_coin.mv +0 -0
  580. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/multisig_account.mv +0 -0
  581. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/object.mv +0 -0
  582. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/object_code_deployment.mv +0 -0
  583. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/optional_aggregator.mv +0 -0
  584. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/primary_fungible_store.mv +0 -0
  585. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/randomness.mv +0 -0
  586. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/randomness_api_v0_config.mv +0 -0
  587. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/randomness_config.mv +0 -0
  588. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/randomness_config_seqnum.mv +0 -0
  589. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/reconfiguration.mv +0 -0
  590. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/reconfiguration_state.mv +0 -0
  591. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/reconfiguration_with_dkg.mv +0 -0
  592. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/resource_account.mv +0 -0
  593. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/stake.mv +0 -0
  594. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/staking_config.mv +0 -0
  595. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/staking_contract.mv +0 -0
  596. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/staking_proxy.mv +0 -0
  597. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/state_storage.mv +0 -0
  598. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/storage_gas.mv +0 -0
  599. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/system_addresses.mv +0 -0
  600. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/timestamp.mv +0 -0
  601. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/transaction_context.mv +0 -0
  602. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/transaction_fee.mv +0 -0
  603. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/transaction_validation.mv +0 -0
  604. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/util.mv +0 -0
  605. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/validator_consensus_info.mv +0 -0
  606. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/version.mv +0 -0
  607. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/vesting.mv +0 -0
  608. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/voting.mv +0 -0
  609. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/any.mv +0 -0
  610. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/aptos_hash.mv +0 -0
  611. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/big_vector.mv +0 -0
  612. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/bls12381.mv +0 -0
  613. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/bls12381_algebra.mv +0 -0
  614. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/bn254_algebra.mv +0 -0
  615. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/capability.mv +0 -0
  616. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/comparator.mv +0 -0
  617. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/copyable_any.mv +0 -0
  618. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/crypto_algebra.mv +0 -0
  619. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/debug.mv +0 -0
  620. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/ed25519.mv +0 -0
  621. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/fixed_point64.mv +0 -0
  622. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/from_bcs.mv +0 -0
  623. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/math128.mv +0 -0
  624. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/math64.mv +0 -0
  625. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/math_fixed.mv +0 -0
  626. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/math_fixed64.mv +0 -0
  627. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/multi_ed25519.mv +0 -0
  628. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/pool_u64.mv +0 -0
  629. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/pool_u64_unbound.mv +0 -0
  630. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/ristretto255.mv +0 -0
  631. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/ristretto255_bulletproofs.mv +0 -0
  632. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/ristretto255_elgamal.mv +0 -0
  633. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/ristretto255_pedersen.mv +0 -0
  634. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/secp256k1.mv +0 -0
  635. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/simple_map.mv +0 -0
  636. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/smart_table.mv +0 -0
  637. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/smart_vector.mv +0 -0
  638. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/string_utils.mv +0 -0
  639. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/table.mv +0 -0
  640. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/table_with_length.mv +0 -0
  641. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/type_info.mv +0 -0
  642. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/MoveStdlib/acl.mv +0 -0
  643. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/MoveStdlib/bcs.mv +0 -0
  644. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/MoveStdlib/bit_vector.mv +0 -0
  645. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/MoveStdlib/error.mv +0 -0
  646. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/MoveStdlib/features.mv +0 -0
  647. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/MoveStdlib/fixed_point32.mv +0 -0
  648. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/MoveStdlib/hash.mv +0 -0
  649. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/MoveStdlib/option.mv +0 -0
  650. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/MoveStdlib/signer.mv +0 -0
  651. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/MoveStdlib/string.mv +0 -0
  652. package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/MoveStdlib/vector.mv +0 -0
  653. package/src/internal/move/jwks/build/jwk/bytecode_scripts/main.mv +0 -0
  654. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/account.mvsm +0 -0
  655. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/aggregator.mvsm +0 -0
  656. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/aggregator_factory.mvsm +0 -0
  657. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/aggregator_v2.mvsm +0 -0
  658. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/aptos_account.mvsm +0 -0
  659. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/aptos_coin.mvsm +0 -0
  660. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/aptos_governance.mvsm +0 -0
  661. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/block.mvsm +0 -0
  662. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/chain_id.mvsm +0 -0
  663. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/chain_status.mvsm +0 -0
  664. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/code.mvsm +0 -0
  665. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/coin.mvsm +0 -0
  666. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/config_buffer.mvsm +0 -0
  667. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/consensus_config.mvsm +0 -0
  668. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/create_signer.mvsm +0 -0
  669. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/delegation_pool.mvsm +0 -0
  670. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/dispatchable_fungible_asset.mvsm +0 -0
  671. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/dkg.mvsm +0 -0
  672. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/event.mvsm +0 -0
  673. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/execution_config.mvsm +0 -0
  674. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/function_info.mvsm +0 -0
  675. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/fungible_asset.mvsm +0 -0
  676. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/gas_schedule.mvsm +0 -0
  677. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/genesis.mvsm +0 -0
  678. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/governance_proposal.mvsm +0 -0
  679. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/guid.mvsm +0 -0
  680. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/jwk_consensus_config.mvsm +0 -0
  681. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/jwks.mvsm +0 -0
  682. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/keyless_account.mvsm +0 -0
  683. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/managed_coin.mvsm +0 -0
  684. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/multisig_account.mvsm +0 -0
  685. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/object.mvsm +0 -0
  686. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/object_code_deployment.mvsm +0 -0
  687. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/optional_aggregator.mvsm +0 -0
  688. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/primary_fungible_store.mvsm +0 -0
  689. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/randomness.mvsm +0 -0
  690. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/randomness_api_v0_config.mvsm +0 -0
  691. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/randomness_config.mvsm +0 -0
  692. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/randomness_config_seqnum.mvsm +0 -0
  693. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/reconfiguration.mvsm +0 -0
  694. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/reconfiguration_state.mvsm +0 -0
  695. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/reconfiguration_with_dkg.mvsm +0 -0
  696. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/resource_account.mvsm +0 -0
  697. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/stake.mvsm +0 -0
  698. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/staking_config.mvsm +0 -0
  699. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/staking_contract.mvsm +0 -0
  700. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/staking_proxy.mvsm +0 -0
  701. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/state_storage.mvsm +0 -0
  702. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/storage_gas.mvsm +0 -0
  703. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/system_addresses.mvsm +0 -0
  704. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/timestamp.mvsm +0 -0
  705. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/transaction_context.mvsm +0 -0
  706. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/transaction_fee.mvsm +0 -0
  707. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/transaction_validation.mvsm +0 -0
  708. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/util.mvsm +0 -0
  709. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/validator_consensus_info.mvsm +0 -0
  710. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/version.mvsm +0 -0
  711. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/vesting.mvsm +0 -0
  712. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/voting.mvsm +0 -0
  713. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/any.mvsm +0 -0
  714. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/aptos_hash.mvsm +0 -0
  715. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/big_vector.mvsm +0 -0
  716. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/bls12381.mvsm +0 -0
  717. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/bls12381_algebra.mvsm +0 -0
  718. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/bn254_algebra.mvsm +0 -0
  719. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/capability.mvsm +0 -0
  720. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/comparator.mvsm +0 -0
  721. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/copyable_any.mvsm +0 -0
  722. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/crypto_algebra.mvsm +0 -0
  723. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/debug.mvsm +0 -0
  724. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/ed25519.mvsm +0 -0
  725. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/fixed_point64.mvsm +0 -0
  726. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/from_bcs.mvsm +0 -0
  727. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/math128.mvsm +0 -0
  728. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/math64.mvsm +0 -0
  729. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/math_fixed.mvsm +0 -0
  730. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/math_fixed64.mvsm +0 -0
  731. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/multi_ed25519.mvsm +0 -0
  732. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/pool_u64.mvsm +0 -0
  733. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/pool_u64_unbound.mvsm +0 -0
  734. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/ristretto255.mvsm +0 -0
  735. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/ristretto255_bulletproofs.mvsm +0 -0
  736. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/ristretto255_elgamal.mvsm +0 -0
  737. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/ristretto255_pedersen.mvsm +0 -0
  738. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/secp256k1.mvsm +0 -0
  739. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/simple_map.mvsm +0 -0
  740. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/smart_table.mvsm +0 -0
  741. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/smart_vector.mvsm +0 -0
  742. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/string_utils.mvsm +0 -0
  743. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/table.mvsm +0 -0
  744. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/table_with_length.mvsm +0 -0
  745. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/type_info.mvsm +0 -0
  746. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/MoveStdlib/acl.mvsm +0 -0
  747. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/MoveStdlib/bcs.mvsm +0 -0
  748. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/MoveStdlib/bit_vector.mvsm +0 -0
  749. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/MoveStdlib/error.mvsm +0 -0
  750. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/MoveStdlib/features.mvsm +0 -0
  751. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/MoveStdlib/fixed_point32.mvsm +0 -0
  752. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/MoveStdlib/hash.mvsm +0 -0
  753. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/MoveStdlib/option.mvsm +0 -0
  754. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/MoveStdlib/signer.mvsm +0 -0
  755. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/MoveStdlib/string.mvsm +0 -0
  756. package/src/internal/move/jwks/build/jwk/source_maps/dependencies/MoveStdlib/vector.mvsm +0 -0
  757. package/src/internal/move/jwks/build/jwk/source_maps/main.mvsm +0 -0
  758. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/account.move +0 -1533
  759. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/aggregator.move +0 -48
  760. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/aggregator_factory.move +0 -66
  761. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/aggregator_v2.move +0 -280
  762. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/aptos_account.move +0 -443
  763. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/aptos_coin.move +0 -204
  764. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/aptos_governance.move +0 -1387
  765. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/block.move +0 -394
  766. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/chain_id.move +0 -41
  767. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/chain_status.move +0 -48
  768. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/code.move +0 -367
  769. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/coin.move +0 -2214
  770. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/config_buffer.move +0 -101
  771. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/consensus_config.move +0 -77
  772. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/create_signer.move +0 -21
  773. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/delegation_pool.move +0 -5568
  774. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/dispatchable_fungible_asset.move +0 -228
  775. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/dkg.move +0 -121
  776. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/event.move +0 -92
  777. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/execution_config.move +0 -66
  778. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/function_info.move +0 -100
  779. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/fungible_asset.move +0 -1566
  780. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/gas_schedule.move +0 -176
  781. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/genesis.move +0 -550
  782. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/governance_proposal.move +0 -23
  783. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/guid.move +0 -68
  784. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/jwk_consensus_config.move +0 -148
  785. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/jwks.move +0 -817
  786. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/keyless_account.move +0 -312
  787. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/managed_coin.move +0 -205
  788. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/multisig_account.move +0 -2477
  789. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/object.move +0 -1073
  790. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/object_code_deployment.move +0 -147
  791. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/optional_aggregator.move +0 -295
  792. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/primary_fungible_store.move +0 -405
  793. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/randomness.move +0 -574
  794. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/randomness_api_v0_config.move +0 -57
  795. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/randomness_config.move +0 -153
  796. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/randomness_config_seqnum.move +0 -49
  797. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/reconfiguration.move +0 -237
  798. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/reconfiguration_state.move +0 -132
  799. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/reconfiguration_with_dkg.move +0 -69
  800. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/resource_account.move +0 -267
  801. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/stake.move +0 -3286
  802. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/staking_config.move +0 -686
  803. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/staking_contract.move +0 -1618
  804. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/staking_proxy.move +0 -228
  805. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/state_storage.move +0 -90
  806. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/storage_gas.move +0 -622
  807. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/system_addresses.move +0 -82
  808. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/timestamp.move +0 -88
  809. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/transaction_context.move +0 -262
  810. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/transaction_fee.move +0 -457
  811. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/transaction_validation.move +0 -501
  812. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/util.move +0 -16
  813. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/validator_consensus_info.move +0 -42
  814. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/version.move +0 -115
  815. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/vesting.move +0 -2183
  816. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/voting.move +0 -1279
  817. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/any.move +0 -57
  818. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/aptos_hash.move +0 -253
  819. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/big_vector.move +0 -469
  820. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/bls12381.move +0 -985
  821. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/bls12381_algebra.move +0 -802
  822. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/bn254_algebra.move +0 -855
  823. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/capability.move +0 -193
  824. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/comparator.move +0 -173
  825. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/copyable_any.move +0 -45
  826. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/crypto_algebra.move +0 -351
  827. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/debug.move +0 -278
  828. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/ed25519.move +0 -262
  829. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/fixed_point64.move +0 -447
  830. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/from_bcs.move +0 -91
  831. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/math128.move +0 -381
  832. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/math64.move +0 -336
  833. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/math_fixed.move +0 -139
  834. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/math_fixed64.move +0 -142
  835. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/multi_ed25519.move +0 -482
  836. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/pool_u64.move +0 -571
  837. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/pool_u64_unbound.move +0 -270
  838. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/ristretto255.move +0 -1310
  839. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/ristretto255_bulletproofs.move +0 -253
  840. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/ristretto255_elgamal.move +0 -234
  841. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/ristretto255_pedersen.move +0 -158
  842. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/secp256k1.move +0 -114
  843. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/simple_map.move +0 -319
  844. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/smart_table.move +0 -769
  845. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/smart_vector.move +0 -766
  846. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/string_utils.move +0 -148
  847. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/table.move +0 -152
  848. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/table_with_length.move +0 -141
  849. package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/type_info.move +0 -351
  850. package/src/internal/move/jwks/build/jwk/sources/dependencies/MoveStdlib/acl.move +0 -46
  851. package/src/internal/move/jwks/build/jwk/sources/dependencies/MoveStdlib/bcs.move +0 -27
  852. package/src/internal/move/jwks/build/jwk/sources/dependencies/MoveStdlib/bit_vector.move +0 -239
  853. package/src/internal/move/jwks/build/jwk/sources/dependencies/MoveStdlib/error.move +0 -88
  854. package/src/internal/move/jwks/build/jwk/sources/dependencies/MoveStdlib/features.move +0 -780
  855. package/src/internal/move/jwks/build/jwk/sources/dependencies/MoveStdlib/fixed_point32.move +0 -295
  856. package/src/internal/move/jwks/build/jwk/sources/dependencies/MoveStdlib/hash.move +0 -8
  857. package/src/internal/move/jwks/build/jwk/sources/dependencies/MoveStdlib/option.move +0 -356
  858. package/src/internal/move/jwks/build/jwk/sources/dependencies/MoveStdlib/signer.move +0 -21
  859. package/src/internal/move/jwks/build/jwk/sources/dependencies/MoveStdlib/string.move +0 -93
  860. package/src/internal/move/jwks/build/jwk/sources/dependencies/MoveStdlib/vector.move +0 -669
  861. package/src/internal/move/jwks/build/jwk/sources/main.move +0 -20
  862. package/src/internal/queries/getAccountAddressForAuthKey.graphql +0 -8
  863. package/src/internal/queries/getAuthKeysForPublicKey.graphql +0 -9
  864. package/src/internal/queries/getMultiKeyForAuthKey.graphql +0 -9
  865. package/src/internal/queries/getSignatures.graphql +0 -13
  866. /package/dist/esm/{chunk-JXCZTOYC.mjs.map → chunk-KDMSOCZY.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
- }