Symmetric Cryptographic Intel FPGA Hard IP User Guide

ID 714305
Date 10/02/2023
Public
Document Table of Contents

5.4. Integrity Check Value Comparison

The Integrity Check Value (ICV) comparison checks the authentication tag during the packet's decryption. The Symmetric Cryptographic IP core performs the ICV comparison.
Figure 13. ICV Comparison Block and Signals
Follow these steps when performing ICV comparison:
  • You send a packet for decryption. To indicate decryption operation, you set the tuser.encrypt_decrypt appropriately.
  • You send the authentication tag together with the packet when the tlast signal is asserted.
  • The soft logic receives the authentication tag (ICV) and stores it in a FIFO and sends the packet for to the AES/SM4 Inline Cryptographic Accelerator for decryption.
  • When the decryption completes, the AES/SM4 Inline Cryptographic Accelerator asserts the tuser.mac_iv_tweak_en signal. The tdata[127:0] contains the MAC output from the AES/SM4 Inline Cryptographic Accelerator. The soft logic then compares it with the stored authentication tag.
  • A difference between received and stored authentication tags results in the tuser.auth_err signal assertion.