AI_ECKeyGen
AI_ECKeyGen
Purpose:
This AI allows you to generate an elliptic curve key pair for given EC parameters.
Type of information this allows you to use:
the parameters for generating a compatible elliptic curve key pair. The precomputed
table values fromcan optionally be used to accelerate this operation.
Format of info supplied to B_SetAlgorithmInfo:
pointer to a B_EC_PARAMS structure:
typedef struct { |
| |
B_INFO_TYPE parameterInfoType; | /* used to interpret EC parameters */ | |
POINTER | parameterInfoValue; | /* describes elliptic curve */ |
} B_EC_PARAMS; |
|
|
|
|
|
where parameterInfoType must be AI_ECParameters or AI_ECParametersBER, and parameterInfoValue must be a pointer to an A_EC_PARAMS structure or to an ITEM containing the
typedef struct | { |
|
|
unsigned int | version; |
| /* implementation version */ |
unsigned int | fieldType; |
| /* indicates type of base field */ |
ITEM | fieldInfo; | /* The prime number if fieldType = FT_FP; */ | |
| /* the basis polynomial if fieldType = FT_F2_POLYNOMIAL; */ | ||
| /* and the degree of the field if fieldType = FT_F2_ONB */ | ||
ITEM | coeffA; |
| /* elliptic curve coefficient */ |
ITEM | coeffB; |
| /* elliptic curve coefficient */ |
ITEM | base; |
| /* elliptic curve group generator */ |
ITEM | order; | /* order of subgroup’s generating element */ | |
ITEM | cofactor; |
| /* the cofactor of the subgroup */ |
unsigned int | pointRepresentation; | /* not used. */ | |
|
|
| /* set to CI_NO_COMPRESS as a default */ |
unsigned int fieldElementBits; |
| /* field element size in bits */ | |
} A_EC_PARAMS; |
|
|
|
|
|
|
|
C h a p t e r 2 A l g o r i t h m I n f o Ty p e s | 71 |