1.7.1 AES CBC

Description

AES-CBC is a strong encryption method that uses the Advanced Encryption Standard (AES) algorithm in Cipher Block Chaining (CBC) mode. It encrypts data in blocks, and each block's encryption is influenced by the previous block, making it more resistant to certain attacks. However, it's important to use it correctly with a strong, randomly generated Initialization Vector (IV) for each encryption. This demo application demonstrates the functionality of Crypto v4 AES-CBC functions.

Downloading and Building the Application

To clone or download this application from Github, go to the main page of this repository and then click Clone button to clone this repository or download as zip file. This content can also be downloaded using MPLAB® Code Configurator Content Manager.

Path of the application group within the repository is apps/examples/symmetric/aes_cbc/aes_cbc_group.

The following table shows the contents of the project group.

Project NameDescription
pic32ck_sg01_cult.XMPLABX nonsecure project for PIC32CK SG Curiosity Ultra Development Board
pic32ck_sg01_cult_secure.XMPLABX secure project for PIC32CK SG Curiosity Ultra Development Board

Setting Up the Hardware

PIC32CK SG Curiosity Ultra Development Board

  • Connect the Debug USB port on the board to the computer using a micro USB cable.
  • Open a serial monitor with baud rate set to 115200, 8-bit data, no parity, 1 stop bit.

Running the Application

  1. Open the project group.
  2. Open the nonsecure version of the project.
  3. Build and program the application using its IDE and observe the serial COM output.
  4. The program displays which functions are being demonstrated, and prints if they are completed successfully.