crypto: dh - Add DH software implementation
* Implement MPI based Diffie-Hellman under kpp API * Test provided uses data generad by OpenSSL Signed-off-by: Salvatore Benedetto <salvatore.benedetto@intel.com> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
This commit is contained in:

committed by
Herbert Xu

parent
4e5f2c4007
commit
802c7f1c84
29
include/crypto/dh.h
Normal file
29
include/crypto/dh.h
Normal file
@@ -0,0 +1,29 @@
|
||||
/*
|
||||
* Diffie-Hellman secret to be used with kpp API along with helper functions
|
||||
*
|
||||
* Copyright (c) 2016, Intel Corporation
|
||||
* Authors: Salvatore Benedetto <salvatore.benedetto@intel.com>
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License as published by the Free
|
||||
* Software Foundation; either version 2 of the License, or (at your option)
|
||||
* any later version.
|
||||
*
|
||||
*/
|
||||
#ifndef _CRYPTO_DH_
|
||||
#define _CRYPTO_DH_
|
||||
|
||||
struct dh {
|
||||
void *key;
|
||||
void *p;
|
||||
void *g;
|
||||
unsigned int key_size;
|
||||
unsigned int p_size;
|
||||
unsigned int g_size;
|
||||
};
|
||||
|
||||
int crypto_dh_key_len(const struct dh *params);
|
||||
int crypto_dh_encode_key(char *buf, unsigned int len, const struct dh *params);
|
||||
int crypto_dh_decode_key(const char *buf, unsigned int len, struct dh *params);
|
||||
|
||||
#endif
|
@@ -242,6 +242,7 @@ static inline void kpp_request_set_output(struct kpp_request *req,
|
||||
|
||||
enum {
|
||||
CRYPTO_KPP_SECRET_TYPE_UNKNOWN,
|
||||
CRYPTO_KPP_SECRET_TYPE_DH,
|
||||
};
|
||||
|
||||
/**
|
||||
|
Reference in New Issue
Block a user