aboutsummaryrefslogtreecommitdiff
path: root/src/crypto/shen_ed25519_ref/ref10/sign.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/crypto/shen_ed25519_ref/ref10/sign.c')
-rw-r--r--src/crypto/shen_ed25519_ref/ref10/sign.c41
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;
-}