Skip to content
Snippets Groups Projects
Commit 25953b35 authored by Richard van der Hoff's avatar Richard van der Hoff
Browse files

Use header files where possible

This fixes an incorrect re-declaration of ed25519_sign.

Implement header files for some of the other library bits so that we don't need
to declare functions in crypto.cpp.
parent 24166584
No related branches found
No related tags found
No related merge requests found
/* header file for the curve25519-donna implementation, because the
* authors of that project don't supply one.
*/
#ifndef CURVE25519_DONNA_H
#define CURVE25519_DONNA_H
#ifdef __cplusplus
extern "C" {
#endif
extern int curve25519_donna(unsigned char *output, const unsigned char *a,
const unsigned char *b);
#ifdef __cplusplus
}
#endif
#endif
#ifndef ED25519_ADDITIONS_H
#define ED25519_ADDITIONS_H
#ifdef __cplusplus
extern "C" {
#endif
void convert_curve25519_to_ed25519(
unsigned char * public_key,
unsigned char * signature);
void convert_ed25519_to_curve25519(
unsigned char const * public_key,
unsigned char * signature);
void ed25519_keypair(
unsigned char * private_key,
unsigned char * public_key);
#ifdef __cplusplus
}
#endif
#endif
......@@ -19,49 +19,14 @@
extern "C" {
int curve25519_donna(
uint8_t * output,
const uint8_t * secret,
const uint8_t * basepoint
);
#include "crypto-algorithms/aes.h"
#include "crypto-algorithms/sha256.h"
int ed25519_sign(
unsigned char *signature,
const unsigned char *message, size_t message_len,
const unsigned char *public_key,
const unsigned char *private_key
);
int ed25519_verify(
const unsigned char *signature,
const unsigned char *message, size_t message_len,
const unsigned char *public_key
);
void convert_curve25519_to_ed25519(
unsigned char * public_key,
unsigned char * signature
);
void convert_ed25519_to_curve25519(
unsigned char const * public_key,
unsigned char * signature
);
void ed25519_keypair(
unsigned char * private_key,
unsigned char * public_key
);
}
#include "ed25519/src/ed25519.h"
#include "ed25519_additions.h"
#include "curve25519-donna.h"
namespace {
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment