Passa al contenuto principale

Appendix A. Sviluppo del protocollo (Protocol Development)

Le prime versioni di questo protocollo usavano tipi di media e strutture URI diversi. Il progetto attuale si è evoluto sulla base dell'esperienza di implementazione e del feedback della comunità IETF.

Le proposte iniziali consideravano l'uso di uno schema URI dedicato, ad esempio dns-over-https:, invece dell'URI standard https:. Si è però deciso di usare l'URI standard https: per integrarsi meglio con l'infrastruttura HTTP esistente e rendere il traffico DoH più difficile da distinguere dal normale traffico HTTPS.

Anche la scelta del tipo di media ha attraversato diverse iterazioni. Il tipo di media application/dns-message è stato scelto per indicare esplicitamente che il contenuto è un messaggio DNS Wire Format. Sono stati considerati altri formati, incluso JSON, ma si è deciso di usare DNS Wire Format come formato predefinito perché è compatibile con l'infrastruttura DNS esistente ed è più efficiente.

Il meccanismo del modello URI è stato aggiunto per offrire flessibilità, permettendo ai server DoH di usare percorsi URI diversi mantenendo la compatibilità con il protocollo. Ciò rende anche più semplice aggiungere in futuro nuovi parametri e funzionalità.

I metodi POST e GET sono entrambi inclusi per supportare casi d'uso diversi. POST è spesso più efficiente perché evita il costo della codifica base64, mentre GET è più adatto alle cache HTTP e può essere più facile da implementare in alcuni ambienti.

Il supporto HTTP/2 è stato considerato importante perché offre multiplexing e altri vantaggi prestazionali. Sebbene sia possibile usare anche HTTP/1.1, HTTP/2 o versioni successive sono fortemente raccomandati per ottenere le migliori prestazioni.

Le considerazioni di sicurezza e privacy sono state centrali durante tutto lo sviluppo. L'uso obbligatorio di HTTPS e dell'autenticazione del server serve a prevenire attacchi passivi e alcuni tipi di attacchi attivi. Tuttavia, è stato anche riconosciuto che DoH non risolve tutti i problemi di sicurezza e privacy, in particolare quelli legati al server DoH stesso.

Lo sviluppo di questo protocollo ha coinvolto un'ampia collaborazione tra contributori delle comunità DNS, HTTP e sicurezza. Questa collaborazione tra comunità è stata essenziale per assicurare che il protocollo soddisfi le esigenze di tutte le parti interessate.