ed25519_donna_tor.h 1.0 KB

123456789101112131415161718192021222324
  1. /* Added for Tor. */
  2. #ifndef SRC_EXT_ED25519_DONNA_H_INCLUDED_
  3. #define SRC_EXT_ED25519_DONNA_H_INCLUDED_
  4. #include <torint.h>
  5. typedef unsigned char curved25519_key[32];
  6. int ed25519_sign_open_batch_donna(const unsigned char **m, size_t *mlen, const unsigned char **pk, const unsigned char **RS, size_t num, int *valid);
  7. void curved25519_scalarmult_basepoint_donna(curved25519_key pk, const curved25519_key e);
  8. /* Tor specific interface to match the `ref10` glue code. */
  9. int ed25519_donna_selftest(void);
  10. int ed25519_donna_seckey(unsigned char *sk);
  11. int ed25519_donna_seckey_expand(unsigned char *sk, const unsigned char *sk_seed);
  12. int ed25519_donna_pubkey(unsigned char *pk, const unsigned char *sk);
  13. int ed25519_donna_keygen(unsigned char *pk, unsigned char *sk);
  14. int ed25519_donna_open(const unsigned char *signature, const unsigned char *m,
  15. size_t mlen, const unsigned char *pk);
  16. int ed25519_donna_sign(unsigned char *sig, const unsigned char *m, size_t mlen,
  17. const unsigned char *sk, const unsigned char *pk);
  18. #endif