@matter/protocol 0.17.0-alpha.0-20260507-059f7763b → 0.17.0-alpha.0-20260508-96d5c3a88

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 (186) hide show
  1. package/dist/cjs/action/client/ClientInteraction.d.ts.map +1 -1
  2. package/dist/cjs/action/client/ClientInteraction.js +1 -1
  3. package/dist/cjs/action/client/ClientInteraction.js.map +1 -1
  4. package/dist/cjs/certificate/DeviceAttestationValidator.d.ts +89 -0
  5. package/dist/cjs/certificate/DeviceAttestationValidator.d.ts.map +1 -0
  6. package/dist/cjs/certificate/DeviceAttestationValidator.js +339 -0
  7. package/dist/cjs/certificate/DeviceAttestationValidator.js.map +6 -0
  8. package/dist/cjs/certificate/DeviceCertification.d.ts.map +1 -1
  9. package/dist/cjs/certificate/DeviceCertification.js +27 -1
  10. package/dist/cjs/certificate/DeviceCertification.js.map +1 -1
  11. package/dist/cjs/certificate/index.d.ts +1 -0
  12. package/dist/cjs/certificate/index.d.ts.map +1 -1
  13. package/dist/cjs/certificate/index.js +1 -0
  14. package/dist/cjs/certificate/index.js.map +1 -1
  15. package/dist/cjs/certificate/kinds/AttestationCertificates.d.ts +4 -0
  16. package/dist/cjs/certificate/kinds/AttestationCertificates.d.ts.map +1 -1
  17. package/dist/cjs/certificate/kinds/AttestationCertificates.js +10 -0
  18. package/dist/cjs/certificate/kinds/AttestationCertificates.js.map +1 -1
  19. package/dist/cjs/certificate/kinds/Certificate.d.ts.map +1 -1
  20. package/dist/cjs/certificate/kinds/Certificate.js +7 -0
  21. package/dist/cjs/certificate/kinds/Certificate.js.map +1 -1
  22. package/dist/cjs/certificate/kinds/CertificationDeclaration.d.ts +35 -1
  23. package/dist/cjs/certificate/kinds/CertificationDeclaration.d.ts.map +1 -1
  24. package/dist/cjs/certificate/kinds/CertificationDeclaration.js +79 -2
  25. package/dist/cjs/certificate/kinds/CertificationDeclaration.js.map +2 -2
  26. package/dist/cjs/certificate/kinds/definitions/base.d.ts +4 -0
  27. package/dist/cjs/certificate/kinds/definitions/base.d.ts.map +1 -1
  28. package/dist/cjs/certificate/kinds/definitions/certification-declaration.d.ts +9 -0
  29. package/dist/cjs/certificate/kinds/definitions/certification-declaration.d.ts.map +1 -1
  30. package/dist/cjs/certificate/kinds/definitions/certification-declaration.js +8 -1
  31. package/dist/cjs/certificate/kinds/definitions/certification-declaration.js.map +2 -2
  32. package/dist/cjs/common/Scanner.d.ts +3 -2
  33. package/dist/cjs/common/Scanner.d.ts.map +1 -1
  34. package/dist/cjs/common/Scanner.js +9 -2
  35. package/dist/cjs/common/Scanner.js.map +1 -1
  36. package/dist/cjs/dcl/DclCertificateService.d.ts +76 -2
  37. package/dist/cjs/dcl/DclCertificateService.d.ts.map +1 -1
  38. package/dist/cjs/dcl/DclCertificateService.js +508 -11
  39. package/dist/cjs/dcl/DclCertificateService.js.map +1 -1
  40. package/dist/cjs/dcl/DclClient.d.ts +19 -1
  41. package/dist/cjs/dcl/DclClient.d.ts.map +1 -1
  42. package/dist/cjs/dcl/DclClient.js +60 -0
  43. package/dist/cjs/dcl/DclClient.js.map +1 -1
  44. package/dist/cjs/dcl/DclConfig.d.ts +3 -0
  45. package/dist/cjs/dcl/DclConfig.d.ts.map +1 -1
  46. package/dist/cjs/dcl/DclConfig.js +2 -1
  47. package/dist/cjs/dcl/DclConfig.js.map +1 -1
  48. package/dist/cjs/dcl/DclRestApiTypes.d.ts +37 -0
  49. package/dist/cjs/dcl/DclRestApiTypes.d.ts.map +1 -1
  50. package/dist/cjs/mdns/CommissionableMdnsScanner.js +1 -1
  51. package/dist/cjs/mdns/CommissionableMdnsScanner.js.map +1 -1
  52. package/dist/cjs/peer/ControllerCommissioner.d.ts +3 -0
  53. package/dist/cjs/peer/ControllerCommissioner.d.ts.map +1 -1
  54. package/dist/cjs/peer/ControllerCommissioner.js +9 -1
  55. package/dist/cjs/peer/ControllerCommissioner.js.map +1 -1
  56. package/dist/cjs/peer/ControllerCommissioningFlow.d.ts +31 -0
  57. package/dist/cjs/peer/ControllerCommissioningFlow.d.ts.map +1 -1
  58. package/dist/cjs/peer/ControllerCommissioningFlow.js +84 -3
  59. package/dist/cjs/peer/ControllerCommissioningFlow.js.map +1 -1
  60. package/dist/cjs/peer/Peer.d.ts +23 -4
  61. package/dist/cjs/peer/Peer.d.ts.map +1 -1
  62. package/dist/cjs/peer/Peer.js +44 -9
  63. package/dist/cjs/peer/Peer.js.map +1 -1
  64. package/dist/cjs/peer/PeerConnection.d.ts +4 -6
  65. package/dist/cjs/peer/PeerConnection.d.ts.map +1 -1
  66. package/dist/cjs/peer/PeerConnection.js +55 -32
  67. package/dist/cjs/peer/PeerConnection.js.map +1 -1
  68. package/dist/cjs/peer/PeerDescriptor.d.ts +14 -4
  69. package/dist/cjs/peer/PeerDescriptor.d.ts.map +1 -1
  70. package/dist/cjs/peer/PeerDescriptor.js +16 -1
  71. package/dist/cjs/peer/PeerDescriptor.js.map +2 -2
  72. package/dist/cjs/peer/PeerExchangeProvider.d.ts.map +1 -1
  73. package/dist/cjs/peer/PeerExchangeProvider.js +14 -7
  74. package/dist/cjs/peer/PeerExchangeProvider.js.map +1 -1
  75. package/dist/cjs/peer/PeerSet.d.ts +7 -1
  76. package/dist/cjs/peer/PeerSet.d.ts.map +1 -1
  77. package/dist/cjs/peer/PeerSet.js +19 -1
  78. package/dist/cjs/peer/PeerSet.js.map +1 -1
  79. package/dist/cjs/protocol/ExchangeProvider.d.ts +6 -0
  80. package/dist/cjs/protocol/ExchangeProvider.d.ts.map +1 -1
  81. package/dist/cjs/protocol/ExchangeProvider.js.map +1 -1
  82. package/dist/esm/action/client/ClientInteraction.d.ts.map +1 -1
  83. package/dist/esm/action/client/ClientInteraction.js +1 -1
  84. package/dist/esm/action/client/ClientInteraction.js.map +1 -1
  85. package/dist/esm/certificate/DeviceAttestationValidator.d.ts +89 -0
  86. package/dist/esm/certificate/DeviceAttestationValidator.d.ts.map +1 -0
  87. package/dist/esm/certificate/DeviceAttestationValidator.js +319 -0
  88. package/dist/esm/certificate/DeviceAttestationValidator.js.map +6 -0
  89. package/dist/esm/certificate/DeviceCertification.d.ts.map +1 -1
  90. package/dist/esm/certificate/DeviceCertification.js +27 -1
  91. package/dist/esm/certificate/DeviceCertification.js.map +1 -1
  92. package/dist/esm/certificate/index.d.ts +1 -0
  93. package/dist/esm/certificate/index.d.ts.map +1 -1
  94. package/dist/esm/certificate/index.js +1 -0
  95. package/dist/esm/certificate/index.js.map +1 -1
  96. package/dist/esm/certificate/kinds/AttestationCertificates.d.ts +4 -0
  97. package/dist/esm/certificate/kinds/AttestationCertificates.d.ts.map +1 -1
  98. package/dist/esm/certificate/kinds/AttestationCertificates.js +10 -0
  99. package/dist/esm/certificate/kinds/AttestationCertificates.js.map +1 -1
  100. package/dist/esm/certificate/kinds/Certificate.d.ts.map +1 -1
  101. package/dist/esm/certificate/kinds/Certificate.js +7 -0
  102. package/dist/esm/certificate/kinds/Certificate.js.map +1 -1
  103. package/dist/esm/certificate/kinds/CertificationDeclaration.d.ts +35 -1
  104. package/dist/esm/certificate/kinds/CertificationDeclaration.d.ts.map +1 -1
  105. package/dist/esm/certificate/kinds/CertificationDeclaration.js +94 -4
  106. package/dist/esm/certificate/kinds/CertificationDeclaration.js.map +2 -2
  107. package/dist/esm/certificate/kinds/definitions/base.d.ts +4 -0
  108. package/dist/esm/certificate/kinds/definitions/base.d.ts.map +1 -1
  109. package/dist/esm/certificate/kinds/definitions/certification-declaration.d.ts +9 -0
  110. package/dist/esm/certificate/kinds/definitions/certification-declaration.d.ts.map +1 -1
  111. package/dist/esm/certificate/kinds/definitions/certification-declaration.js +8 -1
  112. package/dist/esm/certificate/kinds/definitions/certification-declaration.js.map +2 -2
  113. package/dist/esm/common/Scanner.d.ts +3 -2
  114. package/dist/esm/common/Scanner.d.ts.map +1 -1
  115. package/dist/esm/common/Scanner.js +9 -2
  116. package/dist/esm/common/Scanner.js.map +1 -1
  117. package/dist/esm/dcl/DclCertificateService.d.ts +76 -2
  118. package/dist/esm/dcl/DclCertificateService.d.ts.map +1 -1
  119. package/dist/esm/dcl/DclCertificateService.js +520 -14
  120. package/dist/esm/dcl/DclCertificateService.js.map +1 -1
  121. package/dist/esm/dcl/DclClient.d.ts +19 -1
  122. package/dist/esm/dcl/DclClient.d.ts.map +1 -1
  123. package/dist/esm/dcl/DclClient.js +60 -0
  124. package/dist/esm/dcl/DclClient.js.map +1 -1
  125. package/dist/esm/dcl/DclConfig.d.ts +3 -0
  126. package/dist/esm/dcl/DclConfig.d.ts.map +1 -1
  127. package/dist/esm/dcl/DclConfig.js +2 -1
  128. package/dist/esm/dcl/DclConfig.js.map +1 -1
  129. package/dist/esm/dcl/DclRestApiTypes.d.ts +37 -0
  130. package/dist/esm/dcl/DclRestApiTypes.d.ts.map +1 -1
  131. package/dist/esm/mdns/CommissionableMdnsScanner.js +1 -1
  132. package/dist/esm/mdns/CommissionableMdnsScanner.js.map +1 -1
  133. package/dist/esm/peer/ControllerCommissioner.d.ts +3 -0
  134. package/dist/esm/peer/ControllerCommissioner.d.ts.map +1 -1
  135. package/dist/esm/peer/ControllerCommissioner.js +9 -1
  136. package/dist/esm/peer/ControllerCommissioner.js.map +1 -1
  137. package/dist/esm/peer/ControllerCommissioningFlow.d.ts +31 -0
  138. package/dist/esm/peer/ControllerCommissioningFlow.d.ts.map +1 -1
  139. package/dist/esm/peer/ControllerCommissioningFlow.js +89 -3
  140. package/dist/esm/peer/ControllerCommissioningFlow.js.map +1 -1
  141. package/dist/esm/peer/Peer.d.ts +23 -4
  142. package/dist/esm/peer/Peer.d.ts.map +1 -1
  143. package/dist/esm/peer/Peer.js +44 -9
  144. package/dist/esm/peer/Peer.js.map +1 -1
  145. package/dist/esm/peer/PeerConnection.d.ts +4 -6
  146. package/dist/esm/peer/PeerConnection.d.ts.map +1 -1
  147. package/dist/esm/peer/PeerConnection.js +55 -32
  148. package/dist/esm/peer/PeerConnection.js.map +1 -1
  149. package/dist/esm/peer/PeerDescriptor.d.ts +14 -4
  150. package/dist/esm/peer/PeerDescriptor.d.ts.map +1 -1
  151. package/dist/esm/peer/PeerDescriptor.js +17 -2
  152. package/dist/esm/peer/PeerDescriptor.js.map +2 -2
  153. package/dist/esm/peer/PeerExchangeProvider.d.ts.map +1 -1
  154. package/dist/esm/peer/PeerExchangeProvider.js +14 -7
  155. package/dist/esm/peer/PeerExchangeProvider.js.map +1 -1
  156. package/dist/esm/peer/PeerSet.d.ts +7 -1
  157. package/dist/esm/peer/PeerSet.d.ts.map +1 -1
  158. package/dist/esm/peer/PeerSet.js +19 -1
  159. package/dist/esm/peer/PeerSet.js.map +1 -1
  160. package/dist/esm/protocol/ExchangeProvider.d.ts +6 -0
  161. package/dist/esm/protocol/ExchangeProvider.d.ts.map +1 -1
  162. package/dist/esm/protocol/ExchangeProvider.js.map +1 -1
  163. package/package.json +5 -5
  164. package/src/action/client/ClientInteraction.ts +3 -2
  165. package/src/certificate/DeviceAttestationValidator.ts +446 -0
  166. package/src/certificate/DeviceCertification.ts +35 -4
  167. package/src/certificate/index.ts +1 -0
  168. package/src/certificate/kinds/AttestationCertificates.ts +14 -2
  169. package/src/certificate/kinds/Certificate.ts +8 -2
  170. package/src/certificate/kinds/CertificationDeclaration.ts +151 -3
  171. package/src/certificate/kinds/definitions/base.ts +4 -0
  172. package/src/certificate/kinds/definitions/certification-declaration.ts +10 -0
  173. package/src/common/Scanner.ts +12 -4
  174. package/src/dcl/DclCertificateService.ts +711 -11
  175. package/src/dcl/DclClient.ts +78 -0
  176. package/src/dcl/DclConfig.ts +4 -0
  177. package/src/dcl/DclRestApiTypes.ts +40 -0
  178. package/src/mdns/CommissionableMdnsScanner.ts +2 -2
  179. package/src/peer/ControllerCommissioner.ts +15 -1
  180. package/src/peer/ControllerCommissioningFlow.ts +136 -15
  181. package/src/peer/Peer.ts +60 -12
  182. package/src/peer/PeerConnection.ts +81 -53
  183. package/src/peer/PeerDescriptor.ts +25 -4
  184. package/src/peer/PeerExchangeProvider.ts +14 -12
  185. package/src/peer/PeerSet.ts +24 -3
  186. package/src/protocol/ExchangeProvider.ts +7 -0
@@ -1 +1 @@
1
- {"version":3,"file":"ClientInteraction.d.ts","sourceRoot":"","sources":["../../../../src/action/client/ClientInteraction.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ClientInteraction.d.ts","sourceRoot":"","sources":["../../../../src/action/client/ClientInteraction.ts"],"names":[],"mappings":"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"}
@@ -646,7 +646,7 @@ class ClientInteraction {
646
646
  logger.debug(`Executing ${invokeRequests.length} command(s)${isSingleCommand ? "" : " (batched)"}`);
647
647
  const batchNetwork = commandList.find((c) => c.network !== void 0)?.network;
648
648
  const batchRequest = {
649
- ...(0, import_Invoke.Invoke)({ commands: invokeRequests, skipValidation: true }),
649
+ ...(0, import_Invoke.Invoke)({ commands: invokeRequests, skipValidation: true, timed: false }),
650
650
  network: batchNetwork
651
651
  };
652
652
  const maxPathsPerInvoke = this.#exchangeProvider.maxPathsPerInvoke ?? 1;
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/action/client/ClientInteraction.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": ["subscription", "request"]
6
6
  }
@@ -0,0 +1,89 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2022-2026 Matter.js Authors
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import { Bytes, Crypto, MaybePromise, PublicKey } from "@matter/general";
7
+ import { VendorId } from "@matter/types";
8
+ import { DclCertificateService } from "../dcl/DclCertificateService.js";
9
+ import { CommissioningError } from "../peer/CommissioningError.js";
10
+ /** Reasons a device attestation validation can fail or produce warnings. */
11
+ export declare enum DeviceAttestationCheck {
12
+ PaaNotTrusted = "PaaNotTrusted",
13
+ CertificateChainInvalid = "CertificateChainInvalid",
14
+ CertificateExpired = "CertificateExpired",
15
+ VendorIdMismatch = "VendorIdMismatch",
16
+ AttestationSignatureInvalid = "AttestationSignatureInvalid",
17
+ AttestationNonceMismatch = "AttestationNonceMismatch",
18
+ CertificationDeclarationSignatureInvalid = "CertificationDeclarationSignatureInvalid",
19
+ CertificationDeclarationFieldMismatch = "CertificationDeclarationFieldMismatch",
20
+ CertificateRevoked = "CertificateRevoked",
21
+ FirmwareInfoMismatch = "FirmwareInfoMismatch",
22
+ CertificationTypeProvisional = "CertificationTypeProvisional",
23
+ CertificationTypeTest = "CertificationTypeTest",
24
+ CertificateIdNotVerified = "CertificateIdNotVerified",
25
+ CdSignerVerificationSkipped = "CdSignerVerificationSkipped",
26
+ PaaTrustStoreTimeMismatch = "PaaTrustStoreTimeMismatch",
27
+ DclServiceUnavailable = "DclServiceUnavailable"
28
+ }
29
+ /** A single finding from the attestation validation process. */
30
+ export interface AttestationFinding {
31
+ /** Severity: "error" stops validation immediately, "warning"/"info" are collected. */
32
+ level: "error" | "warning" | "info";
33
+ /** The specific check that produced this finding. */
34
+ type: DeviceAttestationCheck;
35
+ /** Human-readable description. */
36
+ message: string;
37
+ }
38
+ /** Error thrown when device attestation validation encounters a hard failure. */
39
+ export declare class DeviceAttestationError extends CommissioningError {
40
+ readonly failure: DeviceAttestationCheck;
41
+ constructor(failure: DeviceAttestationCheck, message: string);
42
+ }
43
+ export declare namespace DeviceAttestationValidator {
44
+ interface Context {
45
+ crypto: Crypto;
46
+ attestationChallenge: Bytes;
47
+ /**
48
+ * DclCertificateService for PAA trust store, chain validation, revocation checks, and
49
+ * CD signer lookup. When absent, DCL-dependent checks are skipped (PAA lookup, chain
50
+ * verification, revocation, CD signature) but local checks still run (nonce, signature,
51
+ * VendorID, CD fields).
52
+ */
53
+ dclCertificateService?: DclCertificateService;
54
+ }
55
+ interface DeviceAttestationData {
56
+ dac: Bytes;
57
+ pai: Bytes;
58
+ attestationElements: Bytes;
59
+ attestationSignature: Bytes;
60
+ attestationNonce: Bytes;
61
+ vendorId: VendorId;
62
+ productId: number;
63
+ }
64
+ /** Result of a successful validation, including any non-fatal findings. */
65
+ interface ValidationResult {
66
+ dacPublicKey: ReturnType<typeof PublicKey>;
67
+ findings: AttestationFinding[];
68
+ }
69
+ /**
70
+ * Controls behavior when attestation findings occur.
71
+ * - `true`: always proceed (warnings/info are logged)
72
+ * - `false`: reject on any finding (error, warning, or info)
73
+ * - `undefined`: backward-compatible accept with logging
74
+ * - function: receives all findings, returns whether to proceed
75
+ */
76
+ type OnAttestationFailure = boolean | ((findings: AttestationFinding[]) => MaybePromise<boolean>);
77
+ /**
78
+ * Validates device attestation per Matter spec Section 6.2.3.1.
79
+ *
80
+ * Local checks (nonce, signature, VendorID, CD fields) always run. DCL-dependent checks
81
+ * (PAA trust store, chain verification, revocation) only run when dclCertificateService
82
+ * is provided.
83
+ *
84
+ * Errors (hard failures) throw immediately via {@link DeviceAttestationError}.
85
+ * Warnings and info findings are collected and returned for the caller to evaluate.
86
+ */
87
+ function validate(context: Context, data: DeviceAttestationData): Promise<ValidationResult>;
88
+ }
89
+ //# sourceMappingURL=DeviceAttestationValidator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DeviceAttestationValidator.d.ts","sourceRoot":"","sources":["../../../src/certificate/DeviceAttestationValidator.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,KAAK,EAAE,MAAM,EAAkB,YAAY,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACzF,OAAO,EAAyB,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEhE,OAAO,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AACxE,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAKnE,4EAA4E;AAC5E,oBAAY,sBAAsB;IAC9B,aAAa,kBAAkB;IAC/B,uBAAuB,4BAA4B;IACnD,kBAAkB,uBAAuB;IACzC,gBAAgB,qBAAqB;IACrC,2BAA2B,gCAAgC;IAC3D,wBAAwB,6BAA6B;IACrD,wCAAwC,6CAA6C;IACrF,qCAAqC,0CAA0C;IAC/E,kBAAkB,uBAAuB;IACzC,oBAAoB,yBAAyB;IAC7C,4BAA4B,iCAAiC;IAC7D,qBAAqB,0BAA0B;IAC/C,wBAAwB,6BAA6B;IACrD,2BAA2B,gCAAgC;IAC3D,yBAAyB,8BAA8B;IACvD,qBAAqB,0BAA0B;CAClD;AAED,gEAAgE;AAChE,MAAM,WAAW,kBAAkB;IAC/B,sFAAsF;IACtF,KAAK,EAAE,OAAO,GAAG,SAAS,GAAG,MAAM,CAAC;IAEpC,qDAAqD;IACrD,IAAI,EAAE,sBAAsB,CAAC;IAE7B,kCAAkC;IAClC,OAAO,EAAE,MAAM,CAAC;CACnB;AAED,iFAAiF;AACjF,qBAAa,sBAAuB,SAAQ,kBAAkB;IAEtD,QAAQ,CAAC,OAAO,EAAE,sBAAsB;IAD5C,YACa,OAAO,EAAE,sBAAsB,EACxC,OAAO,EAAE,MAAM,EAGlB;CACJ;AAED,yBAAiB,0BAA0B,CAAC,CAAC;IACzC,UAAiB,OAAO;QACpB,MAAM,EAAE,MAAM,CAAC;QACf,oBAAoB,EAAE,KAAK,CAAC;QAE5B;;;;;WAKG;QACH,qBAAqB,CAAC,EAAE,qBAAqB,CAAC;KACjD;IAED,UAAiB,qBAAqB;QAClC,GAAG,EAAE,KAAK,CAAC;QACX,GAAG,EAAE,KAAK,CAAC;QACX,mBAAmB,EAAE,KAAK,CAAC;QAC3B,oBAAoB,EAAE,KAAK,CAAC;QAC5B,gBAAgB,EAAE,KAAK,CAAC;QACxB,QAAQ,EAAE,QAAQ,CAAC;QACnB,SAAS,EAAE,MAAM,CAAC;KACrB;IAED,2EAA2E;IAC3E,UAAiB,gBAAgB;QAC7B,YAAY,EAAE,UAAU,CAAC,OAAO,SAAS,CAAC,CAAC;QAC3C,QAAQ,EAAE,kBAAkB,EAAE,CAAC;KAClC;IAED;;;;;;OAMG;IACH,KAAY,oBAAoB,GAAG,OAAO,GAAG,CAAC,CAAC,QAAQ,EAAE,kBAAkB,EAAE,KAAK,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC;IAEzG;;;;;;;;;OASG;IACH,SAAsB,QAAQ,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,qBAAqB,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAkVvG;CACJ"}
@@ -0,0 +1,339 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var DeviceAttestationValidator_exports = {};
20
+ __export(DeviceAttestationValidator_exports, {
21
+ DeviceAttestationCheck: () => DeviceAttestationCheck,
22
+ DeviceAttestationError: () => DeviceAttestationError,
23
+ DeviceAttestationValidator: () => DeviceAttestationValidator
24
+ });
25
+ module.exports = __toCommonJS(DeviceAttestationValidator_exports);
26
+ var import_general = require("@matter/general");
27
+ var import_types = require("@matter/types");
28
+ var import_OperationalCredentialsTypes = require("../common/OperationalCredentialsTypes.js");
29
+ var import_CommissioningError = require("../peer/CommissioningError.js");
30
+ var import_AttestationCertificates = require("./kinds/AttestationCertificates.js");
31
+ var import_CertificationDeclaration = require("./kinds/CertificationDeclaration.js");
32
+ var import_certification_declaration = require("./kinds/definitions/certification-declaration.js");
33
+ /**
34
+ * @license
35
+ * Copyright 2022-2026 Matter.js Authors
36
+ * SPDX-License-Identifier: Apache-2.0
37
+ */
38
+ var DeviceAttestationCheck = /* @__PURE__ */ ((DeviceAttestationCheck2) => {
39
+ DeviceAttestationCheck2["PaaNotTrusted"] = "PaaNotTrusted";
40
+ DeviceAttestationCheck2["CertificateChainInvalid"] = "CertificateChainInvalid";
41
+ DeviceAttestationCheck2["CertificateExpired"] = "CertificateExpired";
42
+ DeviceAttestationCheck2["VendorIdMismatch"] = "VendorIdMismatch";
43
+ DeviceAttestationCheck2["AttestationSignatureInvalid"] = "AttestationSignatureInvalid";
44
+ DeviceAttestationCheck2["AttestationNonceMismatch"] = "AttestationNonceMismatch";
45
+ DeviceAttestationCheck2["CertificationDeclarationSignatureInvalid"] = "CertificationDeclarationSignatureInvalid";
46
+ DeviceAttestationCheck2["CertificationDeclarationFieldMismatch"] = "CertificationDeclarationFieldMismatch";
47
+ DeviceAttestationCheck2["CertificateRevoked"] = "CertificateRevoked";
48
+ DeviceAttestationCheck2["FirmwareInfoMismatch"] = "FirmwareInfoMismatch";
49
+ DeviceAttestationCheck2["CertificationTypeProvisional"] = "CertificationTypeProvisional";
50
+ DeviceAttestationCheck2["CertificationTypeTest"] = "CertificationTypeTest";
51
+ DeviceAttestationCheck2["CertificateIdNotVerified"] = "CertificateIdNotVerified";
52
+ DeviceAttestationCheck2["CdSignerVerificationSkipped"] = "CdSignerVerificationSkipped";
53
+ DeviceAttestationCheck2["PaaTrustStoreTimeMismatch"] = "PaaTrustStoreTimeMismatch";
54
+ DeviceAttestationCheck2["DclServiceUnavailable"] = "DclServiceUnavailable";
55
+ return DeviceAttestationCheck2;
56
+ })(DeviceAttestationCheck || {});
57
+ class DeviceAttestationError extends import_CommissioningError.CommissioningError {
58
+ constructor(failure, message) {
59
+ super(message);
60
+ this.failure = failure;
61
+ }
62
+ failure;
63
+ }
64
+ var DeviceAttestationValidator;
65
+ ((DeviceAttestationValidator2) => {
66
+ async function validate(context, data) {
67
+ const { crypto, dclCertificateService } = context;
68
+ const findings = new Array();
69
+ const dac = import_AttestationCertificates.Dac.fromAsn1(data.dac);
70
+ const pai = import_AttestationCertificates.Pai.fromAsn1(data.pai);
71
+ if (dac.cert.subject.vendorId !== pai.cert.subject.vendorId) {
72
+ throw new DeviceAttestationError(
73
+ "VendorIdMismatch" /* VendorIdMismatch */,
74
+ `DAC vendorId ${dac.cert.subject.vendorId} does not match PAI vendorId ${pai.cert.subject.vendorId}`
75
+ );
76
+ }
77
+ const attestationInfo = import_OperationalCredentialsTypes.TlvAttestation.decode(data.attestationElements);
78
+ if (!import_general.Bytes.areEqual(attestationInfo.attestationNonce, data.attestationNonce)) {
79
+ throw new DeviceAttestationError(
80
+ "AttestationNonceMismatch" /* AttestationNonceMismatch */,
81
+ "AttestationNonce in response does not match the nonce sent to the device"
82
+ );
83
+ }
84
+ const dacPublicKey = (0, import_general.PublicKey)(dac.cert.ellipticCurvePublicKey);
85
+ try {
86
+ await crypto.verifyEcdsa(
87
+ dacPublicKey,
88
+ import_general.Bytes.concat(data.attestationElements, context.attestationChallenge),
89
+ new import_general.EcdsaSignature(data.attestationSignature)
90
+ );
91
+ } catch {
92
+ throw new DeviceAttestationError(
93
+ "AttestationSignatureInvalid" /* AttestationSignatureInvalid */,
94
+ "Attestation signature verification failed against DAC public key"
95
+ );
96
+ }
97
+ let paa;
98
+ if (dclCertificateService === void 0) {
99
+ findings.push({
100
+ level: "warning",
101
+ type: "DclServiceUnavailable" /* DclServiceUnavailable */,
102
+ message: "DclCertificateService not available; skipping PAA trust store, chain, and revocation checks. Register DclCertificateService in the environment for full attestation."
103
+ });
104
+ } else {
105
+ const paiAkid = pai.cert.extensions.authorityKeyIdentifier;
106
+ const paaMetadata = dclCertificateService.getCertificate(paiAkid);
107
+ if (paaMetadata === void 0) {
108
+ throw new DeviceAttestationError(
109
+ "PaaNotTrusted" /* PaaNotTrusted */,
110
+ `PAA not found in trust store for authority key identifier ${import_general.Bytes.toHex(paiAkid)}`
111
+ );
112
+ }
113
+ if (paaMetadata.fetchedAt !== void 0) {
114
+ const dacNotBeforeUnixMs = (dac.cert.notBefore + import_types.MATTER_EPOCH_OFFSET_S) * 1e3;
115
+ if (paaMetadata.fetchedAt > dacNotBeforeUnixMs) {
116
+ findings.push({
117
+ level: "info",
118
+ type: "PaaTrustStoreTimeMismatch" /* PaaTrustStoreTimeMismatch */,
119
+ message: `PAA was fetched at ${new Date(paaMetadata.fetchedAt).toISOString()} which is after DAC notBefore ${new Date(dacNotBeforeUnixMs).toISOString()}; cannot confirm PAA was in DCL when DAC was issued`
120
+ });
121
+ }
122
+ }
123
+ const paaDer = await dclCertificateService.getCertificateAsDer(paiAkid);
124
+ paa = import_AttestationCertificates.Paa.fromAsn1(paaDer);
125
+ try {
126
+ await crypto.verifyEcdsa(
127
+ (0, import_general.PublicKey)(paa.cert.ellipticCurvePublicKey),
128
+ pai.asUnsignedDer(),
129
+ pai.signature
130
+ );
131
+ } catch (error) {
132
+ throw new DeviceAttestationError(
133
+ "CertificateChainInvalid" /* CertificateChainInvalid */,
134
+ `PAI signature verification failed: ${error}`
135
+ );
136
+ }
137
+ try {
138
+ await crypto.verifyEcdsa(
139
+ (0, import_general.PublicKey)(pai.cert.ellipticCurvePublicKey),
140
+ dac.asUnsignedDer(),
141
+ dac.signature
142
+ );
143
+ } catch (error) {
144
+ throw new DeviceAttestationError(
145
+ "CertificateChainInvalid" /* CertificateChainInvalid */,
146
+ `DAC signature verification failed: ${error}`
147
+ );
148
+ }
149
+ const dacNotBefore = dac.cert.notBefore;
150
+ if (dacNotBefore < pai.cert.notBefore) {
151
+ throw new DeviceAttestationError(
152
+ "CertificateExpired" /* CertificateExpired */,
153
+ `DAC notBefore (${dacNotBefore}) is before PAI notBefore (${pai.cert.notBefore})`
154
+ );
155
+ }
156
+ if (pai.cert.notAfter !== 0 && dacNotBefore > pai.cert.notAfter) {
157
+ throw new DeviceAttestationError(
158
+ "CertificateExpired" /* CertificateExpired */,
159
+ `DAC notBefore (${dacNotBefore}) is after PAI notAfter (${pai.cert.notAfter})`
160
+ );
161
+ }
162
+ if (dacNotBefore < paa.cert.notBefore) {
163
+ throw new DeviceAttestationError(
164
+ "CertificateExpired" /* CertificateExpired */,
165
+ `DAC notBefore (${dacNotBefore}) is before PAA notBefore (${paa.cert.notBefore})`
166
+ );
167
+ }
168
+ if (paa.cert.notAfter !== 0 && dacNotBefore > paa.cert.notAfter) {
169
+ throw new DeviceAttestationError(
170
+ "CertificateExpired" /* CertificateExpired */,
171
+ `DAC notBefore (${dacNotBefore}) is after PAA notAfter (${paa.cert.notAfter})`
172
+ );
173
+ }
174
+ const paaVendorId = paa.cert.subject.vendorId;
175
+ if (paaVendorId !== void 0 && paaVendorId !== pai.cert.subject.vendorId) {
176
+ throw new DeviceAttestationError(
177
+ "VendorIdMismatch" /* VendorIdMismatch */,
178
+ `PAA vendorId ${paaVendorId} does not match PAI vendorId ${pai.cert.subject.vendorId}`
179
+ );
180
+ }
181
+ const dacIssuerDnHex = dac.cert.issuerDer ? import_general.Bytes.toHex(dac.cert.issuerDer).toUpperCase() : void 0;
182
+ if (await dclCertificateService.isRevoked(
183
+ dac.cert.extensions.authorityKeyIdentifier,
184
+ dac.cert.serialNumber,
185
+ dacIssuerDnHex
186
+ )) {
187
+ throw new DeviceAttestationError(
188
+ "CertificateRevoked" /* CertificateRevoked */,
189
+ "Device Attestation Certificate has been revoked"
190
+ );
191
+ }
192
+ const paiIssuerDnHex = pai.cert.issuerDer ? import_general.Bytes.toHex(pai.cert.issuerDer).toUpperCase() : void 0;
193
+ if (await dclCertificateService.isRevoked(paiAkid, pai.cert.serialNumber, paiIssuerDnHex)) {
194
+ throw new DeviceAttestationError(
195
+ "CertificateRevoked" /* CertificateRevoked */,
196
+ "Product Attestation Intermediate certificate has been revoked"
197
+ );
198
+ }
199
+ }
200
+ const cd = import_CertificationDeclaration.CertificationDeclaration.parse(attestationInfo.declaration);
201
+ const cdSignerSkidHex = import_general.Bytes.toHex(cd.signerSubjectKeyId);
202
+ if (dclCertificateService !== void 0) {
203
+ const cdSigner = await dclCertificateService.getOrFetchCdSigner(cd.signerSubjectKeyId);
204
+ if (cdSigner !== void 0) {
205
+ try {
206
+ await crypto.verifyEcdsa((0, import_general.PublicKey)(cdSigner.publicKey), cd.signedData, cd.signature);
207
+ } catch {
208
+ throw new DeviceAttestationError(
209
+ "CertificationDeclarationSignatureInvalid" /* CertificationDeclarationSignatureInvalid */,
210
+ "Certification Declaration signature verification failed"
211
+ );
212
+ }
213
+ } else {
214
+ findings.push({
215
+ level: "warning",
216
+ type: "CdSignerVerificationSkipped" /* CdSignerVerificationSkipped */,
217
+ message: `CD signer SKID ${cdSignerSkidHex} not found in trust store or DCL; skipping CD signature verification`
218
+ });
219
+ }
220
+ } else {
221
+ findings.push({
222
+ level: "warning",
223
+ type: "CdSignerVerificationSkipped" /* CdSignerVerificationSkipped */,
224
+ message: "No DclCertificateService provided; skipping CD signature verification"
225
+ });
226
+ }
227
+ const cdContent = cd.content;
228
+ const certType = cdContent.certificationType;
229
+ if (certType === import_certification_declaration.CertificationType.Provisional) {
230
+ findings.push({
231
+ level: "warning",
232
+ type: "CertificationTypeProvisional" /* CertificationTypeProvisional */,
233
+ message: "Certification Declaration has certification_type=1 (provisional)"
234
+ });
235
+ } else if (certType === import_certification_declaration.CertificationType.Test) {
236
+ findings.push({
237
+ level: "info",
238
+ type: "CertificationTypeTest" /* CertificationTypeTest */,
239
+ message: "Certification Declaration has certification_type=0 (test)"
240
+ });
241
+ }
242
+ if (cdContent.vendorId !== data.vendorId) {
243
+ throw new DeviceAttestationError(
244
+ "CertificationDeclarationFieldMismatch" /* CertificationDeclarationFieldMismatch */,
245
+ `CD vendor_id ${cdContent.vendorId} does not match BasicInformation VendorID ${data.vendorId}`
246
+ );
247
+ }
248
+ if (!cdContent.produceIdArray.includes(data.productId)) {
249
+ throw new DeviceAttestationError(
250
+ "CertificationDeclarationFieldMismatch" /* CertificationDeclarationFieldMismatch */,
251
+ `CD product_id_array does not contain BasicInformation ProductID ${data.productId}`
252
+ );
253
+ }
254
+ const hasDacOriginVid = cdContent.dacOriginVendorId !== void 0;
255
+ const hasDacOriginPid = cdContent.dacOriginProductId !== void 0;
256
+ if (hasDacOriginVid !== hasDacOriginPid) {
257
+ throw new DeviceAttestationError(
258
+ "CertificationDeclarationFieldMismatch" /* CertificationDeclarationFieldMismatch */,
259
+ "CD has only one of dac_origin_vendor_id and dac_origin_product_id"
260
+ );
261
+ }
262
+ if (hasDacOriginVid && hasDacOriginPid) {
263
+ if (dac.cert.subject.vendorId !== cdContent.dacOriginVendorId) {
264
+ throw new DeviceAttestationError(
265
+ "CertificationDeclarationFieldMismatch" /* CertificationDeclarationFieldMismatch */,
266
+ "DAC vendorId does not match CD dac_origin_vendor_id"
267
+ );
268
+ }
269
+ if (pai.cert.subject.vendorId !== cdContent.dacOriginVendorId) {
270
+ throw new DeviceAttestationError(
271
+ "CertificationDeclarationFieldMismatch" /* CertificationDeclarationFieldMismatch */,
272
+ "PAI vendorId does not match CD dac_origin_vendor_id"
273
+ );
274
+ }
275
+ const dacProductId = dac.cert.subject.productId;
276
+ if (dacProductId !== void 0 && dacProductId !== cdContent.dacOriginProductId) {
277
+ throw new DeviceAttestationError(
278
+ "CertificationDeclarationFieldMismatch" /* CertificationDeclarationFieldMismatch */,
279
+ "DAC productId does not match CD dac_origin_product_id"
280
+ );
281
+ }
282
+ const paiProductId = pai.cert.subject.productId;
283
+ if (paiProductId !== void 0 && paiProductId !== cdContent.dacOriginProductId) {
284
+ throw new DeviceAttestationError(
285
+ "CertificationDeclarationFieldMismatch" /* CertificationDeclarationFieldMismatch */,
286
+ "PAI productId does not match CD dac_origin_product_id"
287
+ );
288
+ }
289
+ } else {
290
+ if (dac.cert.subject.vendorId !== cdContent.vendorId) {
291
+ throw new DeviceAttestationError(
292
+ "CertificationDeclarationFieldMismatch" /* CertificationDeclarationFieldMismatch */,
293
+ "DAC vendorId does not match CD vendor_id"
294
+ );
295
+ }
296
+ if (pai.cert.subject.vendorId !== cdContent.vendorId) {
297
+ throw new DeviceAttestationError(
298
+ "CertificationDeclarationFieldMismatch" /* CertificationDeclarationFieldMismatch */,
299
+ "PAI vendorId does not match CD vendor_id"
300
+ );
301
+ }
302
+ const dacProductId = dac.cert.subject.productId;
303
+ if (dacProductId !== void 0 && !cdContent.produceIdArray.includes(dacProductId)) {
304
+ throw new DeviceAttestationError(
305
+ "CertificationDeclarationFieldMismatch" /* CertificationDeclarationFieldMismatch */,
306
+ "DAC productId not found in CD product_id_array"
307
+ );
308
+ }
309
+ const paiProductId = pai.cert.subject.productId;
310
+ if (paiProductId !== void 0 && !cdContent.produceIdArray.includes(paiProductId)) {
311
+ throw new DeviceAttestationError(
312
+ "CertificationDeclarationFieldMismatch" /* CertificationDeclarationFieldMismatch */,
313
+ "PAI productId not found in CD product_id_array"
314
+ );
315
+ }
316
+ }
317
+ if (cdContent.authorizedPaaList !== void 0) {
318
+ if (paa !== void 0) {
319
+ const paaSki = paa.cert.extensions.subjectKeyIdentifier;
320
+ const found = cdContent.authorizedPaaList.some((entry) => import_general.Bytes.areEqual(entry, paaSki));
321
+ if (!found) {
322
+ throw new DeviceAttestationError(
323
+ "CertificationDeclarationFieldMismatch" /* CertificationDeclarationFieldMismatch */,
324
+ "PAA subject key identifier not in CD authorized_paa_list"
325
+ );
326
+ }
327
+ } else {
328
+ findings.push({
329
+ level: "warning",
330
+ type: "DclServiceUnavailable" /* DclServiceUnavailable */,
331
+ message: "CD has authorized_paa_list but cannot verify without DCL service"
332
+ });
333
+ }
334
+ }
335
+ return { dacPublicKey, findings };
336
+ }
337
+ DeviceAttestationValidator2.validate = validate;
338
+ })(DeviceAttestationValidator || (DeviceAttestationValidator = {}));
339
+ //# sourceMappingURL=DeviceAttestationValidator.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/certificate/DeviceAttestationValidator.ts"],
4
+ "mappings": "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",
5
+ "names": ["DeviceAttestationCheck", "DeviceAttestationValidator"]
6
+ }
@@ -1 +1 @@
1
- {"version":3,"file":"DeviceCertification.d.ts","sourceRoot":"","sources":["../../../src/certificate/DeviceCertification.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,EAAsC,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC9G,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAGnD;;GAEG;AACH,qBAAa,mBAAmB;;IAQ5B,IAAI,YAAY,sCAEf;IAED,IAAI,WAAW,4BAEd;IAED,IAAI,uBAAuB,4BAE1B;IAED,IAAI,WAAW,4BAEd;IAED,YAAY,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,mBAAmB,CAAC,UAAU,EAAE,OAAO,CAAC,EAAE,kBAAkB,EAqChG;IAQK,IAAI,CAAC,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,KAAK,qDAG3C;CAyBJ;AAED,yBAAiB,mBAAmB,CAAC,CAAC;IAClC,UAAiB,aAAa;QAC1B,UAAU,EAAE,UAAU,GAAG,KAAK,CAAC;QAC/B,WAAW,EAAE,KAAK,CAAC;QACnB,uBAAuB,EAAE,KAAK,CAAC;QAC/B,WAAW,EAAE,KAAK,CAAC;KACtB;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;AAGH,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,EAAsC,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC9G,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAInD;;GAEG;AACH,qBAAa,mBAAmB;;IAQ5B,IAAI,YAAY,sCAEf;IAED,IAAI,WAAW,4BAEd;IAED,IAAI,uBAAuB,4BAE1B;IAED,IAAI,WAAW,4BAEd;IAED,YAAY,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,mBAAmB,CAAC,UAAU,EAAE,OAAO,CAAC,EAAE,kBAAkB,EAqChG;IAsCK,IAAI,CAAC,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,KAAK,qDAG3C;CAyBJ;AAED,yBAAiB,mBAAmB,CAAC,CAAC;IAClC,UAAiB,aAAa;QAC1B,UAAU,EAAE,UAAU,GAAG,KAAK,CAAC;QAC/B,WAAW,EAAE,KAAK,CAAC;QACnB,uBAAuB,EAAE,KAAK,CAAC;QAC/B,WAAW,EAAE,KAAK,CAAC;KACtB;IAED,KAAY,UAAU,GAAG,aAAa,GAAG,CAAC,MAAM,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC;CAC3E"}
@@ -24,6 +24,7 @@ module.exports = __toCommonJS(DeviceCertification_exports);
24
24
  var import_CertificationDeclaration = require("#certificate/kinds/CertificationDeclaration.js");
25
25
  var import_general = require("@matter/general");
26
26
  var import_AttestationCertificateManager = require("./AttestationCertificateManager.js");
27
+ var import_AttestationCertificates = require("./kinds/AttestationCertificates.js");
27
28
  /**
28
29
  * @license
29
30
  * Copyright 2022-2026 Matter.js Authors
@@ -81,7 +82,32 @@ class DeviceCertification {
81
82
  }
82
83
  });
83
84
  }
84
- #validateCertification(_product) {
85
+ #validateCertification(product) {
86
+ const certificate = this.#certificate;
87
+ const intermediateCertificate = this.#intermediateCertificate;
88
+ if (certificate === void 0 || intermediateCertificate === void 0) {
89
+ return;
90
+ }
91
+ const dac = import_AttestationCertificates.Dac.fromAsn1(certificate);
92
+ const pai = import_AttestationCertificates.Pai.fromAsn1(intermediateCertificate);
93
+ const dacVendorId = dac.cert.subject.vendorId;
94
+ if (dacVendorId !== void 0 && dacVendorId !== product.vendorId) {
95
+ throw new import_general.ImplementationError(
96
+ `DAC VendorID ${dacVendorId} does not match product VendorID ${product.vendorId}`
97
+ );
98
+ }
99
+ const dacProductId = dac.cert.subject.productId;
100
+ if (dacProductId !== void 0 && dacProductId !== product.productId) {
101
+ throw new import_general.ImplementationError(
102
+ `DAC ProductID ${dacProductId} does not match product ProductID ${product.productId}`
103
+ );
104
+ }
105
+ const paiVendorId = pai.cert.subject.vendorId;
106
+ if (paiVendorId !== void 0 && paiVendorId !== product.vendorId) {
107
+ throw new import_general.ImplementationError(
108
+ `PAI VendorID ${paiVendorId} does not match product VendorID ${product.vendorId}`
109
+ );
110
+ }
85
111
  }
86
112
  async sign(session, data) {
87
113
  const { privateKey } = this.#assertInitialized();
@@ -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,sCAAyC;AAEzC,qBAA4F;AAE5F,2CAA8C;AAV9C;AAAA;AAAA;AAAA;AAAA;AAeO,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,mCAAoB,kEAAkE;AAAA,QACpG;AAEA,cAAM,MAAM,MAAM,mEAA8B,OAAO,QAAQ,QAAQ,QAAQ;AAC/E,cAAM,EAAE,SAAS,YAAY,IAAI,IAAI,MAAM,IAAI,UAAU,QAAQ,SAAS;AAE1E,eAAO;AAAA,UACH,gBAAY,2BAAW,WAAW,UAAU;AAAA,UAC5C,aAAa;AAAA,UACb,yBAAyB,MAAM,IAAI,WAAW;AAAA,UAC9C,aAAa,MAAM,yDAAyB,SAAS,QAAQ,QAAQ,UAAU,QAAQ,SAAS;AAAA,QACpG;AAAA,MACJ;AAAA,IACJ;AAEA,SAAK,oBAAgB,6BAAa,MAAM,YAAY;AAChD,YAAMA,UAAS,MAAM,eAAe;AAEpC,WAAK,cAAc,qBAAM,QAAQA,QAAO,UAAU,QAAI,2BAAWA,QAAO,UAAU,IAAIA,QAAO;AAC7F,WAAK,eAAeA,QAAO;AAC3B,WAAK,2BAA2BA,QAAO;AACvC,WAAK,eAAeA,QAAO;AAE3B,UAAI,YAAY,QAAW;AACvB,aAAK,uBAAuB,OAAO;AAAA,MACvC;AAAA,IACJ,CAAC;AAAA,EACL;AAAA,EAEA,uBAAuB,UAA8B;AAAA,EAIrD;AAAA,EAEA,MAAM,KAAK,SAAsB,MAAa;AAC1C,UAAM,EAAE,WAAW,IAAI,KAAK,mBAAmB;AAC/C,WAAO,KAAK,QAAQ,UAAU,YAAY,CAAC,MAAM,QAAQ,uBAAuB,CAAC;AAAA,EACrF;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": "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",
5
5
  "names": ["config"]
6
6
  }
@@ -6,6 +6,7 @@
6
6
  export * from "./AttestationCertificateManager.js";
7
7
  export * from "./CertificateAuthority.js";
8
8
  export * from "./ChipPAAuthorities.js";
9
+ export * from "./DeviceAttestationValidator.js";
9
10
  export * from "./DeviceCertification.js";
10
11
  export * from "./kinds/AttestationCertificates.js";
11
12
  export * from "./kinds/Certificate.js";