Freescale Semiconductor MCF5480 User Manual

Page 695

Advertising
background image

EU Specific Data Packet Descriptors

MCF548x Reference Manual, Rev. 3

Freescale Semiconductor

22-93

Table 22-93

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

Table 22-94

shows the representative descriptor used for multi-function encryption such as outbound

IPSec ESP. The 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 available, initialize and autopad are set, while continue 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 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.
Plaintext is brought into the DEU/AESU input FIFO, with the MDEU out-snooping the portion of the data

it has been told to process. As the encryption continues, the ciphertext fills the DEU/AEU output FIFO,

and this data is written back to system memory as needed. When the final byte of data to be HMAC’d has

been processed through the MDEU, the descriptor will cause the MDEU to write the HMAC to the

indicated area in system memory. Software will append the most significant bytes of the HMAC generated

by the SEC to the packet as the authentication trailer. Common practice in IPSec ESP with TDES-CBC is

to use the last 8 bytes of the ciphertext as the IV for the next packet. If this is the case, software should

0x20231D22

CBC

Single DES

Decrypt

SHA256

Yes

Yes

0x20231E22

CBC

Single DES

Decrypt

MD5

Yes

Yes

0x20231C22

CBC

Single DES

Decrypt

SHA

Yes

Yes

0x20631D22

CBC

Triple DES

Decrypt

SHA256

Yes

Yes

0x20631E22

CBC

Triple DES

Decrypt

MD5

Yes

Yes

0x20631C22

CBC

Triple DES

Decrypt

SHA

Yes

Yes

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

Header Value

Mode

E/D

Algorithm

HMAC

Pad

0x60831D22

ECB

Decrypt

SHA256

Yes

Yes

0x60831E22

ECB

Decrypt

MD5

Yes

Yes

0x60831C22

ECB

Decrypt

SHA

Yes

Yes

0x60A31D22

CBC

Decrypt

SHA256

Yes

Yes

0x60A31E22

CBC

Decrypt

MD5

Yes

Yes

0x60A31C22

CBC

Decrypt

SHA

Yes

Yes

0x60E31D22

CTR

SHA256

Yes

Yes

0x60E31E22

CTR

MD5

Yes

Yes

0x60E31C22

CTR

SHA

Yes

Yes

Table 22-92. 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: