AN2492 Freescale Semiconductor / Motorola, AN2492 Datasheet - Page 36

no-image

AN2492

Manufacturer Part Number
AN2492
Description
MPC184 Descriptor Programmers Guide--PCI View
Manufacturer
Freescale Semiconductor / Motorola
Datasheet
SSLv3.1/TLS1.0 Processing
SSLv3.1/TLS1.0 Processing
Not surprisingly, inbound TLS processing reverses the order of operations of outbound processing.
10.3 Inbound TLS Descriptor 1
The first descriptor performs the decryption of the record, HMAC, pad length, and any padding generated
to disguise the size of the TLS record, as shown in Table 30.
Note that 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.
The primary EU is the AFEU, with its mode bits set to cause the AFEU to load the key and initialize the
AFEU S-box for data permutation.
The descriptor header doesn’t designate a secondary EU, so the setting of the snoop type bit is ignored.
At the conclusion of inbound TLS descriptor 1, the AFEU has decrypted the TLS record so that the payload
and HMAC are readable. The negotiation of the TLS session should provide the receiver with enough
information about the session parameters (hash algorithm for HMAC, whether padding is in use) to create
inbound descriptors 2 along with descriptor 1. If so, the next descriptor pointer field should point to
descriptor 2.
Alternatively, the MPC184 could signal DONE at the conclusion of inbound descriptor 1 to allow the host
to inspect the decrypted record, and generate the descriptor necessary to validate the HMAC. If this is the
case, inbound descriptor 2 does not need to be linked to inbound descriptor 1, and could even be processed
by a different crypto-channel.
36
Type 0101 common_nonsnoop_afeu
LEN_1
PTR_1
LEN_2
PTR_2
LEN_3
PTR_3
LEN_4
PTR_4
LEN_5
PTR_5
LEN_6
PTR_6
LEN_7
PTR_7
PTR_NEXT
Field
MPC184 Descriptor Programmer’s Guide— PCI View
Freescale Semiconductor, Inc.
For More Information On This Product,
Table 30. Inbound TLS Descriptor 1
0x1000_0010
Value/Type
Go to: www.freescale.com
Pointer
Pointer
Pointer
Pointer
Pointer
Pointer
Pointer
Length
Length
Length
Length
Length
Length
Length
Pointer
AFEU, new key, don’t dump context, perform permute
Place holder
Place holder
Place holder
Place holder
Length of ARC-4 key
Pointer to ARC-4 Key
Length of data to be read and permuted
Pointer to data in memory
Length of data to be written after permutation
Pointer to memory buffer for writeback
Null
Null
Null
Null
Null or pointer to unrelated next descriptor
Description
MOTOROLA

Related parts for AN2492