data ed25519
Ed25519 signatures (RFC 8032): 32-byte keys, 64-byte signatures.
Example:
use std.crypto { ed25519 }
use std.ser { bytesOf }
fn main() io, rand {
let kp = ed25519.generate()
let msg = bytesOf(&"pay 10")
let sig = ed25519.sign(&kp.secretKey, msg)!
print("{ed25519.verify(kp.publicKey, msg, sig)}")
}Вывод
true
pub(api) data ed25519Потокобезопасность. pure functions apart from `generate`; safe from any task.
С версии. 1.0.0-beta
Методы
generate | () -> KeyPair randA new random Ed25519 key pair. |
publicKey | (secretKey: &secret<bytes>) -> bytes | CryptoErrorThe public key of a 32-byte private key. |
sign | (secretKey: &secret<bytes>, message: bytes) -> bytes | CryptoErrorThe 64-byte signature of message. |
verify | (publicKey: bytes, message: bytes, signature: bytes) -> boolTrue when signature is valid for message under publicKey (any malformed input is simply false). |
Определено в: std/crypto/crypto.oxl:575