Modes Of Operation - Freescale Semiconductor MCF5329 Reference Manual

Devices supported: mcf5327; mcf5328; mcf53281; mcf5329
Table of Contents

Advertisement

Message Digest Hardware Accelerator (MDHA)
This module is useful in many applications including hashing messages to generate digital signatures or
computation of a shared secret. The digital signature is typically computed on a small input, however if
the data to be signed is large, it is inefficient to sign the entire data. Instead, the large input data is hashed
to a smaller value which is then signed. If the message is also sent to the verifying authority along with the
signature, the verifying authority can verify the signature by recovering the hash value from the signature
using the public key of the sender, hashing the message itself, and then comparing the computed hash value
with the recovered hash value. If they match, then the verifying authority is confident that the data was
signed by the owner of the private key that matches the public key, where the private key presumably is
only known by the sender. This provides a measure of authentication and non-repudiation.
A conceptual block diagram of the MDHA module is shown in
written to the MDHA module, and at the end, the hash value is read as the 160-bit output for SHA-1 or
128-bit output for MD5.
Plaintext blocks
512-bit
512-bit
block n
block n-1
33.1.3

Modes of Operation

One-way hashing generation—a message digest, or a hash, is the result of a one-way function
performed on a message. Two different hash functions can be used:
— SHA-1: Secure Hash Algorithm defined in Federal Information Processing Standards
Publication (FIPS) 180-1.
— MD5: Message Digest 5 algorithm defined by Ron Rivest of MIT Laboratory for Computer
Science and RSA Data Security, INC.
MAC: A Message authentication code is a one-way function performed on a message with two user
defined keys:
33-2
512-bit
...
512-bit
block 1
block 2
Figure 33-1. MDHA Hashing Process
MCF5329 Reference Manual, Rev 3
Figure
33-1. Multiple input blocks are
160-bit constant
Hash value
160-bit
value
SHA-1
128-bit constant
Hash value
128-bit
value
MD5
Output
Register
Freescale Semiconductor

Advertisement

Table of Contents
loading

Table of Contents