Creates the shared secret value according to [IEEE1363, ANS X9.63]:
-
Checks input-parameter pointers and EC Domain in public and private keys.
-
Derives the partner public key and calls the EcWrstDhDeriveSharedSecret function, which performs EC SVDP operations.
-
Note
-
The term "User" refers to any party that calculates a shared secret value using this primitive. The term "Partner" refers to any other party of shared secret value calculation. Partner's public key shall be validated before using in this primitive.
-
Returns
-
CRYS_OK on success.
-
A non-zero value on failure as defined crys_ecpki_error.h.
-
Parameters
-
|
[in]
|
PartnerPublKey_ptr
|
Pointer to a partner public key.
|
|
[in]
|
UserPrivKey_ptr
|
Pointer to a user private key.
|
|
[out]
|
SharedSecretValue_ptr
|
Pointer to an output buffer that will contain the shared secret value.
|
|
[in,out]
|
SharedSecrValSize_ptr
|
Pointer to the size of user-passed buffer (in) and actual size of output of calculated shared secret value (out).
|
|
[in]
|
TempBuff_ptr
|
Pointer to a temporary buffer.
|