ECE8843 - PowerPoint PPT Presentation

About This Presentation
Title:

ECE8843

Description:

... than to make implementation of a 1975-era general purpose computer impractical. ... 128-bit keys are in fashion. Triple-DES effectively uses a 112-bit key. ... – PowerPoint PPT presentation

Number of Views:38
Avg rating:3.0/5.0
Slides: 33
Provided by: JohnCo66
Category:
Tags: ece8843

less

Transcript and Presenter's Notes

Title: ECE8843


1
ECE-8843 http//www.csc.gatech.edu/copeland/jac/88
43/ Prof. John A. Copeland john.copeland_at_ece.gat
ech.edu 404 894-5177 fax 404 894-0035 Office
GCATT Bldg 579 email or call for office visit, or
call Kathy Cheek, 404 894-5696 Chapter 2 -
Conventional (Single-Key) Cryptography
2
Cryptography (the art of secret writing)
plaintext (data file or message) encryption ci
phertext (stored or transmitted
safely) decryption plaintext (original data
or message)
2
3
Cryptographers - Invent cryptographic algorithms
(secret codes). Cryptoanalysts - Find ways to
break codes. Decipher a message - find the
plaintext without being given the key or secret
algorithm. Break a code - find a systematic way
to decipher ciphertext created using the code
with affordable resources.
3
4
Fundamental Tenet
Cryptographic algorithms are probably reliable if
they are not broken after many bright
cryptoanalysts try. This implies that such
algorithms should be published. Keeping a
cryptographic algorithm secret makes deciphering
messages much harder, but since the algorithm's
code must be at every location that uses it, this
is usually impossible. Exceptions - where one
organization implements a proprietary algorithm
in an integrated circuit that is designed to foil
reverse engineering. Examples Clipper , Smart
Cards, CATV Boxes.
4
5
Computational Difficulty
Most common codes have algorithms that are well
known and the key for a particular ciphertext
can be found by exhaustive search (but not in a
reasonable amount of time on affordable computers
for Triple-DES, RSA, IDEA). Capt. Midnight code
wheel - 26101 possible keys. Combination lock,
40 positions, sequence of 4 -gt 40404040
2,560,000 possible combinations One combination
each 13 seconds -gt one year for all (3 positions
9 days). DES - 56 bit key, 256 4E18
combinations 1E6 tries per second -gt 100,000 years
5
6
With 1E12 Tries / sec
6
7
Caesar Cipher (Capt. Midnight - n3)
In ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890_ Out
DEFGHIJKLMNOPQRSTUVWXYZ1234567890_ABC The quick
red fox jumped over the lazy brown
dog WKHCTXLFNCUHGCIR1CMXPSHGCRYHUCWKHCOD32CEURZQCG
RJ
This code is easily broken when the plaintext is
English (the value of n is obvious from viewing
the ciphertext only). Even if the substitution
string is "scrambled," known redundancies in
English show up in the ciphertext ("e" is 2nd
most common, "i" is third, "th" is most common
diad, ... .
7
8
Types of Attacks
Ciphertext only Try different keys, see if
result is recognizable. More available
ciphertext is better. Ciphertext and
corresponding plaintext Substitution code
table known for every character in the
plaintext. Chosen Plaintext or Chosen
Ciphertext Slight variations can be used to
determine key being used. Chosen Key,
Plaintext, observe ciphertext variations. Good
for finding ways to "break" the algorithm (faster
techniques to determine unknown key).
8
9
Types of Cryptographic Functions
Secret Key (also "Conventional" or"Symmetric")
Identical keys used to encrypt and decrypt data
Ciphertext is same length as plaintext (
padding) Used for transmission and storage for
privacy Can be used for authentication
Message integrity check (MIC) (receiver can
generate) Public Key Cryptography
("Public-Private", "Asymmetric") Invented in
1975 ("Knapsack" broken, then "RSA") Public Key
can be used by anyone to send a message Private
Key can be used for a "Digital Signature" Hash
Algorithms ("Message Digest" or "1-Way
Transform") Password hashing
9
10
10
11
Block Codes
Block codes used fixed-length chunks of binary
data as "symbols" or "code points." DES and IDEA
treat 64-bit strings (blocks) of binary data as
input values. There are 264 7E12
7,000,000,000,000 values Each is mapped into
a unique ciphertext value. gt Uniqueness assured
by a series of "reversible" steps. The mapping
appears to be random gt Changing any bit in the
input changes about half of the output bits.
11
12
Block Operations
Substitutions Substitute each n-bit block, bi,
with another, Table bi -gt B(bi) requires 2n
vectors with n bits. gt n8 bits easy, n 64
bits too large. Algorithmic reversible
(1-to-1) operations gt B(bi) bi () c ()
is bitwise XOR, c is constant gt B(bi) bi c
mod 2n gt B(bi) bi x c mod 2n when c is an
odd number. Number Theory If 2n and c have
no common factors, there is a u such that bi
B(bi) x u mod 2n. Notedifferent keys for
encryption (c) and decryption (u). Permutations
(special case where bits shuffled) Easy to
implement in hardware, difficult in software
12
13
()
()
()
13
14
DES (Data Encryption Standard)
56-bit key 64-bit key 16 48-bit keys -gt ... 16
48-bit keys -gt (inverse of initial)
Initial Permutation Round 1 ... Round 16 Final
Permutation
The initial and final permutations (of the data
and the 56-bit key) appear to have no use other
than to make implementation of a 1975-era general
purpose computer impractical.
14
15
DES Round n, Encryption
64-bit input from last round
32-bit Ln
32-bit Rn

Mangler lt- Kn

()
32-bit Ln1
32-bit Rn1
64-bit output for next round
15
Why is this reversible for any Mangler function?
16
DES Round n, Decryption
64-bit input from last round
32-bit Rn
32-bit Ln

Mangler lt- Kn
L () M R


then
()
L M () R
32-bit Rn1
32-bit Ln1
64-bit output for next round
All steps in reverse order (except Mangler).
16
17
17
18
DES S-Boxes
S-Boxes 0 to 15 map a 6-bit input (64 possible
values) into a 4-bit output. Translation tables
are all different. Each 4-bit output value could
result from any of 4 different input
values. This is not a reversible function, but
it does not have to be for decryption. The
selection process for the S-Boxes has been kept
secret. Paranoids worry that a secret way
exists to break DES messages.
18
19
Concerns about DES
A DES Cracker was designed by the EFF for less
than 250,000 that will try 1E12 56-bit keys per
second (1000 per nanosecond). This will find the
right key in about 3 days (if the plaintext is
recognized as such when it appears). The answer
is to use longer keys. 128-bit keys are in
fashion. Triple-DES effectively uses a 112-bit
key.
19
20
Triple DES
There are 112 unique bits in key
Decryption
Encryption

c1

m1
D
Key1

E
Key1
E
Key2

D
Key2
D

E
Key1
Key1

m1

c1
20
21
IDEA vs DES
128-bit key vs 56-bit key. 3.4E38 vs 7E16
possible values. 4,194,304 times as many. If
an exhaustive key search for DES takes an hour,
the same for IDEA would take 500 years. Better
suited for implementation in software No large
bit-wise 64-bit permutations. Primitive
operations map 16 to 16 bits versus 6 to 4 Uses
mathematical operations rather than
S-boxes Newer algorithms Blowfish, RC5,
CAST-128 NIST had a contest for the Advanced
Encryption Standard, AES supports 128, 192,
and 256 bit keys -128-bit blocks.
21
22
22
23
Cipher Block Chaining (CBC)

m1
m2
m3
IV
()
()
()

E
E
E
Key

c1
c2
c3
The 1st 64-bit message segment is XOR'ed
with an initial vector (IV). Each following
message segment is XOR'ed with the
23
preceding ciphertext segment.
24
Cipher Block Chaining (CBC)
Encryption C1 E(IVM1) C2 E(C1M2)
E(E(IVM1)M2) C3 E(C2M3) E(E(E(IVM1)M2)
M3)
Decryption M1 D(C1IV) M2 D(C2) C1 M3
D(C3) C2 M4 D(C4) C3
If a bit in C2 is changed a. M2 becomes
random bits b. The corresponding bit in M3 is
reversed. c. Later (ngt3) message blocks are
unaffected (self-synchronizing). Note
represents the XOR bitwise operation.
24
25
k-bit Cipher Feedback Mode (CFB)



k
k
k-bit shift
IV
E
E
E
Key
use ms k-bits
m1-gt()
m2-gt()
m3-gt()
64-k bit shift
64-k
64-k
c1
c2
c3
25
26
k-bit Output Feedback Mode (OFB)




k
k
k

IV

Key
E
E
E
64-k
64-k
64-k

use ms k-bits
m1-gt()
m2-gt()
m3-gt()
c1
c2
c3
26

27
Electronic Code Book (ECB)

Blocks could be shuffled, duplicated,omitted by
attacker without being noticed.

Repeated ciphertext blocks reveal information.
Cipher Block Chaining (CBC)

Bits changed in c12 will change same bits in m13.

Defense is to include a CRC or MIC in message.
k-bit Cipher Feedback Mode (CFB)

More resistant to tampering

No plaintext-ciphertext attack possible.

Not self-synchronizing.
k-bit Output Feedback Mode (OFB)

Produces "one-time pad," self-synchronizing.
27
28
28
29
29
30
Bonus
Entropy of Data, H H sumi1 to kPi
log2(1/Pi) (bits of information per
symbol) Where k number of states (or
symbols) Pi probability of the ith state
(ni/N) If the symbols are binary numbers with 8
bits H 8 -gt complete disorder or
randomness H lt 8 -gt some order (ASCII text, H
4 - 5 bits)
30
31
Entrophy. Example - equal states
Example - 1 of 4 code State(i)
Probability Pi 0001 0.25 0010
0.25 0100 0.25 1000
0.25 other 12 0 Entrophy sumi1 to
kPi log2(1/Pi) 0.252 0.252 0.252
0.252 2 bits of information Equal Pi -gt
Entrophy log2(1/Pi)
31
32
Entrophy. Example - Unequal States
State(i) Probability Pi log2(1/Pi)) a
0.25 2 b 0.25 2 c
0.50 1 Entrophy sumi1 to kPi
log2(1/Pi) 0.252 0.252 0.51 1.5
bits of information Efficient Coding (Huffman -
code bits log2(1/Pi)) a 00 b 01 c
1 abcbcab 00 01 1 01 1 00 01 Good
ciphertext and good compressed data Enthropy -gt
number of bits (data -gt infinity)
32
Write a Comment
User Comments (0)
About PowerShow.com