Passa al contenuto principale

5. Implementazione di esempio (Sample Implementation)

Il seguente codice implementa i calcoli di H(A1), H(A2), request-digest e response-digest, nonché un programma di test che calcola i valori utilizzati negli esempi nella sezione 3.5. Utilizza l'implementazione MD5 da RFC 1321.

Nota: Questa sezione contiene codice di esempio in linguaggio C che dimostra come implementare i calcoli principali per l'autenticazione digest (Digest Authentication). Gli esempi di codice includono:

  • digcalc.h - File header che definisce strutture dati e dichiarazioni di funzioni richieste per i calcoli dell'autenticazione digest
  • digcalc.c - File di implementazione contenente le implementazioni concrete dei calcoli H(A1) e della risposta
  • digtest.c - Programma di test che verifica la correttezza dell'implementazione

Questi esempi di codice dimostrano:

  1. Come calcolare il valore H(A1) (hash di nome utente, realm e password)
  2. Come calcolare request-digest e response-digest
  3. L'applicazione dell'algoritmo MD5 nell'autenticazione digest
  4. Come gestire diverse opzioni qop (qualità della protezione)

Punti chiave dell'implementazione:

  • Utilizza l'algoritmo MD5 per i calcoli hash
  • Gestisce correttamente la conversione esadecimale
  • Supporta sia l'algoritmo "MD5" che "MD5-sess"
  • Supporta sia i valori qop "auth" che "auth-int"

Per l'implementazione completa del codice C, si prega di fare riferimento alla sezione 5 del testo originale RFC 2617.