facility fopr getting ED25519 private key for srp

This commit is contained in:
F. Duncanh
2023-11-23 21:30:46 -05:00
parent 60cfb19d90
commit 4241694252
3 changed files with 11 additions and 1 deletions

View File

@@ -350,8 +350,12 @@ struct ed25519_key_s {
unsigned char ed_secret[ED25519_KEY_SIZE];
};
int extract_evp_private_key(unsigned char *privkey, int keylen, EVP_PKEY *key) {
const unsigned char* ed25519_secret_key(const ed25519_key_t *key) {
assert(key);
return (const unsigned char *) key->ed_secret;
}
int extract_evp_private_key(unsigned char *privkey, int keylen, EVP_PKEY *key) {
int count = 0;
unsigned int val;
unsigned int part1 = 0;

View File

@@ -82,6 +82,7 @@ int gcm_decrypt(unsigned char *ciphertext, int ciphertext_len, unsigned char *pl
typedef struct ed25519_key_s ed25519_key_t;
const unsigned char* ed25519_secret_key(const ed25519_key_t *key);
ed25519_key_t *ed25519_key_generate(void);
ed25519_key_t *ed25519_key_from_raw(const unsigned char data[ED25519_KEY_SIZE]);
void ed25519_key_get_raw(unsigned char data[ED25519_KEY_SIZE], const ed25519_key_t *key);

View File

@@ -90,6 +90,11 @@ pairing_get_public_key(pairing_t *pairing, unsigned char public_key[ED25519_KEY_
ed25519_key_get_raw(public_key, pairing->ed);
}
const unsigned char *srp_private_key(pairing_t *pairing) {
assert(pairing);
return ed25519_secret_key(pairing->ed);
}
int
pairing_get_ecdh_secret_key(pairing_session_t *session, unsigned char ecdh_secret[X25519_KEY_SIZE])
{