Cryptography and its acceleration engine of i.MXRT117x

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Cryptography and its acceleration engine of i.MXRT117x

Cryptography and its acceleration engine of i.MXRT117x

 This article provides a generic introduction related to the cryptographical algorithms and HW acceleration. By using i.MX RT117x with related hands-on examples, it aims at helping NXP customers to quickly understand how to use and make a well decision regarding the selection of cryptographic algorithms to use in their products and systems.

Note: TL, DR. If the reader has the basic knowledge of the cryptography, please skip to chapter 3.

Sam_Gao_0-1732004127385.png

A cryptographic accelerator is a co-processor designed specifically to perform computationally intensive cryptographic operations, there are different names from different chip manufactures. For NXP, ‘CASPER on LPC55xx series, but ‘DCP or ‘CAAM for i.MX and i.MX RT.

i.MX RT

Name

Features

i.MXRT10xx

 

DCP (Data Co-Processor)

Symmetric Engines: AES-128

Hash Engines: SHA-1, SHA-256

 

i.MXRT11xx

CAAM

 (Cryptographic Acceleration and Assurance Module)

Symmetric Engines: AES 128, 192, 256; 3DES, DES;

PKHA: RSA, ECDSA,DH,ECDH 

Hash Engines: SHA-1, SHA-2, MD5, HMAC

Random Number Generation

It shows cryptographic features and benchmark performance with 2 examples:

  • Features: CAAM usage in mbedTLS.
  • Performance: Benchmark of HW acceleration or software only

 Sam_Gao_2-1732004174375.png

CAAM

Features

Key Function APIs

JobRing0

kCAAM_Sha256

kCAAM_HmacSha1/sha224/384/512

kCAAM_Aes_cbc-128/192/256

RunShaExamples(base,&caamHandle);

RunHmacExamples(base,&caamHandle);

RunAesCbcExamples(base,&caamHandle);

JobRing1

kCAAM_Aes_gcm

RunAesGcmExamples(base,&caamHandle);

JobRing2

kCAAM_Aes_cbc

RunAesCbcExamples(base,&caamHandle);

JobRing3

kCAAM_Aes_gcm

kCAAM_RNG

kCAAM_Red-Block

kCAAM_Black-Block

kCAAM_CRC

RunAesGcmExamples(base,&caamHandle);

RunRngExample(base, &caamHandle);

RedBlobExample(base, &caamHandle);

BlackBlobExample(base, &caamHandle);

RunCrcExamples(base, &caamHandle);

Sam_Gao_3-1732004183338.png

 

Key words: Cryptography, Cryptographic HW Acceleration, i.MX RT 

 

Attachments
No ratings
Version history
Last update:
‎12-05-2024 08:24 PM
Updated by: