Ed25519Sign
Kryptografi, digitale signaturer
Beskrivelse
Fremstiller en PureEdDSA-signatur på edwards25519 (RFC 8032)
Syntaks
Delphi
Function Ed25519Sign(Const Message, Seed: AnsiString; Out Signature: AnsiString): Boolean;Returværdier
| False | Seed er ikke 32 bytes, og Signature sættes til en tom streng |
|---|---|
| True | Signature indeholder R||S-kodningen på 64 bytes |
Bemærkninger
Hemmeligheden udvides som h = SHA-512(seed); den hemmelige skalar s er den clampede første halvdel af h, og nonce-præfikset er anden halvdel. Noncen r = SHA-512(prefix||M) reduceres modulo gruppeordenen L, R = r*B, udfordringen k = SHA-512(R||A||M) reduceres modulo L, og S = (r + k*s) mod L, så signaturen er R efterfulgt af S med 32 bytes hver. Verificering er tilgængelig via Ed25519Verify; hashen er SHA-512 uden domæneseparationspræfiks og med en tom kontekst
Eksempel
Ed25519Sign(Msg, Seed, Sig);
OK:= Ed25519Verify(Msg, PubKey, Sig);Se også
Ed25519Verify, Ed25519PublicKeyFromSeed, Ed448Sign, SetSignProcessEd25519Identity