Ed25519Sign
Kriptografi, dijital imzalar
Açıklama
edwards25519 üzerinde PureEdDSA imzası üretir (RFC 8032)
Sözdizimi
Delphi
Function Ed25519Sign(Const Message, Seed: AnsiString; Out Signature: AnsiString): Boolean;Dönüş değerleri
| False | Seed 32 bayt değildir ve Signature boş dizeye ayarlanır |
|---|---|
| True | Signature, 64 baytlık R||S kodlamasını taşır |
Açıklamalar
Gizli bilgi h = SHA-512(seed) olarak genişletilir; gizli skaler s, h'nin sınırlandırılmış ilk yarısıdır ve nonce öneki ikinci yarıdır. r = SHA-512(prefix||M) nonce'u grup düzeni L'ye göre indirgenir, R = r*B hesaplanır, meydan okuma değeri k = SHA-512(R||A||M) L'ye göre indirgenir ve S = (r + k*s) mod L olur; böylece imza, her biri 32 bayt olan R ve ardından S'den oluşur. Doğrulama Ed25519Verify üzerinden yapılabilir; özet, etki alanı ayrımı öneki olmayan SHA-512 ve boş bir bağlamdır
Örnek
Ed25519Sign(Msg, Seed, Sig);
OK:= Ed25519Verify(Msg, PubKey, Sig);Ayrıca bkz.
Ed25519Verify, Ed25519PublicKeyFromSeed, Ed448Sign, SetSignProcessEd25519Identity