4. PureEdDSA, HashEdDSA, and Naming
4. PureEdDSA, HashEdDSA, and Naming (PureEdDSA, HashEdDSA und Benennung)
Einer der Parameter des EdDSA-Algorithmus ist die "Prehash"-Funktion. Dies kann die Identitätsfunktion sein, was zu einem Algorithmus namens PureEdDSA führt, oder eine kollisionsresistente Hash-Funktion wie SHA-512, was zu einem Algorithmus namens HashEdDSA führt.
Die Wahl, welche Variante verwendet werden soll, hängt davon ab, welche Eigenschaft zwischen 1) Kollisionsresilienz und 2) einer Single-Pass-Schnittstelle zum Erstellen von Signaturen als wichtiger erachtet wird. Die Kollisionsresilienz-Eigenschaft bedeutet, dass EdDSA sicher ist, selbst wenn es möglich ist, Kollisionen für die Hash-Funktion zu berechnen. Die Single-Pass-Schnittstellen-Eigenschaft bedeutet, dass nur ein Durchlauf über die Eingabenachricht erforderlich ist, um eine Signatur zu erstellen. PureEdDSA erfordert zwei Durchläufe über die Eingabe. Viele bestehende APIs, Protokolle und Umgebungen gehen davon aus, dass digitale Signaturalgorithmen nur einen Durchlauf über die Eingabe benötigen und können API- oder Bandbreitenbedenken haben, etwas anderes zu unterstützen.
Beachten Sie, dass Single-Pass-Verifizierung bei den meisten Verwendungen von Signaturen nicht möglich ist, unabhängig davon, welcher Signaturalgorithmus gewählt wird. Dies liegt daran, dass man meistens die Nachricht erst verarbeiten kann, nachdem die Signatur validiert wurde, was einen Durchlauf über die gesamte Nachricht erfordert.
Dieses Dokument spezifiziert Parameter, die zu den HashEdDSA-Varianten Ed25519ph und Ed448ph und den PureEdDSA-Varianten Ed25519 und Ed448 führen.