Ed448PublicKeyFromSeed

暗号

説明

57バイトのシードから57バイトのEd448公開鍵を導出します

構文

Delphi

Function Ed448PublicKeyFromSeed(Const Seed: AnsiString; Out PublicKey: AnsiString): Boolean;

戻り値

FalseSeedが57バイトでなく、PublicKeyは空になります
TruePublicKeyに57バイトの点エンコーディングが入ります

備考

シードはSHAKE256で114バイトのダイジェストにハッシュされ、その下位57バイトがRFC 8032に従ってクランプされます。先頭バイトの下位2ビットがクリアされ、バイト55のビット255が設定され、バイト56はゼロ化されます。クランプ済みスカラーはedwards448の基底点で乗算され、結果は57バイトのリトルエンディアン点エンコーディングとして格納されます。署名はEd448Signで利用でき、内部で同じ公開鍵を導出します。RFC 8032セクション7.4の既知回答ベクトルはバイト単位で一致します

OK:= Ed448PublicKeyFromSeed(Seed, PubKey);
OK:= Ed448Sign(Msg, Seed, Sig);

関連項目

Ed448Sign, Ed448Verify, Ed25519PublicKeyFromSeed, SHAKE256ByteArray