@matter/protocol 0.15.0-alpha.0-20250612-ddd428561 → 0.15.0-alpha.0-20250614-b9829e223

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 (252) hide show
  1. package/dist/cjs/certificate/AttestationCertificateManager.d.ts +3 -3
  2. package/dist/cjs/certificate/AttestationCertificateManager.d.ts.map +1 -1
  3. package/dist/cjs/certificate/AttestationCertificateManager.js +12 -10
  4. package/dist/cjs/certificate/AttestationCertificateManager.js.map +1 -1
  5. package/dist/cjs/certificate/CertificateAuthority.d.ts +5 -3
  6. package/dist/cjs/certificate/CertificateAuthority.d.ts.map +1 -1
  7. package/dist/cjs/certificate/CertificateAuthority.js +19 -11
  8. package/dist/cjs/certificate/CertificateAuthority.js.map +1 -1
  9. package/dist/cjs/certificate/CertificateManager.d.ts +18 -15
  10. package/dist/cjs/certificate/CertificateManager.d.ts.map +1 -1
  11. package/dist/cjs/certificate/CertificateManager.js +92 -83
  12. package/dist/cjs/certificate/CertificateManager.js.map +2 -2
  13. package/dist/cjs/certificate/CertificationDeclarationManager.d.ts +7 -1
  14. package/dist/cjs/certificate/CertificationDeclarationManager.d.ts.map +1 -1
  15. package/dist/cjs/certificate/CertificationDeclarationManager.js +2 -2
  16. package/dist/cjs/certificate/CertificationDeclarationManager.js.map +1 -1
  17. package/dist/cjs/certificate/DeviceCertification.d.ts +2 -2
  18. package/dist/cjs/certificate/DeviceCertification.d.ts.map +1 -1
  19. package/dist/cjs/certificate/DeviceCertification.js +10 -4
  20. package/dist/cjs/certificate/DeviceCertification.js.map +1 -1
  21. package/dist/cjs/common/FailsafeContext.js +1 -1
  22. package/dist/cjs/common/FailsafeContext.js.map +1 -1
  23. package/dist/cjs/events/OccurrenceManager.d.ts +1 -0
  24. package/dist/cjs/events/OccurrenceManager.d.ts.map +1 -1
  25. package/dist/cjs/events/OccurrenceManager.js +14 -8
  26. package/dist/cjs/events/OccurrenceManager.js.map +1 -1
  27. package/dist/cjs/fabric/Fabric.d.ts +6 -4
  28. package/dist/cjs/fabric/Fabric.d.ts.map +1 -1
  29. package/dist/cjs/fabric/Fabric.js +33 -20
  30. package/dist/cjs/fabric/Fabric.js.map +1 -1
  31. package/dist/cjs/fabric/FabricAuthority.d.ts +1 -1
  32. package/dist/cjs/fabric/FabricAuthority.d.ts.map +1 -1
  33. package/dist/cjs/fabric/FabricAuthority.js +7 -7
  34. package/dist/cjs/fabric/FabricAuthority.js.map +1 -1
  35. package/dist/cjs/fabric/FabricManager.d.ts +3 -2
  36. package/dist/cjs/fabric/FabricManager.d.ts.map +1 -1
  37. package/dist/cjs/fabric/FabricManager.js +8 -3
  38. package/dist/cjs/fabric/FabricManager.js.map +1 -1
  39. package/dist/cjs/fabric/TestFabric.d.ts.map +1 -1
  40. package/dist/cjs/fabric/TestFabric.js +15 -19
  41. package/dist/cjs/fabric/TestFabric.js.map +1 -1
  42. package/dist/cjs/groups/FabricGroups.d.ts.map +1 -1
  43. package/dist/cjs/groups/FabricGroups.js +11 -7
  44. package/dist/cjs/groups/FabricGroups.js.map +1 -1
  45. package/dist/cjs/groups/KeySets.d.ts +2 -2
  46. package/dist/cjs/groups/KeySets.d.ts.map +1 -1
  47. package/dist/cjs/groups/KeySets.js +2 -2
  48. package/dist/cjs/groups/KeySets.js.map +1 -1
  49. package/dist/cjs/groups/MessagingState.d.ts +2 -2
  50. package/dist/cjs/groups/MessagingState.d.ts.map +1 -1
  51. package/dist/cjs/groups/MessagingState.js +4 -2
  52. package/dist/cjs/groups/MessagingState.js.map +1 -1
  53. package/dist/cjs/interaction/FabricAccessControl.js +1 -1
  54. package/dist/cjs/interaction/FabricAccessControl.js.map +1 -1
  55. package/dist/cjs/mdns/MdnsBroadcaster.d.ts +3 -3
  56. package/dist/cjs/mdns/MdnsBroadcaster.d.ts.map +1 -1
  57. package/dist/cjs/mdns/MdnsBroadcaster.js +7 -4
  58. package/dist/cjs/mdns/MdnsBroadcaster.js.map +1 -1
  59. package/dist/cjs/mdns/MdnsScanner.d.ts +1 -1
  60. package/dist/cjs/mdns/MdnsScanner.d.ts.map +1 -1
  61. package/dist/cjs/mdns/MdnsScanner.js +2 -6
  62. package/dist/cjs/mdns/MdnsScanner.js.map +1 -1
  63. package/dist/cjs/mdns/MdnsService.d.ts.map +1 -1
  64. package/dist/cjs/mdns/MdnsService.js +2 -1
  65. package/dist/cjs/mdns/MdnsService.js.map +1 -1
  66. package/dist/cjs/peer/ControllerCommissioner.js +1 -1
  67. package/dist/cjs/peer/ControllerCommissioner.js.map +1 -1
  68. package/dist/cjs/peer/ControllerCommissioningFlow.d.ts +1 -1
  69. package/dist/cjs/peer/ControllerCommissioningFlow.d.ts.map +1 -1
  70. package/dist/cjs/peer/ControllerCommissioningFlow.js +3 -4
  71. package/dist/cjs/peer/ControllerCommissioningFlow.js.map +1 -1
  72. package/dist/cjs/protocol/DeviceCommissioner.d.ts.map +1 -1
  73. package/dist/cjs/protocol/DeviceCommissioner.js +1 -1
  74. package/dist/cjs/protocol/DeviceCommissioner.js.map +1 -1
  75. package/dist/cjs/protocol/ExchangeManager.d.ts +4 -2
  76. package/dist/cjs/protocol/ExchangeManager.d.ts.map +1 -1
  77. package/dist/cjs/protocol/ExchangeManager.js +11 -6
  78. package/dist/cjs/protocol/ExchangeManager.js.map +1 -1
  79. package/dist/cjs/protocol/MessageCounter.d.ts +4 -4
  80. package/dist/cjs/protocol/MessageCounter.d.ts.map +1 -1
  81. package/dist/cjs/protocol/MessageCounter.js +7 -6
  82. package/dist/cjs/protocol/MessageCounter.js.map +1 -1
  83. package/dist/cjs/session/GroupSession.d.ts.map +1 -1
  84. package/dist/cjs/session/GroupSession.js +7 -2
  85. package/dist/cjs/session/GroupSession.js.map +1 -1
  86. package/dist/cjs/session/InsecureSession.d.ts +2 -0
  87. package/dist/cjs/session/InsecureSession.d.ts.map +1 -1
  88. package/dist/cjs/session/InsecureSession.js +2 -2
  89. package/dist/cjs/session/InsecureSession.js.map +1 -1
  90. package/dist/cjs/session/NodeSession.d.ts +3 -1
  91. package/dist/cjs/session/NodeSession.d.ts.map +1 -1
  92. package/dist/cjs/session/NodeSession.js +21 -13
  93. package/dist/cjs/session/NodeSession.js.map +1 -1
  94. package/dist/cjs/session/SessionManager.d.ts +1 -0
  95. package/dist/cjs/session/SessionManager.d.ts.map +1 -1
  96. package/dist/cjs/session/SessionManager.js +13 -3
  97. package/dist/cjs/session/SessionManager.js.map +1 -1
  98. package/dist/cjs/session/case/CaseClient.d.ts.map +1 -1
  99. package/dist/cjs/session/case/CaseClient.js +16 -15
  100. package/dist/cjs/session/case/CaseClient.js.map +1 -1
  101. package/dist/cjs/session/case/CaseServer.d.ts.map +1 -1
  102. package/dist/cjs/session/case/CaseServer.js +22 -18
  103. package/dist/cjs/session/case/CaseServer.js.map +1 -1
  104. package/dist/cjs/session/pase/PaseClient.d.ts +4 -4
  105. package/dist/cjs/session/pase/PaseClient.d.ts.map +1 -1
  106. package/dist/cjs/session/pase/PaseClient.js +11 -9
  107. package/dist/cjs/session/pase/PaseClient.js.map +1 -1
  108. package/dist/cjs/session/pase/PaseServer.d.ts.map +1 -1
  109. package/dist/cjs/session/pase/PaseServer.js +6 -5
  110. package/dist/cjs/session/pase/PaseServer.js.map +1 -1
  111. package/dist/esm/certificate/AttestationCertificateManager.d.ts +3 -3
  112. package/dist/esm/certificate/AttestationCertificateManager.d.ts.map +1 -1
  113. package/dist/esm/certificate/AttestationCertificateManager.js +13 -11
  114. package/dist/esm/certificate/AttestationCertificateManager.js.map +1 -1
  115. package/dist/esm/certificate/CertificateAuthority.d.ts +5 -3
  116. package/dist/esm/certificate/CertificateAuthority.d.ts.map +1 -1
  117. package/dist/esm/certificate/CertificateAuthority.js +19 -11
  118. package/dist/esm/certificate/CertificateAuthority.js.map +1 -1
  119. package/dist/esm/certificate/CertificateManager.d.ts +18 -15
  120. package/dist/esm/certificate/CertificateManager.d.ts.map +1 -1
  121. package/dist/esm/certificate/CertificateManager.js +92 -84
  122. package/dist/esm/certificate/CertificateManager.js.map +2 -2
  123. package/dist/esm/certificate/CertificationDeclarationManager.d.ts +7 -1
  124. package/dist/esm/certificate/CertificationDeclarationManager.d.ts.map +1 -1
  125. package/dist/esm/certificate/CertificationDeclarationManager.js +2 -2
  126. package/dist/esm/certificate/CertificationDeclarationManager.js.map +1 -1
  127. package/dist/esm/certificate/DeviceCertification.d.ts +2 -2
  128. package/dist/esm/certificate/DeviceCertification.d.ts.map +1 -1
  129. package/dist/esm/certificate/DeviceCertification.js +11 -5
  130. package/dist/esm/certificate/DeviceCertification.js.map +1 -1
  131. package/dist/esm/common/FailsafeContext.js +1 -1
  132. package/dist/esm/common/FailsafeContext.js.map +1 -1
  133. package/dist/esm/events/OccurrenceManager.d.ts +1 -0
  134. package/dist/esm/events/OccurrenceManager.d.ts.map +1 -1
  135. package/dist/esm/events/OccurrenceManager.js +14 -8
  136. package/dist/esm/events/OccurrenceManager.js.map +1 -1
  137. package/dist/esm/fabric/Fabric.d.ts +6 -4
  138. package/dist/esm/fabric/Fabric.d.ts.map +1 -1
  139. package/dist/esm/fabric/Fabric.js +33 -21
  140. package/dist/esm/fabric/Fabric.js.map +1 -1
  141. package/dist/esm/fabric/FabricAuthority.d.ts +1 -1
  142. package/dist/esm/fabric/FabricAuthority.d.ts.map +1 -1
  143. package/dist/esm/fabric/FabricAuthority.js +8 -15
  144. package/dist/esm/fabric/FabricAuthority.js.map +1 -1
  145. package/dist/esm/fabric/FabricManager.d.ts +3 -2
  146. package/dist/esm/fabric/FabricManager.d.ts.map +1 -1
  147. package/dist/esm/fabric/FabricManager.js +9 -3
  148. package/dist/esm/fabric/FabricManager.js.map +1 -1
  149. package/dist/esm/fabric/TestFabric.d.ts.map +1 -1
  150. package/dist/esm/fabric/TestFabric.js +16 -20
  151. package/dist/esm/fabric/TestFabric.js.map +1 -1
  152. package/dist/esm/groups/FabricGroups.d.ts.map +1 -1
  153. package/dist/esm/groups/FabricGroups.js +12 -8
  154. package/dist/esm/groups/FabricGroups.js.map +1 -1
  155. package/dist/esm/groups/KeySets.d.ts +2 -2
  156. package/dist/esm/groups/KeySets.d.ts.map +1 -1
  157. package/dist/esm/groups/KeySets.js +3 -3
  158. package/dist/esm/groups/KeySets.js.map +1 -1
  159. package/dist/esm/groups/MessagingState.d.ts +2 -2
  160. package/dist/esm/groups/MessagingState.d.ts.map +1 -1
  161. package/dist/esm/groups/MessagingState.js +4 -2
  162. package/dist/esm/groups/MessagingState.js.map +1 -1
  163. package/dist/esm/interaction/FabricAccessControl.js +1 -1
  164. package/dist/esm/interaction/FabricAccessControl.js.map +1 -1
  165. package/dist/esm/mdns/MdnsBroadcaster.d.ts +3 -3
  166. package/dist/esm/mdns/MdnsBroadcaster.d.ts.map +1 -1
  167. package/dist/esm/mdns/MdnsBroadcaster.js +7 -5
  168. package/dist/esm/mdns/MdnsBroadcaster.js.map +1 -1
  169. package/dist/esm/mdns/MdnsScanner.d.ts +1 -1
  170. package/dist/esm/mdns/MdnsScanner.d.ts.map +1 -1
  171. package/dist/esm/mdns/MdnsScanner.js +2 -6
  172. package/dist/esm/mdns/MdnsScanner.js.map +1 -1
  173. package/dist/esm/mdns/MdnsService.d.ts.map +1 -1
  174. package/dist/esm/mdns/MdnsService.js +3 -1
  175. package/dist/esm/mdns/MdnsService.js.map +1 -1
  176. package/dist/esm/peer/ControllerCommissioner.js +1 -1
  177. package/dist/esm/peer/ControllerCommissioner.js.map +1 -1
  178. package/dist/esm/peer/ControllerCommissioningFlow.d.ts +1 -1
  179. package/dist/esm/peer/ControllerCommissioningFlow.d.ts.map +1 -1
  180. package/dist/esm/peer/ControllerCommissioningFlow.js +3 -5
  181. package/dist/esm/peer/ControllerCommissioningFlow.js.map +1 -1
  182. package/dist/esm/protocol/DeviceCommissioner.d.ts.map +1 -1
  183. package/dist/esm/protocol/DeviceCommissioner.js +1 -2
  184. package/dist/esm/protocol/DeviceCommissioner.js.map +1 -1
  185. package/dist/esm/protocol/ExchangeManager.d.ts +4 -2
  186. package/dist/esm/protocol/ExchangeManager.d.ts.map +1 -1
  187. package/dist/esm/protocol/ExchangeManager.js +11 -6
  188. package/dist/esm/protocol/ExchangeManager.js.map +1 -1
  189. package/dist/esm/protocol/MessageCounter.d.ts +4 -4
  190. package/dist/esm/protocol/MessageCounter.d.ts.map +1 -1
  191. package/dist/esm/protocol/MessageCounter.js +8 -7
  192. package/dist/esm/protocol/MessageCounter.js.map +1 -1
  193. package/dist/esm/session/GroupSession.d.ts.map +1 -1
  194. package/dist/esm/session/GroupSession.js +7 -3
  195. package/dist/esm/session/GroupSession.js.map +1 -1
  196. package/dist/esm/session/InsecureSession.d.ts +2 -0
  197. package/dist/esm/session/InsecureSession.d.ts.map +1 -1
  198. package/dist/esm/session/InsecureSession.js +2 -2
  199. package/dist/esm/session/InsecureSession.js.map +1 -1
  200. package/dist/esm/session/NodeSession.d.ts +3 -1
  201. package/dist/esm/session/NodeSession.d.ts.map +1 -1
  202. package/dist/esm/session/NodeSession.js +22 -14
  203. package/dist/esm/session/NodeSession.js.map +1 -1
  204. package/dist/esm/session/SessionManager.d.ts +1 -0
  205. package/dist/esm/session/SessionManager.d.ts.map +1 -1
  206. package/dist/esm/session/SessionManager.js +13 -4
  207. package/dist/esm/session/SessionManager.js.map +1 -1
  208. package/dist/esm/session/case/CaseClient.d.ts.map +1 -1
  209. package/dist/esm/session/case/CaseClient.js +17 -16
  210. package/dist/esm/session/case/CaseClient.js.map +1 -1
  211. package/dist/esm/session/case/CaseServer.d.ts.map +1 -1
  212. package/dist/esm/session/case/CaseServer.js +23 -19
  213. package/dist/esm/session/case/CaseServer.js.map +1 -1
  214. package/dist/esm/session/pase/PaseClient.d.ts +4 -4
  215. package/dist/esm/session/pase/PaseClient.d.ts.map +1 -1
  216. package/dist/esm/session/pase/PaseClient.js +12 -10
  217. package/dist/esm/session/pase/PaseClient.js.map +1 -1
  218. package/dist/esm/session/pase/PaseServer.d.ts.map +1 -1
  219. package/dist/esm/session/pase/PaseServer.js +6 -6
  220. package/dist/esm/session/pase/PaseServer.js.map +1 -1
  221. package/package.json +6 -6
  222. package/src/certificate/AttestationCertificateManager.ts +12 -10
  223. package/src/certificate/CertificateAuthority.ts +20 -11
  224. package/src/certificate/CertificateManager.ts +77 -72
  225. package/src/certificate/CertificationDeclarationManager.ts +3 -3
  226. package/src/certificate/DeviceCertification.ts +10 -4
  227. package/src/common/FailsafeContext.ts +1 -1
  228. package/src/events/OccurrenceManager.ts +16 -9
  229. package/src/fabric/Fabric.ts +36 -20
  230. package/src/fabric/FabricAuthority.ts +8 -16
  231. package/src/fabric/FabricManager.ts +10 -3
  232. package/src/fabric/TestFabric.ts +17 -22
  233. package/src/groups/FabricGroups.ts +20 -8
  234. package/src/groups/KeySets.ts +2 -2
  235. package/src/groups/MessagingState.ts +6 -3
  236. package/src/interaction/FabricAccessControl.ts +1 -1
  237. package/src/mdns/MdnsBroadcaster.ts +11 -4
  238. package/src/mdns/MdnsScanner.ts +2 -6
  239. package/src/mdns/MdnsService.ts +3 -1
  240. package/src/peer/ControllerCommissioner.ts +1 -1
  241. package/src/peer/ControllerCommissioningFlow.ts +4 -6
  242. package/src/protocol/DeviceCommissioner.ts +1 -2
  243. package/src/protocol/ExchangeManager.ts +13 -6
  244. package/src/protocol/MessageCounter.ts +11 -3
  245. package/src/session/GroupSession.ts +7 -3
  246. package/src/session/InsecureSession.ts +4 -3
  247. package/src/session/NodeSession.ts +25 -14
  248. package/src/session/SessionManager.ts +14 -4
  249. package/src/session/case/CaseClient.ts +18 -16
  250. package/src/session/case/CaseServer.ts +22 -17
  251. package/src/session/pase/PaseClient.ts +11 -9
  252. package/src/session/pase/PaseServer.ts +6 -5
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/certificate/CertificationDeclarationManager.ts"],
4
- "mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAKA,SAAS,OAAO,kBAAkB;AAElC,SAAS,oBAAoB,mCAAmC;AAchE,MAAM,2BAA2B,MAAM,QAAQ,kEAAkE;AAQjH,MAAM,qCAAqC,MAAM,QAAQ,0CAA0C;AAE5F,MAAM,gCAAgC;AAAA,EACzC,OAAO,SAAS,UAAoB,WAAmB,cAAc,OAAO;AACxE,UAAM,wBAAwB,4BAA4B,OAAO;AAAA,MAC7D,eAAe;AAAA,MACf;AAAA,MACA,gBAAgB,CAAC,SAAS;AAAA,MAC1B,cAAc;AAAA,MACd,eAAe;AAAA,MACf,eAAe;AAAA,MACf,qBAAqB;AAAA,MACrB,eAAe;AAAA,MACf,mBAAmB,cAAc,IAAI;AAAA;AAAA,IACzC,CAAC;AAED,WAAO,mBAAmB;AAAA,MACtB;AAAA,MACA;AAAA,MACA,WAAW,wBAAwB;AAAA,IACvC;AAAA,EACJ;AACJ;",
4
+ "mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAKA,SAAS,OAAe,kBAAkB;AAE1C,SAAS,oBAAoB,mCAAmC;AAchE,MAAM,2BAA2B,MAAM,QAAQ,kEAAkE;AAQjH,MAAM,qCAAqC,MAAM,QAAQ,0CAA0C;AAE5F,MAAM,gCAAgC;AAAA,EACzC,OAAO,SAAS,QAAgB,UAAoB,WAAmB,cAAc,OAAO;AACxF,UAAM,wBAAwB,4BAA4B,OAAO;AAAA,MAC7D,eAAe;AAAA,MACf;AAAA,MACA,gBAAgB,CAAC,SAAS;AAAA,MAC1B,cAAc;AAAA,MACd,eAAe;AAAA,MACf,eAAe;AAAA,MACf,qBAAqB;AAAA,MACrB,eAAe;AAAA,MACf,mBAAmB,cAAc,IAAI;AAAA;AAAA,IACzC,CAAC;AAED,WAAO,IAAI,mBAAmB,MAAM,EAAE;AAAA,MAClC;AAAA,MACA;AAAA,MACA,WAAW,wBAAwB;AAAA,IACvC;AAAA,EACJ;AACJ;",
5
5
  "names": []
