@0xpolygonid/js-sdk 1.0.0-beta.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 (469) hide show
  1. package/LICENSE +661 -0
  2. package/README.md +40 -0
  3. package/dist/cjs/auth/auth.js +179 -0
  4. package/dist/cjs/auth/auth.js.map +1 -0
  5. package/dist/cjs/auth/index.js +18 -0
  6. package/dist/cjs/auth/index.js.map +1 -0
  7. package/dist/cjs/circuits/atomic-query-mtp-v2.js +181 -0
  8. package/dist/cjs/circuits/atomic-query-mtp-v2.js.map +1 -0
  9. package/dist/cjs/circuits/atomic-query-sig-v2.js +219 -0
  10. package/dist/cjs/circuits/atomic-query-sig-v2.js.map +1 -0
  11. package/dist/cjs/circuits/auth-v2.js +99 -0
  12. package/dist/cjs/circuits/auth-v2.js.map +1 -0
  13. package/dist/cjs/circuits/common.js +193 -0
  14. package/dist/cjs/circuits/common.js.map +1 -0
  15. package/dist/cjs/circuits/comparer.js +132 -0
  16. package/dist/cjs/circuits/comparer.js.map +1 -0
  17. package/dist/cjs/circuits/index.js +24 -0
  18. package/dist/cjs/circuits/index.js.map +1 -0
  19. package/dist/cjs/circuits/models.js +110 -0
  20. package/dist/cjs/circuits/models.js.map +1 -0
  21. package/dist/cjs/circuits/state-transition.js +94 -0
  22. package/dist/cjs/circuits/state-transition.js.map +1 -0
  23. package/dist/cjs/credentials/credential-wallet.js +264 -0
  24. package/dist/cjs/credentials/credential-wallet.js.map +1 -0
  25. package/dist/cjs/credentials/index.js +18 -0
  26. package/dist/cjs/credentials/index.js.map +1 -0
  27. package/dist/cjs/credentials/revocation.js +290 -0
  28. package/dist/cjs/credentials/revocation.js.map +1 -0
  29. package/dist/cjs/iden3comm/constants.js +45 -0
  30. package/dist/cjs/iden3comm/constants.js.map +1 -0
  31. package/dist/cjs/iden3comm/errors.js +15 -0
  32. package/dist/cjs/iden3comm/errors.js.map +1 -0
  33. package/dist/cjs/iden3comm/index.js +35 -0
  34. package/dist/cjs/iden3comm/index.js.map +1 -0
  35. package/dist/cjs/iden3comm/packageManager.js +78 -0
  36. package/dist/cjs/iden3comm/packageManager.js.map +1 -0
  37. package/dist/cjs/iden3comm/packers/index.js +19 -0
  38. package/dist/cjs/iden3comm/packers/index.js.map +1 -0
  39. package/dist/cjs/iden3comm/packers/plain.js +49 -0
  40. package/dist/cjs/iden3comm/packers/plain.js.map +1 -0
  41. package/dist/cjs/iden3comm/packers/zkp.js +155 -0
  42. package/dist/cjs/iden3comm/packers/zkp.js.map +1 -0
  43. package/dist/cjs/iden3comm/types/index.js +24 -0
  44. package/dist/cjs/iden3comm/types/index.js.map +1 -0
  45. package/dist/cjs/iden3comm/types/packageManager.js +3 -0
  46. package/dist/cjs/iden3comm/types/packageManager.js.map +1 -0
  47. package/dist/cjs/iden3comm/types/packer.js +3 -0
  48. package/dist/cjs/iden3comm/types/packer.js.map +1 -0
  49. package/dist/cjs/iden3comm/types/protocol/auth.js +3 -0
  50. package/dist/cjs/iden3comm/types/protocol/auth.js.map +1 -0
  51. package/dist/cjs/iden3comm/types/protocol/credentials.js +3 -0
  52. package/dist/cjs/iden3comm/types/protocol/credentials.js.map +1 -0
  53. package/dist/cjs/iden3comm/types/protocol/messages.js +3 -0
  54. package/dist/cjs/iden3comm/types/protocol/messages.js.map +1 -0
  55. package/dist/cjs/iden3comm/types/protocol/proof.js +3 -0
  56. package/dist/cjs/iden3comm/types/protocol/proof.js.map +1 -0
  57. package/dist/cjs/iden3comm/types/protocol/revocation.js +3 -0
  58. package/dist/cjs/iden3comm/types/protocol/revocation.js.map +1 -0
  59. package/dist/cjs/iden3comm/utils/bytes.js +20 -0
  60. package/dist/cjs/iden3comm/utils/bytes.js.map +1 -0
  61. package/dist/cjs/iden3comm/utils/envelope.js +99 -0
  62. package/dist/cjs/iden3comm/utils/envelope.js.map +1 -0
  63. package/dist/cjs/iden3comm/utils/index.js +6 -0
  64. package/dist/cjs/iden3comm/utils/index.js.map +1 -0
  65. package/dist/cjs/iden3comm/utils/message.js +43 -0
  66. package/dist/cjs/iden3comm/utils/message.js.map +1 -0
  67. package/dist/cjs/identity/common.js +40 -0
  68. package/dist/cjs/identity/common.js.map +1 -0
  69. package/dist/cjs/identity/identity-wallet.js +422 -0
  70. package/dist/cjs/identity/identity-wallet.js.map +1 -0
  71. package/dist/cjs/identity/index.js +19 -0
  72. package/dist/cjs/identity/index.js.map +1 -0
  73. package/dist/cjs/index.js +42 -0
  74. package/dist/cjs/index.js.map +1 -0
  75. package/dist/cjs/kms/bjj-provider.js +101 -0
  76. package/dist/cjs/kms/bjj-provider.js.map +1 -0
  77. package/dist/cjs/kms/index.js +20 -0
  78. package/dist/cjs/kms/index.js.map +1 -0
  79. package/dist/cjs/kms/kms.js +74 -0
  80. package/dist/cjs/kms/kms.js.map +1 -0
  81. package/dist/cjs/kms/provider-helpers.js +49 -0
  82. package/dist/cjs/kms/provider-helpers.js.map +1 -0
  83. package/dist/cjs/kms/store/abstract-key-store.js +15 -0
  84. package/dist/cjs/kms/store/abstract-key-store.js.map +1 -0
  85. package/dist/cjs/kms/store/index.js +21 -0
  86. package/dist/cjs/kms/store/index.js.map +1 -0
  87. package/dist/cjs/kms/store/local-storage-key-store.js +56 -0
  88. package/dist/cjs/kms/store/local-storage-key-store.js.map +1 -0
  89. package/dist/cjs/kms/store/memory-key-store.js +28 -0
  90. package/dist/cjs/kms/store/memory-key-store.js.map +1 -0
  91. package/dist/cjs/kms/store/types.js +15 -0
  92. package/dist/cjs/kms/store/types.js.map +1 -0
  93. package/dist/cjs/loaders/index.js +19 -0
  94. package/dist/cjs/loaders/index.js.map +1 -0
  95. package/dist/cjs/loaders/key.js +50 -0
  96. package/dist/cjs/loaders/key.js.map +1 -0
  97. package/dist/cjs/loaders/schema.js +110 -0
  98. package/dist/cjs/loaders/schema.js.map +1 -0
  99. package/dist/cjs/proof/common.js +64 -0
  100. package/dist/cjs/proof/common.js.map +1 -0
  101. package/dist/cjs/proof/index.js +20 -0
  102. package/dist/cjs/proof/index.js.map +1 -0
  103. package/dist/cjs/proof/proof-service.js +344 -0
  104. package/dist/cjs/proof/proof-service.js.map +1 -0
  105. package/dist/cjs/proof/prover.js +79 -0
  106. package/dist/cjs/proof/prover.js.map +1 -0
  107. package/dist/cjs/proof/witness_calculator.js +282 -0
  108. package/dist/cjs/proof/witness_calculator.js.map +1 -0
  109. package/dist/cjs/schema-processor/index.js +19 -0
  110. package/dist/cjs/schema-processor/index.js.map +1 -0
  111. package/dist/cjs/schema-processor/json/index.js +19 -0
  112. package/dist/cjs/schema-processor/json/index.js.map +1 -0
  113. package/dist/cjs/schema-processor/json/parser.js +136 -0
  114. package/dist/cjs/schema-processor/json/parser.js.map +1 -0
  115. package/dist/cjs/schema-processor/json/validator.js +42 -0
  116. package/dist/cjs/schema-processor/json/validator.js.map +1 -0
  117. package/dist/cjs/schema-processor/utils.js +98 -0
  118. package/dist/cjs/schema-processor/utils.js.map +1 -0
  119. package/dist/cjs/storage/blockchain/index.js +18 -0
  120. package/dist/cjs/storage/blockchain/index.js.map +1 -0
  121. package/dist/cjs/storage/blockchain/state-abi.json +922 -0
  122. package/dist/cjs/storage/blockchain/state.js +112 -0
  123. package/dist/cjs/storage/blockchain/state.js.map +1 -0
  124. package/dist/cjs/storage/entities/circuitData.js +3 -0
  125. package/dist/cjs/storage/entities/circuitData.js.map +1 -0
  126. package/dist/cjs/storage/entities/identity.js +3 -0
  127. package/dist/cjs/storage/entities/identity.js.map +1 -0
  128. package/dist/cjs/storage/entities/index.js +21 -0
  129. package/dist/cjs/storage/entities/index.js.map +1 -0
  130. package/dist/cjs/storage/entities/mt.js +19 -0
  131. package/dist/cjs/storage/entities/mt.js.map +1 -0
  132. package/dist/cjs/storage/entities/state.js +3 -0
  133. package/dist/cjs/storage/entities/state.js.map +1 -0
  134. package/dist/cjs/storage/errors.js +14 -0
  135. package/dist/cjs/storage/errors.js.map +1 -0
  136. package/dist/cjs/storage/filters/index.js +18 -0
  137. package/dist/cjs/storage/filters/index.js.map +1 -0
  138. package/dist/cjs/storage/filters/jsonQuery.js +141 -0
  139. package/dist/cjs/storage/filters/jsonQuery.js.map +1 -0
  140. package/dist/cjs/storage/index.js +24 -0
  141. package/dist/cjs/storage/index.js.map +1 -0
  142. package/dist/cjs/storage/interfaces/circuits.js +3 -0
  143. package/dist/cjs/storage/interfaces/circuits.js.map +1 -0
  144. package/dist/cjs/storage/interfaces/credentials.js +3 -0
  145. package/dist/cjs/storage/interfaces/credentials.js.map +1 -0
  146. package/dist/cjs/storage/interfaces/data-source.js +3 -0
  147. package/dist/cjs/storage/interfaces/data-source.js.map +1 -0
  148. package/dist/cjs/storage/interfaces/data-storage.js +3 -0
  149. package/dist/cjs/storage/interfaces/data-storage.js.map +1 -0
  150. package/dist/cjs/storage/interfaces/identity.js +3 -0
  151. package/dist/cjs/storage/interfaces/identity.js.map +1 -0
  152. package/dist/cjs/storage/interfaces/index.js +24 -0
  153. package/dist/cjs/storage/interfaces/index.js.map +1 -0
  154. package/dist/cjs/storage/interfaces/merkletree.js +3 -0
  155. package/dist/cjs/storage/interfaces/merkletree.js.map +1 -0
  156. package/dist/cjs/storage/interfaces/state.js +3 -0
  157. package/dist/cjs/storage/interfaces/state.js.map +1 -0
  158. package/dist/cjs/storage/local-storage/data-source.js +89 -0
  159. package/dist/cjs/storage/local-storage/data-source.js.map +1 -0
  160. package/dist/cjs/storage/local-storage/index.js +19 -0
  161. package/dist/cjs/storage/local-storage/index.js.map +1 -0
  162. package/dist/cjs/storage/local-storage/merkletree.js +148 -0
  163. package/dist/cjs/storage/local-storage/merkletree.js.map +1 -0
  164. package/dist/cjs/storage/memory/data-source.js +49 -0
  165. package/dist/cjs/storage/memory/data-source.js.map +1 -0
  166. package/dist/cjs/storage/memory/index.js +19 -0
  167. package/dist/cjs/storage/memory/index.js.map +1 -0
  168. package/dist/cjs/storage/memory/merkletree.js +94 -0
  169. package/dist/cjs/storage/memory/merkletree.js.map +1 -0
  170. package/dist/cjs/storage/shared/circuit-storage.js +46 -0
  171. package/dist/cjs/storage/shared/circuit-storage.js.map +1 -0
  172. package/dist/cjs/storage/shared/credential-storage.js +66 -0
  173. package/dist/cjs/storage/shared/credential-storage.js.map +1 -0
  174. package/dist/cjs/storage/shared/identity-storage.js +71 -0
  175. package/dist/cjs/storage/shared/identity-storage.js.map +1 -0
  176. package/dist/cjs/storage/shared/index.js +20 -0
  177. package/dist/cjs/storage/shared/index.js.map +1 -0
  178. package/dist/cjs/verifiable/constants.js +104 -0
  179. package/dist/cjs/verifiable/constants.js.map +1 -0
  180. package/dist/cjs/verifiable/credential.js +129 -0
  181. package/dist/cjs/verifiable/credential.js.map +1 -0
  182. package/dist/cjs/verifiable/index.js +21 -0
  183. package/dist/cjs/verifiable/index.js.map +1 -0
  184. package/dist/cjs/verifiable/proof.js +70 -0
  185. package/dist/cjs/verifiable/proof.js.map +1 -0
  186. package/dist/cjs/verifiable/schema.js +245 -0
  187. package/dist/cjs/verifiable/schema.js.map +1 -0
  188. package/dist/esm/auth/auth.js +152 -0
  189. package/dist/esm/auth/auth.js.map +1 -0
  190. package/dist/esm/auth/index.js +2 -0
  191. package/dist/esm/auth/index.js.map +1 -0
  192. package/dist/esm/circuits/atomic-query-mtp-v2.js +176 -0
  193. package/dist/esm/circuits/atomic-query-mtp-v2.js.map +1 -0
  194. package/dist/esm/circuits/atomic-query-sig-v2.js +214 -0
  195. package/dist/esm/circuits/atomic-query-sig-v2.js.map +1 -0
  196. package/dist/esm/circuits/auth-v2.js +94 -0
  197. package/dist/esm/circuits/auth-v2.js.map +1 -0
  198. package/dist/esm/circuits/common.js +186 -0
  199. package/dist/esm/circuits/common.js.map +1 -0
  200. package/dist/esm/circuits/comparer.js +126 -0
  201. package/dist/esm/circuits/comparer.js.map +1 -0
  202. package/dist/esm/circuits/index.js +8 -0
  203. package/dist/esm/circuits/index.js.map +1 -0
  204. package/dist/esm/circuits/models.js +104 -0
  205. package/dist/esm/circuits/models.js.map +1 -0
  206. package/dist/esm/circuits/state-transition.js +89 -0
  207. package/dist/esm/circuits/state-transition.js.map +1 -0
  208. package/dist/esm/credentials/credential-wallet.js +232 -0
  209. package/dist/esm/credentials/credential-wallet.js.map +1 -0
  210. package/dist/esm/credentials/index.js +2 -0
  211. package/dist/esm/credentials/index.js.map +1 -0
  212. package/dist/esm/credentials/revocation.js +281 -0
  213. package/dist/esm/credentials/revocation.js.map +1 -0
  214. package/dist/esm/iden3comm/constants.js +42 -0
  215. package/dist/esm/iden3comm/constants.js.map +1 -0
  216. package/dist/esm/iden3comm/errors.js +12 -0
  217. package/dist/esm/iden3comm/errors.js.map +1 -0
  218. package/dist/esm/iden3comm/index.js +6 -0
  219. package/dist/esm/iden3comm/index.js.map +1 -0
  220. package/dist/esm/iden3comm/packageManager.js +74 -0
  221. package/dist/esm/iden3comm/packageManager.js.map +1 -0
  222. package/dist/esm/iden3comm/packers/index.js +3 -0
  223. package/dist/esm/iden3comm/packers/index.js.map +1 -0
  224. package/dist/esm/iden3comm/packers/plain.js +45 -0
  225. package/dist/esm/iden3comm/packers/plain.js.map +1 -0
  226. package/dist/esm/iden3comm/packers/zkp.js +149 -0
  227. package/dist/esm/iden3comm/packers/zkp.js.map +1 -0
  228. package/dist/esm/iden3comm/types/index.js +8 -0
  229. package/dist/esm/iden3comm/types/index.js.map +1 -0
  230. package/dist/esm/iden3comm/types/packageManager.js +2 -0
  231. package/dist/esm/iden3comm/types/packageManager.js.map +1 -0
  232. package/dist/esm/iden3comm/types/packer.js +2 -0
  233. package/dist/esm/iden3comm/types/packer.js.map +1 -0
  234. package/dist/esm/iden3comm/types/protocol/auth.js +2 -0
  235. package/dist/esm/iden3comm/types/protocol/auth.js.map +1 -0
  236. package/dist/esm/iden3comm/types/protocol/credentials.js +2 -0
  237. package/dist/esm/iden3comm/types/protocol/credentials.js.map +1 -0
  238. package/dist/esm/iden3comm/types/protocol/messages.js +2 -0
  239. package/dist/esm/iden3comm/types/protocol/messages.js.map +1 -0
  240. package/dist/esm/iden3comm/types/protocol/proof.js +2 -0
  241. package/dist/esm/iden3comm/types/protocol/proof.js.map +1 -0
  242. package/dist/esm/iden3comm/types/protocol/revocation.js +2 -0
  243. package/dist/esm/iden3comm/types/protocol/revocation.js.map +1 -0
  244. package/dist/esm/iden3comm/utils/bytes.js +20 -0
  245. package/dist/esm/iden3comm/utils/bytes.js.map +1 -0
  246. package/dist/esm/iden3comm/utils/envelope.js +92 -0
  247. package/dist/esm/iden3comm/utils/envelope.js.map +1 -0
  248. package/dist/esm/iden3comm/utils/index.js +3 -0
  249. package/dist/esm/iden3comm/utils/index.js.map +1 -0
  250. package/dist/esm/iden3comm/utils/message.js +37 -0
  251. package/dist/esm/iden3comm/utils/message.js.map +1 -0
  252. package/dist/esm/identity/common.js +35 -0
  253. package/dist/esm/identity/common.js.map +1 -0
  254. package/dist/esm/identity/identity-wallet.js +395 -0
  255. package/dist/esm/identity/identity-wallet.js.map +1 -0
  256. package/dist/esm/identity/index.js +3 -0
  257. package/dist/esm/identity/index.js.map +1 -0
  258. package/dist/esm/index.js +13 -0
  259. package/dist/esm/index.js.map +1 -0
  260. package/dist/esm/kms/bjj-provider.js +74 -0
  261. package/dist/esm/kms/bjj-provider.js.map +1 -0
  262. package/dist/esm/kms/index.js +4 -0
  263. package/dist/esm/kms/index.js.map +1 -0
  264. package/dist/esm/kms/kms.js +70 -0
  265. package/dist/esm/kms/kms.js.map +1 -0
  266. package/dist/esm/kms/provider-helpers.js +44 -0
  267. package/dist/esm/kms/provider-helpers.js.map +1 -0
  268. package/dist/esm/kms/store/abstract-key-store.js +11 -0
  269. package/dist/esm/kms/store/abstract-key-store.js.map +1 -0
  270. package/dist/esm/kms/store/index.js +5 -0
  271. package/dist/esm/kms/store/index.js.map +1 -0
  272. package/dist/esm/kms/store/local-storage-key-store.js +52 -0
  273. package/dist/esm/kms/store/local-storage-key-store.js.map +1 -0
  274. package/dist/esm/kms/store/memory-key-store.js +24 -0
  275. package/dist/esm/kms/store/memory-key-store.js.map +1 -0
  276. package/dist/esm/kms/store/types.js +12 -0
  277. package/dist/esm/kms/store/types.js.map +1 -0
  278. package/dist/esm/loaders/index.js +3 -0
  279. package/dist/esm/loaders/index.js.map +1 -0
  280. package/dist/esm/loaders/key.js +23 -0
  281. package/dist/esm/loaders/key.js.map +1 -0
  282. package/dist/esm/loaders/schema.js +100 -0
  283. package/dist/esm/loaders/schema.js.map +1 -0
  284. package/dist/esm/proof/common.js +59 -0
  285. package/dist/esm/proof/common.js.map +1 -0
  286. package/dist/esm/proof/index.js +4 -0
  287. package/dist/esm/proof/index.js.map +1 -0
  288. package/dist/esm/proof/proof-service.js +339 -0
  289. package/dist/esm/proof/proof-service.js.map +1 -0
  290. package/dist/esm/proof/prover.js +52 -0
  291. package/dist/esm/proof/prover.js.map +1 -0
  292. package/dist/esm/proof/witness_calculator.js +278 -0
  293. package/dist/esm/proof/witness_calculator.js.map +1 -0
  294. package/dist/esm/schema-processor/index.js +3 -0
  295. package/dist/esm/schema-processor/index.js.map +1 -0
  296. package/dist/esm/schema-processor/json/index.js +3 -0
  297. package/dist/esm/schema-processor/json/index.js.map +1 -0
  298. package/dist/esm/schema-processor/json/parser.js +132 -0
  299. package/dist/esm/schema-processor/json/parser.js.map +1 -0
  300. package/dist/esm/schema-processor/json/validator.js +35 -0
  301. package/dist/esm/schema-processor/json/validator.js.map +1 -0
  302. package/dist/esm/schema-processor/utils.js +89 -0
  303. package/dist/esm/schema-processor/utils.js.map +1 -0
  304. package/dist/esm/storage/blockchain/index.js +2 -0
  305. package/dist/esm/storage/blockchain/index.js.map +1 -0
  306. package/dist/esm/storage/blockchain/state-abi.json +922 -0
  307. package/dist/esm/storage/blockchain/state.js +105 -0
  308. package/dist/esm/storage/blockchain/state.js.map +1 -0
  309. package/dist/esm/storage/entities/circuitData.js +2 -0
  310. package/dist/esm/storage/entities/circuitData.js.map +1 -0
  311. package/dist/esm/storage/entities/identity.js +2 -0
  312. package/dist/esm/storage/entities/identity.js.map +1 -0
  313. package/dist/esm/storage/entities/index.js +5 -0
  314. package/dist/esm/storage/entities/index.js.map +1 -0
  315. package/dist/esm/storage/entities/mt.js +16 -0
  316. package/dist/esm/storage/entities/mt.js.map +1 -0
  317. package/dist/esm/storage/entities/state.js +2 -0
  318. package/dist/esm/storage/entities/state.js.map +1 -0
  319. package/dist/esm/storage/errors.js +11 -0
  320. package/dist/esm/storage/errors.js.map +1 -0
  321. package/dist/esm/storage/filters/index.js +2 -0
  322. package/dist/esm/storage/filters/index.js.map +1 -0
  323. package/dist/esm/storage/filters/jsonQuery.js +134 -0
  324. package/dist/esm/storage/filters/jsonQuery.js.map +1 -0
  325. package/dist/esm/storage/index.js +8 -0
  326. package/dist/esm/storage/index.js.map +1 -0
  327. package/dist/esm/storage/interfaces/circuits.js +2 -0
  328. package/dist/esm/storage/interfaces/circuits.js.map +1 -0
  329. package/dist/esm/storage/interfaces/credentials.js +2 -0
  330. package/dist/esm/storage/interfaces/credentials.js.map +1 -0
  331. package/dist/esm/storage/interfaces/data-source.js +2 -0
  332. package/dist/esm/storage/interfaces/data-source.js.map +1 -0
  333. package/dist/esm/storage/interfaces/data-storage.js +2 -0
  334. package/dist/esm/storage/interfaces/data-storage.js.map +1 -0
  335. package/dist/esm/storage/interfaces/identity.js +2 -0
  336. package/dist/esm/storage/interfaces/identity.js.map +1 -0
  337. package/dist/esm/storage/interfaces/index.js +8 -0
  338. package/dist/esm/storage/interfaces/index.js.map +1 -0
  339. package/dist/esm/storage/interfaces/merkletree.js +2 -0
  340. package/dist/esm/storage/interfaces/merkletree.js.map +1 -0
  341. package/dist/esm/storage/interfaces/state.js +2 -0
  342. package/dist/esm/storage/interfaces/state.js.map +1 -0
  343. package/dist/esm/storage/local-storage/data-source.js +85 -0
  344. package/dist/esm/storage/local-storage/data-source.js.map +1 -0
  345. package/dist/esm/storage/local-storage/index.js +3 -0
  346. package/dist/esm/storage/local-storage/index.js.map +1 -0
  347. package/dist/esm/storage/local-storage/merkletree.js +121 -0
  348. package/dist/esm/storage/local-storage/merkletree.js.map +1 -0
  349. package/dist/esm/storage/memory/data-source.js +45 -0
  350. package/dist/esm/storage/memory/data-source.js.map +1 -0
  351. package/dist/esm/storage/memory/index.js +3 -0
  352. package/dist/esm/storage/memory/index.js.map +1 -0
  353. package/dist/esm/storage/memory/merkletree.js +67 -0
  354. package/dist/esm/storage/memory/merkletree.js.map +1 -0
  355. package/dist/esm/storage/shared/circuit-storage.js +42 -0
  356. package/dist/esm/storage/shared/circuit-storage.js.map +1 -0
  357. package/dist/esm/storage/shared/credential-storage.js +62 -0
  358. package/dist/esm/storage/shared/credential-storage.js.map +1 -0
  359. package/dist/esm/storage/shared/identity-storage.js +67 -0
  360. package/dist/esm/storage/shared/identity-storage.js.map +1 -0
  361. package/dist/esm/storage/shared/index.js +4 -0
  362. package/dist/esm/storage/shared/index.js.map +1 -0
  363. package/dist/esm/verifiable/constants.js +101 -0
  364. package/dist/esm/verifiable/constants.js.map +1 -0
  365. package/dist/esm/verifiable/credential.js +124 -0
  366. package/dist/esm/verifiable/credential.js.map +1 -0
  367. package/dist/esm/verifiable/index.js +5 -0
  368. package/dist/esm/verifiable/index.js.map +1 -0
  369. package/dist/esm/verifiable/proof.js +64 -0
  370. package/dist/esm/verifiable/proof.js.map +1 -0
  371. package/dist/esm/verifiable/schema.js +242 -0
  372. package/dist/esm/verifiable/schema.js.map +1 -0
  373. package/dist/esm_esbuild/index.js +128087 -0
  374. package/dist/esm_esbuild/index.js.map +7 -0
  375. package/dist/types/auth/auth.d.ts +131 -0
  376. package/dist/types/auth/index.d.ts +1 -0
  377. package/dist/types/circuits/atomic-query-mtp-v2.d.ts +64 -0
  378. package/dist/types/circuits/atomic-query-sig-v2.d.ts +65 -0
  379. package/dist/types/circuits/auth-v2.d.ts +46 -0
  380. package/dist/types/circuits/common.d.ts +124 -0
  381. package/dist/types/circuits/comparer.d.ts +87 -0
  382. package/dist/types/circuits/index.d.ts +7 -0
  383. package/dist/types/circuits/models.d.ts +181 -0
  384. package/dist/types/circuits/state-transition.d.ts +50 -0
  385. package/dist/types/credentials/credential-wallet.d.ts +248 -0
  386. package/dist/types/credentials/index.d.ts +1 -0
  387. package/dist/types/credentials/revocation.d.ts +97 -0
  388. package/dist/types/iden3comm/constants.d.ts +27 -0
  389. package/dist/types/iden3comm/errors.d.ts +8 -0
  390. package/dist/types/iden3comm/index.d.ts +5 -0
  391. package/dist/types/iden3comm/packageManager.d.ts +31 -0
  392. package/dist/types/iden3comm/packers/index.d.ts +2 -0
  393. package/dist/types/iden3comm/packers/plain.d.ts +34 -0
  394. package/dist/types/iden3comm/packers/zkp.d.ts +86 -0
  395. package/dist/types/iden3comm/types/index.d.ts +15 -0
  396. package/dist/types/iden3comm/types/packageManager.d.ts +80 -0
  397. package/dist/types/iden3comm/types/packer.d.ts +59 -0
  398. package/dist/types/iden3comm/types/protocol/auth.d.ts +49 -0
  399. package/dist/types/iden3comm/types/protocol/credentials.d.ts +74 -0
  400. package/dist/types/iden3comm/types/protocol/messages.d.ts +16 -0
  401. package/dist/types/iden3comm/types/protocol/proof.d.ts +31 -0
  402. package/dist/types/iden3comm/types/protocol/revocation.d.ts +28 -0
  403. package/dist/types/iden3comm/utils/bytes.d.ts +8 -0
  404. package/dist/types/iden3comm/utils/envelope.d.ts +31 -0
  405. package/dist/types/iden3comm/utils/index.d.ts +2 -0
  406. package/dist/types/iden3comm/utils/message.d.ts +19 -0
  407. package/dist/types/identity/common.d.ts +18 -0
  408. package/dist/types/identity/identity-wallet.d.ts +248 -0
  409. package/dist/types/identity/index.d.ts +2 -0
  410. package/dist/types/index.d.ts +12 -0
  411. package/dist/types/kms/bjj-provider.d.ts +47 -0
  412. package/dist/types/kms/index.d.ts +3 -0
  413. package/dist/types/kms/kms.d.ts +80 -0
  414. package/dist/types/kms/provider-helpers.d.ts +18 -0
  415. package/dist/types/kms/store/abstract-key-store.d.ts +31 -0
  416. package/dist/types/kms/store/index.d.ts +4 -0
  417. package/dist/types/kms/store/local-storage-key-store.d.ts +32 -0
  418. package/dist/types/kms/store/memory-key-store.d.ts +20 -0
  419. package/dist/types/kms/store/types.d.ts +21 -0
  420. package/dist/types/loaders/index.d.ts +2 -0
  421. package/dist/types/loaders/key.d.ts +29 -0
  422. package/dist/types/loaders/schema.d.ts +85 -0
  423. package/dist/types/proof/common.d.ts +17 -0
  424. package/dist/types/proof/index.d.ts +3 -0
  425. package/dist/types/proof/proof-service.d.ts +121 -0
  426. package/dist/types/proof/prover.d.ts +11 -0
  427. package/dist/types/proof/witness_calculator.d.ts +16 -0
  428. package/dist/types/schema-processor/index.d.ts +2 -0
  429. package/dist/types/schema-processor/json/index.d.ts +2 -0
  430. package/dist/types/schema-processor/json/parser.d.ts +103 -0
  431. package/dist/types/schema-processor/json/validator.d.ts +22 -0
  432. package/dist/types/schema-processor/utils.d.ts +49 -0
  433. package/dist/types/storage/blockchain/index.d.ts +1 -0
  434. package/dist/types/storage/blockchain/state.d.ts +52 -0
  435. package/dist/types/storage/entities/circuitData.d.ts +7 -0
  436. package/dist/types/storage/entities/identity.d.ts +15 -0
  437. package/dist/types/storage/entities/index.d.ts +4 -0
  438. package/dist/types/storage/entities/mt.d.ts +23 -0
  439. package/dist/types/storage/entities/state.d.ts +48 -0
  440. package/dist/types/storage/errors.d.ts +9 -0
  441. package/dist/types/storage/filters/index.d.ts +1 -0
  442. package/dist/types/storage/filters/jsonQuery.d.ts +82 -0
  443. package/dist/types/storage/index.d.ts +7 -0
  444. package/dist/types/storage/interfaces/circuits.d.ts +26 -0
  445. package/dist/types/storage/interfaces/credentials.d.ts +53 -0
  446. package/dist/types/storage/interfaces/data-source.d.ts +39 -0
  447. package/dist/types/storage/interfaces/data-storage.d.ts +17 -0
  448. package/dist/types/storage/interfaces/identity.d.ts +63 -0
  449. package/dist/types/storage/interfaces/index.d.ts +7 -0
  450. package/dist/types/storage/interfaces/merkletree.d.ts +44 -0
  451. package/dist/types/storage/interfaces/state.d.ts +41 -0
  452. package/dist/types/storage/local-storage/data-source.d.ts +47 -0
  453. package/dist/types/storage/local-storage/index.d.ts +2 -0
  454. package/dist/types/storage/local-storage/merkletree.d.ts +46 -0
  455. package/dist/types/storage/memory/data-source.d.ts +22 -0
  456. package/dist/types/storage/memory/index.d.ts +2 -0
  457. package/dist/types/storage/memory/merkletree.d.ts +49 -0
  458. package/dist/types/storage/shared/circuit-storage.d.ts +35 -0
  459. package/dist/types/storage/shared/credential-storage.d.ts +39 -0
  460. package/dist/types/storage/shared/identity-storage.d.ts +40 -0
  461. package/dist/types/storage/shared/index.d.ts +3 -0
  462. package/dist/types/verifiable/constants.d.ts +78 -0
  463. package/dist/types/verifiable/credential.d.ts +123 -0
  464. package/dist/types/verifiable/index.d.ts +4 -0
  465. package/dist/types/verifiable/proof.d.ts +123 -0
  466. package/dist/types/verifiable/schema.d.ts +2 -0
  467. package/dist/umd/index.js +462 -0
  468. package/dist/umd/index.js.map +7 -0
  469. package/package.json +95 -0
@@ -0,0 +1,290 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.pushHashesToRHS = exports.getStatusFromRHS = exports.ProofNode = void 0;
7
+ const js_merkletree_1 = require("@iden3/js-merkletree");
8
+ const axios_1 = __importDefault(require("axios"));
9
+ const js_merkletree_2 = require("@iden3/js-merkletree");
10
+ const js_merkletree_3 = require("@iden3/js-merkletree");
11
+ const circuits_1 = require("../circuits");
12
+ var NodeType;
13
+ (function (NodeType) {
14
+ NodeType[NodeType["Unknown"] = 0] = "Unknown";
15
+ NodeType[NodeType["Middle"] = 1] = "Middle";
16
+ NodeType[NodeType["Leaf"] = 2] = "Leaf";
17
+ NodeType[NodeType["State"] = 3] = "State";
18
+ })(NodeType || (NodeType = {}));
19
+ /**
20
+ * ProofNode is a partial Reverse Hash Service result
21
+ * it contains the current node hash and its children
22
+ *
23
+ * @export
24
+ * @beta
25
+ * @class ProofNode
26
+ */
27
+ class ProofNode {
28
+ /**
29
+ *
30
+ * Creates an instance of ProofNode.
31
+ * @param {Hash} [hash=ZERO_HASH] - current node hash
32
+ * @param {Hash[]} [children=[]] - children of the node
33
+ */
34
+ constructor(hash = js_merkletree_1.ZERO_HASH, children = []) {
35
+ this.hash = hash;
36
+ this.children = children;
37
+ }
38
+ /**
39
+ * Determination of Node type
40
+ * Can be: Leaf, Middle or State node
41
+ *
42
+ * @returns NodeType
43
+ */
44
+ nodeType() {
45
+ if (this.children.length === 2) {
46
+ return NodeType.Middle;
47
+ }
48
+ if (this.children.length === 3 &&
49
+ this.children[2].hex() === (0, js_merkletree_1.newHashFromBigInt)(BigInt(1)).hex()) {
50
+ return NodeType.Leaf;
51
+ }
52
+ if (this.children.length === 3) {
53
+ return NodeType.State;
54
+ }
55
+ return NodeType.Unknown;
56
+ }
57
+ /**
58
+ * JSON Representation of ProofNode with a hex values
59
+ *
60
+ * @returns {*} - ProofNode with hexes
61
+ */
62
+ toJSON() {
63
+ return {
64
+ hash: this.hash.hex(),
65
+ children: this.children.map((h) => h.hex())
66
+ };
67
+ }
68
+ /**
69
+ * Creates ProofNode Hashes from hex values
70
+ *
71
+ * @static
72
+ * @param {ProofNodeHex} hexNode
73
+ * @returns ProofNode
74
+ */
75
+ static fromHex(hexNode) {
76
+ return new ProofNode((0, circuits_1.strMTHex)(hexNode.hash), hexNode.children.map((ch) => (0, circuits_1.strMTHex)(ch)));
77
+ }
78
+ }
79
+ exports.ProofNode = ProofNode;
80
+ /**
81
+ *
82
+ * Fetches and Builds a revocation status for a given credential
83
+ * Supported types for credentialStatus field: SparseMerkleTreeProof, Iden3ReverseSparseMerkleTreeProof
84
+ *
85
+ * @export
86
+ * @param {DID} issuer - issuer identity
87
+ * @param {(CredentialStatus | RHSCredentialStatus)} credStatus - credentialStatus field from the W3C verifiable credential
88
+ * @param {IStateStorage} stateStorage - storage to fetch current issuer status
89
+ * @returns Promise<RevocationStatus>
90
+ */
91
+ async function getStatusFromRHS(issuer, credStatus, stateStorage) {
92
+ const latestStateInfo = await stateStorage.getLatestStateById(issuer.id.bigInt());
93
+ const hashedRevNonce = (0, js_merkletree_1.newHashFromBigInt)(BigInt(credStatus.revocationNonce ?? 0));
94
+ const hashedIssuerRoot = (0, js_merkletree_1.newHashFromBigInt)(BigInt(latestStateInfo?.state ?? 0));
95
+ return getRevocationStatusFromRHS(hashedRevNonce, hashedIssuerRoot, credStatus.id);
96
+ }
97
+ exports.getStatusFromRHS = getStatusFromRHS;
98
+ /**
99
+ * Gets partial revocation status info from rhs service.
100
+ *
101
+ * @param {Hash} data - hash to fetch
102
+ * @param {Hash} issuerRoot - issuer root which is a part of url
103
+ * @param {string} rhsURL - base URL for reverse hash service
104
+ * @returns Promise<RevocationStatus>
105
+ */
106
+ async function getRevocationStatusFromRHS(data, issuerRoot, rhsURL) {
107
+ if (!rhsURL)
108
+ throw new Error('HTTP reverse hash service URL is not specified');
109
+ const treeRoots = (await axios_1.default.get(`${rhsURL}/node/${issuerRoot.hex()}`)).data
110
+ ?.node;
111
+ if (treeRoots.children.length !== 3) {
112
+ throw new Error('state should has tree children');
113
+ }
114
+ const s = issuerRoot.hex();
115
+ const cTR = treeRoots.children[0];
116
+ const rTR = treeRoots.children[1];
117
+ const roTR = treeRoots.children[2];
118
+ const rtrHashed = (0, circuits_1.strMTHex)(rTR);
119
+ const nonRevProof = await rhsGenerateProof(rtrHashed, data, `${rhsURL}/node`);
120
+ return {
121
+ mtp: nonRevProof,
122
+ issuer: {
123
+ state: s,
124
+ claimsTreeRoot: cTR,
125
+ revocationTreeRoot: rTR,
126
+ rootOfRoots: roTR
127
+ }
128
+ };
129
+ }
130
+ async function newProofFromData(existence, allSiblings, nodeAux) {
131
+ const p = new js_merkletree_2.Proof();
132
+ p.existence = existence;
133
+ p.nodeAux = nodeAux;
134
+ p.depth = allSiblings.length;
135
+ for (let i = 0; i < allSiblings.length; i++) {
136
+ const sibling = allSiblings[i];
137
+ if (JSON.stringify(allSiblings[i]) !== JSON.stringify(js_merkletree_1.ZERO_HASH)) {
138
+ (0, js_merkletree_1.setBitBigEndian)(p.notEmpties, i);
139
+ p.siblings.push(sibling);
140
+ }
141
+ }
142
+ return p;
143
+ }
144
+ async function rhsGenerateProof(treeRoot, key, rhsURL) {
145
+ let exists = false;
146
+ const siblings = [];
147
+ let nodeAux;
148
+ const mkProof = () => newProofFromData(exists, siblings, nodeAux);
149
+ let nextKey = treeRoot;
150
+ for (let depth = 0; depth < key.bytes.length * 8; depth++) {
151
+ if (nextKey.bytes.every((i) => i === 0)) {
152
+ return mkProof();
153
+ }
154
+ const resp = (await axios_1.default.get(`${rhsURL}/${nextKey.hex()}`)).data?.node;
155
+ const n = ProofNode.fromHex(resp);
156
+ switch (n.nodeType()) {
157
+ case NodeType.Leaf:
158
+ if (key.bytes.every((b, index) => b === n.children[0].bytes[index])) {
159
+ exists = true;
160
+ return mkProof();
161
+ }
162
+ // We found a leaf whose entry didn't match hIndex
163
+ nodeAux = {
164
+ key: n.children[0],
165
+ value: n.children[1]
166
+ };
167
+ return mkProof();
168
+ case NodeType.Middle:
169
+ if ((0, js_merkletree_1.testBit)(key.bytes, depth)) {
170
+ nextKey = n.children[1];
171
+ siblings.push(n.children[0]);
172
+ }
173
+ else {
174
+ nextKey = n.children[0];
175
+ siblings.push(n.children[1]);
176
+ }
177
+ break;
178
+ default:
179
+ throw new Error(`found unexpected node type in tree ${n.hash.hex()}`);
180
+ }
181
+ }
182
+ throw new Error('tree depth is too high');
183
+ }
184
+ /**
185
+ * Pushes identity state information to a reverse hash service.
186
+ *
187
+ * A reverse hash service (RHS) is a centralized or decentralized service for storing publicly available data about identity.
188
+ * Such data are identity state and state of revocation tree and roots tree root tree.
189
+ *
190
+ * @export
191
+ * @param {Hash} state - current state of identity
192
+ * @param {TreesModel} trees - current trees of identity (claims, revocation, rootOfRoots )
193
+ * @param {string} rhsUrl - URL of service
194
+ * @param {number[]} [revokedNonces] - revoked nonces since last published info
195
+ * @returns void
196
+ */
197
+ async function pushHashesToRHS(state, trees, rhsUrl, revokedNonces) {
198
+ const nb = new NodesBuilder();
199
+ if (revokedNonces) {
200
+ await addRevocationNode(nb, trees, revokedNonces);
201
+ }
202
+ await addRoRNode(nb, trees);
203
+ // add new state node
204
+ if (!state.bytes.every((b) => b === 0)) {
205
+ nb.addProofNode(new ProofNode(state, [trees.claimsTree.root, trees.revocationTree.root, trees.rootsTree.root]));
206
+ }
207
+ if (nb.nodes.length > 0) {
208
+ await saveNodes(nb.nodes, rhsUrl);
209
+ }
210
+ }
211
+ exports.pushHashesToRHS = pushHashesToRHS;
212
+ async function saveNodes(nodes, nodeUrl) {
213
+ const nodesJSON = nodes.map((n) => n.toJSON());
214
+ return (await (await axios_1.default.post(nodeUrl + '/node', nodesJSON)).status) === 200;
215
+ }
216
+ async function addRoRNode(nb, trees) {
217
+ const currentRootsTree = trees.rootsTree;
218
+ const claimsTree = trees.claimsTree;
219
+ return nb.addKey(currentRootsTree, claimsTree.root.bigInt());
220
+ }
221
+ async function addRevocationNode(nb, trees, revokedNonces) {
222
+ const revocationTree = trees.revocationTree;
223
+ for (const nonce of revokedNonces) {
224
+ await nb.addKey(revocationTree, BigInt(nonce));
225
+ }
226
+ }
227
+ /**
228
+ * Builder to send state information to Reverse hash Service
229
+ *
230
+ * @beta
231
+ * @class NodesBuilder
232
+ */
233
+ class NodesBuilder {
234
+ constructor(nodes = [], seen = new Map()) {
235
+ this.nodes = nodes;
236
+ this.seen = seen;
237
+ }
238
+ async addKey(tree, nodeKey) {
239
+ const { value: nodeValue, siblings } = await tree.get(nodeKey);
240
+ const nodeKeyHash = (0, js_merkletree_1.newHashFromBigInt)(nodeKey);
241
+ const nodeValueHash = (0, js_merkletree_1.newHashFromBigInt)(nodeValue);
242
+ const node = new js_merkletree_1.NodeLeaf(nodeKeyHash, nodeValueHash);
243
+ const newNodes = await buildNodesUp(siblings, node);
244
+ for (const n of newNodes) {
245
+ if (!this.seen.get(n.hash.hex())) {
246
+ this.nodes.push(n);
247
+ this.seen.set(n.hash.hex(), true);
248
+ }
249
+ }
250
+ }
251
+ addProofNode(node) {
252
+ const hex = node.hash.hex();
253
+ const isSeen = this.seen.get(hex);
254
+ if (!isSeen) {
255
+ this.nodes.push(node);
256
+ this.seen.set(hex, true);
257
+ }
258
+ }
259
+ }
260
+ async function buildNodesUp(siblings, node) {
261
+ if (node.type !== js_merkletree_2.NODE_TYPE_LEAF) {
262
+ throw new Error('node is not a leaf');
263
+ }
264
+ let prevHash = await node.getKey();
265
+ const sl = siblings.length;
266
+ const nodes = new Array(sl + 1);
267
+ for (let index = 0; index < nodes.length; index++) {
268
+ nodes[index] = new ProofNode();
269
+ }
270
+ nodes[sl].hash = prevHash;
271
+ const hashOfOne = (0, js_merkletree_1.newHashFromBigInt)(BigInt(1));
272
+ nodes[sl].children = [node.entry[0], node.entry[1], hashOfOne];
273
+ const pathKey = node.entry[0];
274
+ for (let i = sl - 1; i >= 0; i--) {
275
+ const isRight = (0, js_merkletree_1.testBit)(pathKey.bytes, i);
276
+ nodes[i].children = new Array(2);
277
+ if (isRight) {
278
+ nodes[i].children[0] = siblings[i];
279
+ nodes[i].children[1] = prevHash;
280
+ }
281
+ else {
282
+ nodes[i].children[0] = prevHash;
283
+ nodes[i].children[1] = siblings[i];
284
+ }
285
+ nodes[i].hash = await (0, js_merkletree_3.hashElems)([nodes[i].children[0].bigInt(), nodes[i].children[1].bigInt()]);
286
+ prevHash = nodes[i].hash;
287
+ }
288
+ return nodes;
289
+ }
290
+ //# sourceMappingURL=revocation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"revocation.js","sourceRoot":"","sources":["../../../src/credentials/revocation.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,45 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.MediaType = exports.PROTOCOL_MESSAGE_TYPE = void 0;
4
+ const IDEN3_PROTOCOL = 'https://iden3-communication.io/';
5
+ /**
6
+ * Constants for Iden3 protocol
7
+ */
8
+ exports.PROTOCOL_MESSAGE_TYPE = Object.freeze({
9
+ // AuthorizationV2RequestMessageType defines auth request type of the communication protocol
10
+ AUTHORIZATION_REQUEST_MESSAGE_TYPE: IDEN3_PROTOCOL + 'authorization/1.0/request',
11
+ // AuthorizationResponseMessageType defines auth response type of the communication protocol
12
+ AUTHORIZATION_RESPONSE_MESSAGE_TYPE: IDEN3_PROTOCOL + 'authorization/1.0/response',
13
+ // CredentialIssuanceRequestMessageType accepts request for credential creation
14
+ CREDENTIAL_ISSUANCE_REQUEST_MESSAGE_TYPE: IDEN3_PROTOCOL + 'credentials/1.0/issuance-request',
15
+ // CredentialFetchRequestMessageType is type for request of credential generation
16
+ CREDENTIAL_FETCH_REQUEST_MESSAGE_TYPE: IDEN3_PROTOCOL + 'credentials/1.0/fetch-request',
17
+ // CredentialOfferMessageType is type of message with credential offering
18
+ CREDENTIAL_OFFER_MESSAGE_TYPE: IDEN3_PROTOCOL + 'credentials/1.0/offer',
19
+ // CredentialIssuanceResponseMessageType is type for message with a credential issuance
20
+ CREDENTIAL_ISSUANCE_RESPONSE_MESSAGE_TYPE: IDEN3_PROTOCOL + 'credentials/1.0/issuance-response',
21
+ // DeviceRegistrationRequestMessageType defines device registration request type of the communication protocol
22
+ DEVICE_REGISTRATION_REQUEST_MESSAGE_TYPE: IDEN3_PROTOCOL + 'devices/1.0/registration',
23
+ // MessageFetMessageFetchRequestMessageType defines message fetch request type of the communication protocol.
24
+ MESSAGE_FETCH_REQUEST_MESSAGE_TYPE: IDEN3_PROTOCOL + 'messages/1.0/fetch',
25
+ // ProofGenerationRequestMessageType is type for request of proof generation
26
+ PROOF_GENERATION_REQUEST_MESSAGE_TYPE: IDEN3_PROTOCOL + 'proofs/1.0/request',
27
+ // ProofGenerationResponseMessageType is type for response of proof generation
28
+ PROOF_GENERATION_RESPONSE_MESSAGE_TYPE: IDEN3_PROTOCOL + 'proofs/1.0/response',
29
+ // RevocationStatusRequestMessageType is type for request of revocation status
30
+ REVOCATION_STATUS_REQUEST_MESSAGE_TYPE: IDEN3_PROTOCOL + 'revocation/1.0/request-status',
31
+ // RevocationStatusResponseMessageType is type for response with a revocation status
32
+ REVOCATION_STATUS_RESPONSE_MESSAGE_TYPE: IDEN3_PROTOCOL + 'revocation/1.0/status'
33
+ });
34
+ /**
35
+ * Media types for iden3 comm communication protocol
36
+ *
37
+ * @export
38
+ * @enum {number}
39
+ */
40
+ var MediaType;
41
+ (function (MediaType) {
42
+ MediaType["ZKPMessage"] = "application/iden3-zkp-json";
43
+ MediaType["PlainMessage"] = "application/iden3comm-plain-json";
44
+ })(MediaType = exports.MediaType || (exports.MediaType = {}));
45
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/iden3comm/constants.ts"],"names":[],"mappings":";;;AAAA,MAAM,cAAc,GAAG,iCAAiC,CAAC;AAEzD;;GAEG;AACU,QAAA,qBAAqB,GAAG,MAAM,CAAC,MAAM,CAAC;IACjD,4FAA4F;IAC5F,kCAAkC,EAAE,cAAc,GAAG,2BAA2B;IAChF,4FAA4F;IAC5F,mCAAmC,EAAE,cAAc,GAAG,4BAA4B;IAClF,+EAA+E;IAC/E,wCAAwC,EAAE,cAAc,GAAG,kCAAkC;IAC7F,iFAAiF;IACjF,qCAAqC,EAAE,cAAc,GAAG,+BAA+B;IACvF,yEAAyE;IACzE,6BAA6B,EAAE,cAAc,GAAG,uBAAuB;IACvE,uFAAuF;IACvF,yCAAyC,EAAE,cAAc,GAAG,mCAAmC;IAC/F,8GAA8G;IAC9G,wCAAwC,EAAE,cAAc,GAAG,0BAA0B;IACrF,6GAA6G;IAC7G,kCAAkC,EAAE,cAAc,GAAG,oBAAoB;IACzE,4EAA4E;IAC5E,qCAAqC,EAAE,cAAc,GAAG,oBAAoB;IAC5E,8EAA8E;IAC9E,sCAAsC,EAAE,cAAc,GAAG,qBAAqB;IAC9E,8EAA8E;IAC9E,sCAAsC,EAAE,cAAc,GAAG,+BAA+B;IACxF,oFAAoF;IACpF,uCAAuC,EAAE,cAAc,GAAG,uBAAuB;CAClF,CAAC,CAAC;AAEH;;;;;GAKG;AACH,IAAY,SAGX;AAHD,WAAY,SAAS;IACnB,sDAAyC,CAAA;IACzC,8DAAiD,CAAA;AACnD,CAAC,EAHW,SAAS,GAAT,iBAAS,KAAT,iBAAS,QAGpB"}
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ErrStateVerificationFailed = exports.ErrProofIsInvalid = exports.ErrPackedWithUnsupportedCircuit = exports.ErrSenderNotUsedTokenCreation = exports.ErrUnknownCircuitID = exports.ErrNotHeaderStub = exports.ErrNotEnvelopeStub = exports.ErrNotProtocolMessage = void 0;
4
+ // Envelope Errors
5
+ exports.ErrNotProtocolMessage = 'the envelope is not a protocol message';
6
+ exports.ErrNotEnvelopeStub = "the envelope doesn't contain field protected";
7
+ exports.ErrNotHeaderStub = "the envelope doesn't contain field typ";
8
+ // Token Errors
9
+ exports.ErrUnknownCircuitID = "unknown circuit ID. can't verify msg sender";
10
+ exports.ErrSenderNotUsedTokenCreation = 'sender of message is not used for jwz token creation';
11
+ // ZKP-Packer Errors
12
+ exports.ErrPackedWithUnsupportedCircuit = 'message was packed with unsupported circuit';
13
+ exports.ErrProofIsInvalid = 'message proof is invalid';
14
+ exports.ErrStateVerificationFailed = 'message state verification failed';
15
+ //# sourceMappingURL=errors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../../src/iden3comm/errors.ts"],"names":[],"mappings":";;;AAAA,kBAAkB;AACL,QAAA,qBAAqB,GAAG,wCAAwC,CAAC;AACjE,QAAA,kBAAkB,GAAG,8CAA8C,CAAC;AACpE,QAAA,gBAAgB,GAAG,wCAAwC,CAAC;AAEzE,eAAe;AACF,QAAA,mBAAmB,GAAG,6CAA6C,CAAC;AACpE,QAAA,6BAA6B,GAAG,sDAAsD,CAAC;AAEpG,oBAAoB;AACP,QAAA,+BAA+B,GAAG,6CAA6C,CAAC;AAChF,QAAA,iBAAiB,GAAG,0BAA0B,CAAC;AAC/C,QAAA,0BAA0B,GAAG,mCAAmC,CAAC"}
@@ -0,0 +1,35 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
19
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
20
+ };
21
+ var __importStar = (this && this.__importStar) || function (mod) {
22
+ if (mod && mod.__esModule) return mod;
23
+ var result = {};
24
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
25
+ __setModuleDefault(result, mod);
26
+ return result;
27
+ };
28
+ Object.defineProperty(exports, "__esModule", { value: true });
29
+ exports.PROTOCOL_CONSTANTS = void 0;
30
+ __exportStar(require("./packageManager"), exports);
31
+ __exportStar(require("./packers"), exports);
32
+ __exportStar(require("./types"), exports);
33
+ const PROTOCOL_CONSTANTS = __importStar(require("./constants"));
34
+ exports.PROTOCOL_CONSTANTS = PROTOCOL_CONSTANTS;
35
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/iden3comm/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,mDAAiC;AACjC,4CAA0B;AAC1B,0CAAwB;AACxB,gEAAkD;AACzC,gDAAkB"}
@@ -0,0 +1,78 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.PackageManager = void 0;
4
+ const envelope_1 = require("./utils/envelope");
5
+ const rfc4648_1 = require("rfc4648");
6
+ const utils_1 = require("./utils");
7
+ /**
8
+ * Basic package manager for iden3 communication protocol
9
+ *
10
+ * @export
11
+ * @beta
12
+ * @class PackageManager
13
+ * @implements implements IPackageManager interface
14
+ */
15
+ class PackageManager {
16
+ /**
17
+ * Creates an instance of PackageManager.
18
+ */
19
+ constructor() {
20
+ this.packers = new Map();
21
+ }
22
+ /** {@inheritDoc IPackageManager.registerPackers} */
23
+ registerPackers(packers) {
24
+ packers.forEach((p) => {
25
+ this.packers.set(p.mediaType(), p);
26
+ });
27
+ }
28
+ /** {@inheritDoc IPackageManager.pack} */
29
+ async pack(mediaType, payload, params) {
30
+ const p = this.packers.get(mediaType);
31
+ if (!p) {
32
+ throw new Error(`packer for media type ${mediaType} not found`);
33
+ }
34
+ return await p.pack(payload, params);
35
+ }
36
+ /** {@inheritDoc IPackageManager.unpack} */
37
+ async unpack(envelope) {
38
+ const decodedStr = utils_1.byteDecoder.decode(envelope);
39
+ const safeEnvelope = decodedStr.trim();
40
+ const mediaType = this.getMediaType(safeEnvelope);
41
+ return {
42
+ unpackedMessage: await this.unpackWithSafeEnvelope(mediaType, utils_1.byteEncoder.encode(safeEnvelope)),
43
+ unpackedMediaType: mediaType
44
+ };
45
+ }
46
+ /** {@inheritDoc IPackageManager.unpackWithType} */
47
+ async unpackWithType(mediaType, envelope) {
48
+ const decoder = new TextDecoder('utf-8');
49
+ const decodedStr = decoder.decode(envelope);
50
+ const safeEnvelope = decodedStr.trim();
51
+ return await this.unpackWithSafeEnvelope(mediaType, utils_1.byteEncoder.encode(safeEnvelope));
52
+ }
53
+ async unpackWithSafeEnvelope(mediaType, envelope) {
54
+ const p = this.packers.get(mediaType);
55
+ if (!p) {
56
+ throw new Error(`packer for media type ${mediaType} not found`);
57
+ }
58
+ const msg = await p.unpack(envelope);
59
+ return msg;
60
+ }
61
+ /** {@inheritDoc IPackageManager.getMediaType} */
62
+ getMediaType(envelope) {
63
+ let base64HeaderBytes;
64
+ // full serialized
65
+ if (envelope[0] === '{') {
66
+ const envelopeStub = JSON.parse(envelope);
67
+ return envelopeStub.typ;
68
+ }
69
+ else {
70
+ const header = envelope.split('.')[0];
71
+ base64HeaderBytes = rfc4648_1.base64.parse(header, { loose: true });
72
+ }
73
+ const header = (0, envelope_1.bytesToHeaderStub)(base64HeaderBytes);
74
+ return header.typ;
75
+ }
76
+ }
77
+ exports.PackageManager = PackageManager;
78
+ //# sourceMappingURL=packageManager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"packageManager.js","sourceRoot":"","sources":["../../../src/iden3comm/packageManager.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./zkp"), exports);
18
+ __exportStar(require("./plain"), exports);
19
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/iden3comm/packers/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,wCAAsB;AACtB,0CAAwB"}
@@ -0,0 +1,49 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.PlainPacker = void 0;
4
+ const index_1 = require("./../utils/index");
5
+ const utils_1 = require("../utils");
6
+ const constants_1 = require("../constants");
7
+ /**
8
+ * Plain packer just serializes bytes to JSON and adds media type
9
+ *
10
+ * @export
11
+ * @beta
12
+ * @class PlainPacker
13
+ * @implements implements IPacker interface
14
+ */
15
+ class PlainPacker {
16
+ /**
17
+ * Pack returns packed message to transport envelope
18
+ *
19
+ * @param {Uint8Array} payload - json message serialized
20
+ * @param {PlainPackerParams} _params - not used here
21
+ * @returns `Promise<Uint8Array>`
22
+ */
23
+ //
24
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
25
+ async pack(payload, _params) {
26
+ const msg = JSON.parse(utils_1.byteDecoder.decode(payload));
27
+ msg.typ = constants_1.MediaType.PlainMessage;
28
+ return Promise.resolve(index_1.byteEncoder.encode(JSON.stringify(msg)));
29
+ }
30
+ /**
31
+ * Unpack returns unpacked message from transport envelope
32
+ *
33
+ * @param {Uint8Array} envelope - packed envelope (serialized json with media type)
34
+ * @returns `Promise<BasicMessage>`
35
+ */
36
+ async unpack(envelope) {
37
+ return JSON.parse(utils_1.byteDecoder.decode(envelope));
38
+ }
39
+ /**
40
+ * returns media type for plain message
41
+ *
42
+ * @returns MediaType
43
+ */
44
+ mediaType() {
45
+ return constants_1.MediaType.PlainMessage;
46
+ }
47
+ }
48
+ exports.PlainPacker = PlainPacker;
49
+ //# sourceMappingURL=plain.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plain.js","sourceRoot":"","sources":["../../../../src/iden3comm/packers/plain.ts"],"names":[],"mappings":";;;AACA,4CAA+C;AAE/C,oCAAuC;AACvC,4CAAyC;AAEzC;;;;;;;GAOG;AACH,MAAa,WAAW;IACtB;;;;;;OAMG;IACH,EAAE;IACF,6DAA6D;IAC7D,KAAK,CAAC,IAAI,CAAC,OAAmB,EAAE,OAA0B;QACxD,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,mBAAW,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;QACpD,GAAG,CAAC,GAAG,GAAG,qBAAS,CAAC,YAAY,CAAC;QACjC,OAAO,OAAO,CAAC,OAAO,CAAC,mBAAW,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IAClE,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,MAAM,CAAC,QAAoB;QAC/B,OAAO,IAAI,CAAC,KAAK,CAAC,mBAAW,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;IAClD,CAAC;IAED;;;;OAIG;IACH,SAAS;QACP,OAAO,qBAAS,CAAC,YAAY,CAAC;IAChC,CAAC;CACF;AAlCD,kCAkCC"}