Skip to content

CMW in ASN.1

Thomas Fossati edited this page Oct 31, 2024 · 5 revisions

Proposal (with ASN.1 fixes from Carl)

  1. Reserve an arc somewhere under SMI (for example, 1.3.6.1.5.5.19 to mean "RATS", and under that a 1.3.6.1.5.5.19.1 to mean CMW auto-generated OIDs);
  2. Define an ON() function that automatically generates OIDs given a CoAP Content-Format under the aforementioned arc, e.g., ON(cf) = 1.3.6.1.5.5.19.1.${cf};
  3. Define CMW serialisations in ASN.1:
CMWRecord := SEQUENCE {
  type OBJECT IDENTIFIER, -- derived from C-F using ON()
  value OCTET STRING,
  ind OPTIONAL CMType
}

CMType := BIT STRING {
  referenceValues(0),
  endorsements(1),
  evidence(2),
  attestationResults(3)
}

CMWCollection := SEQUENCE OF CWMCollectionNode

CWMCollectionNode := SEQUENCE {
  label UTF8String,
  item CMWLeafOrRoot
}

CMWLeafOrRoot := CHOICE {
  leaf CMWRecord,
  root [0] CMWCollectionNode
}
Clone this wiki locally