7.1. Creating a CWT (Creazione di un CWT)
7.1. Creating a CWT (Creazione di un CWT)
Per creare un CWT si eseguono i passi seguenti. L'ordine dei passi non è significativo nei casi in cui non vi sono dipendenze tra gli ingressi e le uscite dei passi.
-
Creare un CWT Claims Set contenente i claim desiderati.
-
Sia il Message la rappresentazione binaria del CWT Claims Set.
-
Creare un COSE Header contenente l'insieme desiderato di Header Parameters. Il COSE Header DEVE essere valido secondo la specifica [RFC8152].
-
A seconda che il CWT sia firmato, sottoposto a MAC o crittografato, vi sono tre casi:
-
Se il CWT è firmato, creare un oggetto COSE_Sign/COSE_Sign1 usando il Message come COSE_Sign/COSE_Sign1 Payload; tutti i passi specificati in [RFC8152] per creare un oggetto COSE_Sign/COSE_Sign1 DEVONO essere seguiti.
-
Altrimenti, se il CWT è sottoposto a MAC, creare un oggetto COSE_Mac/COSE_Mac0 usando il Message come COSE_Mac/COSE_Mac0 Payload; tutti i passi specificati in [RFC8152] per creare un oggetto COSE_Mac/COSE_Mac0 DEVONO essere seguiti.
-
Altrimenti, se il CWT è un oggetto COSE_Encrypt/COSE_Encrypt0, creare un COSE_Encrypt/COSE_Encrypt0 usando il Message come plaintext per l'oggetto COSE_Encrypt/COSE_Encrypt0; tutti i passi specificati in [RFC8152] per creare un oggetto COSE_Encrypt/COSE_Encrypt0 DEVONO essere seguiti.
-
-
Se sarà eseguita un'operazione di firma, MAC o crittografia annidata, sia il Message il COSE_Sign/COSE_Sign1, COSE_Mac/COSE_Mac0 o COSE_Encrypt/COSE_Encrypt0 taggato, e tornare al Passo 3.
-
Se richiesto dall'applicazione, anteporre all'oggetto COSE il tag CBOR COSE appropriato per indicare il tipo dell'oggetto COSE. Se richiesto dall'applicazione, anteporre all'oggetto COSE il tag CBOR CWT per indicare che l'oggetto COSE è un CWT.