kcapi_kpp_dh_setparam_pkcs3
Prev | Key Protocol Primitives API - Generic | Next

## Name

kcapi_kpp_dh_setparam_pkcs3 — set the PG parameters using PKCS3 format

## Synopsis

`int kcapi_kpp_dh_setparam_pkcs3 (` | struct kcapi_handle * handle,
| const uint8_t * pkcs3,
| uint32_t pkcs3len`)`;

## Arguments

`handle`

  [in] cipher handle

`pkcs3`

  [in] parameter buffer in DER format

`pkcs3len`

  [in] length of key buffer

## Description

With this function, the caller sets the PG parameters for subsequent cipher operations.

The parameter set must be in DER format as follows

SEQUENCE { prime INTEGER ({ dh_get_p }), base INTEGER ({ dh_get_g }) }

The following command generates such parameter set where the output

## file content is has the correct DER structure

openssl dhparam -outform DER -out dhparam.der 2048

Note, this function defines that the subsequent key generation and shared secret operation performs an FFC Diffie-Hellman operation.

After the caller provided the key, the caller may destroy the parameter as it is now maintained by the kernel.

`return` upon success the value of the maximum size for the KPP operation is returned (e.g. the prime size); a negative errno-style error code if an error occurred

Prev | Up | Next
kcapi_kpp_destroy | Home | kcapi_kpp_ecdh_setcurve