11.12.3.4.125. Function Se05x_API_SetECCurveParam

11.12.3.4.125.1. Function Documentation

smStatus_t Se05x_API_SetECCurveParam(pSe05xSession_t session_ctx, SE05x_ECCurve_t curveID, SE05x_ECCurveParam_t ecCurveParam, const uint8_t *inputData, size_t inputDataLen)

Se05x_API_SetECCurveParam

Set a curve parameter. The curve must have been created first by CreateEcCurve.

All parameters must match the expected value for the listed curves. If the curve parameters are not correct, the curve cannot be used.

Users have to set all 5 curve parameters for the curve to be usable. Once all curve parameters are given, the secure element will check if all parameters are correct and return SW_NO_ERROR..

Command to Applet

Field

Value

Description

CLA

0x80

INS

INS_WRITE

See SE05x_INS_t

P1

P1_CURVE

See SE05x_P1_t

P2

P2_PARAM

See SE05x_P2_t

Lc

#(Payload)

TLV[TAG_1]

1-byte curve identifier, from SE05x_ECCurve_t

TLV[TAG_2]

1-byte SE05x_ECCurveParam_t

TLV[TAG_3]

Bytestring containing curve parameter value.

R-APDU Body

NA

R-APDU Trailer

SW

Description

SW_NO_ERROR

Data is returned successfully.

Parameters
  • [in] session_ctx: Session Context [0:kSE05x_pSession]

  • [in] curveID: curve id [1:kSE05x_TAG_1]

  • [in] ecCurveParam: ecCurveParam [2:kSE05x_TAG_2]

  • [in] inputData: inputData [3:kSE05x_TAG_3]

  • [in] inputDataLen: Length of inputData