Skip to content

Commit 9566661

Browse files
tcarmelveilleuxgmarcosb
authored andcommitted
Add VID Verification to ZAP XML (project-chip#37640)
* Add VID Verification commands to ZAP XML Regen Zap * Regen ZAP again
1 parent 30c1588 commit 9566661

File tree

140 files changed

+4406
-256
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

140 files changed

+4406
-256
lines changed

examples/air-purifier-app/air-purifier-common/air-purifier-app.matter

+25-2
Original file line numberDiff line numberDiff line change
@@ -1228,12 +1228,14 @@ cluster OperationalCredentials = 62 {
12281228
fabric_id fabricID = 3;
12291229
node_id nodeID = 4;
12301230
char_string<32> label = 5;
1231+
optional octet_string<85> vidVerificationStatement = 6;
12311232
fabric_idx fabricIndex = 254;
12321233
}
12331234

12341235
fabric_scoped struct NOCStruct {
1235-
fabric_sensitive octet_string noc = 1;
1236-
nullable fabric_sensitive octet_string icac = 2;
1236+
octet_string noc = 1;
1237+
nullable octet_string icac = 2;
1238+
optional octet_string vvsc = 3;
12371239
fabric_idx fabricIndex = 254;
12381240
}
12391241

@@ -1308,6 +1310,23 @@ cluster OperationalCredentials = 62 {
13081310
octet_string rootCACertificate = 0;
13091311
}
13101312

1313+
request struct SetVidVerificationStatementRequest {
1314+
optional vendor_id vendorID = 0;
1315+
optional octet_string vidVerificationStatement = 1;
1316+
optional octet_string vvsc = 2;
1317+
}
1318+
1319+
request struct SignVidVerificationRequestRequest {
1320+
fabric_idx fabricIndex = 0;
1321+
octet_string<32> clientChallenge = 1;
1322+
}
1323+
1324+
response struct SignVidVerificationResponse = 14 {
1325+
fabric_idx fabricIndex = 0;
1326+
int8u fabricBindingVersion = 1;
1327+
octet_string signature = 2;
1328+
}
1329+
13111330
/** Sender is requesting attestation information from the receiver. */
13121331
command access(invoke: administer) AttestationRequest(AttestationRequestRequest): AttestationResponse = 0;
13131332
/** Sender is requesting a device attestation certificate from the receiver. */
@@ -1324,6 +1343,10 @@ cluster OperationalCredentials = 62 {
13241343
command access(invoke: administer) RemoveFabric(RemoveFabricRequest): NOCResponse = 10;
13251344
/** This command SHALL add a Trusted Root CA Certificate, provided as its CHIP Certificate representation. */
13261345
command access(invoke: administer) AddTrustedRootCertificate(AddTrustedRootCertificateRequest): DefaultSuccess = 11;
1346+
/** This command SHALL be used to update any of the accessing fabric's associated VendorID, VidVerificatioNStatement or VVSC (Vendor Verification Signing Certificate). */
1347+
fabric command access(invoke: administer) SetVidVerificationStatement(SetVidVerificationStatementRequest): DefaultSuccess = 12;
1348+
/** This command SHALL be used to request that the server authenticate the fabric associated with the FabricIndex given. */
1349+
command access(invoke: administer) SignVidVerificationRequest(SignVidVerificationRequestRequest): SignVidVerificationResponse = 13;
13271350
}
13281351

13291352
/** The Group Key Management Cluster is the mechanism by which group keys are managed. */

examples/air-quality-sensor-app/air-quality-sensor-common/air-quality-sensor-app.matter

+25-2
Original file line numberDiff line numberDiff line change
@@ -1503,12 +1503,14 @@ cluster OperationalCredentials = 62 {
15031503
fabric_id fabricID = 3;
15041504
node_id nodeID = 4;
15051505
char_string<32> label = 5;
1506+
optional octet_string<85> vidVerificationStatement = 6;
15061507
fabric_idx fabricIndex = 254;
15071508
}
15081509

15091510
fabric_scoped struct NOCStruct {
1510-
fabric_sensitive octet_string noc = 1;
1511-
nullable fabric_sensitive octet_string icac = 2;
1511+
octet_string noc = 1;
1512+
nullable octet_string icac = 2;
1513+
optional octet_string vvsc = 3;
15121514
fabric_idx fabricIndex = 254;
15131515
}
15141516

@@ -1583,6 +1585,23 @@ cluster OperationalCredentials = 62 {
15831585
octet_string rootCACertificate = 0;
15841586
}
15851587

1588+
request struct SetVidVerificationStatementRequest {
1589+
optional vendor_id vendorID = 0;
1590+
optional octet_string vidVerificationStatement = 1;
1591+
optional octet_string vvsc = 2;
1592+
}
1593+
1594+
request struct SignVidVerificationRequestRequest {
1595+
fabric_idx fabricIndex = 0;
1596+
octet_string<32> clientChallenge = 1;
1597+
}
1598+
1599+
response struct SignVidVerificationResponse = 14 {
1600+
fabric_idx fabricIndex = 0;
1601+
int8u fabricBindingVersion = 1;
1602+
octet_string signature = 2;
1603+
}
1604+
15861605
/** Sender is requesting attestation information from the receiver. */
15871606
command access(invoke: administer) AttestationRequest(AttestationRequestRequest): AttestationResponse = 0;
15881607
/** Sender is requesting a device attestation certificate from the receiver. */
@@ -1599,6 +1618,10 @@ cluster OperationalCredentials = 62 {
15991618
command access(invoke: administer) RemoveFabric(RemoveFabricRequest): NOCResponse = 10;
16001619
/** This command SHALL add a Trusted Root CA Certificate, provided as its CHIP Certificate representation. */
16011620
command access(invoke: administer) AddTrustedRootCertificate(AddTrustedRootCertificateRequest): DefaultSuccess = 11;
1621+
/** This command SHALL be used to update any of the accessing fabric's associated VendorID, VidVerificatioNStatement or VVSC (Vendor Verification Signing Certificate). */
1622+
fabric command access(invoke: administer) SetVidVerificationStatement(SetVidVerificationStatementRequest): DefaultSuccess = 12;
1623+
/** This command SHALL be used to request that the server authenticate the fabric associated with the FabricIndex given. */
1624+
command access(invoke: administer) SignVidVerificationRequest(SignVidVerificationRequestRequest): SignVidVerificationResponse = 13;
16021625
}
16031626

16041627
/** The Group Key Management Cluster is the mechanism by which group keys are managed. */

examples/all-clusters-app/all-clusters-common/all-clusters-app.matter

+25-2
Original file line numberDiff line numberDiff line change
@@ -2657,12 +2657,14 @@ cluster OperationalCredentials = 62 {
26572657
fabric_id fabricID = 3;
26582658
node_id nodeID = 4;
26592659
char_string<32> label = 5;
2660+
optional octet_string<85> vidVerificationStatement = 6;
26602661
fabric_idx fabricIndex = 254;
26612662
}
26622663

26632664
fabric_scoped struct NOCStruct {
2664-
fabric_sensitive octet_string noc = 1;
2665-
nullable fabric_sensitive octet_string icac = 2;
2665+
octet_string noc = 1;
2666+
nullable octet_string icac = 2;
2667+
optional octet_string vvsc = 3;
26662668
fabric_idx fabricIndex = 254;
26672669
}
26682670

@@ -2737,6 +2739,23 @@ cluster OperationalCredentials = 62 {
27372739
octet_string rootCACertificate = 0;
27382740
}
27392741

2742+
request struct SetVidVerificationStatementRequest {
2743+
optional vendor_id vendorID = 0;
2744+
optional octet_string vidVerificationStatement = 1;
2745+
optional octet_string vvsc = 2;
2746+
}
2747+
2748+
request struct SignVidVerificationRequestRequest {
2749+
fabric_idx fabricIndex = 0;
2750+
octet_string<32> clientChallenge = 1;
2751+
}
2752+
2753+
response struct SignVidVerificationResponse = 14 {
2754+
fabric_idx fabricIndex = 0;
2755+
int8u fabricBindingVersion = 1;
2756+
octet_string signature = 2;
2757+
}
2758+
27402759
/** Sender is requesting attestation information from the receiver. */
27412760
command access(invoke: administer) AttestationRequest(AttestationRequestRequest): AttestationResponse = 0;
27422761
/** Sender is requesting a device attestation certificate from the receiver. */
@@ -2753,6 +2772,10 @@ cluster OperationalCredentials = 62 {
27532772
command access(invoke: administer) RemoveFabric(RemoveFabricRequest): NOCResponse = 10;
27542773
/** This command SHALL add a Trusted Root CA Certificate, provided as its CHIP Certificate representation. */
27552774
command access(invoke: administer) AddTrustedRootCertificate(AddTrustedRootCertificateRequest): DefaultSuccess = 11;
2775+
/** This command SHALL be used to update any of the accessing fabric's associated VendorID, VidVerificatioNStatement or VVSC (Vendor Verification Signing Certificate). */
2776+
fabric command access(invoke: administer) SetVidVerificationStatement(SetVidVerificationStatementRequest): DefaultSuccess = 12;
2777+
/** This command SHALL be used to request that the server authenticate the fabric associated with the FabricIndex given. */
2778+
command access(invoke: administer) SignVidVerificationRequest(SignVidVerificationRequestRequest): SignVidVerificationResponse = 13;
27562779
}
27572780

27582781
/** The Group Key Management Cluster is the mechanism by which group keys are managed. */

examples/all-clusters-minimal-app/all-clusters-common/all-clusters-minimal-app.matter

+25-2
Original file line numberDiff line numberDiff line change
@@ -2424,12 +2424,14 @@ cluster OperationalCredentials = 62 {
24242424
fabric_id fabricID = 3;
24252425
node_id nodeID = 4;
24262426
char_string<32> label = 5;
2427+
optional octet_string<85> vidVerificationStatement = 6;
24272428
fabric_idx fabricIndex = 254;
24282429
}
24292430

24302431
fabric_scoped struct NOCStruct {
2431-
fabric_sensitive octet_string noc = 1;
2432-
nullable fabric_sensitive octet_string icac = 2;
2432+
octet_string noc = 1;
2433+
nullable octet_string icac = 2;
2434+
optional octet_string vvsc = 3;
24332435
fabric_idx fabricIndex = 254;
24342436
}
24352437

@@ -2504,6 +2506,23 @@ cluster OperationalCredentials = 62 {
25042506
octet_string rootCACertificate = 0;
25052507
}
25062508

2509+
request struct SetVidVerificationStatementRequest {
2510+
optional vendor_id vendorID = 0;
2511+
optional octet_string vidVerificationStatement = 1;
2512+
optional octet_string vvsc = 2;
2513+
}
2514+
2515+
request struct SignVidVerificationRequestRequest {
2516+
fabric_idx fabricIndex = 0;
2517+
octet_string<32> clientChallenge = 1;
2518+
}
2519+
2520+
response struct SignVidVerificationResponse = 14 {
2521+
fabric_idx fabricIndex = 0;
2522+
int8u fabricBindingVersion = 1;
2523+
octet_string signature = 2;
2524+
}
2525+
25072526
/** Sender is requesting attestation information from the receiver. */
25082527
command access(invoke: administer) AttestationRequest(AttestationRequestRequest): AttestationResponse = 0;
25092528
/** Sender is requesting a device attestation certificate from the receiver. */
@@ -2520,6 +2539,10 @@ cluster OperationalCredentials = 62 {
25202539
command access(invoke: administer) RemoveFabric(RemoveFabricRequest): NOCResponse = 10;
25212540
/** This command SHALL add a Trusted Root CA Certificate, provided as its CHIP Certificate representation. */
25222541
command access(invoke: administer) AddTrustedRootCertificate(AddTrustedRootCertificateRequest): DefaultSuccess = 11;
2542+
/** This command SHALL be used to update any of the accessing fabric's associated VendorID, VidVerificatioNStatement or VVSC (Vendor Verification Signing Certificate). */
2543+
fabric command access(invoke: administer) SetVidVerificationStatement(SetVidVerificationStatementRequest): DefaultSuccess = 12;
2544+
/** This command SHALL be used to request that the server authenticate the fabric associated with the FabricIndex given. */
2545+
command access(invoke: administer) SignVidVerificationRequest(SignVidVerificationRequestRequest): SignVidVerificationResponse = 13;
25232546
}
25242547

25252548
/** The Group Key Management Cluster is the mechanism by which group keys are managed. */

examples/bridge-app/bridge-common/bridge-app.matter

+25-2
Original file line numberDiff line numberDiff line change
@@ -1913,12 +1913,14 @@ cluster OperationalCredentials = 62 {
19131913
fabric_id fabricID = 3;
19141914
node_id nodeID = 4;
19151915
char_string<32> label = 5;
1916+
optional octet_string<85> vidVerificationStatement = 6;
19161917
fabric_idx fabricIndex = 254;
19171918
}
19181919

19191920
fabric_scoped struct NOCStruct {
1920-
fabric_sensitive octet_string noc = 1;
1921-
nullable fabric_sensitive octet_string icac = 2;
1921+
octet_string noc = 1;
1922+
nullable octet_string icac = 2;
1923+
optional octet_string vvsc = 3;
19221924
fabric_idx fabricIndex = 254;
19231925
}
19241926

@@ -1993,6 +1995,23 @@ cluster OperationalCredentials = 62 {
19931995
octet_string rootCACertificate = 0;
19941996
}
19951997

1998+
request struct SetVidVerificationStatementRequest {
1999+
optional vendor_id vendorID = 0;
2000+
optional octet_string vidVerificationStatement = 1;
2001+
optional octet_string vvsc = 2;
2002+
}
2003+
2004+
request struct SignVidVerificationRequestRequest {
2005+
fabric_idx fabricIndex = 0;
2006+
octet_string<32> clientChallenge = 1;
2007+
}
2008+
2009+
response struct SignVidVerificationResponse = 14 {
2010+
fabric_idx fabricIndex = 0;
2011+
int8u fabricBindingVersion = 1;
2012+
octet_string signature = 2;
2013+
}
2014+
19962015
/** Sender is requesting attestation information from the receiver. */
19972016
command access(invoke: administer) AttestationRequest(AttestationRequestRequest): AttestationResponse = 0;
19982017
/** Sender is requesting a device attestation certificate from the receiver. */
@@ -2009,6 +2028,10 @@ cluster OperationalCredentials = 62 {
20092028
command access(invoke: administer) RemoveFabric(RemoveFabricRequest): NOCResponse = 10;
20102029
/** This command SHALL add a Trusted Root CA Certificate, provided as its CHIP Certificate representation. */
20112030
command access(invoke: administer) AddTrustedRootCertificate(AddTrustedRootCertificateRequest): DefaultSuccess = 11;
2031+
/** This command SHALL be used to update any of the accessing fabric's associated VendorID, VidVerificatioNStatement or VVSC (Vendor Verification Signing Certificate). */
2032+
fabric command access(invoke: administer) SetVidVerificationStatement(SetVidVerificationStatementRequest): DefaultSuccess = 12;
2033+
/** This command SHALL be used to request that the server authenticate the fabric associated with the FabricIndex given. */
2034+
command access(invoke: administer) SignVidVerificationRequest(SignVidVerificationRequestRequest): SignVidVerificationResponse = 13;
20122035
}
20132036

20142037
/** The Group Key Management Cluster is the mechanism by which group keys are managed. */

examples/chef/devices/noip_rootnode_dimmablelight_bCwGYSDpoe.matter

+25-2
Original file line numberDiff line numberDiff line change
@@ -1665,12 +1665,14 @@ cluster OperationalCredentials = 62 {
16651665
fabric_id fabricID = 3;
16661666
node_id nodeID = 4;
16671667
char_string<32> label = 5;
1668+
optional octet_string<85> vidVerificationStatement = 6;
16681669
fabric_idx fabricIndex = 254;
16691670
}
16701671

16711672
fabric_scoped struct NOCStruct {
1672-
fabric_sensitive octet_string noc = 1;
1673-
nullable fabric_sensitive octet_string icac = 2;
1673+
octet_string noc = 1;
1674+
nullable octet_string icac = 2;
1675+
optional octet_string vvsc = 3;
16741676
fabric_idx fabricIndex = 254;
16751677
}
16761678

@@ -1745,6 +1747,23 @@ cluster OperationalCredentials = 62 {
17451747
octet_string rootCACertificate = 0;
17461748
}
17471749

1750+
request struct SetVidVerificationStatementRequest {
1751+
optional vendor_id vendorID = 0;
1752+
optional octet_string vidVerificationStatement = 1;
1753+
optional octet_string vvsc = 2;
1754+
}
1755+
1756+
request struct SignVidVerificationRequestRequest {
1757+
fabric_idx fabricIndex = 0;
1758+
octet_string<32> clientChallenge = 1;
1759+
}
1760+
1761+
response struct SignVidVerificationResponse = 14 {
1762+
fabric_idx fabricIndex = 0;
1763+
int8u fabricBindingVersion = 1;
1764+
octet_string signature = 2;
1765+
}
1766+
17481767
/** Sender is requesting attestation information from the receiver. */
17491768
command access(invoke: administer) AttestationRequest(AttestationRequestRequest): AttestationResponse = 0;
17501769
/** Sender is requesting a device attestation certificate from the receiver. */
@@ -1761,6 +1780,10 @@ cluster OperationalCredentials = 62 {
17611780
command access(invoke: administer) RemoveFabric(RemoveFabricRequest): NOCResponse = 10;
17621781
/** This command SHALL add a Trusted Root CA Certificate, provided as its CHIP Certificate representation. */
17631782
command access(invoke: administer) AddTrustedRootCertificate(AddTrustedRootCertificateRequest): DefaultSuccess = 11;
1783+
/** This command SHALL be used to update any of the accessing fabric's associated VendorID, VidVerificatioNStatement or VVSC (Vendor Verification Signing Certificate). */
1784+
fabric command access(invoke: administer) SetVidVerificationStatement(SetVidVerificationStatementRequest): DefaultSuccess = 12;
1785+
/** This command SHALL be used to request that the server authenticate the fabric associated with the FabricIndex given. */
1786+
command access(invoke: administer) SignVidVerificationRequest(SignVidVerificationRequestRequest): SignVidVerificationResponse = 13;
17641787
}
17651788

17661789
/** The Group Key Management Cluster is the mechanism by which group keys are managed. */

examples/chef/devices/rootnode_airpurifier_73a6fe2651.matter

+25-2
Original file line numberDiff line numberDiff line change
@@ -1337,12 +1337,14 @@ cluster OperationalCredentials = 62 {
13371337
fabric_id fabricID = 3;
13381338
node_id nodeID = 4;
13391339
char_string<32> label = 5;
1340+
optional octet_string<85> vidVerificationStatement = 6;
13401341
fabric_idx fabricIndex = 254;
13411342
}
13421343

13431344
fabric_scoped struct NOCStruct {
1344-
fabric_sensitive octet_string noc = 1;
1345-
nullable fabric_sensitive octet_string icac = 2;
1345+
octet_string noc = 1;
1346+
nullable octet_string icac = 2;
1347+
optional octet_string vvsc = 3;
13461348
fabric_idx fabricIndex = 254;
13471349
}
13481350

@@ -1417,6 +1419,23 @@ cluster OperationalCredentials = 62 {
14171419
octet_string rootCACertificate = 0;
14181420
}
14191421

1422+
request struct SetVidVerificationStatementRequest {
1423+
optional vendor_id vendorID = 0;
1424+
optional octet_string vidVerificationStatement = 1;
1425+
optional octet_string vvsc = 2;
1426+
}
1427+
1428+
request struct SignVidVerificationRequestRequest {
1429+
fabric_idx fabricIndex = 0;
1430+
octet_string<32> clientChallenge = 1;
1431+
}
1432+
1433+
response struct SignVidVerificationResponse = 14 {
1434+
fabric_idx fabricIndex = 0;
1435+
int8u fabricBindingVersion = 1;
1436+
octet_string signature = 2;
1437+
}
1438+
14201439
/** Sender is requesting attestation information from the receiver. */
14211440
command access(invoke: administer) AttestationRequest(AttestationRequestRequest): AttestationResponse = 0;
14221441
/** Sender is requesting a device attestation certificate from the receiver. */
@@ -1433,6 +1452,10 @@ cluster OperationalCredentials = 62 {
14331452
command access(invoke: administer) RemoveFabric(RemoveFabricRequest): NOCResponse = 10;
14341453
/** This command SHALL add a Trusted Root CA Certificate, provided as its CHIP Certificate representation. */
14351454
command access(invoke: administer) AddTrustedRootCertificate(AddTrustedRootCertificateRequest): DefaultSuccess = 11;
1455+
/** This command SHALL be used to update any of the accessing fabric's associated VendorID, VidVerificatioNStatement or VVSC (Vendor Verification Signing Certificate). */
1456+
fabric command access(invoke: administer) SetVidVerificationStatement(SetVidVerificationStatementRequest): DefaultSuccess = 12;
1457+
/** This command SHALL be used to request that the server authenticate the fabric associated with the FabricIndex given. */
1458+
command access(invoke: administer) SignVidVerificationRequest(SignVidVerificationRequestRequest): SignVidVerificationResponse = 13;
14361459
}
14371460

14381461
/** The Group Key Management Cluster is the mechanism by which group keys are managed. */

0 commit comments

Comments
 (0)