2 inbound tls descriptors – Freescale Semiconductor MCF5480 User Manual
Page 706

MCF548x Reference Manual, Rev. 3
22-104
Freescale Semiconductor
lists several different descriptor header values that can be used for the outbound TLS
descriptor one shown in
The second descriptor, shown in
, 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,
, 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