aboutsummaryrefslogtreecommitdiff
path: root/src/or/torcert.h
diff options
context:
space:
mode:
authorNick Mathewson <nickm@torproject.org>2016-08-10 14:19:09 -0400
committerNick Mathewson <nickm@torproject.org>2016-11-03 08:37:22 -0400
commite3c825372180be00aff9c8e5cde60ea36d141f8c (patch)
tree82827b0784591c8652a130f2145e2f9450f12536 /src/or/torcert.h
parent348b90a915a5867bc0d8888e0fd12e8ec2319628 (diff)
downloadtor-e3c825372180be00aff9c8e5cde60ea36d141f8c.tar.gz
tor-e3c825372180be00aff9c8e5cde60ea36d141f8c.zip
Add function to check RSA->Ed cross-certifications
Also, adjust signing approach to more closely match the signing scheme in the proposal. (The format doesn't quite match the format in the proposal, since RSA signatures aren't fixed-length.) Closes 19020.
Diffstat (limited to 'src/or/torcert.h')
-rw-r--r--src/or/torcert.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/or/torcert.h b/src/or/torcert.h
index 0420b41c9f..39439d9d13 100644
--- a/src/or/torcert.h
+++ b/src/or/torcert.h
@@ -71,6 +71,11 @@ ssize_t tor_make_rsa_ed25519_crosscert(const ed25519_public_key_t *ed_key,
const crypto_pk_t *rsa_key,
time_t expires,
uint8_t **cert);
+int rsa_ed25519_crosscert_check(const uint8_t *crosscert,
+ const size_t crosscert_len,
+ const crypto_pk_t *rsa_id_key,
+ const ed25519_public_key_t *master_key,
+ const time_t reject_if_expired_before);
or_handshake_certs_t *or_handshake_certs_new(void);
void or_handshake_certs_free(or_handshake_certs_t *certs);