Appendix E. Negative Test Case for "crit" Header Parameter (Test case negativo per il parametro header "crit")
Gli implementatori possono utilizzare il seguente test case per verificare di gestire correttamente il parametro header "crit". Il seguente JWS dovrebbe essere rifiutato poiché contiene un parametro header critico non definito:
Esempio di JWS Protected Header:
{"alg":"HS256","crit":["http://example.invalid/UNDEFINED"],"http://example.invalid/UNDEFINED":true}
Questo JWS dovrebbe essere rifiutato perché:
- L'array "crit" contiene il valore "http://example.invalid/UNDEFINED"
- Questo parametro header è presente nell'header JOSE
- Ma l'implementazione non comprende questo parametro header di estensione
Secondo le disposizioni della sezione 4.1.11, se il destinatario non comprende e non supporta uno dei parametri header di estensione elencati nell'elenco "crit", il JWS è invalido.
Scopo del test
Questo test case garantisce che l'implementazione:
- Analizzi correttamente il parametro header "crit"
- Validi tutti i parametri header elencati nell'array "crit"
- Rifiuti i JWS contenenti parametri header critici sconosciuti
- Implementi i requisiti di sicurezza specificati nella sezione 4.1.11
L'implementazione deve (MUST) rifiutare questo JWS per garantire una corretta gestione dei parametri header critici e prevenire potenziali vulnerabilità di sicurezza.