Passa al contenuto principale

Appendice E. Migrazione da RFC 3230

I digest HTTP vengono calcolati applicando un algoritmo di hash ai dati di input. [RFC3230] definiva i dati di input come un'"istanza" (instance), termine anch'esso definito nel documento. Il concetto di istanza è stato successivamente sostituito dal termine semantico HTTP "rappresentazione" (representation). È noto che alcune implementazioni di [RFC3230] hanno interpretato erroneamente "istanza" come contenuto HTTP. L'utilizzo del contenuto per il campo Digest è un errore che porta a problemi di interoperabilità tra peer che implementano [RFC3230].

[RFC3230] era destinato esclusivamente all'utilizzo di ciò che HTTP ora definisce come dati di rappresentazione selezionati (selected representation data). Il concetto semantico di digest e rappresentazione sono spiegati insieme alla definizione del campo Repr-Digest (Sezione 3).

Sebbene la sintassi di Digest e Repr-Digest sia diversa, le considerazioni e gli esempi forniti in questo documento per Repr-Digest si applicano ugualmente a Digest poiché operano sugli stessi dati di input; vedere Sezioni 3.1, 6 e 6.3.

[RFC3230] non poteva mai comunicare il digest del contenuto del messaggio HTTP nel campo Digest; Content-Digest ora fornisce tale capacità.

[RFC3230] permetteva agli algoritmi di definire il proprio formato di codifica dell'output per l'uso con il campo Digest. Ciò ha comportato una mescolanza di formati come base64, hex o decimale. In virtù dell'utilizzo dei Campi Strutturati (Structured Fields), Content-Digest e Repr-Digest utilizzano un unico formato di codifica. Ulteriori spiegazioni ed esempi sono forniti nell'Appendice D.