Main Page | Data Structures | File List | Data Fields | Globals | Related Pages

dh.c File Reference

#include "common.h"
#include <string.h>
#include "dh.h"
#include "dh_groups.h"
#include "enums.h"

Functions

DH * DHGenerateKEData_MODP (uint32_t DHGroup)
 generate a DH public key for exchange for MODP groups
DH * DHGenerateKEData_EC2N (uint32_t DHGroup)
 generate a DH public key for exchange for EC2N groups (elliptic curves)
DH * DHGenerateKEData (uint32_t DHGroup)
 generate a DH public key for exchange
void ComputeDHKey (BIGNUM *pubk, struct IKEv2Session *se)
 compute a DH key from own dh info + the other's public dh key

Function Documentation

void ComputeDHKey BIGNUM *  pubk,
struct IKEv2Session se
 

compute a DH key from own dh info + the other's public dh key

Parameters:
*pubk other side public key
*se session data with private key

DH* DHGenerateKEData uint32_t  DHGroup  ) 
 

generate a DH public key for exchange

Parameters:
DHGroup DH group identifier
Returns:
DH group

DH * DHGenerateKEData_EC2N uint32_t  DHGroup  ) 
 

generate a DH public key for exchange for EC2N groups (elliptic curves)

Deprecated:
Not mentioned in IKEv2 algorithms requirments
Parameters:
DHGroup DH group identifier
Returns:
DH group
Todo:
implement EC2N groups

DH * DHGenerateKEData_MODP uint32_t  DHGroup  ) 
 

generate a DH public key for exchange for MODP groups

Parameters:
DHGroup DH prime modulus ID
Returns:
DH structure, or NULL in case of error


Project hosted by: SourceForge.net Logo