Generates a shared secret of the requested length by applying the ANSI X9.42/X9.63 KDF with SHA-1 to the output of an ECMQV key agreement.
#include "huecc.h"
int hu_ECMQVSharedGen(sb_Params eccParams, sb_PrivateKey privateKey, sb_PrivateKey ephemPrivateKey, sb_PublicKey ephemPublicKey, sb_PublicKey remotePublicKey, sb_PublicKey remoteEphemPublicKey, size_t addInfoLen, const unsigned char *addInfo, size_t secretLen, unsigned char *sharedSecret, sb_GlobalCtx sbCtx)
BlackBerry 10.0.0
An ECC parameters object.
An ECC private key object.
An ECC private key object.
An ECC public key object.
An ECC public key object.
An ECC public key object.
The length (in bytes) of additional information. (Optional)
Additional information for use with the KDF. (Optional - set to NULL if not used.)
The length (in bytes) of the shared secret.
The shared secret value.
A global context.
The eccParams object is NULL.
The tag for the params object is not of the expected type.
The privateKey object NULL.
The privateKey object invalid.
The ephemeral private key object is NULL.
The ephemeral private key object is invalid.
The ephemeral public key is NULL.
The ephemeral public key is invalid.
The remote public key is NULL.
The remote public key is invalid.
The remote ephemeral public key is NULL.
The remote ephemeral public key is invalid.
Additional information is NULL.
The shared secret buffer is NULL.
The shared secret length is invalid.
Memory allocation failure.
Success.