# Copyright (c) 2021 Project CHIP Authors
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# Auto-generated scripts for harness use only, please review before automation. The endpoints and cluster names are currently set to default

name:
    3.2.1. [TC-OPCREDS-3.1] Attribute-NOCs, TrustedRootCertificates list
    validation [DUT-Server]

PICS:
    - OPCREDS.S

config:
    nodeId: 0x12344321
    cluster: "Basic"
    endpoint: 0

tests:
    - label: "Pre-Conditions"
      verification: |
          1. PAI, DAC certificates are obtained and validated against externally obtained PAA certificate
          2. This test case assumes that during Commissioning AddNOC will be sent with ICACValue
          3. TH2 is set up with at least one valid CASE Authenticated Tag specified in its NOC, saved as CAT_TH2
          4. Read SupportedFabrics attributes from the DUT and saves as NumSupportedFabrics . Ensure there are NumSupportedFabrics test harness instances that can each commission the DUT
      disabled: true

    - label:
          "Factory Reset DUT (to ensure NOC list is empty at the beginning of
          the following steps)"
      PICS: OPCREDS.S.A0000
      verification: |
          On both DUT and TH side
          sudo rm -rf /tmp/chip_*
      disabled: true

    - label: "Start the commissioning process of DUT by TH1 on a first Fabric"
      verification: |
          DUT side:
          sudo ./chip-all-clusters-app --wifi  --trace_decode 1

          TH side:
          ./chip-tool pairing ble-wifi 1 zigbeehome matter123 20202021 3841 --trace_decode 1

          [1650455358.501816][4366:4371] CHIP:TOO: Device commissioning completed with success
      disabled: true

    - label:
          "TH1 sends ArmFailSafe command to the DUT with the ExpiryLengthSeconds
          field set to 900"
      PICS: CGEN.S.C00.Rsp && CGEN.S.C01.Tx
      verification: |
          ./chip-tool generalcommissioning arm-fail-safe 900 600 1 0


          Verify the ErrorCode as "OK"(0) in TH log
          [1659676500.031926][2475:2480] CHIP:DMG: Received Command Response Data, Endpoint=0 Cluster=0x0000_0030 Command=0x0000_0001
          [1659676500.047646][2475:2480] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0030 Command 0x0000_0001
          [1659676500.055459][2475:2480] CHIP:TOO:   ArmFailSafeResponse: {
          [1659676500.055613][2475:2480] CHIP:TOO:     errorCode: 0
          [1659676500.055669][2475:2480] CHIP:TOO:     debugText:
          [1659676500.055719][2475:2480] CHIP:TOO:    }
          [1659676500.055806][2475:2480] CHIP:DMG: ICR moving to [AwaitingDe]
          [1659676500.055920][2475:2480] CHIP:EM: Sending Standalone Ack for MessageCounter:225116044 on exchange 37810i
      disabled: true

    - label: "TH1 sends SetRegulatoryConfig command to the DUT"
      PICS: CGEN.S.C02.Rsp && CGEN.S.C03.Tx
      verification: |
          ./chip-tool generalcommissioning set-regulatory-config 0 new 0 1 0

          Verify the ErrorCode as SUCCESS in TH Log

          [1658223287.237009][5570:5575] CHIP:DMG: Received Command Response Data, Endpoint=0 Cluster=0x0000_0030 Command=0x0000_0003
          [1658223287.237060][5570:5575] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_0030 Command 0x0000_0003
          [1658223287.237122][5570:5575] CHIP:TOO:   SetRegulatoryConfigResponse: {
          [1658223287.237159][5570:5575] CHIP:TOO:     errorCode: 0
          [1658223287.237183][5570:5575] CHIP:TOO:     debugText:
          [1658223287.237205][5570:5575] CHIP:TOO:    }
      disabled: true

    - label: "TH1 sends AttestationRequest command to DUT"
      PICS: OPCREDS.S.C00.Rsp && OPCREDS.S.C01.Tx
      verification: |
          To get attestation nonce give below command Raspi platform on TH
           echo hex:$(hexdump -vn32 -e"4/4 "%08X" " /dev/urandom)


          ./chip-tool operationalcredentials attestation-request hex:3577CA6EFFFC560E287604663AE5BE2F11D1B1CF99BE326AF5B3B114A2E91395 1 0

          Verify attestation response in TH Log

          [1658223434.718871][5712:5717] CHIP:DMG: Received Command Response Data, Endpoint=0 Cluster=0x0000_003E Command=0x0000_0001
          [1658223434.718921][5712:5717] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003E Command 0x0000_0001
          [1658223434.718981][5712:5717] CHIP:TOO:   AttestationResponse: {
          [1658223434.719026][5712:5717] CHIP:TOO:     attestationElements: 1531011D023082021906092A864886F70D010702A082020A30820206020103310D300B06096086480165030402013082017106092A864886F70D010701A08201620482015E152400012501F1FF3602050080050180050280050380050480050580050680050780050880050980050A80050B80050C80050D80050E80050F80051080051180051280051380051480051580051680051780051880051980051A80051B80051C80051D80051E80051F80052080052180052280052380052480052580052680052780052880052980052A80052B80052C80052D80052E80052F80053080053180053280053380053480053580053680053780053880053980053A80053B80053C80053D80053E80053F80054080054180054280054380054480054580054680054780054880054980054A80054B80054C80054D80054E80054F80055080055180055280055380055480055580055680055780055880055980055A80055B80055C80055D80055E80055F80056080056180056280056380182403162C04135A494732303134325A423333303030332D3234240500240600250794
          [1658223434.719078][5712:5717] CHIP:TOO:     ...................: 2624080018317D307B020103801462FA823359ACFAA9963E1CFA140ADDF504F37160300B0609608648016503040201300A06082A8648CE3D04030204473045022024E5D1F47A7D7B0D206A26EF699B7C9757B72D469089DE3192E678C745E7F60C022100F8AA2FA711FCB79B97E397CEDA667BAE464E2BD3FFDFC3CCED7AA8CA5F4C1A7C3002203577CA6EFFFC560E287604663AE5BE2F11D1B1CF99BE326AF5B3B114A2E9139524030018
          [1658223434.719110][5712:5717] CHIP:TOO:     signature: 7E18271F57FFC60492CA74943FC897493FB2FECDD4A4DC9F2AD348AAD1F5C57DAEB144A4D1C79419386C746F28AC145F3185C64AD99DD829EE70C3690D29642D
          [1658223434.719135][5712:5717] CHIP:TOO:    }
      disabled: true

    - label:
          "TH1 sends CertificateChainRequest Command to DUT for the PAI and
          saves the certififate as PAICert"
      PICS: OPCREDS.S.C02.Rsp && OPCREDS.S.C03.Tx
      verification: |
          ./chip-tool operationalcredentials certificate-chain-request 2 1 0 --trace_decode 1


          Verify the CertificateChainResponse and verify that the size of certificate is less than or equal to 600 bytes and of type octstr in TH Log

          [1660214092.609231][14671:14676] CHIP:DMG: InvokeRequestMessage =
          [1660214092.609243][14671:14676] CHIP:DMG: {
          [1660214092.609255][14671:14676] CHIP:DMG:         suppressResponse = false,
          [1660214092.609269][14671:14676] CHIP:DMG:         timedRequest = false,
          [1660214092.609281][14671:14676] CHIP:DMG:         InvokeRequests =
          [1660214092.609301][14671:14676] CHIP:DMG:         [
          [1660214092.609311][14671:14676] CHIP:DMG:                 CommandDataIB =
          [1660214092.609326][14671:14676] CHIP:DMG:                 {
          [1660214092.609338][14671:14676] CHIP:DMG:                         CommandPathIB =
          [1660214092.609352][14671:14676] CHIP:DMG:                         {
          [1660214092.609367][14671:14676] CHIP:DMG:                                 EndpointId = 0x0,
          [1660214092.609383][14671:14676] CHIP:DMG:                                 ClusterId = 0x3e,
          [1660214092.609396][14671:14676] CHIP:DMG:                                 CommandId = 0x2,
          [1660214092.609410][14671:14676] CHIP:DMG:                         },
          [1660214092.609426][14671:14676] CHIP:DMG:
          [1660214092.609437][14671:14676] CHIP:DMG:                         CommandFields =
          [1660214092.609452][14671:14676] CHIP:DMG:                         {
          [1660214092.609467][14671:14676] CHIP:DMG:                                 0x0 = 2,
          [1660214092.609481][14671:14676] CHIP:DMG:                         },
          [1660214092.609493][14671:14676] CHIP:DMG:                 },
          [1660214092.609511][14671:14676] CHIP:DMG:
          [1660214092.609522][14671:14676] CHIP:DMG:         ],
          [1660214092.609541][14671:14676] CHIP:DMG:
          [1660214092.609551][14671:14676] CHIP:DMG:         InteractionModelRevision = 1
          [1660214092.609563][14671:14676] CHIP:DMG: },
          [1660214092.609576][14671:14676] CHIP:DMG:
          [1660214092.609674][14671:14676] CHIP:DMG: ICR moving to [CommandSen]
          [1660214092.609707][14671:14676] CHIP:EM: Sending Standalone Ack for MessageCounter:33263154 on exchange 56685i
          [1660214092.609876][14671:14676] CHIP:IN: Prepared unauthenticated message 0x7f5ae77fd000 to 0x0000000000000000 (0)  of type 0x10 and protocolId (0, 0) on exchange 56685i with MessageCounter:66323624.
          [1660214092.609904][14671:14676] CHIP:IN: Sending unauthenticated msg 0x7f5ae77fd000 with MessageCounter:66323624 to 0x0000000000000000 at monotonic time: 00000000012052C1 msec
          [1660214092.610138][14671:14676] CHIP:DMG: >> to UDP:[fe80::e65f:1ff:fe0f:2753%enp0s31f6]:5540 | 66323624 | [Secure Channel  (0) / Standalone Ack (0x10) / Session = 0 / Exchange = 56685]
          [1660214092.610167][14671:14676] CHIP:DMG: Header Flags =
          [1660214092.610177][14671:14676] CHIP:DMG: {
          [1660214092.610198][14671:14676] CHIP:DMG:     Message (0x04) =
          [1660214092.610208][14671:14676] CHIP:DMG:     {
          [1660214092.610222][14671:14676] CHIP:DMG:         SourceNodeId = 86B22B3066A1B459
          [1660214092.610234][14671:14676] CHIP:DMG:     }
          [1660214092.610255][14671:14676] CHIP:DMG:     Exchange (0x03) =
          [1660214092.610265][14671:14676] CHIP:DMG:     {
          [1660214092.610276][14671:14676] CHIP:DMG:         Initiator = true
          [1660214092.610290][14671:14676] CHIP:DMG:         AckMsg = 33263154
          [1660214092.610301][14671:14676] CHIP:DMG:     }
          [1660214092.610333][14671:14676] CHIP:DMG: }
          [1660214092.610355][14671:14676] CHIP:DMG:
          [1660214092.610379][14671:14676] CHIP:DMG: Encrypted Payload (26 bytes) =
          [1660214092.610394][14671:14676] CHIP:DMG: {
          [1660214092.610407][14671:14676] CHIP:DMG:     data = 04000000a804f40359b4a166302bb28603106ddd0000328efb01
          [1660214092.610423][14671:14676] CHIP:DMG:     buffer_ptr = 140028080604320
          [1660214092.610436][14671:14676] CHIP:DMG: }
          [1660214092.610450][14671:14676] CHIP:DMG:
          [1660214092.610521][14671:14676] CHIP:EM: Flushed pending ack for MessageCounter:33263154 on exchange 56685i
          [1660214092.617596][14671:14676] CHIP:DMG: << from UDP:[fe80::e65f:1ff:fe0f:2753%enp0s31f6]:5540 | 219026739 | [Interaction Model  (1) / InvokeCommandResponse (0x09) / Session = 20731 / Exchange = 56686]
          [1660214092.617620][14671:14676] CHIP:DMG: Header Flags =
          [1660214092.617626][14671:14676] CHIP:DMG: {
          [1660214092.617637][14671:14676] CHIP:DMG:     Exchange (0x06) =
          [1660214092.617645][14671:14676] CHIP:DMG:     {
          [1660214092.617652][14671:14676] CHIP:DMG:         AckMsg = 21510045
          [1660214092.617657][14671:14676] CHIP:DMG:         NeedsAck = true
          [1660214092.617663][14671:14676] CHIP:DMG:     }
          [1660214092.617672][14671:14676] CHIP:DMG: }
          [1660214092.617678][14671:14676] CHIP:DMG:
          [1660214092.617686][14671:14676] CHIP:DMG: Encrypted Payload (531 bytes) =
          [1660214092.617692][14671:14676] CHIP:DMG: {
          [1660214092.617698][14671:14676] CHIP:DMG:     data = 00fb500033150e0d1ee5b6538768098d8ef37ec0e09fbeb30c158a93ffdd1ca81041b2baa637a7e200110cd7cf06f5ffa40a8e4529a8a38cdd47e50715aaa344941b0c760264022f21b37432352c00f457fade1bdee072261fcb5cde3fcd70e2e71d5a8ec9fa038e670a404d8641162b8fb34919e9d6e431a1c895a6e01cbd3125c9322ff741caf28b79f69f103ec0e9c5b1b74c43fde4d4ac21f15e48b2090916feca5662682ae9eb1f8d18011d618492d57139ad99e94f99e3a755d2a8e46ba7133a0f1d2fe20b7e5cf2906542c4685866c7ccbd8e2e15e84e3dc653057623dac7d65d7bb785466bab3e816e06f378d0165aadf7ef38d23afdb42731191683a995fa1223bcccf27c0314aced823b2a00ff0da758b1f910631fab7098f013a7fed82136cf072c1150e4f351541f194f0aa2987bc0d1d7688d7955d94560b34bbce0b407d340b0ebaef6f5e9343af6cb8d030fb8040a9a6b7cd9465974a692072d05597b98ec66c42cf4edd86d841048cf5f045f90fb74d4066f2f23e038530e18dd4a0f3c1d86800077661bbd5ff28ff873bb87c6a2545871c6eeca5426466cecff984822b8dd3b7822fb109ec80c9ca3c9bb70b20056f2f4f8b25d1ec3bd8c17a86403bdd42d8cf2c2f66ca8983812361f34770992a7724fc33c5297169a2dcc99b92f290d2894bad6c612684f29c71eb0190b5d8d31dee66650da1942a798de69389d9c5bcfbf0e56a08c820092a53d4f34
          [1660214092.617712][14671:14676] CHIP:DMG:     buffer_ptr = 140028080581472
          [1660214092.617717][14671:14676] CHIP:DMG: }
          [1660214092.617722][14671:14676] CHIP:DMG:
          [1660214092.617768][14671:14676] CHIP:DMG: DAC/PAI (463) =
          [1660214092.617789][14671:14676] CHIP:DMG: {
          -----BEGIN CERTIFICATE-----
          MIIByzCCAXGgAwIBAgIIVq2CIq2UW2QwCgYIKoZIzj0EAwIwMDEYMBYGA1UEAwwP
          TWF0dGVyIFRlc3QgUEFBMRQwEgYKKwYBBAGConwCAQwERkZGMTAgFw0yMjAyMDUw
          MDAwMDBaGA85OTk5MTIzMTIzNTk1OVowPTElMCMGA1UEAwwcTWF0dGVyIERldiBQ
          QUkgMHhGRkYxIG5vIFBJRDEUMBIGCisGAQQBgqJ8AgEMBEZGRjEwWTATBgcqhkjO
          PQIBBggqhkjOPQMBBwNCAARBmpMVwhc+DIyHbQPM/JRIUmR/f+xeUIL0BZko7KiU
          xZQVEwmsYx5MsDOSr2hLC6+35ls7gWLC9Sv5MbjneqqCo2YwZDASBgNVHRMBAf8E
          CDAGAQH/AgEAMA4GA1UdDwEB/wQEAwIBBjAdBgNVHQ4EFgQUY1QOR/ZLHDjROISk
          YtFsGV2P+zwwHwYDVR0jBBgwFoAUav0idx9RH+y/FkGXZxDc3DGhcX4wCgYIKoZI
          zj0EAwIDSAAwRQIhALLvJ/Sa6bUPuR7qyUxNC9u415KcbLiPrOUpNo0SBUwMAiBl
          Xckrhr2QmIKmxiF3uCXX0F7b58Ivn+pxIg5+pwP4kQ==
          -----END CERTIFICATE-----
          [1660214092.617801][14671:14676] CHIP:DMG: }
          [1660214092.617807][14671:14676] CHIP:DMG:
          [1660214092.617815][14671:14676] CHIP:DMG:
          [1660214092.617827][14671:14676] CHIP:DMG: Additional Fields =
          [1660214092.617832][14671:14676] CHIP:DMG: {
          [1660214092.617839][14671:14676] CHIP:DMG:     peer_address = UDP:[fe80::e65f:1ff:fe0f:2753%enp0s31f6]:5540
          [1660214092.617845][14671:14676] CHIP:DMG: }
          [1660214092.617851][14671:14676] CHIP:DMG:
          [1660214092.617861][14671:14676] CHIP:EM: Received message of type 0x9 with protocolId (0, 1) and MessageCounter:219026739 on exchange 56686i
          [1660214092.617870][14671:14676] CHIP:EM: Found matching exchange: 56686i, Delegate: 0x7f5ad4003a48
          [1660214092.617885][14671:14676] CHIP:EM: Rxd Ack; Removing MessageCounter:21510045 from Retrans Table on exchange 56686i
          [1660214092.617891][14671:14676] CHIP:EM: Removed CHIP MessageCounter:21510045 from RetransTable on exchange 56686i
          [1660214092.617904][14671:14676] CHIP:DMG: ICR moving to [ResponseRe]
      disabled: true

    - label:
          "TH1 sends CertificateChainRequest Command to DUT for the DAC and
          saves the certififate as DACCert"
      PICS: OPCREDS.S.C02.Rsp && OPCREDS.S.C03.Tx
      verification: |
          ./chip-tool operationalcredentials certificate-chain-request 1 1 0

          Verify the CertificateChainResponse in TH Log

          [1660218221.819087][17048:17053] CHIP:DMG: InvokeRequestMessage =
          [1660218221.819106][17048:17053] CHIP:DMG: {
          [1660218221.819126][17048:17053] CHIP:DMG:         suppressResponse = false,
          [1660218221.819147][17048:17053] CHIP:DMG:         timedRequest = false,
          [1660218221.819164][17048:17053] CHIP:DMG:         InvokeRequests =
          [1660218221.819194][17048:17053] CHIP:DMG:         [
          [1660218221.819210][17048:17053] CHIP:DMG:                 CommandDataIB =
          [1660218221.819233][17048:17053] CHIP:DMG:                 {
          [1660218221.819251][17048:17053] CHIP:DMG:                         CommandPathIB =
          [1660218221.819274][17048:17053] CHIP:DMG:                         {
          [1660218221.819296][17048:17053] CHIP:DMG:                                 EndpointId = 0x0,
          [1660218221.819319][17048:17053] CHIP:DMG:                                 ClusterId = 0x3e,
          [1660218221.819341][17048:17053] CHIP:DMG:                                 CommandId = 0x2,
          [1660218221.819361][17048:17053] CHIP:DMG:                         },
          [1660218221.819386][17048:17053] CHIP:DMG:
          [1660218221.819403][17048:17053] CHIP:DMG:                         CommandFields =
          [1660218221.819425][17048:17053] CHIP:DMG:                         {
          [1660218221.819448][17048:17053] CHIP:DMG:                                 0x0 = 1,
          [1660218221.819470][17048:17053] CHIP:DMG:                         },
          [1660218221.819488][17048:17053] CHIP:DMG:                 },
          [1660218221.819515][17048:17053] CHIP:DMG:
          [1660218221.819530][17048:17053] CHIP:DMG:         ],
          [1660218221.819559][17048:17053] CHIP:DMG:
          [1660218221.819575][17048:17053] CHIP:DMG:         InteractionModelRevision = 1
          [1660218221.819592][17048:17053] CHIP:DMG: },
          [1660218221.819611][17048:17053] CHIP:DMG:
          [1660218221.819755][17048:17053] CHIP:DMG: ICR moving to [CommandSen]
          [1660218221.819807][17048:17053] CHIP:EM: Sending Standalone Ack for MessageCounter:33263156 on exchange 41890i
          [1660218221.820060][17048:17053] CHIP:IN: Prepared unauthenticated message 0x7f950d02b000 to 0x0000000000000000 (0)  of type 0x10 and protocolId (0, 0) on exchange 41890i with MessageCounter:146063148.
          [1660218221.820102][17048:17053] CHIP:IN: Sending unauthenticated msg 0x7f950d02b000 with MessageCounter:146063148 to 0x0000000000000000 at monotonic time: 00000000015F547B msec
          [1660218221.820457][17048:17053] CHIP:DMG: >> to UDP:[fe80::e65f:1ff:fe0f:2753%enp0s31f6]:5540 | 146063148 | [Secure Channel  (0) / Standalone Ack (0x10) / Session = 0 / Exchange = 41890]
          [1660218221.820501][17048:17053] CHIP:DMG: Header Flags =
          [1660218221.820519][17048:17053] CHIP:DMG: {
          [1660218221.820578][17048:17053] CHIP:DMG:     Message (0x04) =
          [1660218221.820596][17048:17053] CHIP:DMG:     {
          [1660218221.820622][17048:17053] CHIP:DMG:         SourceNodeId = EB2A0D2FCD128BCD
          [1660218221.820642][17048:17053] CHIP:DMG:     }
          [1660218221.820677][17048:17053] CHIP:DMG:     Exchange (0x03) =
          [1660218221.820692][17048:17053] CHIP:DMG:     {
          [1660218221.820709][17048:17053] CHIP:DMG:         Initiator = true
          [1660218221.820730][17048:17053] CHIP:DMG:         AckMsg = 33263156
          [1660218221.820747][17048:17053] CHIP:DMG:     }
          [1660218221.820778][17048:17053] CHIP:DMG: }
          [1660218221.820792][17048:17053] CHIP:DMG:
          [1660218221.820819][17048:17053] CHIP:DMG: Encrypted Payload (26 bytes) =
          [1660218221.820834][17048:17053] CHIP:DMG: {
          [1660218221.820853][17048:17053] CHIP:DMG:     data = 040000002cbfb408cd8b12cd2f0d2aeb0310a2a30000348efb01
          [1660218221.820871][17048:17053] CHIP:DMG:     buffer_ptr = 140277792687280
          [1660218221.820888][17048:17053] CHIP:DMG: }
          [1660218221.820906][17048:17053] CHIP:DMG:
          [1660218221.820997][17048:17053] CHIP:EM: Flushed pending ack for MessageCounter:33263156 on exchange 41890i
          [1660218221.826505][17048:17053] CHIP:DMG: << from UDP:[fe80::e65f:1ff:fe0f:2753%enp0s31f6]:5540 | 217571241 | [Interaction Model  (1) / InvokeCommandResponse (0x09) / Session = 16041 / Exchange = 41891]
          [1660218221.826559][17048:17053] CHIP:DMG: Header Flags =
          [1660218221.826581][17048:17053] CHIP:DMG: {
          [1660218221.826620][17048:17053] CHIP:DMG:     Exchange (0x06) =
          [1660218221.826636][17048:17053] CHIP:DMG:     {
          [1660218221.826658][17048:17053] CHIP:DMG:         AckMsg = 228316047
          [1660218221.826677][17048:17053] CHIP:DMG:         NeedsAck = true
          [1660218221.826695][17048:17053] CHIP:DMG:     }
          [1660218221.826723][17048:17053] CHIP:DMG: }
          [1660218221.826736][17048:17053] CHIP:DMG:
          [1660218221.826764][17048:17053] CHIP:DMG: Encrypted Payload (559 bytes) =
          [1660218221.826778][17048:17053] CHIP:DMG: {
          [1660218221.826796][17048:17053] CHIP:DMG:     data = 00a93e00a9dff70c44f908196a2718a5b4cd8fb67b67d2223ade09fa1f23a5e9d6081ef9003a293b4f7ddf1e64767c15165a5544c4bc162a2eea22b085a5392580dec393bc15a705abc25360a7f05f99baf448b6c29e93defc8d01b00c11b268b2a197f88fc5984fe4c541fc523e2ecd2316b5dc1109c54408186296772f48d484047770f70a6af3e639833481b4663c7b65b902a850a8d55d3a86c73523a6853f47727582113480efece0e72f552a42ce49a26746e8d6b405ae87fadc7711a313f1865b90ac934486e05d2ed6868a5b5c4e13010eec98f917308c6fe5e9c6816c045f4640aea37804278a600cede11aee2bb591224edd0524bda56ee2d4d64c8a29c664edb006f4f42855f3868f272e94d8648d2431c0e95f6a55802c18d5938497b6b5c5aa37e37597a6782ca55a2948ceededd45e63537f4f1985f45653dbb118a0e1108eca228973b5c8fb48a1afeb649c46aec6259a649f0795c677ca492452c9fcb07969b6f851421252d30d6e160a350feb8baee6ccea79f54e0ebfae94c99eafa466964671b1fe3aa8585c83c28d9484444ba7d5a8a8e3178aedea00d292a53e3f0939b15bb7bee982e346410d5b064ec496409ba26e6a3b2182cff7b1955ba8f980d99590dfa0f2b690d1f1e5d8d178b1a64893dfcd242949ade66269336bc6c0440e9e4a120af59bfbbaabee32871ec1208915f63f91bdb1305045afeface4c7fc39e8eae7db8923b95aa01d4fee30d525664297305e569a3bfca01a767d47f6fdc0eb1b7706bc4547b1
          [1660218221.826837][17048:17053] CHIP:DMG:     buffer_ptr = 140277792657648
          [1660218221.826854][17048:17053] CHIP:DMG: }
          [1660218221.826870][17048:17053] CHIP:DMG:
          [1660218221.826979][17048:17053] CHIP:DMG: DAC/PAI (491) =
          [1660218221.827025][17048:17053] CHIP:DMG: {
          -----BEGIN CERTIFICATE-----
          MIIB5zCCAY6gAwIBAgIIac3xDenlTtEwCgYIKoZIzj0EAwIwPTElMCMGA1UEAwwc
          TWF0dGVyIERldiBQQUkgMHhGRkYxIG5vIFBJRDEUMBIGCisGAQQBgqJ8AgEMBEZG
          RjEwIBcNMjIwMjA1MDAwMDAwWhgPOTk5OTEyMzEyMzU5NTlaMFMxJTAjBgNVBAMM
          HE1hdHRlciBEZXYgREFDIDB4RkZGMS8weDgwMDExFDASBgorBgEEAYKifAIBDARG
          RkYxMRQwEgYKKwYBBAGConwCAgwEODAwMTBZMBMGByqGSM49AgEGCCqGSM49AwEH
          A0IABEY6xpNCkQoOVYj8b/Vrtj5i7M7LFI99TrA+5VJgFBV2fRalxmP3k+SRIyYL
          gpenzX58/HsxaznZjpDSk3dzjoKjYDBeMAwGA1UdEwEB/wQCMAAwDgYDVR0PAQH/
          BAQDAgeAMB0GA1UdDgQWBBSI3eezADgpMs/3NMBGJIEPRBaKbzAfBgNVHSMEGDAW
          gBRjVA5H9kscONE4hKRi0WwZXY/7PDAKBggqhkjOPQQDAgNHADBEAiABJ6J7S0Rh
          DuL83E0reIVWNmC8D3bxchntagjfsrPBzQIga1ngr0Xz6yqFuRnTVzFSjGAoxBUj
          lUXhCOTlTnCXE1M=
          -----END CERTIFICATE-----
          [1660218221.827089][17048:17053] CHIP:DMG: }
          [1660218221.827105][17048:17053] CHIP:DMG:
          [1660218221.827125][17048:17053] CHIP:DMG:
          [1660218221.827158][17048:17053] CHIP:DMG: Additional Fields =
          [1660218221.827173][17048:17053] CHIP:DMG: {
          [1660218221.827194][17048:17053] CHIP:DMG:     peer_address = UDP:[fe80::e65f:1ff:fe0f:2753%enp0s31f6]:5540
          [1660218221.827211][17048:17053] CHIP:DMG: }
          [1660218221.827226][17048:17053] CHIP:DMG:
          [1660218221.827257][17048:17053] CHIP:EM: Received message of type 0x9 with protocolId (0, 1) and MessageCounter:217571241 on exchange 41891i
          [1660218221.827276][17048:17053] CHIP:EM: Found matching exchange: 41891i, Delegate: 0x7f94f8003a48
          [1660218221.827310][17048:17053] CHIP:EM: Rxd Ack; Removing MessageCounter:228316047 from Retrans Table on exchange 41891i
          [1660218221.827326][17048:17053] CHIP:EM: Removed CHIP MessageCounter:228316047 from RetransTable on exchange 41891i
          [1660218221.827357][17048:17053] CHIP:DMG: ICR moving to [ResponseRe]
      disabled: true

    - label: "TH1 Sends CSRRequest command with a random 32-byte nonce"
      PICS: OPCREDS.S.C04.Rsp
      verification: |
          To get SCR Nonce give below command 2 times
          echo hex:$(hexdump -vn32 -e"4/4 "%08X" " /dev/urandom)

          ./chip-tool operationalcredentials csrrequest hex:A61BFCE6E2C6AAF48FDEC4BF9DCEF08EB65B976997D82BE5F359902982717603 1 0

          Verify the CSRResponse  in TH Log

          [1658223679.580697][6136:6141] CHIP:DMG: Received Command Response Data, Endpoint=0 Cluster=0x0000_003E Command=0x0000_0005
          [1658223679.580761][6136:6141] CHIP:TOO: Endpoint: 0 Cluster: 0x0000_003E Command 0x0000_0005
          [1658223679.580823][6136:6141] CHIP:TOO:   CSRResponse: {
          [1658223679.580875][6136:6141] CHIP:TOO:     NOCSRElements: 153001CB3081C83070020100300E310C300A060355040A0C034353523059301306072A8648CE3D020106082A8648CE3D030107034200047DA16C714034D3B96716F64DC0E742D007233212025E305AF6CE56DFA057718E149E52B39584456C8F954A1596B64F8BBC02E501276B962D4AB2C0A607D983C9A000300A06082A8648CE3D040302034800304502206FB78A61A7B0F021C396FEC1CCD6802129AC3EE5EA2727ABCCB19DBAEA7DEE1A022100A5C81ADC5D8BFAA5DB84A1261D8BBCEA5C26B24D4405F0B978E19B17D8458C9E300220A61BFCE6E2C6AAF48FDEC4BF9DCEF08EB65B976997D82BE5F35990298271760318
          [1658223679.580915][6136:6141] CHIP:TOO:     attestationSignature: EB731B40B20501AF32C468AA522948F7848D3AEDFA24D9A879575B4A265886C97109EE0DE1ECEB969B1A7F98F127DB4C275292B986BF8DA56EF7B16DA8EC8ABE
          [1658223679.580943][6136:6141] CHIP:TOO:    }

          Verify attestation signature is an octstr type and has maximum length of 64

          Example:
          EB731B40B20501AF32C468AA522948F7848D3AEDFA24D9A879575B4A265886C97109EE0DE1ECEB969B1A7F98F127DB4C275292B986BF8DA56EF7B16DA8EC8ABE
      disabled: true

    - label: "TH1 validates the attestation response"
      verification: |

      disabled: true

    - label:
          "TH1 obtains or generates the NOC, the Root CA Certificate and ICAC
          using the CSR elements from step 8 and selects an IPK. The
          certificates shall have their subjects padded with additional data
          such that they are each the maximum certificate size of 400 bytes when
          encoded in the MatterCertificateEncoding. Save RCAC as
          Root_CA_Certificate_TH1 Save ICAC as Intermediate_Certificate_TH1 Save
          NOC as Node_Operational_Certificate_TH1 Save IPK as IPK_TH1 Extract
          the RCAC public key and save as Root_Public_Key_TH1"
      verification: |

      disabled: true

    - label:
          "TH1 obtains or generates Root Certificate with a different Root CA ID
          and the corresponding ICAC, NOC and IPK using the CSR elements from
          step 8 Save RCAC as Root_CA_Certificate_TH1_2 Save ICAC as
          Intermediate_Certificate_TH1_2 Save NOC as
          Node_Operational_Certificate_TH1_2 Save IPK as IPK_TH1_2"
      verification: |

      disabled: true

    - label:
          "TH1 generates an INVALID Root Certificate where the signature does
          not match the public key and saves it as Root_CA_Malformed"
      verification: |

      disabled: true

    - label:
          "TH1 sends AddTrustedRootCertificate command to DUT to install
          Root_CA_Malformed"
      PICS: OPCREDS.S.C0b.Rsp
      verification: |

      disabled: true

    - label:
          "TH1 sends AddTrustedRootCertificate command to DUT with
          RootCACertificate set to Root_CA_Certificate_TH1"
      PICS: OPCREDS.S.C0b.Rsp
      verification: |

      disabled: true

    - label:
          "TH1 sends AddTrustedRootCertificate command to DUT again with the
          RootCACertificate field set to Root_CA_Certificate_TH1"
      PICS: OPCREDS.S.C0b.Rsp
      verification: |

      disabled: true

    - label:
          "TH1 sends AddTrustedRootCertificate command to DUT again with the
          RootCACertificate field set to Root_CA_Certificate_TH1_2"
      PICS: OPCREDS.S.C0b.Rsp
      verification: |

      disabled: true

    - label:
          "TH1 reads the TrustedRootCertificates list from DUT and saves as
          TrustedRootsList"
      PICS: OPCREDS.S.A0004
      verification: |

      disabled: true

    - label:
          "TH1 appends Root_CA_Certificate_TH1_2 to TrustedRootsList and writes
          the TrustedRootCertificates attribute with that value"
      PICS: OPCREDS.S.A0004
      verification: |

      disabled: true

    - label: "TH1 reads the TrustedRootCertificates list from DUT"
      PICS: OPCREDS.S.A0004
      verification: |

      disabled: true

    - label:
          "TH1 sends the AddNOC Command to DUT with the following fields:
          NOCValue as Node_Operational_Certificate_TH1_2 ICACValue as
          Intermediate_Certificate_TH1_2 IpkValue as IPK_TH1_2 CaseAdminSubject
          as the NodeID of TH1 AdminVendorId as the Vendor ID of TH1"
      PICS: OPCREDS.S.C06.Rsp
      verification: |

      disabled: true

    - label:
          "TH1 sends the AddNOC Command to DUT with the following fields:
          NOCValue as Node_Operational_Certificate_TH1 ICACValue as
          Intermediate_Certificate_TH1 IpkValue as IPK_TH1 CaseAdminSubject is
          an invalid NodeID (not an operational Node ID or Case Authenticated
          Tag - ex. 0) AdminVendorId as the Vendor ID of TH1"
      PICS: OPCREDS.S.C06.Rsp
      verification: |

      disabled: true

    - label:
          "TH1 sends the AddNOC Command to DUT with the following fields:
          NOCValue as Node_Operational_Certificate_TH1 ICACValue as
          Intermediate_Certificate_TH1 IpkValue as IPK_TH1 CaseAdminSubject as
          the NodeID of TH1 AdminVendorId as the Vendor ID of TH1"
      PICS: OPCREDS.S.C06.Rsp
      verification: |

      disabled: true

    - label: "TH1 saves the FabricIndex as FabricIndex_TH1 for future use"
      verification: |

      disabled: true

    - label:
          "TH1 sends the AddNOC Command to DUT with the following fields:
          NOCValue as Node_Operational_Certificate_TH1_1 ICACValue as
          Intermediate_Certificate_TH1_1 IpkValue as IPK_TH1_1 CaseAdminSubject
          as the NodeID of TH1 AdminVendorId as the Vendor ID of TH1"
      PICS: OPCREDS.S.C06.Rsp
      verification: |

      disabled: true

    - label:
          "TH1 reads the NOCs attribute from DUT using a non-fabric-filtered
          read and saves the list as NOClist"
      PICS: OPCREDS.S.A0000
      verification: |

      disabled: true

    - label:
          "TH1 appends a second list item to NOClist and writes that value to
          the NOCs attribute"
      PICS: OPCREDS.S.A0000
      verification: |

      disabled: true

    - label:
          "TH1 reads the NOCs attribute from DUT using a non-fabric-filtered
          read"
      PICS: OPCREDS.S.A0000
      verification: |

      disabled: true

    - label:
          "TH1 sends UpdateFabricLabel command with Label 1 as Label field to
          DUT"
      PICS: OPCREDS.S.C09.Rsp
      verification: |

      disabled: true

    - label:
          "TH1 reads the Fabrics Attribute from DUT using a non-fabric-filtered
          read and gets the FabricDescriptorStruct for which the FabricIndex
          field equals FabricIndex_TH1"
      verification: |

      disabled: true

    - label:
          "TH1 sends ArmFailSafe command to the DUT with ExpiryLengthSeconds
          field set to 0"
      PICS: CGEN.S.C00.Rsp && CGEN.S.C01.Tx
      verification: |

      disabled: true

    - label: "TH1 reconnects to the DUT over PASE"
      verification: |

      disabled: true

    - label: "TH1 reads the TrustedRootCertificates list from DUT"
      PICS: OPCREDS.S.A0004
      verification: |

      disabled: true

    - label:
          "TH1 reads the NOCs attribute from DUT using a non-fabric-filtered
          read"
      PICS: OPCREDS.S.A0000
      verification: |

      disabled: true

    - label:
          "TH1 reads the Fabrics attribute from the DUT using a
          non-fabric-filtered read"
      PICS: OPCREDS.S.A0001
      verification: |

      disabled: true

    - label:
          "TH1 fully commissions DUT onto the fabric, using
          Root_CA_Certificate_TH1 and the AddNOC parameters specified in step .
          This will update the value of FabricIndex_TH1 so that it references
          the fabric the DUT was just commissioned onto"
      verification: |

      disabled: true

    - label: "TH1 reads the TrustedRootCertificates list from DUT"
      PICS: OPCREDS.S.A0004
      verification: |

      disabled: true

    - label:
          "TH1 reads the NOCs attribute from DUT using a non-fabric-filtered
          read"
      PICS: OPCREDS.S.A0000
      verification: |

      disabled: true

    - label:
          "TH1 sends UpdateFabricLabel command with Label 1 as Label field to
          DUT"
      PICS: OPCREDS.S.C09.Rsp
      verification: |

      disabled: true

    - label:
          "TH1 reads the Fabrics Attribute from DUT using a non-fabric-filtered
          read and gets the FabricDescriptorStruct for which the FabricIndex
          field equals FabricIndex_TH1"
      PICS: OPCREDS.S.A0001
      verification: |

      disabled: true

    - label: "TH1 reads the ACL attribute from the Access Control cluster"
      PICS: OPCREDS.S.C06.Rsp
      verification: |

      disabled: true

    - label: "TH1 issues a KeySetRead command to the DUT for GroupKeySetID 0"
      PICS: OPCREDS.S.C06.Rsp
      verification: |

      disabled: true

    - label:
          "TH1 sends an OpenCommissioningWindow command to the Administrator
          Commissioning cluster"
      verification: |

      disabled: true

    - label:
          "TH2 begins the process of commissionning the DUT. After receiving the
          CSRResponse TH2 obtains or generates a NOC, the Root CA Certificate,
          ICAC and IPK. The certificates shall have their subjects padded with
          additional data such that they are each the maximum certificate size
          of 400 bytes when encoded in the MatterCertificateEncoding. Save RCAC
          as Root_CA_Certificate_TH2 Save ICAC as Intermediate_Certificate_TH2
          Save NOC as Node_Operational_Certificate_TH2 Save IPK as IPK_TH2
          Extract the RCAC public key and save as Root_Public_Key_TH2"
      verification: |

      disabled: true

    - label:
          "TH2 completes the commissioning process using Root_CA_Certificate_TH2
          when performing the AddTrustedRootCertificate command and sending
          AddNOC with the following parameters: NOCValue as
          Node_Operational_Certificate_TH2 ICACValue as
          Intermediate_Certificate_TH2 IpkValue as IPK_TH2 CaseAdminSubject as
          CAT_TH2 AdminVendorId as the Vendor ID of TH2"
      verification: |
          Not verifiable
      disabled: true

    - label: "TH2 reads the TrustedRootCertificates list from DUT"
      PICS: OPCREDS.S.A0004
      verification: |

      disabled: true

    - label:
          "TH2 reads the NOCs attribute from DUT using a non-fabric-filtered
          read"
      PICS: OPCREDS.S.A0000
      verification: |

      disabled: true

    - label:
          "TH2 sends UpdateFabricLabel command with Label 2 as Label field to
          DUT"
      PICS: OPCREDS.S.C09.Rsp
      verification: |

      disabled: true

    - label:
          "TH2 sends UpdateFabricLabel command with Label 1 as Label field to
          DUT"
      PICS: OPCREDS.S.C09.Rsp
      verification: |

      disabled: true

    - label: "Read the Fabrics List from DUT using a non-fabric-filtered read"
      PICS: OPCREDS.S.A0001
      verification: |

      disabled: true

    - label:
          "TH1 sends ArmFailSafe command to the DUT with the ExpiryLengthSeconds
          field set to 900"
      PICS: CGEN.S.C00.Rsp && CGEN.S.C01.Tx
      verification: |

      disabled: true

    - label:
          "TH1 sends AddTrustedRootCertificate command to DUT with
          RootCACertificate set to Root_CA_Certificate_TH1_2"
      PICS: OPCREDS.S.C0b.Rsp
      verification: |

      disabled: true

    - label:
          "TH1 sends the AddNOC Command to DUT with the following fields:
          NOCValue as Node_Operational_Certificate_TH1_2 ICACValue as
          Intermediate_Certificate_TH1_2 IpkValue as IPK_TH1_2 CaseAdminSubject
          as the NodeID of TH1 AdminVendorId as the Vendor ID of TH1"
      PICS: OPCREDS.S.C06.Rsp
      verification: |

      disabled: true

    - label: "TH1 Sends CSRRequest command with a random 32-byte nonce"
      PICS: OPCREDS.S.C04.Rsp
      verification: |

      disabled: true

    - label:
          "TH1 sends the AddNOC Command to DUT with the following fields:
          NOCValue as Node_Operational_Certificate_TH1_2 ICACValue as
          Intermediate_Certificate_TH1_2 IpkValue as IPK_TH1_2 CaseAdminSubject
          as the NodeID of TH1 AdminVendorId as the Vendor ID of TH1"
      PICS: OPCREDS.S.C06.Rsp
      verification: |

      disabled: true

    - label:
          "TH1 obtains or generates a NOC and ICAC using the CSR elements from
          step 55 with a different NodeID, but the same Root CA Certificate and
          fabric ID as step 10. Save as
          Node_Operational_Certificates_TH1_fabric_conflict and
          Intermediate_Certificate_TH1_fabric_conflict"
      verification: |

      disabled: true

    - label:
          "TH1 sends the AddNOC Command to DUT with the following fields:
          NOCValue as Node_Operational_Certificate_TH1_fabric_conflict ICACValue
          as Intermediate_Certificate_TH1_fabric_conflict CaseAdminSubject as
          the NodeID of TH1 AdminVendorId as the Vendor ID of TH1"
      PICS: OPCREDS.S.C06.Rsp
      verification: |

      disabled: true

    - label:
          "TH1 sends ArmFailSafe command to the DUT with ExpiryLengthSeconds set
          to 0"
      PICS: CGEN.S.C00.Rsp && CGEN.S.C01.Tx
      verification: |

      disabled: true

    - label: "TH1 reads the TrustedRootCertificates list from DUT"
      PICS: OPCREDS.S.A0004
      verification: |

      disabled: true

    - label:
          "TH1 sends ArmFailSafe command to the DUT with the ExpiryLengthSeconds
          field set to 900"
      PICS: CGEN.S.C00.Rsp && CGEN.S.C01.Tx
      verification: |

      disabled: true

    - label:
          "TH1 Sends CSRRequest command with a random 32-byte nonce and the
          IsForUpdateNOC field set to true"
      PICS: OPCREDS.S.C04.Rsp
      verification: |

      disabled: true

    - label:
          "TH1 obtains or generates a NOC, Root CA Certificate, ICAC using the
          CSR elements from the previous step Save RCAC as
          Root_CA_Certificate_TH1_3 Save ICAC as Intermediate_Certificate_TH1_3
          Save NOC as Node_Operational_Certificate_TH1_3"
      verification: |

      disabled: true

    - label:
          "TH1 sends AddTrustedRootCertificate command to DUT with
          RootCACertificate set to Root_CA_Certificate_TH1_3"
      PICS: OPCREDS.S.C0b.Rsp
      verification: |

      disabled: true

    - label:
          "TH1 sends the AddNOC Command to DUT with the following fields:
          NOCValue as Node_Operational_Certificate_TH1_3 ICACValue as
          Intermediate_Certificate_TH1_3 CaseAdminSubject as the NodeID of TH1
          AdminVendorId as the Vendor ID of TH1"
      PICS: OPCREDS.S.C06.Rsp
      verification: |

      disabled: true

    - label:
          "TH1 sends ArmFailSafe command to the DUT with ExpiryLengthSeconds set
          to 0"
      PICS: CGEN.S.C00.Rsp && CGEN.S.C01.Tx
      verification: |

      disabled: true

    - label:
          "TH1 sends ArmFailSafe command to the DUT with the ExpiryLengthSeconds
          field set to 900"
      PICS: CGEN.S.C00.Rsp && CGEN.S.C01.Tx
      verification: |

      disabled: true

    - label:
          "TH2 sends RemoveFabric command with Fabric Index as FabricIndexTH2 +
          5 (Invalid Fabric Index) to DUT"
      PICS: OPCREDS.S.C0a.Rsp
      verification: |

      disabled: true

    - label:
          "TH2 reads the Fabrics List from DUT using a non-fabric-filtered read"
      PICS: OPCREDS.S.A0001
      verification: |

      disabled: true

    - label:
          "TH2 sends RemoveFabric command with Fabric Index as FabricIndex_TH1
          (Valid Fabric Index) to DUT"
      PICS: OPCREDS.S.C0a.Rsp
      verification: |

      disabled: true

    - label:
          "TH2 reads the Fabrics List from DUT using a non-fabric-filtetered
          read"
      PICS: OPCREDS.S.A0001
      verification: |

      disabled: true

    - label: "TH2 sends a CommissioningComplete command to the DUT"
      verification: |

      disabled: true

    - label:
          "TH2 sends an OpenCommissioningWindow command to the Administrator
          Commissioning cluster"
      verification: |

      disabled: true

    - label:
          "TH1 fully commissions the DUT using subject-padded, 400 byte
          certificates"
      verification: |

      disabled: true

    - label:
          "Repeat steps 73 and 74 to fill the fabric table using the remaining
          test harnesses (TH3 through TH NumSupportedFabrics). Each test harness
          should commission the DUT using subject-padded, 400-byte certificates"
      verification: |

      disabled: true

    - label: "TH1 reads CommissionedFabrics attribute"
      PICS: OPCREDS.S.A0003
      verification: |

      disabled: true

    - label: "Repeat steps 73 and 74 with TH NumSupportedFabrics + 1"
      verification: |

      disabled: true

    - label:
          "TH1 reads the SubjectsPerAccessControlEntry attribute from the Access
          Control Cluster and saves the value as maxSubjects"
      verification: |

      disabled: true

    - label:
          "TH1 reads the TargetsPerAccessControlEntry attribute from the Access
          Control Cluster and saves the value as maxTargets"
      verification: |

      disabled: true

    - label:
          "TH1 reads the AccessControlEntriesPerFabric attribute from the Access
          Control Cluster and saves the value as maxEntries"
      verification: |

      disabled: true

    - label:
          "TH1 creates a valid list of AccessControlEntryStructs with maxEntries
          entries. Each AccessControlEntryStruct specifies maxSubjects subjects
          and maxTargets targets. TH1 writes this list to the AccessControl
          cluster ACL attribute"
      verification: |

      disabled: true

    - label:
          "Repeat step 81 for TH2 through TH NumSupportedFabrics to fill the ACL
          table"
      verification: |

      disabled: true
