Digital Signal Processing Reference
In-Depth Information
and show how a multitude of techniques for preprocessing the data are used in
such scenarios. Finally, we talk about fuzzy secrets and point out the use of DSP
techniques for an important role in cryptography—a key derivation.
1
Introduction
The implementation of cryptographic and security applications has adapted
techniques more than expected from the architectures, design methods and tools
of signal processing systems. When implementing cryptographic applications on
embedded devices, in hardware, software or a combination of both, there are two
optimization goals. The first request is one of efficiency: the implementations
should be efficient in area, time, power consumption etc. This is very similar to
the implementation of signal processing applications. The other requirement is one
of a secure implementation. Implementations should not leak information. Signal
processing techniques are used for both. As research progresses, signal processing
and cryptography find more overlaps.
In this chapter, an overview is given of the use of signal processing techniques
as they are used for efficient implementations as well as used for the analysis of
secure implementations. The techniques that are used for efficient implementations
in particular, are discussed in more detail in [ 62 ] and[ 35 ] .
Section 2 gives an overview of efficient implementations for both secret-key
and public-key. It describes techniques borrowed from fast filter implementations
to optimize the implementation of hash functions. It also describes implementations
of public-key on DSP processors. Section 3 focuses on secure implementations and
the signal processing techniques used in analysis. Section 4 discusses the usage of
signal processing techniques for fuzzy secrets. Section 5 gives the conclusion and
describes some new trends.
2
Efficient Implementation
2.1
Secret-Key Algorithms and Implementations
2.1.1
Cryptographic Hash Functions and Implementations
A cryptographic hash function is a deterministic algorithm that takes input strings—
M of arbitrary length and returns short fixed-length strings, so called message
digests—Hash(M),
and
it
is
required to
satisfy
the
following cryptographic
properties:
1. Preimage resistance : It must be infeasible to find any preimage, M, for a given
hash output, H, such that H
=
Hash (M).
 
Search WWH ::




Custom Search