Passa al contenuto principale

5. Key Derivation Functions (Funzioni di Derivazione delle Chiavi)

5. Key Derivation Functions (Funzioni di Derivazione delle Chiavi)

Una funzione di derivazione delle chiavi produce una chiave derivata da una chiave base e altri parametri. In una funzione di derivazione delle chiavi basata su password, la chiave base è una password e gli altri parametri sono un valore di salt e un conteggio delle iterazioni, come descritto nella Sezione 3.

L'applicazione primaria delle funzioni di derivazione delle chiavi basate su password definite qui è negli schemi di cifratura nella Sezione 6 e nello schema di autenticazione dei messaggi nella Sezione 7. Altre applicazioni sono certamente possibili, da qui la definizione indipendente di queste funzioni.

Nella presente sezione sono specificate due funzioni: PBKDF1 e PBKDF2. PBKDF2 è raccomandato per le nuove applicazioni; PBKDF1 è incluso solo per la compatibilità con le applicazioni esistenti e non è raccomandato per le nuove applicazioni.

Un'applicazione tipica delle funzioni di derivazione delle chiavi definite qui potrebbe includere i seguenti passaggi:

  1. Selezionare un salt S e un conteggio delle iterazioni c, come descritto nella Sezione 4.

  2. Selezionare una lunghezza in ottetti per la chiave derivata, dkLen.

  3. Applicare la funzione di derivazione delle chiavi alla password, al salt, al conteggio delle iterazioni e alla lunghezza della chiave per produrre una chiave derivata.

  4. Fornire in output la chiave derivata.

È possibile derivare un numero qualsiasi di chiavi da una password variando il salt, come descritto nella Sezione 3.