nRF5 SDK v13.0.0
Modules
CryptoCell API

nRF52840 only: Application Programming Interface for CryptoCell. More...

Modules

 crys_aesccm
 This file contains all of the enums and definitions that are used for the CRYS AESCCM APIs, as well as the APIs themselves. The API supports AES-CCM and AES-CCM* as defined in ieee-802.15.4.
 
 crys_aesccm_error
 This module contains the definitions of the CRYS AESCCM errors.
 
 crys_chacha
 This file contains all of the enums and definitions that are used for the CRYS CHACHA APIs, as well as the APIs themselves.
 
 crys_chacha_error
 This module contains the definitions of the CRYS CHACHA errors.
 
 crys_chacha_poly
 This file contains all of the enums and definitions that are used for the CRYS CHACHA-POLY APIs, as well as the APIs themselves.
 
 crys_chacha_poly_error
 This module contains the definitions of the CRYS CHACHA POLY errors.
 
 crys_dh
 This module defines the API that supports Diffie-Hellman key exchange, as defined in [PKCS3] and in [X9.42] (key lengths 1024 and 2048 bits).
 
 crys_dh_error
 This file contains error codes definitions for CRYS DH module.
 
 crys_dh_kg
 This module defines the API that supports Diffie-Hellman domain.
 
 crys_ec_edw_api
 This file contains the CRYS APIs used for EC EDW (Edwards) ed25519 algorithms.
 
 crys_ec_mont_api
 This file contains the CRYS APIs used for EC MONT (Montgomery Curve25519) algorithms.
 
 crys_ecpki_build
 This module defines functions for building key structures used in Elliptic Curves Cryptography (ECC).
 
 crys_ecpki_dh
 Defines the API that supports EC Diffie-Hellman shared secret value derivation primitives.
 
 crys_ecpki_domain
 Defines the ecpki build domain API.
 
 crys_ecpki_ecdsa
 Defines the APIs that support the ECDSA functions.
 
 crys_ecpki_error
 This module contains the definitions of the CRYS ECPKI errors.
 
 crys_ecpki_kg
 Defines the API for generation of ECC private and public keys.
 
 crys_ecpki_types
 Contains all of the enums and definitions that are used for the CRYS ECPKI APIs.
 
 crys_error
 This module defines the error return code types and the numbering spaces of the error codes for each module of the layers listed below.
 
 crys_hash
 This file contains all of the enums and definitions that are used for the CRYS HASH APIs, as well as the APIs themselves.
 
 crys_hash_defs
 This file contains HASH definitions.
 
 crys_hash_error
 This module contains the definitions of the CRYS HASH errors.
 
 crys_hkdf
 This module defines the API that supports HMAC Key derivation function as defined by RFC5869.
 
 crys_hkdf_error
 This module contains the definitions of the CRYS HKDF errors.
 
 crys_hmac
 This file contains all of the enums and definitions that are used for the CRYS HMAC APIs, as well as the APIs themselves.
 
 crys_hmac_error
 This module contains the definitions of the CRYS HMAC errors.
 
 crys_kdf
 This module defines the API that supports Key derivation function in modes as defined in PKCS#3, ANSI X9.42-2001, and ANSI X9.63-1999.
 
 crys_kdf_error
 This module contains the definitions of the CRYS KDF errors.
 
 crys_pka_defs_hw
 The file contains all of the enums and definitions that are used in the PKA related code.
 
 crys_poly
 This file contains all of the enums and definitions that are used for the CRYS POLY APIs, as well as the APIs themselves.
 
 crys_rnd
 This file contains the CRYS APIs used for random number generation. The random-number generation module implements referenced standard [SP800-90].
 
 crys_rnd_error
 This module contains the definitions of the CRYS RND errors.
 
 crys_rsa_build
 This module defines some utility functions for working with RSA cryptography.
 
 crys_rsa_error
 This module contains the definitions of the CRYS RSA errors.
 
 crys_rsa_kg
 Generates a RSA pair of public and private keys.
 
 crys_rsa_prim
 This module defines the API that implements the [PKCS1_2.1] primitive functions.
 
 crys_rsa_schemes
 This module defines APIs that support [PKCS1_1.5] and [PKCS1_2.1] encryption and signature schemes.
 
 crys_rsa_types
 This file contains all of the enums and definitions that are used for the CRYS RSA APIs.
 
 crys_srp
 This file contains all of the enums and definitions that are used for the CRYS SRP APIs, as well as the APIs themselves.
 
 crys_srp_error
 This module contains the definitions of the CRYS SRP errors.
 
 sns_silib
 This file contains all of the enums and definitions that are used for the CryptoCell Lib init and finish APIs, as well as the APIs themselves.
 
 ssi_aes
 This file contains all of the enums and definitions that are used for the CryptoCell AES APIs, as well as the APIs themselves.
 
 ssi_aes_defs
 This file contains definitions that are used for the ARM CryptoCell 3xx version of the CryptoCell AES APIs.
 
 ssi_aes_error
 This file contains the definitions of the CryptoCell AES errors.
 
 ssi_pal_abort
 This file contains definitions for PAL Abort API.
 
 ssi_pal_barrier
 This file contains the definitions and APIs for memory barrier implementation. This is a place holder for platform specific memory barrier implementation The secure core driver should include a memory barrier before and after the last word of the descriptor to allow correct order between the words and different descriptors.
 
 ssi_pal_compiler
 This file contains compiler related definitions.
 
 ssi_pal_dma
 This file contains definitions that are used for the DMA related APIs. The implementation of these functions need to be replaced according to Platform and OS.
 
 ssi_pal_dma_defs
 This file contains the platform dependent DMA definitions.
 
 ssi_pal_error
 This file contains the platform dependent error definitions.
 
 ssi_pal_init
 This file contains the PAL layer entry point, it includes the definitions and APIs for PAL initialization and termination.
 
 ssi_pal_log
 This file contains the PAL layer log definitions, by default the log is disabled.
 
 ssi_pal_mem
 This file contains functions for memory operations. The functions implementations are generally just wrappers to different operating system calls. None of the described functions will check the input parameters so the behavior of the APIs in illegal parameters case is dependent on the operating system behavior.
 
 ssi_pal_memmap
 This file contains functions for memory mapping None of the described functions will check the input parameters so the behavior of the APIs in illegal parameters case is dependent on the operating system behavior.
 
 ssi_pal_mutex
 This file contains functions for resource management (mutex operations). The functions implementations are generally just wrappers to different operating system calls. None of the described functions will check the input parameters so the behavior of the APIs in illegal parameters case is dependent on the operating system behavior.
 
 ssi_pal_types
 This file contains the platform dependent definitions and types.
 
 ssi_pal_types_plat
 This file contains basic type definitions that are platform dependent.
 
 ssi_pka_hw_plat_defs
 Contains the enums and definitions that are used in the PKA code (definitions that are platform dependent).
 
 ssi_regs
 Macro definitions for accessing ARM TrustZone CryptoCell register space.
 
 ssi_sram_map
 This file contains internal SRAM mapping definitions.
 

Detailed Description

nRF52840 only: Application Programming Interface for CryptoCell.

The CryptoCell API is a proprietary and confidential API owned by ARM Limited. Nordic Semiconductor is granted rights to distribute this API as part of nRF5 SDKs. See the license information at external\nrf_cc310\license.txt if you plan to use this API.

The CryptoCell API uses the nrf_cc310 runtime library that is available at external\nrf_cc310\lib to control the CryptoCell hardware. See Experimental: CryptoCell library for supported features.


Documentation feedback | Developer Zone | Subscribe | Updated