diff options
Diffstat (limited to 'src/crypto/shen_ed25519_ref/ref10/sign.c')
-rw-r--r-- | src/crypto/shen_ed25519_ref/ref10/sign.c | 41 |
1 files changed, 0 insertions, 41 deletions
diff --git a/src/crypto/shen_ed25519_ref/ref10/sign.c b/src/crypto/shen_ed25519_ref/ref10/sign.c deleted file mode 100644 index de53742a6..000000000 --- a/src/crypto/shen_ed25519_ref/ref10/sign.c +++ /dev/null @@ -1,41 +0,0 @@ -#include <string.h> -#include "crypto_sign.h" -#include "crypto_hash_sha512.h" -#include "ge.h" -#include "sc.h" - -int crypto_sign( - unsigned char *sm,unsigned long long *smlen, - const unsigned char *m,unsigned long long mlen, - const unsigned char *sk -) -{ - unsigned char pk[32]; - unsigned char az[64]; - unsigned char nonce[64]; - unsigned char hram[64]; - ge_p3 R; - - memmove(pk,sk + 32,32); - - crypto_hash_sha512(az,sk,32); - az[0] &= 248; - az[31] &= 63; - az[31] |= 64; - - *smlen = mlen + 64; - memmove(sm + 64,m,mlen); - memmove(sm + 32,az + 32,32); - crypto_hash_sha512(nonce,sm + 32,mlen + 32); - memmove(sm + 32,pk,32); - - sc_reduce(nonce); - ge_scalarmult_base(&R,nonce); - ge_p3_tobytes(sm,&R); - - crypto_hash_sha512(hram,sm,mlen + 64); - sc_reduce(hram); - sc_muladd(sm + 32,hram,az,nonce); - - return 0; -} |