Table 22-91, Shows the representative descriptor used fo – Freescale Semiconductor MCF5480 User Manual
Page 694

MCF548x Reference Manual, Rev. 3
22-92
Freescale Semiconductor
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.
Ciphertext is brought into the DEU/AESU input FIFO, with the MDEU in-snooping the portion of the data
it has been told to process. As the decryption continues, the plaintext 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 compare the most significant bytes of the HMAC generated by the
SEC with the HMAC which was received with the in-bound packet (the exact number of bytes compared
depend on the security protocol used). If the HMACs match, the integrity check passes.
lists typical DEU/HMAC multi-function descriptor header values.
Table 22-91. Descriptor for Dynamic Multi-Function Decryption
Field Name
Value/Type
Description
Header
Header common to several descriptors (TYPE 0010)
LEN_1
HMAC Key Length
Number of bytes in HMAC Key
PTR_1
HMAC Key Pointer
Address of HMAC Key
LEN_2
HMAC Data Length
Number of bytes to be HMAC’d
PTR_2
HMAC Data Pointer
Address of data to be HMAC’d
LEN_3
Key Length
Number of bytes in Key (8, 16, 24, or 32 bytes)
PTR_3
Key Pointer
Address of Key
LEN_4
IV Length
Number of bytes in IV (8, 24, or 56)
PTR_4
IV Pointer
Address of IV
LEN_5
Data In Length
Bytes of ciphertext to be decrypted
PTR_5
Data In Pointer
Address of ciphertext to be decrypted
LEN_6
Data Out Length
Bytes of output data (should be equal to length of data in)
PTR_6
Data Out Pointer
Address where output data is to be written
LEN_7
HMAC Out Length
Number of bytes HMAC output (16, 20 or 32 bytes)
PTR_7
HMAC Out Pointer
Address where hash output is to be written
PTR_NEXT
Next Descriptor Pointer Pointer to next data packet descriptor
Table 22-92. Typical Header Values for Dynamic Multi-Function DEU Descriptors
Header Value
E/C
S/T
E/D
Algorithm
HMAC
Pad
0x20031D22
ECB
Single DES
Decrypt
SHA256
Yes
Yes
0x20031E22
ECB
Single DES
Decrypt
MD5
Yes
Yes
0x20031C22
ECB
Single DES
Decrypt
SHA
Yes
Yes
0x20431D22
ECB
Triple DES
Decrypt
SHA256
Yes
Yes
0x20431E22
ECB
Triple DES
Decrypt
MD5
Yes
Yes
0x20431C22
ECB
Triple DES
Decrypt
SHA
Yes
Yes