1.5.2 AES GMAC

Description

GMAC (Galois/Counter Mode MAC) is a Message Authentication Code (MAC) algorithm that provides authenticated encryption. It uses AES in Counter mode to generate a hash of the message and associated data. This hash is then used to create the MAC, providing both integrity and confidentiality. GMAC's parallelizable counter mode and polynomial-based hash function offer performance and security benefits. This demo application demonstrates the functionality of Crypto v4 AES-GMAC 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/mac/aes_gmac/aes_gmac_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.