6
6
  }
@@ -3,7 +3,7 @@
3
3
  * Copyright 2022-2025 Matter.js Authors
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
- import { Construction, PrivateKey } from "#general";
6
+ import { Construction, Crypto, PrivateKey } from "#general";
7
7
  import { NodeSession } from "#session/NodeSession.js";
8
8
  import { ProductDescription } from "#types";
9
9
  /**
@@ -15,7 +15,7 @@ export declare class DeviceCertification {
15
15
  get certificate(): Uint8Array<ArrayBufferLike>;
16
16
  get intermediateCertificate(): Uint8Array<ArrayBufferLike>;
17
17
  get declaration(): Uint8Array<ArrayBufferLike>;
18
- constructor(config?: DeviceCertification.Definition, product?: ProductDescription);
18
+ constructor(crypto: Crypto, config?: DeviceCertification.Definition, product?: ProductDescription);
19
19
  sign(session: NodeSession, data: Uint8Array): Promise<Uint8Array<ArrayBufferLike>>;
20
20
  }
21
21
  export declare namespace DeviceCertification {
@@ -1 +1 @@
1
- {"version":3,"file":"DeviceCertification.d.ts","sourceRoot":"","sources":["../../../src/certificate/DeviceCertification.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,YAAY,EAA8C,UAAU,EAAE,MAAM,UAAU,CAAC;AAChG,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,kBAAkB,EAAE,MAAM,QAAQ,CAAC;AAI5C;;GAEG;AACH,qBAAa,mBAAmB;;IAO5B,IAAI,YAAY,sCAEf;IAED,IAAI,WAAW,gCAEd;IAED,IAAI,uBAAuB,gCAE1B;IAED,IAAI,WAAW,gCAEd;gBAEW,MAAM,CAAC,EAAE,mBAAmB,CAAC,UAAU,EAAE,OAAO,CAAC,EAAE,kBAAkB;IAmC3E,IAAI,CAAC,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,UAAU;CA6BpD;AAED,yBAAiB,mBAAmB,CAAC;IACjC,UAAiB,aAAa;QAC1B,UAAU,EAAE,UAAU,GAAG,UAAU,CAAC;QACpC,WAAW,EAAE,UAAU,CAAC;QACxB,uBAAuB,EAAE,UAAU,CAAC;QACpC,WAAW,EAAE,UAAU,CAAC;KAC3B;IAED,KAAY,UAAU,GAAG,aAAa,GAAG,CAAC,MAAM,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC;CAC3E"}
1
+ {"version":3,"file":"DeviceCertification.d.ts","sourceRoot":"","sources":["../../../src/certificate/DeviceCertification.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,EAAsC,UAAU,EAAE,MAAM,UAAU,CAAC;AAChG,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,kBAAkB,EAAE,MAAM,QAAQ,CAAC;AAI5C;;GAEG;AACH,qBAAa,mBAAmB;;IAQ5B,IAAI,YAAY,sCAEf;IAED,IAAI,WAAW,gCAEd;IAED,IAAI,uBAAuB,gCAE1B;IAED,IAAI,WAAW,gCAEd;gBAEW,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,mBAAmB,CAAC,UAAU,EAAE,OAAO,CAAC,EAAE,kBAAkB;IAwC3F,IAAI,CAAC,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,UAAU;CA6BpD;AAED,yBAAiB,mBAAmB,CAAC;IACjC,UAAiB,aAAa;QAC1B,UAAU,EAAE,UAAU,GAAG,UAAU,CAAC;QACpC,WAAW,EAAE,UAAU,CAAC;QACxB,uBAAuB,EAAE,UAAU,CAAC;QACpC,WAAW,EAAE,UAAU,CAAC;KAC3B;IAED,KAAY,UAAU,GAAG,aAAa,GAAG,CAAC,MAAM,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC;CAC3E"}
@@ -3,10 +3,11 @@
3
3
  * Copyright 2022-2025 Matter.js Authors
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
- import { Construction, Crypto, ImplementationError, InternalError, PrivateKey } from "#general";
6
+ import { Construction, ImplementationError, InternalError, PrivateKey } from "#general";
7
7
  import { AttestationCertificateManager } from "./AttestationCertificateManager.js";
8
8
  import { CertificationDeclarationManager } from "./CertificationDeclarationManager.js";
9
9
  class DeviceCertification {
10
+ #crypto;
10
11
  #privateKey;
11
12
  #certificate;
12
13
  #intermediateCertificate;
@@ -24,7 +25,8 @@ class DeviceCertification {
24
25
  get declaration() {
25
26
  return this.#assertInitialized().declaration;
26
27
  }
27
- constructor(config, product) {
28
+ constructor(crypto, config, product) {
29
+ this.#crypto = crypto;
28
30
  let configProvider;
29
31
  if (typeof config === "function") {
30
32
  configProvider = config;
@@ -35,13 +37,17 @@ class DeviceCertification {
35
37
  if (product === void 0) {
36
38
  throw new ImplementationError(`Cannot generate device certification without product information`);
37
39
  }
38
- const paa = await AttestationCertificateManager.create(product.vendorId);
40
+ const paa = await AttestationCertificateManager.create(crypto, product.vendorId);
39
41
  const { keyPair: dacKeyPair, dac } = await paa.getDACert(product.productId);
40
42
  return {
41
43
  privateKey: PrivateKey(dacKeyPair.privateKey),
42
44
  certificate: dac,
43
45
  intermediateCertificate: await paa.getPAICert(),
44
- declaration: await CertificationDeclarationManager.generate(product.vendorId, product.productId)
46
+ declaration: await CertificationDeclarationManager.generate(
47
+ crypto,
48
+ product.vendorId,
49
+ product.productId
50
+ )
45
51
  };
46
52
  };
47
53
  }
@@ -55,7 +61,7 @@ class DeviceCertification {
55
61
  }
56
62
  async sign(session, data) {
57
63
  const { privateKey } = this.#assertInitialized();
58
- const signature = await Crypto.signEcdsa(privateKey, [data, session.attestationChallengeKey]);
64
+ const signature = await this.#crypto.signEcdsa(privateKey, [data, session.attestationChallengeKey]);
59
65
  return signature;
60
66
  }
61
67
  /**
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/certificate/DeviceCertification.ts"],
4
- "mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,SAAS,cAAc,QAAQ,qBAAqB,eAAe,kBAAkB;AAGrF,SAAS,qCAAqC;AAC9C,SAAS,uCAAuC;AAKzC,MAAM,oBAAoB;AAAA,EAC7B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACS;AAAA,EAET,IAAI,eAAe;AACf,WAAO,KAAK;AAAA,EAChB;AAAA,EAEA,IAAI,cAAc;AACd,WAAO,KAAK,mBAAmB,EAAE;AAAA,EACrC;AAAA,EAEA,IAAI,0BAA0B;AAC1B,WAAO,KAAK,mBAAmB,EAAE;AAAA,EACrC;AAAA,EAEA,IAAI,cAAc;AACd,WAAO,KAAK,mBAAmB,EAAE;AAAA,EACrC;AAAA,EAEA,YAAY,QAAyC,SAA8B;AAC/E,QAAI;AACJ,QAAI,OAAO,WAAW,YAAY;AAC9B,uBAAiB;AAAA,IACrB,WAAW,QAAQ;AACf,uBAAiB,MAAM;AAAA,IAC3B,OAAO;AACH,uBAAiB,YAAY;AACzB,YAAI,YAAY,QAAW;AACvB,gBAAM,IAAI,oBAAoB,kEAAkE;AAAA,QACpG;AAEA,cAAM,MAAM,MAAM,8BAA8B,OAAO,QAAQ,QAAQ;AACvE,cAAM,EAAE,SAAS,YAAY,IAAI,IAAI,MAAM,IAAI,UAAU,QAAQ,SAAS;AAE1E,eAAO;AAAA,UACH,YAAY,WAAW,WAAW,UAAU;AAAA,UAC5C,aAAa;AAAA,UACb,yBAAyB,MAAM,IAAI,WAAW;AAAA,UAC9C,aAAa,MAAM,gCAAgC,SAAS,QAAQ,UAAU,QAAQ,SAAS;AAAA,QACnG;AAAA,MACJ;AAAA,IACJ;AAEA,SAAK,gBAAgB,aAAa,MAAM,YAAY;AAChD,YAAMA,UAAS,MAAM,eAAe;AAEpC,WAAK,cACDA,QAAO,sBAAsB,aAAa,WAAWA,QAAO,UAAU,IAAIA,QAAO;AACrF,WAAK,eAAeA,QAAO;AAC3B,WAAK,2BAA2BA,QAAO;AACvC,WAAK,eAAeA,QAAO;AAAA,IAC/B,CAAC;AAAA,EACL;AAAA,EAEA,MAAM,KAAK,SAAsB,MAAkB;AAC/C,UAAM,EAAE,WAAW,IAAI,KAAK,mBAAmB;AAC/C,UAAM,YAAY,MAAM,OAAO,UAAU,YAAY,CAAC,MAAM,QAAQ,uBAAuB,CAAC;AAC5F,WAAO;AAAA,EACX;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,qBAAqB;AACjB,SAAK,cAAc,OAAO;AAC1B,QACI,KAAK,iBAAiB,UACtB,KAAK,6BAA6B,UAClC,KAAK,iBAAiB,UACtB,KAAK,gBAAgB,QACvB;AACE,YAAM,IAAI;AAAA,QACN;AAAA,MACJ;AAAA,IACJ;AACA,WAAO;AAAA,MACH,aAAa,KAAK;AAAA,MAClB,yBAAyB,KAAK;AAAA,MAC9B,aAAa,KAAK;AAAA,MAClB,YAAY,KAAK;AAAA,IACrB;AAAA,EACJ;AACJ;",
4
+ "mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,SAAS,cAAsB,qBAAqB,eAAe,kBAAkB;AAGrF,SAAS,qCAAqC;AAC9C,SAAS,uCAAuC;AAKzC,MAAM,oBAAoB;AAAA,EAC7B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACS;AAAA,EAET,IAAI,eAAe;AACf,WAAO,KAAK;AAAA,EAChB;AAAA,EAEA,IAAI,cAAc;AACd,WAAO,KAAK,mBAAmB,EAAE;AAAA,EACrC;AAAA,EAEA,IAAI,0BAA0B;AAC1B,WAAO,KAAK,mBAAmB,EAAE;AAAA,EACrC;AAAA,EAEA,IAAI,cAAc;AACd,WAAO,KAAK,mBAAmB,EAAE;AAAA,EACrC;AAAA,EAEA,YAAY,QAAgB,QAAyC,SAA8B;AAC/F,SAAK,UAAU;AACf,QAAI;AACJ,QAAI,OAAO,WAAW,YAAY;AAC9B,uBAAiB;AAAA,IACrB,WAAW,QAAQ;AACf,uBAAiB,MAAM;AAAA,IAC3B,OAAO;AACH,uBAAiB,YAAY;AACzB,YAAI,YAAY,QAAW;AACvB,gBAAM,IAAI,oBAAoB,kEAAkE;AAAA,QACpG;AAEA,cAAM,MAAM,MAAM,8BAA8B,OAAO,QAAQ,QAAQ,QAAQ;AAC/E,cAAM,EAAE,SAAS,YAAY,IAAI,IAAI,MAAM,IAAI,UAAU,QAAQ,SAAS;AAE1E,eAAO;AAAA,UACH,YAAY,WAAW,WAAW,UAAU;AAAA,UAC5C,aAAa;AAAA,UACb,yBAAyB,MAAM,IAAI,WAAW;AAAA,UAC9C,aAAa,MAAM,gCAAgC;AAAA,YAC/C;AAAA,YACA,QAAQ;AAAA,YACR,QAAQ;AAAA,UACZ;AAAA,QACJ;AAAA,MACJ;AAAA,IACJ;AAEA,SAAK,gBAAgB,aAAa,MAAM,YAAY;AAChD,YAAMA,UAAS,MAAM,eAAe;AAEpC,WAAK,cACDA,QAAO,sBAAsB,aAAa,WAAWA,QAAO,UAAU,IAAIA,QAAO;AACrF,WAAK,eAAeA,QAAO;AAC3B,WAAK,2BAA2BA,QAAO;AACvC,WAAK,eAAeA,QAAO;AAAA,IAC/B,CAAC;AAAA,EACL;AAAA,EAEA,MAAM,KAAK,SAAsB,MAAkB;AAC/C,UAAM,EAAE,WAAW,IAAI,KAAK,mBAAmB;AAC/C,UAAM,YAAY,MAAM,KAAK,QAAQ,UAAU,YAAY,CAAC,MAAM,QAAQ,uBAAuB,CAAC;AAClG,WAAO;AAAA,EACX;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,qBAAqB;AACjB,SAAK,cAAc,OAAO;AAC1B,QACI,KAAK,iBAAiB,UACtB,KAAK,6BAA6B,UAClC,KAAK,iBAAiB,UACtB,KAAK,gBAAgB,QACvB;AACE,YAAM,IAAI;AAAA,QACN;AAAA,MACJ;AAAA,IACJ;AACA,WAAO;AAAA,MACH,aAAa,KAAK;AAAA,MAClB,yBAAyB,KAAK;AAAA,MAC9B,aAAa,KAAK;AAAA,MAClB,YAAY,KAAK;AAAA,IACrB;AAAA,EACJ;AACJ;",
5
5
  "names": ["config"]
6
6
  }
@@ -34,7 +34,7 @@ class FailsafeContext {
34
34
  this.#fabrics = options.fabrics;
35
35
  this.#associatedFabric = options.associatedFabric;
36
36
  this.#construction = Construction(this, async () => {
37
- this.#fabricBuilder = await FabricBuilder.create();
37
+ this.#fabricBuilder = await FabricBuilder.create(this.#fabrics.crypto);
38
38
  await Promise.resolve();
39
39
  await this.storeEndpointState();
40
40
  this.#failsafe = new FailsafeTimer(
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/common/FailsafeContext.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": []
6
6
  }
@@ -49,6 +49,7 @@ export declare class OccurrenceManager {
49
49
  }, void, unknown>;
50
50
  close(): MaybePromise<void>;
51
51
  add(occurrence: Occurrence): MaybePromise<NumberedOccurrence>;
52
+ remove(number: EventNumber): MaybePromise<void>;
52
53
  }
53
54
  export declare namespace OccurrenceManager {
54
55
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"OccurrenceManager.d.ts","sourceRoot":"","sources":["../../../src/events/OccurrenceManager.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAEH,YAAY,EAOZ,YAAY,EACZ,UAAU,EACb,MAAM,UAAU,CAAC;AAClB,OAAO,EACH,WAAW,EACX,aAAa,EACb,WAAW,EAEX,cAAc,EACd,YAAY,EACZ,cAAc,EACjB,MAAM,QAAQ,CAAC;AAChB,OAAO,EAAE,UAAU,EAAqB,MAAM,iBAAiB,CAAC;AAChE,OAAO,EAAE,kBAAkB,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAIjE,MAAM,WAAW,wBAAwB;IACrC,KAAK,EAAE,UAAU,CAAC;IAElB,YAAY,CAAC,EAAE,iBAAiB,CAAC,YAAY,CAAC;CACjD;AAED;;;;;;;;;;GAUG;AACH,qBAAa,iBAAiB;;IAc1B,IAAI,YAAY,oCAEf;WAEY,MAAM,CAAC,OAAO,EAAE,wBAAwB;gBAIzC,EAAE,KAAK,EAAE,YAAY,EAAE,EAAE,wBAAwB;IAgC7D,IAAI,KAAK,uDAER;IAEK,KAAK;IA4CX;;;OAGG;IACH,KAAK,CACD,SAAS,EAAE,cAAc,CAAC,OAAO,YAAY,CAAC,EAC9C,OAAO,CAAC,EAAE,cAAc,CAAC,OAAO,cAAc,CAAC,EAAE,EACjD,oBAAoB,CAAC,EAAE,WAAW,GACnC,YAAY,CAAC,kBAAkB,EAAE,CAAC;IAmFrC;;;OAGG;IACI,GAAG,CAAC,QAAQ,CAAC,EAAE,WAAW;;;;;;;;;IA8BjC,KAAK,IAAI,YAAY,CAAC,IAAI,CAAC;IAI3B,GAAG,CAAC,UAAU,EAAE,UAAU,GAAG,YAAY,CAAC,kBAAkB,CAAC;CAgHhE;AAED,yBAAiB,iBAAiB,CAAC;IAC/B;;OAEG;IACH,UAAiB,YAAY;QACzB;;WAEG;QACH,iBAAiB,EAAE,MAAM,CAAC;QAE1B;;;;;WAKG;QACH,iBAAiB,EAAE,MAAM,CAAC;QAE1B;;;WAGG;QACH,yBAAyB,EAAE;YACvB,IAAI,EAAE,MAAM,CAAC;YACb,KAAK,EAAE,MAAM,CAAC;SACjB,CAAC;KACL;IAEM,MAAM,mBAAmB,EAAE,YAOjC,CAAC;CACL"}
1
+ {"version":3,"file":"OccurrenceManager.d.ts","sourceRoot":"","sources":["../../../src/events/OccurrenceManager.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAEH,YAAY,EAOZ,YAAY,EACZ,UAAU,EACb,MAAM,UAAU,CAAC;AAClB,OAAO,EACH,WAAW,EACX,aAAa,EACb,WAAW,EAEX,cAAc,EACd,YAAY,EACZ,cAAc,EACjB,MAAM,QAAQ,CAAC;AAChB,OAAO,EAAE,UAAU,EAAqB,MAAM,iBAAiB,CAAC;AAChE,OAAO,EAAE,kBAAkB,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAIjE,MAAM,WAAW,wBAAwB;IACrC,KAAK,EAAE,UAAU,CAAC;IAElB,YAAY,CAAC,EAAE,iBAAiB,CAAC,YAAY,CAAC;CACjD;AAED;;;;;;;;;;GAUG;AACH,qBAAa,iBAAiB;;IAa1B,IAAI,YAAY,oCAEf;WAEY,MAAM,CAAC,OAAO,EAAE,wBAAwB;gBAIzC,EAAE,KAAK,EAAE,YAAY,EAAE,EAAE,wBAAwB;IA+B7D,IAAI,KAAK,uDAER;IAEK,KAAK;IA2CX;;;OAGG;IACH,KAAK,CACD,SAAS,EAAE,cAAc,CAAC,OAAO,YAAY,CAAC,EAC9C,OAAO,CAAC,EAAE,cAAc,CAAC,OAAO,cAAc,CAAC,EAAE,EACjD,oBAAoB,CAAC,EAAE,WAAW,GACnC,YAAY,CAAC,kBAAkB,EAAE,CAAC;IAmFrC;;;OAGG;IACI,GAAG,CAAC,QAAQ,CAAC,EAAE,WAAW;;;;;;;;;IA8BjC,KAAK,IAAI,YAAY,CAAC,IAAI,CAAC;IAI3B,GAAG,CAAC,UAAU,EAAE,UAAU,GAAG,YAAY,CAAC,kBAAkB,CAAC;IAgB7D,MAAM,CAAC,MAAM,EAAE,WAAW;CA0G7B;AAED,yBAAiB,iBAAiB,CAAC;IAC/B;;OAEG;IACH,UAAiB,YAAY;QACzB;;WAEG;QACH,iBAAiB,EAAE,MAAM,CAAC;QAE1B;;;;;WAKG;QACH,iBAAiB,EAAE,MAAM,CAAC;QAE1B;;;WAGG;QACH,yBAAyB,EAAE;YACvB,IAAI,EAAE,MAAM,CAAC;YACb,KAAK,EAAE,MAAM,CAAC;SACjB,CAAC;KACL;IAEM,MAAM,mBAAmB,EAAE,YAOjC,CAAC;CACL"}
@@ -23,7 +23,6 @@ import {
23
23
  const logger = Logger.get("OccurrenceManager");
24
24
  class OccurrenceManager {
25
25
  #store;
26
- #storedEventCount = 0;
27
26
  #bufferConfig;
28
27
  #cull;
29
28
  #iteratingValuesInProgress = false;
@@ -52,7 +51,6 @@ class OccurrenceManager {
52
51
  this.#bufferConfig = bufferConfig;
53
52
  this.#construction = Construction(this, () => {
54
53
  return MaybePromise.then(this.#store.load(), (index) => {
55
- this.#storedEventCount = index.length;
56
54
  index.sort(
57
55
  // sort that way because Bigint & Number mix
58
56
  ({ number: numberA }, { number: numberB }) => numberA < numberB ? -1 : numberA > numberB ? 1 : 0
@@ -70,7 +68,6 @@ class OccurrenceManager {
70
68
  async clear() {
71
69
  await this.construction;
72
70
  await this.#store.clear();
73
- this.#storedEventCount = 0;
74
71
  this.#occurrences.length = 0;
75
72
  }
76
73
  /**
@@ -216,8 +213,7 @@ class OccurrenceManager {
216
213
  return MaybePromise.then(this.#store.add(occurrence), (entry) => {
217
214
  logger.debug(`Recorded event #${entry.number}: ${Diagnostic.json(occurrence)}`);
218
215
  this.#occurrences.push(entry);
219
- this.#storedEventCount++;
220
- if (this.#storedEventCount > this.#bufferConfig.maxEventAllowance) {
216
+ if (this.#occurrences.length > this.#bufferConfig.maxEventAllowance) {
221
217
  this.#startCull();
222
218
  }
223
219
  const numberedOccurrence = {
@@ -228,6 +224,17 @@ class OccurrenceManager {
228
224
  return numberedOccurrence;
229
225
  });
230
226
  }
227
+ remove(number) {
228
+ const index = this.#occurrences.findIndex((entry) => entry.number === number);
229
+ if (index === -1) {
230
+ return;
231
+ }
232
+ this.#occurrences.splice(index, 1);
233
+ if (this.#cull) {
234
+ return this.#cull.then(() => this.#store.delete(number));
235
+ }
236
+ return this.#store.delete(number);
237
+ }
231
238
  #startCull() {
232
239
  if (this.#cull || this.#iteratingValuesInProgress) {
233
240
  return;
@@ -238,7 +245,7 @@ class OccurrenceManager {
238
245
  }
239
246
  }
240
247
  #dropOldOccurrences() {
241
- let toDelete = this.#storedEventCount - this.#bufferConfig.minEventAllowance;
248
+ let toDelete = this.#occurrences.length - this.#bufferConfig.minEventAllowance;
242
249
  if (toDelete <= 0) {
243
250
  return;
244
251
  }
@@ -271,7 +278,7 @@ class OccurrenceManager {
271
278
  }
272
279
  const occurrences = this.#occurrences;
273
280
  for (const priority of [EventPriority.Debug, EventPriority.Info, EventPriority.Critical]) {
274
- const checkUpTo = priority === EventPriority.Critical ? this.#storedEventCount : prioData[priority].minPosition;
281
+ const checkUpTo = priority === EventPriority.Critical ? this.#occurrences.length : prioData[priority].minPosition;
275
282
  if (checkUpTo === -1) {
276
283
  continue;
277
284
  }
@@ -295,7 +302,6 @@ class OccurrenceManager {
295
302
  }
296
303
  }
297
304
  this.#occurrences = occurrences.filter((entry) => entry);
298
- this.#storedEventCount = this.#occurrences.length;
299
305
  if (asyncDrops.length) {
300
306
  return MatterAggregateError.allSettled(asyncDrops, "Error dropping occurrences").then(() => {
301
307
  }).catch((error) => logger.error(error));
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/events/OccurrenceManager.ts"],
4
- "mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA;AAAA,EACI;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACG;AACP;AAAA,EACI;AAAA,EACA;AAAA,EAEA;AAAA,OAIG;AAIP,MAAM,SAAS,OAAO,IAAI,mBAAmB;AAmBtC,MAAM,kBAAkB;AAAA,EAC3B;AAAA,EACA,oBAAoB;AAAA,EACpB;AAAA,EACA;AAAA,EACA,6BAA6B;AAAA,EAC7B,SAAS,IAAI,WAA6C;AAAA;AAAA;AAAA,EAI1D,eAAe,IAAI,MAAyB;AAAA,EAE5C;AAAA,EAEA,IAAI,eAAe;AACf,WAAO,KAAK;AAAA,EAChB;AAAA,EAEA,aAAa,OAAO,SAAmC;AACnD,WAAO,SAAS,mBAAmB,OAAO;AAAA,EAC9C;AAAA,EAEA,YAAY,EAAE,OAAO,aAAa,GAA6B;AAC3D,QAAI,iBAAiB,QAAW;AAC5B,qBAAe,kBAAkB;AAAA,IACrC;AAEA,UAAM,EAAE,mBAAmB,kBAAkB,IAAI;AAEjD,QAAI,oBAAoB,mBAAmB;AACvC,YAAM,IAAI;AAAA,QACN,qBAAqB,iBAAiB,mCAAmC,iBAAiB;AAAA,MAC9F;AAAA,IACJ;AAEA,SAAK,SAAS;AACd,SAAK,gBAAgB;AAErB,SAAK,gBAAgB,aAAa,MAAM,MAAM;AAC1C,aAAO,aAAa,KAAK,KAAK,OAAO,KAAK,GAAG,WAAS;AAClD,aAAK,oBAAoB,MAAM;AAE/B,cAAM;AAAA;AAAA,UAEF,CAAC,EAAE,QAAQ,QAAQ,GAAG,EAAE,QAAQ,QAAQ,MAAO,UAAU,UAAU,KAAK,UAAU,UAAU,IAAI;AAAA,QACpG;AACA,aAAK,aAAa,KAAK,GAAG,KAAK;AAC/B,YAAI,KAAK,aAAa,SAAS,KAAK,cAAc,mBAAmB;AACjE,eAAK,WAAW;AAAA,QACpB;AAAA,MACJ,CAAC;AAAA,IACL,CAAC;AAAA,EACL;AAAA,EAEA,IAAI,QAAQ;AACR,WAAO,KAAK;AAAA,EAChB;AAAA,EAEA,MAAM,QAAQ;AACV,UAAM,KAAK;AACX,UAAM,KAAK,OAAO,MAAM;AACxB,SAAK,oBAAoB;AACzB,SAAK,aAAa,SAAS;AAAA,EAC/B;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,yBAAyB,UAAuB;AAG5C,QAAI,KAAK,aAAa,WAAW,KAAK,WAAW,KAAK,aAAa,KAAK,aAAa,SAAS,CAAC,EAAE,QAAQ;AACrG,aAAO;AAAA,IACX;AACA,QAAI,YAAY,KAAK,aAAa,CAAC,EAAE,QAAQ;AACzC,aAAO;AAAA,IACX;AAEA,QAAI,MAAM,KAAK,aAAa,SAAS;AACrC,QAAI,OAAO;AACX,QAAI,OAAO;AAGX,WAAO,MAAM,KAAK,KAAK,aAAa,GAAG,EAAE,UAAU,UAAU;AACzD,aAAO;AACP,YAAM,KAAK,IAAI,GAAG,MAAM,IAAI;AAC5B,cAAQ;AAAA,IACZ;AAEA,WAAO,OAAO,MAAM;AAChB,YAAM,MAAM,KAAK,OAAO,MAAM,QAAQ,CAAC;AACvC,UAAI,KAAK,aAAa,GAAG,EAAE,SAAS,UAAU;AAC1C,cAAM,MAAM;AAAA,MAChB,OAAO;AACH,eAAO,MAAM;AAAA,MACjB;AAAA,IACJ;AAEA,WAAO;AAAA,EACX;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,MACI,WACA,SACA,sBACkC;AAClC,QAAI,YAAY,UAAa,QAAQ,SAAS,GAAG;AAC7C,YAAM,IAAI,cAAc,gCAAgC;AAAA,IAC5D;AAEA,UAAM,aAAa,SAAS,SAAS,KAAK,yBAAyB,YAAY,QAAQ,CAAC,EAAE,QAAQ,CAAC,IAAI;AACvG,QAAI,eAAe,IAAI;AACnB,aAAO,CAAC;AAAA,IACZ;AAEA,QAAI,cAAc;AAClB,UAAM,EAAE,YAAY,WAAW,QAAQ,IAAI;AAC3C,UAAM,cAAc,IAAI,MAAwC;AAChE,aAAS,IAAI,YAAY,IAAI,KAAK,aAAa,QAAQ,KAAK;AACxD,YAAM,QAAQ,KAAK,aAAa,CAAC;AACjC,UAAI,eAAe,MAAM,cAAc,cAAc,MAAM,aAAa,YAAY,MAAM,SAAS;AAC/F,YAAI,aAAa,KAAK,OAAO,IAAI,MAAM,MAAM;AAC7C,qBAAa,aAAa,KAAK,YAAY,CAAAA,gBAAc;AACrD,UAAAA,YAAW,SAAS,MAAM;AAC1B,iBAAOA;AAAA,QACX,CAAC;AACD,oBAAY,KAAK,UAAU;AAC3B,YAAI,aAAa,GAAG,UAAU,GAAG;AAC7B,wBAAc;AAAA,QAClB;AAAA,MACJ;AAAA,IACJ;AAGA,WAAO;AAAA,MACH,OAAO,YAAY,MAAM,eAAe,iBAAiB,SAAS,CAAC,kBAAkB,WAAW,KAAK,OAAO,CAAC;AAAA,IACjH;AAGA,QAAI;AACJ,QAAI,aAAa;AACb,eAAS,QAAQ,IAAI,WAAW;AAAA,IACpC,OAAO;AACH,eAAS;AAAA,IACb;AAGA,QAAI,yBAAyB,QAAW;AACpC,eAAS,aAAa;AAAA,QAAK;AAAA,QAAQ,CAACC,iBAChCA,aAAY,OAAO,CAAC,EAAE,QAAQ,MAAM;AAChC,cAAI,CAAC,SAAS,OAAO,GAAG;AACpB,mBAAO;AAAA,UACX;AACA,gBAAM,EAAE,YAAY,IAAI;AACxB,iBAAO,gBAAgB,UAAa,gBAAgB;AAAA,QACxD,CAAC;AAAA,MACL;AAAA,IACJ;AAGA,aAAS,aAAa,KAAK,QAAQ,CAAAA,iBAAe;AAC9C,UAAI;AACJ,UAAI,SAAS,QAAQ;AACjB,qBAAa,QAAQ,IAAI,CAAC,EAAE,QAAQ,SAAS,MAAM,GAAG,MAAM,IAAI,QAAQ,EAAE,EAAE,KAAK,GAAG;AAAA,MACxF;AACA,UAAI,sBAAsB;AACtB,YAAI,eAAe,QAAW;AAC1B,uBAAa,GAAG,UAAU,gBAAgB,oBAAoB;AAAA,QAClE,OAAO;AACH,uBAAa,WAAW,oBAAoB;AAAA,QAChD;AAAA,MACJ;AAEA,UAAI,YAAY;AACZ,qBAAa,cAAc,UAAU;AAAA,MACzC,OAAO;AACH,qBAAa;AAAA,MACjB;AAEA,aAAO;AAAA,QACH,UAAUA,aAAY,MAAM,cAAcA,aAAY,WAAW,IAAI,KAAK,GAAG,QAAQ,iBAAiB,SAAS,CAAC,GAAG,UAAU;AAAA,MACjI;AACA,aAAOA;AAAA,IACX,CAAC;AAED,WAAO;AAAA,EACX;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,OAAO,IAAI,UAAwB;AAC/B,QAAI,KAAK,OAAO;AACZ,YAAM,KAAK;AAAA,IACf;AACA,UAAM,aAAa,aAAa,SAAY,IAAI,KAAK,yBAAyB,QAAQ;AACtF,QAAI,eAAe,IAAI;AACnB;AAAA,IACJ;AACA,SAAK,6BAA6B;AAClC,QAAI;AACA,eAAS,IAAI,YAAY,IAAI,KAAK,aAAa,QAAQ,KAAK;AACxD,cAAM,cAAc,KAAK,aAAa,CAAC,EAAE;AACzC,cAAM,aAAa,KAAK,OAAO,IAAI,WAAW;AAC9C,YAAI,aAAa,GAAG,UAAU,GAAG;AAC7B,gBAAM;AAAA,YACF,GAAI,MAAM;AAAA,YACV,QAAQ;AAAA,UACZ;AAAA,QACJ,OAAO;AACH,gBAAM;AAAA,YACF,GAAG;AAAA,YACH,QAAQ;AAAA,UACZ;AAAA,QACJ;AAAA,MACJ;AAAA,IACJ,UAAE;AACE,WAAK,6BAA6B;AAAA,IACtC;AAAA,EACJ;AAAA,EAEA,QAA4B;AACxB,iBAAa,KAAK,KAAK,OAAO,MAAM,KAAK,OAAO,MAAM,CAAC;AAAA,EAC3D;AAAA,EAEA,IAAI,YAA0D;AAC1D,WAAO,aAAa,KAAK,KAAK,OAAO,IAAI,UAAU,GAAG,WAAS;AAC3D,aAAO,MAAM,mBAAmB,MAAM,MAAM,KAAK,WAAW,KAAK,UAAU,CAAC,EAAE;AAC9E,WAAK,aAAa,KAAK,KAAK;AAC5B,WAAK;AACL,UAAI,KAAK,oBAAoB,KAAK,cAAc,mBAAmB;AAC/D,aAAK,WAAW;AAAA,MACpB;AACA,YAAM,qBAAqB;AAAA,QACvB,QAAQ,MAAM;AAAA,QACd,GAAG;AAAA,MACP;AACA,WAAK,OAAO,KAAK,kBAAkB;AACnC,aAAO;AAAA,IACX,CAAC;AAAA,EACL;AAAA,EAEA,aAAa;AACT,QAAI,KAAK,SAAS,KAAK,4BAA4B;AAC/C;AAAA,IACJ;AACA,UAAM,OAAO,KAAK,oBAAoB;AACtC,QAAI,aAAa,GAAG,IAAI,GAAG;AACvB,WAAK,QAAQ,QAAQ,QAAQ,IAAI,EAAE,QAAQ,MAAO,KAAK,QAAQ,MAAU;AAAA,IAC7E;AAAA,EACJ;AAAA,EAEA,sBAAsB;AAClB,QAAI,WAAW,KAAK,oBAAoB,KAAK,cAAc;AAC3D,QAAI,YAAY,GAAG;AACf;AAAA,IACJ;AAEA,WAAO,MAAM,iCAAiC,QAAQ,kBAAkB,aAAa,IAAI,MAAM,EAAE,EAAE;AAEnG,UAAM,WAAW;AAAA,MACb,CAAC,cAAc,IAAI,GAAG;AAAA,QAClB,OAAO,KAAK,cAAc,0BAA0B,MAAM;AAAA,QAC1D,aAAa;AAAA,MACjB;AAAA,MACA,CAAC,cAAc,KAAK,GAAG;AAAA,QACnB,OAAO,KAAK,cAAc,0BAA0B,OAAO;AAAA,QAC3D,aAAa;AAAA,MACjB;AAAA,IACJ;AAEA,UAAM,aAAa,MAAyB;AAI5C,aAAS,IAAI,KAAK,aAAa,SAAS,GAAG,KAAK,GAAG,KAAK;AACpD,YAAM,EAAE,SAAS,IAAI,KAAK,aAAa,CAAC;AAExC,UAAI,aAAa,cAAc,UAAU;AACrC,cAAM,OAAO,SAAS,QAAQ;AAC9B,YAAI,KAAK,QAAQ,GAAG;AAChB,eAAK;AACL,cAAI,KAAK,UAAU,GAAG;AAClB,iBAAK,cAAc;AACnB,gBACI,SAAS,cAAc,IAAI,EAAE,cAAc,MAC3C,SAAS,cAAc,KAAK,EAAE,cAAc,IAC9C;AAEE;AAAA,YACJ;AAAA,UACJ;AAAA,QACJ;AAAA,MACJ;AAAA,IACJ;AAOA,UAAM,cAAc,KAAK;AACzB,eAAW,YAAY,CAAC,cAAc,OAAO,cAAc,MAAM,cAAc,QAAQ,GAAG;AACtF,YAAM,YACF,aAAa,cAAc,WAAW,KAAK,oBAAoB,SAAS,QAAQ,EAAE;AACtF,UAAI,cAAc,IAAI;AAElB;AAAA,MACJ;AACA,eAAS,IAAI,GAAG,IAAI,aAAa,WAAW,GAAG,KAAK;AAChD,YAAI,YAAY,CAAC,MAAM,OAAW;AAClC,cAAM,EAAE,UAAU,eAAe,OAAO,IAAI,YAAY,CAAC;AACzD,YAAI,kBAAkB,UAAU;AAC5B,gBAAM,OAAO,aAAa;AAAA,YAAM,KAAK,OAAO,OAAO,MAAM;AAAA,YAAG,WACxD,OAAO,KAAK,8BAA8B,MAAM,KAAK,KAAK,EAAE;AAAA,UAChE;AACA,cAAI,aAAa,GAAG,IAAI,GAAG;AACvB,uBAAW,KAAK,IAAI;AAAA,UACxB;AACA,sBAAY,CAAC,IAAI;AACjB;AAAA,QACJ;AAAA,MACJ;AACA,UAAI,YAAY,GAAG;AACf;AAAA,MACJ;AAAA,IACJ;AACA,SAAK,eAAe,YAAY,OAAO,WAAS,KAAK;AAErD,SAAK,oBAAoB,KAAK,aAAa;AAE3C,QAAI,WAAW,QAAQ;AACnB,aAAO,qBAAqB,WAAW,YAAY,4BAA4B,EAC1E,KAAK,MAAM;AAAA,MAAC,CAAC,EACb,MAAM,WAAS,OAAO,MAAM,KAAK,CAAC;AAAA,IAC3C;AAAA,EACJ;AACJ;AAAA,CAEO,CAAUC,uBAAV;AA4BI,EAAMA,mBAAA,sBAAoC;AAAA,IAC7C,mBAAmB;AAAA,IACnB,mBAAmB;AAAA,IACnB,2BAA2B;AAAA,MACvB,MAAM;AAAA,MACN,OAAO;AAAA,IACX;AAAA,EACJ;AAAA,GAnCa;",
4
+ "mappings": "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",
5
5
  "names": ["occurrence", "occurrences", "OccurrenceManager"]
6
6
  }
@@ -3,7 +3,8 @@
3
3
  * Copyright 2022-2025 Matter.js Authors
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
- import { BinaryKeyPair, Key, MatterError, MaybePromise, PrivateKey, StorageContext } from "#general";
6
+ import { CertificateManager } from "#certificate/CertificateManager.js";
7
+ import { BinaryKeyPair, Crypto, Key, MatterError, MaybePromise, PrivateKey, StorageContext } from "#general";
7
8
  import { FabricGroups } from "#groups/FabricGroups.js";
8
9
  import { FabricAccessControl } from "#interaction/FabricAccessControl.js";
9
10
  import { PeerAddress } from "#peer/PeerAddress.js";
@@ -33,7 +34,8 @@ export declare class Fabric {
33
34
  readonly operationalIdentityProtectionKey: Uint8Array;
34
35
  readonly intermediateCACert: Uint8Array | undefined;
35
36
  readonly operationalCert: Uint8Array;
36
- constructor(config: Fabric.Config);
37
+ constructor(certs: CertificateManager | Crypto, config: Fabric.Config);
38
+ get crypto(): Crypto;
37
39
  get config(): Fabric.Config;
38
40
  get label(): string;
39
41
  setLabel(label: string): Promise<void>;
@@ -69,8 +71,8 @@ export declare class Fabric {
69
71
  }
70
72
  export declare class FabricBuilder {
71
73
  #private;
72
- constructor(key: PrivateKey);
73
- static create(): Promise<FabricBuilder>;
74
+ constructor(crypto: Crypto, key: PrivateKey);
75
+ static create(crypto: Crypto): Promise<FabricBuilder>;
74
76
  get publicKey(): Uint8Array<ArrayBufferLike>;
75
77
  get fabricIndex(): FabricIndex | undefined;
76
78
  createCertificateSigningRequest(): Promise<Uint8Array<ArrayBufferLike>>;
@@ -1 +1 @@
1
- {"version":3,"file":"Fabric.d.ts","sourceRoot":"","sources":["../../../src/fabric/Fabric.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Fabric.d.ts","sourceRoot":"","sources":["../../../src/fabric/Fabric.ts"],"names":[],"mappings":"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"}
@@ -11,7 +11,6 @@ import {
11
11
  } from "#certificate/CertificateManager.js";
12
12
  import {
13
13
  Bytes,
14
- Crypto,
15
14
  DataWriter,
16
15
  Diagnostic,
17
16
  Endian,
@@ -31,6 +30,7 @@ const COMPRESSED_FABRIC_ID_INFO = Bytes.fromString("CompressedFabric");
31
30
  class PublicKeyError extends MatterError {
32
31
  }
33
32
  class Fabric {
33
+ #certs;
34
34
  fabricIndex;
35
35
  fabricId;
36
36
  nodeId;
@@ -45,13 +45,17 @@ class Fabric {
45
45
  operationalCert;
46
46
  #keyPair;
47
47
  #sessions = /* @__PURE__ */ new Set();
48
- #groupManager;
48
+ #groups;
49
49
  #aclManager;
50
50
  #label;
51
51
  #removeCallbacks = new Array();
52
52
  #persistCallback;
53
53
  #storage;
54
- constructor(config) {
54
+ constructor(certs, config) {
55
+ if (!(certs instanceof CertificateManager)) {
56
+ certs = new CertificateManager(certs);
57
+ }
58
+ this.#certs = certs;
55
59
  this.fabricIndex = config.fabricIndex;
56
60
  this.fabricId = config.fabricId;
57
61
  this.nodeId = config.nodeId;
@@ -67,7 +71,10 @@ class Fabric {
67
71
  this.#label = config.label;
68
72
  this.#keyPair = PrivateKey(config.keyPair);
69
73
  this.#aclManager = new FabricAccessControl(this);
70
- this.#groupManager = new FabricGroups(this);
74
+ this.#groups = new FabricGroups(this);
75
+ }
76
+ get crypto() {
77
+ return this.#certs.crypto;
71
78
  }
72
79
  get config() {
73
80
  return {
@@ -102,13 +109,13 @@ class Fabric {
102
109
  }
103
110
  set storage(storage) {
104
111
  this.#storage = storage;
105
- this.#groupManager.storage = storage;
112
+ this.#groups.storage = storage;
106
113
  }
107
114
  get storage() {
108
115
  return this.#storage;
109
116
  }
110
117
  get groups() {
111
- return this.#groupManager;
118
+ return this.#groups;
112
119
  }
113
120
  get acl() {
114
121
  return this.#aclManager;
@@ -117,16 +124,16 @@ class Fabric {
117
124
  return this.#keyPair.publicKey;
118
125
  }
119
126
  sign(data) {
120
- return Crypto.signEcdsa(this.#keyPair, data);
127
+ return this.#certs.crypto.signEcdsa(this.#keyPair, data);
121
128
  }
122
129
  async verifyCredentials(operationalCert, intermediateCACert) {
123
130
  const rootCert = TlvRootCertificate.decode(this.rootCert);
124
131
  const nocCert = TlvOperationalCertificate.decode(operationalCert);
125
132
  const icaCert = intermediateCACert !== void 0 ? TlvIntermediateCertificate.decode(intermediateCACert) : void 0;
126
133
  if (icaCert !== void 0) {
127
- await CertificateManager.verifyIntermediateCaCertificate(rootCert, icaCert);
134
+ await this.#certs.verifyIntermediateCaCertificate(rootCert, icaCert);
128
135
  }
129
- await CertificateManager.verifyNodeOperationalCertificate(nocCert, rootCert, icaCert);
136
+ await this.#certs.verifyNodeOperationalCertificate(nocCert, rootCert, icaCert);
130
137
  }
131
138
  matchesFabricIdAndRootPublicKey(fabricId, rootPublicKey) {
132
139
  return this.fabricId === fabricId && Bytes.areEqual(this.rootPublicKey, rootPublicKey);
@@ -147,7 +154,10 @@ class Fabric {
147
154
  * returns the time-wise valid operational keys for that groupId.
148
155
  */
149
156
  async currentDestinationIdFor(nodeId, random) {
150
- return await Crypto.signHmac(this.groups.keySets.currentKeyForId(0).key, this.#generateSalt(nodeId, random));
157
+ return await this.#certs.crypto.signHmac(
158
+ this.groups.keySets.currentKeyForId(0).key,
159
+ this.#generateSalt(nodeId, random)
160
+ );
151
161
  }
152
162
  /**
153
163
  * Returns the destination IDs for a given nodeId, random value and optional groupId. When groupId is provided, it
@@ -155,7 +165,7 @@ class Fabric {
155
165
  */
156
166
  async destinationIdsFor(nodeId, random) {
157
167
  const salt = this.#generateSalt(nodeId, random);
158
- const destinationIds = this.groups.keySets.allKeysForId(0).map(({ key }) => Crypto.signHmac(key, salt));
168
+ const destinationIds = this.groups.keySets.allKeysForId(0).map(({ key }) => this.#certs.crypto.signHmac(key, salt));
159
169
  return await Promise.all(destinationIds);
160
170
  }
161
171
  addSession(session) {
@@ -206,6 +216,7 @@ class Fabric {
206
216
  }
207
217
  }
208
218
  class FabricBuilder {
219
+ #certs;
209
220
  #keyPair;
210
221
  #rootVendorId;
211
222
  #rootCert;
@@ -218,11 +229,12 @@ class FabricBuilder {
218
229
  #identityProtectionKey;
219
230
  #fabricIndex;
220
231
  #label = "";
221
- constructor(key) {
232
+ constructor(crypto, key) {
233
+ this.#certs = new CertificateManager(crypto);
222
234
  this.#keyPair = key;
223
235
  }
224
- static async create() {
225
- return new FabricBuilder(await Crypto.createKeyPair());
236
+ static async create(crypto) {
237
+ return new FabricBuilder(crypto, await crypto.createKeyPair());
226
238
  }
227
239
  get publicKey() {
228
240
  return this.#keyPair.publicKey;
@@ -231,11 +243,11 @@ class FabricBuilder {
231
243
  return this.#fabricIndex;
232
244
  }
233
245
  createCertificateSigningRequest() {
234
- return CertificateManager.createCertificateSigningRequest(this.#keyPair);
246
+ return this.#certs.createCertificateSigningRequest(this.#keyPair);
235
247
  }
236
248
  async setRootCert(rootCert) {
237
249
  const decodedRootCertificate = TlvRootCertificate.decode(rootCert);
238
- await CertificateManager.verifyRootCertificate(decodedRootCertificate);
250
+ await this.#certs.verifyRootCertificate(decodedRootCertificate);
239
251
  this.#rootCert = rootCert;
240
252
  this.#rootPublicKey = decodedRootCertificate.ellipticCurvePublicKey;
241
253
  return this;
@@ -268,9 +280,9 @@ class FabricBuilder {
268
280
  const nocCert = TlvOperationalCertificate.decode(operationalCert);
269
281
  const icaCert = intermediateCACert !== void 0 ? TlvIntermediateCertificate.decode(intermediateCACert) : void 0;
270
282
  if (icaCert !== void 0) {
271
- await CertificateManager.verifyIntermediateCaCertificate(rootCert, icaCert);
283
+ await this.#certs.verifyIntermediateCaCertificate(rootCert, icaCert);
272
284
  }
273
- await CertificateManager.verifyNodeOperationalCertificate(nocCert, rootCert, icaCert);
285
+ await this.#certs.verifyNodeOperationalCertificate(nocCert, rootCert, icaCert);
274
286
  this.#operationalCert = operationalCert;
275
287
  this.#intermediateCACert = intermediateCACert;
276
288
  this.#fabricId = FabricId(fabricId);
@@ -331,13 +343,13 @@ class FabricBuilder {
331
343
  this.#fabricIndex = fabricIndex;
332
344
  const saltWriter = new DataWriter();
333
345
  saltWriter.writeUInt64(this.#fabricId);
334
- const operationalId = await Crypto.createHkdfKey(
346
+ const operationalId = await this.#certs.crypto.createHkdfKey(
335
347
  this.#rootPublicKey.slice(1),
336
348
  saltWriter.toByteArray(),
337
349
  COMPRESSED_FABRIC_ID_INFO,
338
350
  8
339
351
  );
340
- return new Fabric({
352
+ return new Fabric(this.#certs, {
341
353
  fabricIndex: this.#fabricIndex,
342
354
  fabricId: this.#fabricId,
343
355
  nodeId: this.#nodeId,
@@ -349,7 +361,7 @@ class FabricBuilder {
349
361
  rootCert: this.#rootCert,
350
362
  identityProtectionKey: this.#identityProtectionKey,
351
363
  // Epoch Key
352
- operationalIdentityProtectionKey: await Crypto.createHkdfKey(
364
+ operationalIdentityProtectionKey: await this.#certs.crypto.createHkdfKey(
353
365
  this.#identityProtectionKey,
354
366
  operationalId,
355
367
  GROUP_SECURITY_INFO
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/fabric/Fabric.ts"],
4
- "mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA;AAAA,EACI;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACG;AACP;AAAA,EAEI;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EAEA;AAAA,EACA;AAAA,EACA;AAAA,EAEA;AAAA,OAEG;AACP,SAAS,cAAc,2BAA2B;AAClD,SAAS,2BAA2B;AACpC,SAAS,mBAAmB;AAE5B,SAAS,sBAAsB,UAAuB,SAAS,cAAwB;AAEvF,MAAM,SAAS,OAAO,IAAI,QAAQ;AAElC,MAAM,4BAA4B,MAAM,WAAW,kBAAkB;AAE9D,MAAM,uBAAuB,YAAY;AAAC;AAW1C,MAAM,OAAO;AAAA,EACP;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,YAAY,oBAAI,IAAa;AAAA,EAC7B;AAAA,EACA;AAAA,EACT;AAAA,EACA,mBAAmB,IAAI,MAAgC;AAAA,EACvD;AAAA,EACA;AAAA,EAEA,YAAY,QAAuB;AAC/B,SAAK,cAAc,OAAO;AAC1B,SAAK,WAAW,OAAO;AACvB,SAAK,SAAS,OAAO;AACrB,SAAK,aAAa,OAAO;AACzB,SAAK,gBAAgB,OAAO;AAC5B,SAAK,gBAAgB,OAAO;AAC5B,SAAK,eAAe,OAAO;AAC3B,SAAK,WAAW,OAAO;AACvB,SAAK,wBAAwB,OAAO;AACpC,SAAK,mCAAmC,OAAO;AAC/C,SAAK,qBAAqB,OAAO;AACjC,SAAK,kBAAkB,OAAO;AAC9B,SAAK,SAAS,OAAO;AACrB,SAAK,WAAW,WAAW,OAAO,OAAO;AACzC,SAAK,cAAc,IAAI,oBAAoB,IAAI;AAC/C,SAAK,gBAAgB,IAAI,aAAa,IAAI;AAAA,EAC9C;AAAA,EAEA,IAAI,SAAwB;AACxB,WAAO;AAAA,MACH,aAAa,KAAK;AAAA,MAClB,UAAU,KAAK;AAAA,MACf,QAAQ,KAAK;AAAA,MACb,YAAY,KAAK;AAAA,MACjB,eAAe,KAAK;AAAA,MACpB,eAAe,KAAK;AAAA,MACpB,SAAS,KAAK,SAAS;AAAA,MACvB,cAAc,KAAK;AAAA,MACnB,UAAU,KAAK;AAAA,MACf,uBAAuB,KAAK;AAAA,MAC5B,kCAAkC,KAAK;AAAA,MACvC,oBAAoB,KAAK;AAAA,MACzB,iBAAiB,KAAK;AAAA,MACtB,OAAO,KAAK;AAAA,IAChB;AAAA,EACJ;AAAA,EAEA,IAAI,QAAQ;AACR,WAAO,KAAK;AAAA,EAChB;AAAA,EAEA,MAAM,SAAS,OAAe;AAC1B,QAAI,MAAM,WAAW,KAAK,MAAM,SAAS,IAAI;AACzC,YAAM,IAAI,oBAAoB,wDAAwD;AAAA,IAC1F;AACA,QAAI,KAAK,WAAW,OAAO;AACvB;AAAA,IACJ;AACA,SAAK,SAAS;AACd,UAAM,KAAK,QAAQ;AAAA,EACvB;AAAA,EAEA,IAAI,QAAQ,SAAyB;AACjC,SAAK,WAAW;AAChB,SAAK,cAAc,UAAU;AAAA,EACjC;AAAA,EAEA,IAAI,UAAsC;AACtC,WAAO,KAAK;AAAA,EAChB;AAAA,EAEA,IAAI,SAAS;AACT,WAAO,KAAK;AAAA,EAChB;AAAA,EAEA,IAAI,MAAM;AACN,WAAO,KAAK;AAAA,EAChB;AAAA,EAEA,IAAI,YAAY;AACZ,WAAO,KAAK,SAAS;AAAA,EACzB;AAAA,EAEA,KAAK,MAAkB;AACnB,WAAO,OAAO,UAAU,KAAK,UAAU,IAAI;AAAA,EAC/C;AAAA,EAEA,MAAM,kBAAkB,iBAA6B,oBAAiC;AAClF,UAAM,WAAW,mBAAmB,OAAO,KAAK,QAAQ;AACxD,UAAM,UAAU,0BAA0B,OAAO,eAAe;AAChE,UAAM,UACF,uBAAuB,SAAY,2BAA2B,OAAO,kBAAkB,IAAI;AAC/F,QAAI,YAAY,QAAW;AAEvB,YAAM,mBAAmB,gCAAgC,UAAU,OAAO;AAAA,IAC9E;AAEA,UAAM,mBAAmB,iCAAiC,SAAS,UAAU,OAAO;AAAA,EACxF;AAAA,EAEA,gCAAgC,UAAoB,eAA2B;AAC3E,WAAO,KAAK,aAAa,YAAY,MAAM,SAAS,KAAK,eAAe,aAAa;AAAA,EACzF;AAAA,EAEA,eAAe,SAAc;AACzB,WACI,MAAM,SAAS,KAAK,SAAS,WAAW,QAAQ,SAAS,KACzD,MAAM,SAAS,KAAK,SAAS,YAAY,QAAQ,UAAU;AAAA,EAEnE;AAAA,EAEA,cAAc,QAAgB,QAAoB;AAC9C,UAAM,SAAS,IAAI,WAAW,OAAO,MAAM;AAC3C,WAAO,eAAe,MAAM;AAC5B,WAAO,eAAe,KAAK,aAAa;AACxC,WAAO,YAAY,KAAK,QAAQ;AAChC,WAAO,YAAY,MAAM;AACzB,WAAO,OAAO,YAAY;AAAA,EAC9B;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,MAAM,wBAAwB,QAAgB,QAAoB;AAC9D,WAAO,MAAM,OAAO,SAAS,KAAK,OAAO,QAAQ,gBAAgB,CAAC,EAAE,KAAK,KAAK,cAAc,QAAQ,MAAM,CAAC;AAAA,EAC/G;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,MAAM,kBAAkB,QAAgB,QAAoB;AACxD,UAAM,OAAO,KAAK,cAAc,QAAQ,MAAM;AAE9C,UAAM,iBAAiB,KAAK,OAAO,QAAQ,aAAa,CAAC,EAAE,IAAI,CAAC,EAAE,IAAI,MAAM,OAAO,SAAS,KAAK,IAAI,CAAC;AACtG,WAAO,MAAM,QAAQ,IAAI,cAAc;AAAA,EAC3C;AAAA,EAEA,WAAW,SAAkB;AACzB,SAAK,UAAU,IAAI,OAAO;AAAA,EAC9B;AAAA,EAEA,cAAc,SAAkB;AAC5B,SAAK,UAAU,OAAO,OAAO;AAAA,EACjC;AAAA,EAEA,kBAAkB,UAAoC;AAClD,SAAK,iBAAiB,KAAK,QAAQ;AAAA,EACvC;AAAA,EAEA,qBAAqB,UAAoC;AACrD,UAAM,QAAQ,KAAK,iBAAiB,QAAQ,QAAQ;AACpD,QAAI,SAAS,GAAG;AACZ,WAAK,iBAAiB,OAAO,OAAO,CAAC;AAAA,IACzC;AAAA,EACJ;AAAA,EAEA,IAAI,gBAAgB,UAAsD;AAEtE,SAAK,mBAAmB;AAAA,EAC5B;AAAA,EAEA,MAAM,OAAO,kBAA2B;AACpC,eAAW,YAAY,KAAK,kBAAkB;AAC1C,YAAM,SAAS;AAAA,IACnB;AACA,eAAW,WAAW,CAAC,GAAG,KAAK,SAAS,GAAG;AACvC,YAAM,QAAQ,QAAQ,OAAO,QAAQ,OAAO,gBAAgB;AAAA,IAChE;AAAA,EACJ;AAAA,EAEA,QAAQ,WAAW,MAAM;AACrB,WAAO,KAAK,mBAAmB,QAAQ;AAAA,EAC3C;AAAA,EAEA,IAAI,sBAAgD;AAChD,WAAO;AAAA,MACH,aAAa,KAAK;AAAA,MAClB,UAAU,KAAK;AAAA,MACf,QAAQ,KAAK;AAAA,MACb,YAAY,KAAK;AAAA,MACjB,cAAc,KAAK;AAAA,MACnB,OAAO,KAAK;AAAA,IAChB;AAAA,EACJ;AAAA,EAEA,UAAU,QAAgB;AACtB,WAAO,YAAY,EAAE,aAAa,KAAK,aAAa,OAAO,CAAC;AAAA,EAChE;AAAA,EAEA,eAAe,SAAkB;AAC7B,YAAQ,cAAc,OAAO;AAE7B,WAAO,YAAY,EAAE,aAAa,KAAK,aAAa,QAAQ,OAAO,YAAY,OAAO,EAAE,CAAC;AAAA,EAC7F;AACJ;AAEO,MAAM,cAAc;AAAA,EACvB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,SAAS;AAAA,EAET,YAAY,KAAiB;AACzB,SAAK,WAAW;AAAA,EACpB;AAAA,EAEA,aAAa,SAAS;AAClB,WAAO,IAAI,cAAc,MAAM,OAAO,cAAc,CAAC;AAAA,EACzD;AAAA,EAEA,IAAI,YAAY;AACZ,WAAO,KAAK,SAAS;AAAA,EACzB;AAAA,EAEA,IAAI,cAAc;AACd,WAAO,KAAK;AAAA,EAChB;AAAA,EAEA,kCAAkC;AAC9B,WAAO,mBAAmB,gCAAgC,KAAK,QAAQ;AAAA,EAC3E;AAAA,EAEA,MAAM,YAAY,UAAsB;AACpC,UAAM,yBAAyB,mBAAmB,OAAO,QAAQ;AACjE,UAAM,mBAAmB,sBAAsB,sBAAsB;AACrE,SAAK,YAAY;AACjB,SAAK,iBAAiB,uBAAuB;AAC7C,WAAO;AAAA,EACX;AAAA,EAEA,IAAI,WAAW;AACX,WAAO,KAAK;AAAA,EAChB;AAAA,EAEA,MAAM,mBAAmB,iBAA6B,oBAAiC;AACnF,QAAI,uBAAuB,UAAa,mBAAmB,WAAW,GAAG;AACrE,2BAAqB;AAAA,IACzB;AACA,UAAM;AAAA,MACF,SAAS,EAAE,QAAQ,UAAU,sBAAsB;AAAA,MACnD;AAAA,IACJ,IAAI,0BAA0B,OAAO,eAAe;AACpD,WAAO;AAAA,MACH;AAAA,MACA,WAAW,KAAK,EAAE,QAAQ,UAAU,sBAAsB,CAAC;AAAA,IAC/D;AACA,QAAI,0BAA0B,QAAW;AACrC,2BAAqB,mBAAmB,qBAAqB;AAAA,IACjE;AAEA,QAAI,CAAC,MAAM,SAAS,wBAAwB,KAAK,SAAS,SAAS,GAAG;AAClE,YAAM,IAAI,eAAe,mDAAmD;AAAA,IAChF;AAEA,QAAI,KAAK,cAAc,QAAW;AAC9B,YAAM,IAAI,gBAAgB,wCAAwC;AAAA,IACtE;AAEA,UAAM,WAAW,mBAAmB,OAAO,KAAK,SAAS;AACzD,UAAM,UAAU,0BAA0B,OAAO,eAAe;AAChE,UAAM,UACF,uBAAuB,SAAY,2BAA2B,OAAO,kBAAkB,IAAI;AAC/F,QAAI,YAAY,QAAW;AACvB,YAAM,mBAAmB,gCAAgC,UAAU,OAAO;AAAA,IAC9E;AACA,UAAM,mBAAmB,iCAAiC,SAAS,UAAU,OAAO;AAEpF,SAAK,mBAAmB;AACxB,SAAK,sBAAsB;AAC3B,SAAK,YAAY,SAAS,QAAQ;AAClC,SAAK,UAAU;AAEf,WAAO;AAAA,EACX;AAAA,EAEA,gBAAgB,cAAwB;AACpC,SAAK,gBAAgB;AACrB,WAAO;AAAA,EACX;AAAA,EAEA,cAAc,YAAoB;AAC9B,SAAK,cAAc;AACnB,WAAO;AAAA,EACX;AAAA,EAEA,yBAAyB,KAAiB;AACtC,SAAK,yBAAyB;AAC9B,WAAO;AAAA,EACX;AAAA,EAEA,SAAS,OAAe;AACpB,QAAI,MAAM,WAAW,KAAK,MAAM,SAAS,IAAI;AACzC,YAAM,IAAI,oBAAoB,wDAAwD;AAAA,IAC1F;AACA,SAAK,SAAS;AACd,WAAO;AAAA,EACX;AAAA,EAEA,8BAA8B,QAAgB;AAC1C,SAAK,gBAAgB,OAAO;AAC5B,SAAK,cAAc,OAAO;AAC1B,SAAK,yBAAyB,OAAO;AACrC,SAAK,YAAY,OAAO;AACxB,SAAK,iBAAiB,OAAO;AAC7B,SAAK,SAAS,OAAO;AAAA,EACzB;AAAA,EAEA,gBAAgB,QAAgB;AAC5B,QAAI,KAAK,cAAc,UAAa,KAAK,mBAAmB,QAAW;AACnE,YAAM,IAAI,gBAAgB,8CAA8C;AAAA,IAC5E;AACA,WAAO,OAAO,gCAAgC,KAAK,WAAW,KAAK,cAAc;AAAA,EACrF;AAAA,EAEA,IAAI,SAAS;AACT,WAAO,KAAK;AAAA,EAChB;AAAA,EAEA,IAAI,WAAW;AACX,WAAO,KAAK;AAAA,EAChB;AAAA,EAEA,IAAI,UAAU;AACV,WAAO,KAAK;AAAA,EAChB;AAAA,EAEA,MAAM,MAAM,aAA0B;AAClC,QAAI,KAAK,iBAAiB,OAAW,OAAM,IAAI,cAAc,sCAAsC;AACnG,QAAI,KAAK,gBAAgB,OAAW,OAAM,IAAI,cAAc,4BAA4B;AACxF,QAAI,KAAK,kBAAkB,OAAW,OAAM,IAAI,cAAc,0BAA0B;AACxF,QAAI,KAAK,cAAc,UAAa,KAAK,mBAAmB;AACxD,YAAM,IAAI,cAAc,0BAA0B;AACtD,QAAI,KAAK,2BAA2B,OAAW,OAAM,IAAI,cAAc,uCAAuC;AAC9G,QAAI,KAAK,qBAAqB,UAAa,KAAK,cAAc,UAAa,KAAK,YAAY;AACxF,YAAM,IAAI,cAAc,iCAAiC;AAE7D,SAAK,eAAe;AACpB,UAAM,aAAa,IAAI,WAAW;AAClC,eAAW,YAAY,KAAK,SAAS;AACrC,UAAM,gBAAgB,MAAM,OAAO;AAAA,MAC/B,KAAK,eAAe,MAAM,CAAC;AAAA,MAC3B,WAAW,YAAY;AAAA,MACvB;AAAA,MACA;AAAA,IACJ;AAEA,WAAO,IAAI,OAAO;AAAA,MACd,aAAa,KAAK;AAAA,MAClB,UAAU,KAAK;AAAA,MACf,QAAQ,KAAK;AAAA,MACb,YAAY,KAAK;AAAA,MACjB;AAAA,MACA,eAAe,KAAK;AAAA,MACpB,SAAS,KAAK;AAAA,MACd,cAAc,KAAK;AAAA,MACnB,UAAU,KAAK;AAAA,MACf,uBAAuB,KAAK;AAAA;AAAA,MAC5B,kCAAkC,MAAM,OAAO;AAAA,QAC3C,KAAK;AAAA,QACL;AAAA,QACA;AAAA,MACJ;AAAA,MACA,oBAAoB,KAAK;AAAA,MACzB,iBAAiB,KAAK;AAAA,MACtB,OAAO,KAAK;AAAA,IAChB,CAAC;AAAA,EACL;AACJ;",
4
+ "mappings": "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",
5
5
  "names": []
6
6
  }
@@ -39,7 +39,7 @@ export declare const DEFAULT_FABRIC_ID: FabricId;
39
39
  */
40
40
  export declare class FabricAuthority {
41
41
  #private;
42
- constructor(context: FabricAuthorityContext);
42
+ constructor({ ca, fabrics, config }: FabricAuthorityContext);
43
43
  /**
44
44
  * Access the certificate authority.
45
45
  */
@@ -1 +1 @@
1
- {"version":3,"file":"FabricAuthority.d.ts","sourceRoot":"","sources":["../../../src/fabric/FabricAuthority.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,oBAAoB,EAAE,MAAM,sCAAsC,CAAC;AAC5E,OAAO,EAIH,WAAW,EACX,aAAa,EAGhB,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,oBAAoB,EAAE,QAAQ,EAAE,WAAW,EAAU,QAAQ,EAAE,MAAM,QAAQ,CAAC;AACvF,OAAO,EAAE,MAAM,EAAiB,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAInD;;GAEG;AACH,UAAU,4BAA4B;IAClC,aAAa,CAAC,EAAE,QAAQ,CAAC;IACzB,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,qBAAqB,CAAC,EAAE,oBAAoB,EAAE,CAAC;IAC/C,gBAAgB,EAAE,MAAM,CAAC;CAC5B;AAED;;GAEG;AACH,qBAAa,oCAAqC,YAAW,4BAA4B;IACrF,IAAI,gBAAgB,IAAI,MAAM,CAE7B;CACJ;AAED;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACnC,EAAE,EAAE,oBAAoB,CAAC;IACzB,OAAO,EAAE,aAAa,CAAC;IACvB,MAAM,EAAE,4BAA4B,CAAC;CACxC;AAED,eAAO,MAAM,uBAAuB,UAAmB,CAAC;AACxD,eAAO,MAAM,iBAAiB,UAAc,CAAC;AAE7C;;GAEG;AACH,qBAAa,eAAe;;gBAKZ,OAAO,EAAE,sBAAsB;IAM3C;;OAEG;IACH,IAAI,EAAE,yBAEL;IAED;;OAEG;IACG,aAAa;IAcnB;;OAEG;IACH,IAAI,OAAO,aAEV;IAED;;OAEG;IACH,YAAY,CAAC,MAAM,EAAE,MAAM;IAI3B;;OAEG;IACG,YAAY;IA0ClB,MAAM,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,WAAW;CASjD"}
1
+ {"version":3,"file":"FabricAuthority.d.ts","sourceRoot":"","sources":["../../../src/fabric/FabricAuthority.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,oBAAoB,EAAE,MAAM,sCAAsC,CAAC;AAC5E,OAAO,EAAsC,WAAW,EAAE,aAAa,EAA+B,MAAM,UAAU,CAAC;AACvH,OAAO,EAAE,oBAAoB,EAAE,QAAQ,EAAE,WAAW,EAAU,QAAQ,EAAE,MAAM,QAAQ,CAAC;AACvF,OAAO,EAAE,MAAM,EAAiB,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAInD;;GAEG;AACH,UAAU,4BAA4B;IAClC,aAAa,CAAC,EAAE,QAAQ,CAAC;IACzB,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,qBAAqB,CAAC,EAAE,oBAAoB,EAAE,CAAC;IAC/C,gBAAgB,EAAE,MAAM,CAAC;CAC5B;AAED;;GAEG;AACH,qBAAa,oCAAqC,YAAW,4BAA4B;IACrF,IAAI,gBAAgB,IAAI,MAAM,CAE7B;CACJ;AAED;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACnC,EAAE,EAAE,oBAAoB,CAAC;IACzB,OAAO,EAAE,aAAa,CAAC;IACvB,MAAM,EAAE,4BAA4B,CAAC;CACxC;AAED,eAAO,MAAM,uBAAuB,UAAmB,CAAC;AACxD,eAAO,MAAM,iBAAiB,UAAc,CAAC;AAE7C;;GAEG;AACH,qBAAa,eAAe;;gBAKZ,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,sBAAsB;IAM3D;;OAEG;IACH,IAAI,EAAE,yBAEL;IAED;;OAEG;IACG,aAAa;IAcnB;;OAEG;IACH,IAAI,OAAO,aAEV;IAED;;OAEG;IACH,YAAY,CAAC,MAAM,EAAE,MAAM;IAI3B;;OAEG;IACG,YAAY;IA0ClB,MAAM,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,WAAW;CASjD"}
@@ -4,14 +4,7 @@
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
6
  import { CertificateAuthority } from "#certificate/CertificateAuthority.js";
7
- import {
8
- Bytes,
9
- Crypto,
10
- CRYPTO_SYMMETRIC_KEY_LENGTH,
11
- Environmental,
12
- ImplementationError,
13
- Logger
14
- } from "#general";
7
+ import { Bytes, CRYPTO_SYMMETRIC_KEY_LENGTH, Environmental, ImplementationError, Logger } from "#general";
15
8
  import { FabricId, NodeId, VendorId } from "#types";
16
9
  import { FabricBuilder } from "./Fabric.js";
17
10
  import { FabricManager } from "./FabricManager.js";
@@ -27,10 +20,10 @@ class FabricAuthority {
27
20
  #ca;
28
21
  #fabrics;
29
22
  #config;
30
- constructor(context) {
31
- this.#ca = context.ca;
32
- this.#fabrics = context.fabrics;
33
- this.#config = context.config;
23
+ constructor({ ca, fabrics, config }) {
24
+ this.#ca = ca;
25
+ this.#fabrics = fabrics;
26
+ this.#config = config;
34
27
  }
35
28
  /**
36
29
  * Access the certificate authority.
@@ -67,14 +60,14 @@ class FabricAuthority {
67
60
  * Create a new fabric under our control.
68
61
  */
69
62
  async createFabric() {
70
- const rootNodeId = NodeId.randomOperationalNodeId();
71
- const ipkValue = Crypto.getRandomData(CRYPTO_SYMMETRIC_KEY_LENGTH);
63
+ const rootNodeId = NodeId.randomOperationalNodeId(this.#fabrics.crypto);
64
+ const ipkValue = this.#fabrics.crypto.randomBytes(CRYPTO_SYMMETRIC_KEY_LENGTH);
72
65
  let vendorId = this.#config.adminVendorId;
73
66
  if (vendorId === void 0) {
74
67
  vendorId = DEFAULT_ADMIN_VENDOR_ID;
75
68
  logger.warn(`Using test vendor ID 0x${vendorId.toString(16)} for controller fabric`);
76
69
  }
77
- const fabricBuilder = await FabricBuilder.create();
70
+ const fabricBuilder = await FabricBuilder.create(this.#fabrics.crypto);
78
71
  await fabricBuilder.setRootCert(this.#ca.rootCert);
79
72
  fabricBuilder.setRootNodeId(rootNodeId).setIdentityProtectionKey(ipkValue).setRootVendorId(this.#config.adminVendorId ?? DEFAULT_ADMIN_VENDOR_ID).setLabel(this.#config.adminFabricLabel);
80
73
  await fabricBuilder.setOperationalCert(
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/fabric/FabricAuthority.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": []
6
6
  }