2 arc four execution unit (afeu), Arc four execution unit (afeu) -5 – Freescale Semiconductor MCF5480 User Manual
Page 607
Overview
MCF548x Reference Manual, Rev. 3
Freescale Semiconductor
22-5
Figure 22-2. DES Encryption Process
In addition, the DEU module can compute Triple-DES. Triple-DES is an extension to the DES algorithm
whereby every 64-bit input block is processed three times. A diagram of Triple-DES is shown in
Figure 22-3. Triple-DES Encryption Process (ECB Mode)
22.4.4.2
Arc Four Execution Unit (AFEU)
The AFEU accelerates a bulk encryption algorithm compatible with the RC4 stream cipher from RSA
Security, Inc. The algorithm is byte-oriented, meaning a byte of plaintext is encrypted with a key to
produce a byte of ciphertext. The key is variable length and the AFEU supports key lengths from 40 to 128
bits (in byte increments), providing a wide range of security strengths. ARC4 is a symmetric algorithm,
meaning each of the two communicating parties share the same key.
The AFEU module computes RC4 compatible stream type bulk data encryption. The module processes
eight bytes at a time, producing one byte per three clock cycles; therefore, each 64-bit word requires 24
cycles to process. A symmetric cipher, RC4 relies on a shared key (of variable size) to transform between
plaintext and ciphertext.
Ciphertext/plaintext computation occurs in RC4 by XORing each byte of input text with a
context-dependent output of a substitution box (S-box) to produce output text. The contents of the S-box
are customized based on the input n-bit key, and S-box contents are modified with every byte processed.
The AFEU applies the input stream from and collects the output stream into 8-byte (64-bit) buffers,
providing an interface consistent with other EUs on the SEC.
...
DES
64-bit key
64-bit
block 1
64-bit
block 2
64-bit
block n-1
64-bit
block n
...
64-bit
block 1
64-bit
block 2
64-bit
block n-1
64-bit
block n
Plaintext blocks
Ciphertext blocks
DES
1
64-bit K
1
DES
2
64-bit K
2
DES
3
64-bit K
3
64-bit
block 1
64-bit
block n
64-bit
block 1
64-bit
block n
Pl
ai
n
te
x
t b
loc
ks
Ciph
e
rt
e
x
t b
loc
ks