Ed448PublicKeyFromSeed
Cryptography
Description
Derives the 57-byte Ed448 public key from a 57-byte seed
Syntax
Delphi
Function Ed448PublicKeyFromSeed(Const Seed: AnsiString; Out PublicKey: AnsiString): Boolean;Return values
| False | Seed is not 57 bytes and PublicKey is empty |
|---|---|
| True | PublicKey holds the 57-byte point encoding |
Remarks
The seed is hashed with SHAKE256 to a 114-byte digest whose low 57 bytes are clamped per RFC 8032: the two least significant bits of the first byte are cleared, bit 255 of byte 55 is set and byte 56 is zeroed; the clamped scalar multiplies the edwards448 base point and the result is stored as the 57-byte little-endian point encoding. Signing is available through Ed448Sign, which derives the same public key internally; the RFC 8032 section 7.4 known-answer vectors pass byte-for-byte
Example
OK:= Ed448PublicKeyFromSeed(Seed, PubKey);
OK:= Ed448Sign(Msg, Seed, Sig);See also
Ed448Sign, Ed448Verify, Ed25519PublicKeyFromSeed, SHAKE256ByteArray