Operation Mode - Espressif Systems ESP32 Technical Reference Manual

Hide thumbs Also See for ESP32:
Table of Contents

Advertisement

10.3 Functional Description
10. AES Accelerator
10.1 Introduction
The AES Accelerator speeds up AES operations significantly compared to AES algorithms implemented solely in
software. The AES Accelerator supports 6 algorithms of FIPS PUB 197, specifically AES-128, AES-192 and
AES-256 encryption and decryption.
10.2 Features
• Supports AES-128 encryption and decryption
• Supports AES-192 encryption and decryption
• Supports AES-256 encryption and decryption
• Supports 4 variations of key endianness and 4 variations of text endianness
10.3 Functional Description
10.3.1 AES Algorithm Operations
The AES Accelerator supports 6 algorithms of FIPS PUB 197, specifically AES-128, AES-192 and AES-256
encryption and decryption. The AES_MODE_REG register can be configured to different values to enable
different algorithm operations, as is shown in Table 26.
AES_MODE_REG[2:0]
0
1
2
4
5
6
10.3.2 Key, Plaintext and Ciphertext
The encryption or decryption key is stored in AES_KEY_n_REG, which is a set of eight 32-bit registers. For
AES-128 encryption/decryption, the 128-bit key is stored in AES_KEY_0_REG
AES-192 encryption/decryption, the 192-bit key is stored in AES_KEY_0_REG
AES-256 encryption/decryption, the 256-bit key is stored in AES_KEY_0_REG
Plaintext and ciphertext is stored in the AES_TEXT_m_REG registers. There are four 32-bit registers. To enable
AES-128/192/256 encryption, initialize the AES_TEXT_m_REG registers with plaintext before encryption. When
encryption is finished, the AES Accelerator will store back the resulting ciphertext in the AES_TEXT_m_REG
registers. To enable AES-128/192/256 decryption, initialize the AES_TEXT_m_REG registers with ciphertext
before decryption. When decryption is finished, the AES Accelerator will store back the resulting plaintext in the
AES_TEXT_m_REG registers.
Espressif Systems
Table 26: Operation Mode
Operation
AES-128 Encryption
AES-192 Encryption
AES-256 Encryption
AES-128 Decryption
AES-192 Decryption
AES-256 Decryption
111
10 AES ACCELERATOR
~
AES_KEY_3_REG. For
~
AES_KEY_5_REG. For
~
AES_KEY_7_REG.
ESP32 Technical Reference Manual V1.0

Advertisement

Table of Contents
loading
Need help?

Need help?

Do you have a question about the ESP32 and is the answer not in the manual?

Questions and answers

Subscribe to Our Youtube Channel

Table of Contents

Save PDF