3 static multi-function descriptor formats, Static multi-function descriptor formats -95 – Freescale Semiconductor MCF5480 User Manual

Page 697

Advertising
background image

EU Specific Data Packet Descriptors

MCF548x Reference Manual, Rev. 3

Freescale Semiconductor

22-95

Table 22-96

lists typical AESU/HMAC multi-function descriptor header values.

22.14.6.3 Static Multi-Function Descriptor Formats

This example is designed to contrast the dynamic descriptors shown in

Section 22.14.6.2, “Dynamic

Multi-Function Descriptor Formats

.” For whatever reason, the data to be decrypted/encrypted and

authenticated is not available in a single contiguous block, or the total data size is larger than 32 Kbytes.

The user must statically assign a DEU/AESU and MDEU to a channel before launching this descriptor

chain.

Table 22-97

shows the representative descriptor format for the first descriptor in a statically assigned

multi-function operation descriptor chain. The first descriptor header encodes to select the DEU or AESU

as the primary EU, and the MDEU for the secondary EU. Because all the data necessary to calculate the

HMAC in a single dynamic descriptor is not available, initialize and continue are set and the autopad bit

is cleared in the SMODE field.
The descriptor header also encodes the descriptor type 0010, which defines the input and output ordering

for “hmac_snoop_no_afeu.” The HMAC key is loaded first, followed by the length and pointer to the data

over which the initial HMAC will be calculated. The DEU/AESU key is loaded next, followed by the

context (IV). The number of bytes to be ciphered and starting address will be an offset of the number of

bytes being HMAC’d. The data to be decrypted and HMAC’d is only brought in the SEC a single time,

with the DEU/AESU and MDEU only reading the portion that matches the starting address and byte length

in the length/pointer fields corresponding to their data of interest.
Input data is brought into the DEU/AESU input FIFO, with the MDEU snooping the portion of the data it

has been told to process. As the decryption/encryption continues, the output data fills the DEU/AEU

output FIFO, and this data is written back to system memory as needed. Because it has been told to expect

more data (continue on), the descriptor must not attempt to output the HMAC.

0x20731E20

CBC

Triple DES

Encrypt

MD5

Yes

Yes

0x20731C20

CBC

Triple DES

Encrypt

SHA

Yes

Yes

Table 22-96. Typical Header Values for Dynamic Multi-Function AESU Descriptors

Header Value

Mode

E/D

Algorithm

HMAC

Pad

0x60931D20

ECB

Encrypt

SHA256

Yes

Yes

0x60931E20

ECB

Encrypt

MD5

Yes

Yes

0x60931C20

ECB

Encrypt

SHA

Yes

Yes

0x60B31D20

CBC

Encrypt

SHA256

Yes

Yes

0x60B31E20

CBC

Encrypt

MD5

Yes

Yes

0x60B31C20

CBC

Encrypt

SHA

Yes

Yes

0x60E31D20

CTR

SHA256

Yes

Yes

0x60E31E20

CTR

MD5

Yes

Yes

0x60E31C20

CTR

SHA

Yes

Yes

Table 22-95. Typical Header Values for Dynamic Multi-Function DEU Descriptors (Continued)

Header Value

E/C

S/T

E/D

Algorithm

HMAC

Pad

Advertising
This manual is related to the following products: