Sha256: 921f2c5ac603e6732a34b58f3c51df4ef22d17574eac7bd5ffada741ae6a8e20
Contents?: true
Size: 668 Bytes
Versions: 2
Compression:
Stored size: 668 Bytes
Contents
#include "api.h" #include "randombytes.h" #include "crypto_hash_sha512.h" #include "ge.h" int crypto_sign_seed_keypair(unsigned char *pk, unsigned char *sk, const unsigned char *seed) { ge_p3 A; int i; crypto_hash_sha512(sk,seed,32); sk[0] &= 248; sk[31] &= 63; sk[31] |= 64; ge_scalarmult_base(&A,sk); ge_p3_tobytes(pk,&A); for (i = 0;i < 32;++i) sk[i] = seed[i]; for (i = 0;i < 32;++i) sk[32 + i] = pk[i]; return 0; } int crypto_sign_keypair(unsigned char *pk, unsigned char *sk) { unsigned char seed[32]; randombytes(seed,32); return crypto_sign_seed_keypair(pk,sk,seed); }
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
rbnacl-libsodium-0.4.5 | vendor/libsodium/src/libsodium/crypto_sign/ed25519/ref10/keypair.c |
rbnacl-libsodium-0.4.5a | vendor/libsodium/src/libsodium/crypto_sign/ed25519/ref10/keypair.c |