CryptoCell ECC specific types

nRF5 SDK v17.1.0

Detailed Description

Macro Definition Documentation

#define CRYS_ECPKI_FIPS_ORDER_LENGTH   (256/ SASI_BITS_IN_BYTE )

Order length for the FIPS ECC tests.

#define CRYS_PKA_DOMAIN_LLF_BUFF_SIZE_IN_WORDS   (10 + 3* CRYS_ECPKI_MODUL_MAX_LENGTH_IN_WORDS )

Internal buffer size in words.

Typedef Documentation

ECDH temporary data type

Context definition, required for internal FIPS verification for ECDH KAT.

typedef uint32_t CRYS_ECDSA_SignIntBuff[(6 *18+((8 *(18+1)+1)+18+2))]

Internal buffer used in the signing process.

User's context definition for signing operation. The context saves the state of the operation and must be saved by the user till the end of the APIs flow

typedef uint32_t CRYS_ECDSA_VerifyIntBuff[(3 *18)]

Internal buffer used in the verification process.

User's context definition for verification operation. The context saves the state of the operation and must be saved by the user till the end of the APIs flow

Context defintion, required for internal FIPS verification for ECDSA KAT. * The ECDSA KAT tests defined for domain 256r1.

ECIES temporary data definition.

EC build temporary data.

Context definition required for internal FIPS verification for ECPKI key generation.

ECPKI KG temporary data type

The EC private key's user structure prototype. This structure must be saved by the user, and is used as input to the ECC functions (such as CRYS_ECDSA_Sign etc.).

The EC public key's user structure prototype. This structure must be saved by the user, and is used as input to the ECC functions (such as CRYS_ECDSA_Verify etc.).

Enumeration Type Documentation

Enumerator for the EC Domain idetifier References: [13] - SEC 2: Recommended elliptic curve domain parameters. Version 1.0. Certicom 2000. [8] - WAP-261-WTLS-20010406-a, Version 06-April-2001.

Enumerator
CRYS_ECPKI_DomainID_secp160k1

EC secp160r1

CRYS_ECPKI_DomainID_secp160r1

EC secp160k1

CRYS_ECPKI_DomainID_secp160r2

EC secp160r2

CRYS_ECPKI_DomainID_secp192k1

EC secp192k1

CRYS_ECPKI_DomainID_secp192r1

EC secp192r1

CRYS_ECPKI_DomainID_secp224k1

EC secp224k1

CRYS_ECPKI_DomainID_secp224r1

EC secp224r1

CRYS_ECPKI_DomainID_secp256k1

EC secp256k1

CRYS_ECPKI_DomainID_secp256r1

EC secp256r1

CRYS_ECPKI_DomainID_secp384r1

EC secp384r1

CRYS_ECPKI_DomainID_secp521r1

EC secp521r1

CRYS_ECPKI_DomainID_Builded

User given, not identified.

CRYS_ECPKI_DomainID_OffMode

Reserved.

Defines the enum for the HASH operation mode. The enumerator defines 6 HASH modes according to IEEE 1363.

Enumerator
CRYS_ECPKI_HASH_SHA1_mode

The message data will be hashed with SHA1.

CRYS_ECPKI_HASH_SHA224_mode

The message data will be hashed with SHA224.

CRYS_ECPKI_HASH_SHA256_mode

The message data will be hashed with SHA256.

CRYS_ECPKI_HASH_SHA384_mode

The message data will be hashed with SHA384.

CRYS_ECPKI_HASH_SHA512_mode

The message data will be hashed with SHA512.

CRYS_ECPKI_AFTER_HASH_SHA1_mode

The message data is a digest of SHA1 and will not be hashed.

CRYS_ECPKI_AFTER_HASH_SHA224_mode

The message data is a digest of SHA224 and will not be hashed.

CRYS_ECPKI_AFTER_HASH_SHA256_mode

The message data is a digest of SHA256 and will not be hashed.

CRYS_ECPKI_AFTER_HASH_SHA384_mode

The message data is a digest of SHA384 and will not be hashed.

CRYS_ECPKI_AFTER_HASH_SHA512_mode

The message data is a digest of SHA512 and will not be hashed.

CRYS_ECPKI_HASH_NumOfModes

Maximal number of HASH modes.

CRYS_ECPKI_HASH_OpModeLast

Reserved.

Enumerator for the EC point compression idetifier.

Enumerator
CRYS_EC_PointCompressed

Compressed point.

CRYS_EC_PointUncompressed

Uncompressed point.

CRYS_EC_PointContWrong

Wrong Point Control value.

CRYS_EC_PointHybrid

Hybrid point.

CRYS_EC_PointCompresOffMode

Reserved.

CRYS_ECPKI_PointCompressionLast

Reserved.

Defintion of sw SCA protection.

Enumerator
SCAP_Active

Inactive.

SCAP_OFF_MODE

Active.

SCAP_LAST

Reserved.

EC key checks defintions.

Enumerator
CheckPointersAndSizesOnly

Only preliminary input parameters are checked.

ECpublKeyPartlyCheck

Preliminary input parameters check and verify that EC PubKey point is on the curve.

ECpublKeyFullCheck

All the above and in addition verifies that EC_GeneratorOrder*PubKey = O

EC_PublKeyCheckModeLast

Reserved.