Title: An Introduction to Cryptographic Hardware Design
1An Introduction to Cryptographic Hardware Design
- BITS C442T
- Seminar
- Ganesh T S
- 1999A3A7030
- 26th September, 2003
2Overview
- Cryptography in Action
- The What and Why of Cryptography
- Types of Cryptography Algorithms
- Implementation Platforms and Characteristics
- Research Trends Hardware Implementation
Methodologies - Research Trends Hardware Implementation
Architectures
3Cryptography in Action
- Do you have an account on Hotmail?
- Have you seen the URL https//loginnet.passport.c
om/ppsecure/md5auth.srf?lc1033 - when logging on to the service?
- Ever wondered how your passwords are kept secure
on the IPC server? - Why arent you supposed to give out your credit
card number while chatting on Yahoo! Messenger? - You will come to know the answers for all these
questions, and much more, in this presentation.
4The What and Why of Cryptography
- The Internet is being used as a tool for
commerce, and hence, security becomes a
tremendously important issue - Cryptography Science of writing in secret code
to ensure security - First documented use of cryptography in writing
dates back to circa 1900 B.C. when an Egyptian
scribe used non-standard hieroglyphs in an
inscription
5The What and Why of Cryptography
- Security requirements to be met by cryptography
algorithms - Authentication The process of proving one's
identity. - Privacy/confidentiality Ensuring that no one can
read the message except the intended receiver. - Integrity Assuring the receiver that the
received message has not been altered in any way
from the original. - Non-repudiation A mechanism to prove that the
sender really sent this message.
6Types of Cryptography Algorithms
7Implementation Platforms
- Take algorithms, and the first thing that comes
to your mind is coding it in, say, C. - Devising the algorithms is a tough job, but not
the HLL implementation. - For example, the C code for the MD5 hash
algorithm does not exceed 500 lines! - What are the other implementation platforms?
8Implementation Platforms
9Which Platform?
- The choice of the implementation platform is
driven by a multitude of factors, which include, - Performance needed
- Development and per-unit costs
- Power consumption (Important in case of wireless
devices!) - Flexibility
- Physical Security
- Choice heavily depends on application
requirements, but
10Platform Characteristics
11Reconfigurable Hardware and Cryptography
- Why Hardware?
- Software Implementations are too slow for time
critical applications - Hardware implementations are intrinsically more
secure - Why Reconfigurable?
12Reconfigurable Hardware and Cryptography
- Advantages of reconfigurable platforms
- Algorithm agility
- Algorithm Upgradability
- Architecture Efficiency
- Resource Efficiency
- Algorithm Modification
- Throughput (Relative to software)
- Cost Efficiency (Relative to ASICs)
13Hardware Implementation Methodologies
- HDL Designing done using FSM model
- Termed as CFSM (Cryptographic FSM)
14Hardware Implementation Methodologies
- Four basic components of a CFSM
- State Register
- Key Register
- Updating Logic
- Control Load Logic
- Modification of generic CFSM for implementing
hash functions
15Hardware Implementation Methodologies
16Hardware Implementation Architectures
- Multitude of architectures are in the research
pipeline - PipeRench
- Developed in CMU
- Pipelining for better performance
- Systolic Architectures
- Usage of vector processor architectures
- Developed for Montgomery multiplication and other
similar algorithms commonly found in cryptography
17Hardware Implementation Architectures
- PipeRench
- Being developed at CMU since 1996
- Reconfigurable fabric for implementing
cryptography algorithms - Three important characteristics
- Hardware virtualization
- Pipelined datapaths for word based computations
- Zero apparent configuration time
18Hardware Implementation Architectures
- Hardware virtualization allows execution of
configuration larger than size of physical fabric - Pipeline stages are termed as stripes
- These stripes are time multiplexed into physical
stripes - Disadvantageous requirements
- Identical nature requirement of physical stripes
- Dataflow graphs cant have long cycles
19Hardware Implementation Architectures
- Systolic Architectures
- The concept of systolic processing combines a
highly parallel array of identical processor may
span several integrated circuit chips. - A set of simple Processing Elements with regular
and local connections takes external inputs and
processes them in a predetermined manner in a
pipelined fashion
20Hardware Implementation Architectures
- Systolic Architectures for Cryptography
- Bit-serial architecture
- processes one input bit during a clock cycle. Is
well suited for low speed applications. - Bit-parallel architecture
- processes one input word during a clock cycle.
Well suited for high-speed applications, but is
area-inefficient - Digit-serial architecture
- attempts to utilize the best of both worlds. The
speed of bit-parallel and the relative simplicity
of bit-serial. - Offers elegant and flexible solutions
21Thank You