aboutsummaryrefslogtreecommitdiff
path: root/src/common/crypto_ed25519.h
diff options
context:
space:
mode:
authorNick Mathewson <nickm@torproject.org>2014-08-27 17:59:15 -0400
committerNick Mathewson <nickm@torproject.org>2014-09-25 15:08:31 -0400
commit25b1a32ef85c0b1d57a326991df002c86097a142 (patch)
treee0a339c7ede6592eb3757cc26d7f7cf2e999cba0 /src/common/crypto_ed25519.h
parent4caa6fad4c71391ab41e92a32aa58b10b6febe7f (diff)
downloadtor-25b1a32ef85c0b1d57a326991df002c86097a142.tar.gz
tor-25b1a32ef85c0b1d57a326991df002c86097a142.zip
Draft implementation for ed25519 key blinding, as in prop224
This implementation allows somebody to add a blinding factor to a secret key, and a corresponding blinding factor to the public key. Robert Ransom came up with this idea, I believe. Nick Hopper proved a scheme like this secure. The bugs are my own.
Diffstat (limited to 'src/common/crypto_ed25519.h')
-rw-r--r--src/common/crypto_ed25519.h7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/common/crypto_ed25519.h b/src/common/crypto_ed25519.h
index 82c5e6c6e3..1271312dfe 100644
--- a/src/common/crypto_ed25519.h
+++ b/src/common/crypto_ed25519.h
@@ -75,6 +75,12 @@ int ed25519_keypair_from_curve25519_keypair(ed25519_keypair_t *out,
int ed25519_public_key_from_curve25519_public_key(ed25519_public_key_t *pubkey,
const curve25519_public_key_t *pubkey_in,
int signbit);
+int ed25519_keypair_blind(ed25519_keypair_t *out,
+ const ed25519_keypair_t *inp,
+ const uint8_t *param);
+int ed25519_public_blind(ed25519_public_key_t *out,
+ const ed25519_public_key_t *inp,
+ const uint8_t *param);
#endif
@@ -100,6 +106,5 @@ int ed25519_pubkey_read_from_file(ed25519_public_key_t *pubkey_out,
char **tag_out,
const char *filename);
-
#endif