Passa al contenuto principale

4. PureEdDSA, HashEdDSA, and Naming

4. PureEdDSA, HashEdDSA, and Naming (PureEdDSA, HashEdDSA e denominazione)

Uno dei parametri dell'algoritmo EdDSA è la funzione "prehash". Questa può essere la funzione identità, risultando in un algoritmo chiamato PureEdDSA, o una funzione hash resistente alle collisioni come SHA-512, risultando in un algoritmo chiamato HashEdDSA.

La scelta di quale variante utilizzare dipende da quale proprietà è ritenuta più importante tra 1) resilienza alle collisioni e 2) un'interfaccia a passaggio singolo per creare firme. La proprietà di resilienza alle collisioni significa che EdDSA è sicuro anche se è fattibile calcolare collisioni per la funzione hash. La proprietà dell'interfaccia a passaggio singolo significa che è richiesto un solo passaggio sul messaggio di input per creare una firma. PureEdDSA richiede due passaggi sull'input. Molte API, protocolli e ambienti esistenti presumono che gli algoritmi di firma digitale necessitino di un solo passaggio sull'input e possono avere preoccupazioni di API o larghezza di banda per supportare qualcos'altro.

Si noti che la verifica a passaggio singolo non è possibile con la maggior parte degli usi delle firme, indipendentemente dall'algoritmo di firma scelto. Questo perché la maggior parte delle volte non si può elaborare il messaggio finché la firma non è validata, il che richiede un passaggio sull'intero messaggio.

Questo documento specifica i parametri che risultano nelle varianti HashEdDSA Ed25519ph ed Ed448ph e nelle varianti PureEdDSA Ed25519 ed Ed448.