MCF548x Reference Manual, Rev. 3
22-104 Freescale Semiconductor
Table 22-107 lists several different descriptor header values that can be used for the outbound TLS
descriptor one shown in Table 22-106.
The second descriptor, shown in Table 22-108, performs the encryption of the record, HMAC, pad length,
and any padding generated to disguise the size of the TLS record.
22.14.6.4.2 Inbound TLS Descriptors
Inbound TLS processing reverses the order of operations of outbound processing. The first descriptor,
shown in Table 22-109, performs the decryption of the record, HMAC, pad length, and any padding
generated to disguise the size of the TLS record.
NOTE
ARC-4 does not have a concept of encrypt vs. decrypt. As a stream cipher,
ARC-4 generates a key stream which is XOR’d with the input data. If the
input data is plaintext, the output is ciphertext. If the input data is ciphertext
(which was previously XOR’d with the same key), the result is plaintext.
Table 22-107. Typical Header Values for Outbound TLS Descriptor One Format
Header Value Algorithm HMAC Pad
0x31D00010 SHA256 Yes Yes
0x31E00010 MD5 Yes Yes
0x31C00010 SHA Yes Yes
Table 22-108. Outbound TLS Descriptor Two Format
Field Name Value/Type Description
Header 0x10000050 Perform permute (TYPE 0101)
LEN_1 Length (not used) NULL
PTR_1 Pointer (not used) NULL
LEN_2 IV Length NULL
PTR_2 IV Pointer NULL
LEN_3 Key Length Number of bytes in key (5–16 bytes)
PTR_3 Key Pointer Address of key to be written into AFEU
LEN_4 Data In Length Number of bytes of data to be ciphered
PTR_4 Data In Pointer Pointer to data to perform cipher upon
LEN_5 Data Out Length Number of bytes of data after ciphering
PTR_5 Data Out Pointer Pointer to location where cipher output is to be written
LEN_6 IV Out Length NULL
PTR_6 IV Out Pointer NULL
LEN_7 MD Out Length NULL
PTR_7 MD Out Pointer NULL
PTR_NEXT Next Descriptor Pointer NULL or Pointer to unrelated next descriptor