|
1 | | -# Mapping DCL Schemas to Matter Specification |
| 1 | +# Mapping DCL Entities to Matter Specification |
2 | 2 |
|
3 | | -This document describes how DCL records and entities map to the CHIP/Matter [specification](https://github.com/CHIP-Specifications/connectedhomeip-spec/blob/master/src/service_device_management/DistributedComplianceLedger.adoc#ref_DistributedComplianceLedger). |
| 3 | +This document describes how DCL records and entities map to the Matter [specification](https://github.com/CHIP-Specifications/connectedhomeip-spec/blob/master/src/service_device_management/DistributedComplianceLedger.adoc#ref_DistributedComplianceLedger). |
4 | 4 |
|
5 | | -In DCL, different schemas and respective endpoints are used for write(txn messages) and read(query calls) requests, but the CHIP/Matter specification describes only what was written and assumes that |
6 | | -read requests are the same. To know about how write and read requests maps to spec please follow below sections for more details. |
| 5 | +In DCL, different schemas and respective endpoints are used for write (txn messages) and read (query calls) requests, but the Matter specification describes only what was written and assumes that read requests are the same. To know about how write and read requests map to spec, please follow the sections below for more details. |
7 | 6 |
|
8 | 7 | ## PKI Module |
9 | 8 |
|
10 | | -1. **Device Attestation (DA):** The Product Attestation Authority (PAA) and Intermediate (PAI) certificate [schemas](https://github.com/CHIP-Specifications/connectedhomeip-spec/blob/master/src/service_device_management/DistributedComplianceLedger.adoc#ref_PAAAndPAICertificateSchema) correspond to the [DA certificate types section](transactions.md#x509-pki). |
11 | | -2. **Operational Trust Anchors:** The [schemas](https://github.com/CHIP-Specifications/connectedhomeip-spec/blob/master/src/service_device_management/DistributedComplianceLedger.adoc#5-operational-trust-anchors-schema) for Operational Certificates correspond to the [NOC certificate types section](transactions.md#x509-pki). |
| 9 | +1. DCL uses a single [Certificate](../proto/zigbeealliance/distributedcomplianceledger/pki/certificate.proto) entity for all(`PAA`,`PAI`,`RCAC` and `ICAC`) certificate types mentioned in the Matter specification. |
| 10 | +2. Associated `write/read` requests regarding the Product Attestation Authority (PAA) and Intermediate (PAI) certificate [schemas](https://github.com/CHIP-Specifications/connectedhomeip-spec/blob/master/src/service_device_management/DistributedComplianceLedger.adoc#ref_PAAAndPAICertificateSchema) can be found in the [DA certificate types section](transactions.md#x509-pki). |
| 11 | +3. Associated `write/read` requests regarding the Operational Certificates [schemas](https://github.com/CHIP-Specifications/connectedhomeip-spec/blob/master/src/service_device_management/DistributedComplianceLedger.adoc#5-operational-trust-anchors-schema) can be found in the [NOC certificate types section](transactions.md#x509-pki). |
12 | 12 | * **Note:** DCL uses the terms **NOC** and **ICA**, which map to **RCAC** and **ICAC** in the Matter specification, respectively. |
13 | | -3. **Unified Schema:** DCL uses a single [Certificate](../proto/zigbeealliance/distributedcomplianceledger/pki/certificate.proto) schema for all certificate types mentioned in the Matter specification. |
14 | | -4. **Revocation:** Device Attestation PKI Revocation Distribution Points [schema](https://github.com/CHIP-Specifications/connectedhomeip-spec/blob/master/src/service_device_management/DistributedComplianceLedger.adoc#9-device-attestation-pki-revocation-distribution-points-schema) are implemented within the PKI Module as described in the [revocation points section](transactions.md#x509-pki). |
| 13 | +4. Device Attestation PKI Revocation Distribution Points [schema](https://github.com/CHIP-Specifications/connectedhomeip-spec/blob/master/src/service_device_management/DistributedComplianceLedger.adoc#9-device-attestation-pki-revocation-distribution-points-schema) correspond to [PKI Revocation Distribution Point](../proto/zigbeealliance/distributedcomplianceledger/pki/pki_revocation_distribution_point.proto) entity and the associated `write/read` requests can be found in the [revocation points section](transactions.md#x509-pki). |
| 14 | + |
| 15 | +## Model Module |
| 16 | + |
| 17 | +In DCL, the [Model module](transactions/model.md) is responsible to handle records regarding device and device software version models. |
| 18 | + |
| 19 | +1. The [Device Model schema](https://github.com/CHIP-Specifications/connectedhomeip-spec/blob/master/src/service_device_management/DistributedComplianceLedger.adoc#ref_DeviceModelSchema) corresponds to the [Model](../proto/zigbeealliance/distributedcomplianceledger/model/model.proto) entity, and the associated `write/read` requests can be found in the [Model and Model Version section](transactions.md#model-and-model-version). |
| 20 | +2. The [Device Software Version Model schema](https://github.com/CHIP-Specifications/connectedhomeip-spec/blob/master/src/service_device_management/DistributedComplianceLedger.adoc#7-devicesoftwareversionmodel-schema) corresponds to the to [Model Version](../proto/zigbeealliance/distributedcomplianceledger/model/model_version.proto) entity, and the associated `write/read` requests can be found in the [Model and Model Version section](transactions.md#model-and-model-version). |
| 21 | + |
| 22 | +## Compliance Module |
| 23 | + |
| 24 | +In DCL, the [Compliance module](transactions/compliance.md) is responsible to handle certification status of particular software version(`Model Version` in DCL term) for given product(`Model` in DCL term). |
| 25 | + |
| 26 | +Below is the list of notes to consider while mapping DCL Compliance module to Matter specification: |
| 27 | +1. The [Device Software Compliance schema](https://github.com/CHIP-Specifications/connectedhomeip-spec/blob/master/src/service_device_management/DistributedComplianceLedger.adoc#8-devicesoftwarecompliance--compliance-test-result-schema) corresponds to the [Compliance Info](../proto/zigbeealliance/distributedcomplianceledger/compliance/compliance_info.proto) entity, and the associated `write/read` requests can be found in the [Compliance section](transactions.md#compliance) |
| 28 | +2. In DCL, specific endpoints are used (by CSA) to handle [certification status](https://github.com/CHIP-Specifications/connectedhomeip-spec/blob/master/src/service_device_management/DistributedComplianceLedger.adoc#82-softwareversioncertificationstatusenum-type) of the device software version according to the provided `certificatType`(ZB/Matter): |
| 29 | + - [Provision](transactions/compliance.md#PROVISION_MODEL) endpoint is used to register that particular device software is in `provisional` (going into certification testing phase) state |
| 30 | + * **Note:** This endpoint **cannot** be used for device software versions that are already in `compliant` or `revoked` state |
| 31 | + - [Certify](transactions/compliance.md#CERTIFY_MODEL) endpoint is used to register that particular device software version is in `compliant` state |
| 32 | + * **Note:** This endpoint **can** be used for device software versions that are already in `provisional` or `revoked` state (e.g. re-certification) |
| 33 | + - [Revoke](transactions/compliance.md#REVOKE_MODEL_CERTIFICATION) endpoint is used to register that particular device software version is `revoked` |
| 34 | + * **Note:** This endpoint **can** be used for device software versions that are already in `provisional` or `compliant` state |
| 35 | + - [Update](transactions/compliance.md#UPDATE_COMPLIANCE_INFO) endpoint is used to update the additional-info/metadata of a particular device software version |
| 36 | + * **Note:** This endpoint **cannot** be used to change the certification status |
| 37 | +3. In DCL, there are several query endpoints can be used for specific reading purposes. |
| 38 | + - [Provisional Model](transactions/compliance.md#GET_PROVISIONAL_MODEL) can be used to retrieve/check the software version certification of particular device is in `provisional` state |
| 39 | + - [Certified Model](transactions/compliance.md#GET_CERTIFIED_MODEL) can be used to retrieve/check the software version certification of particular device in `compliant` state |
| 40 | + - [Revoked Model](transactions/compliance.md#GET_REVOKED_MODEL) can be used to retrieve/check the software version certification of particular device in `revoked` state |
| 41 | + - [Compliance Info](transactions/compliance.md#GET_COMPLIANCE_INFO) can be used to get the full compliance(including certification state) information of a particular device software version, bypassing state check query calls mentioned above |
| 42 | + - [Device Software Compliance](transactions/compliance.md#GET_DEVICE_SOFTWARE_COMPLIANCE) can be used to get all compliance records associated with [CD Certificate ID](https://github.com/CHIP-Specifications/connectedhomeip-spec/blob/master/src/service_device_management/DistributedComplianceLedger.adoc#83-cdcertificateid) |
0 commit comments