Symmetric Key Cryptography [PDF]

Huth). Symmetric Key Cryptography (3.17). DES block cipher: modes of usage. ➢ So far, we saw how DES encrypts one 64-b

2 downloads 40 Views 522KB Size

Recommend Stories


Symmetric-Key Cryptography
The wound is the place where the Light enters you. Rumi

Symmetric Key Cryptography on Modern Graphics Hardware
Pretending to not be afraid is as good as actually not being afraid. David Letterman

Distributed Symmetric-key Encryption
The happiest people don't have the best of everything, they just make the best of everything. Anony

Public Key Cryptography
The wound is the place where the Light enters you. Rumi

Public Key Cryptography
Respond to every call that excites your spirit. Rumi

Unshared Secret Key Cryptography
Never wish them pain. That's not who you are. If they caused you pain, they must have pain inside. Wish

Public Key Cryptography (II)
Live as if you were to die tomorrow. Learn as if you were to live forever. Mahatma Gandhi

a symmetric key cryptographic algorithm
Don’t grieve. Anything you lose comes round in another form. Rumi

Waste Design | Public Key Cryptography | Computer Network - Scribd [PDF]
A uses the final 8 bytes of sKeyA as the PCBC IV for send. to produce EsKeyA. 21. B uses the final 8 bytes of sKeyB as the PCBC IV for send. 18. B uses the first 56 bytes of sKeyA XOR sKeyB to intialize Blowfish for send and receive. A sends B: RSA(p

PDF-Download- Applied Cryptography
Where there is ruin, there is hope for a treasure. Rumi

Idea Transcript


Symmetric Key Cryptography Michael Huth [email protected] www.doc.ic.ac.uk/~mrh/430/ Network Security (N. Dulay & M. Huth)

Symmetric Key Cryptography (3.1)

Introduction  Also known as SECRET KEY, SINGLE KEY, PRIVATE KEY  Assumption: Sender and Receiver share already a secret key  Assumption requires solution to key-distribution problem  Symmetric key algorithms also popular for file encryption, then Encrypter = Decrypter

Network Security (N. Dulay & M. Huth)

WEAK ALGORITHMS  Classical substitution and transposition ciphers, as discussed last week “STRONGER” ALGORITHMS  DES – No longer considered safe  Triple-DES  AES (Rijndael)  IDEA  RC5, RC6  Blowfish  Many others

Symmetric Key Cryptography (3.2)

Encryption & Decryption Key (K) Encrypt (E)

Plaintext (P)

Ciphertext (C)

C = EK (P) Same Key (K) Ciphertext (C)

Decrypt (D)

Plaintext (P)

P = DK (C) P = DK (EK (P)) Network Security (N. Dulay & M. Huth)

Symmetric Key Cryptography (3.3)

DES - Data Encryption Standard  Intended usage: * Unclassified government business (USA) * Sensitive private sector business  Was legally a munition in the US, like rocket launchers. DES could not be legally exported from the US as software (but could be published in a US book, or printed on a T-Shirt!)  Re-certified every five years, i.e. 1983, 1988, 1993. US NSA (“National Security Agency” aka “No Such Agency”) were reluctant for DES to be re-certified in 1988.

Network Security (N. Dulay & M. Huth)

 1973 - US NBS (“National Bureau of Standards”, now called NIST) request for proposals. None judged worthy.  1974 - 2nd request for proposals. * US NSA urges IBM to submit its cipher Lucifer * US NSA modifies IBM’s submission.  1975 - US NBS publishes proposal Much comment about US NSA modifications, e.g. fear of backdoors, shortening of key from 128 to 56 bits  1976 - DES Standard published. US NSA thought standard would be HW only, but NBS published enough details for software implementation.  1976 - 1998 DES widely used worldwide  1998 – DES brute force attackable Symmetric Key Cryptography (3.4)

Basics  Plaintext encrypted 64-bits at a time.  56 bits used for key.  256 = 7.2x1016 possible keys

 Each bit of ciphertext should depend on all bits of plaintext and all bits of the key (DIFFUSION)

56-bit Key 64-bit P

E

64-bit C

 DES is an example of a BLOCK CIPHER (but can also be operated as a STREAM CIPHER)

Network Security (N. Dulay & M. Huth)

Desired Design Criteria:  Ciphertext should depend on the plaintext and key in a complicated and involved way (CONFUSION)

 AVALANCHE EFFECT Small changes to input cause massive variation in output. In DES flipping 1 bit of the key or 1 bit of a 64-bit input block will flip 50% of the output block’s bits

Symmetric Key Cryptography (3.5)

Structure of DES 64-bit Plaintext

56-bit Key

Initial Permutation (IP) 64 Round 1 64

................................56 Round 16

Swap L & R halves Inverse of IP

ENCRYPTION  Each block is subjected to 16 rounds of substitutions and permutations (transpositions).  Permutations act to ‘diffuse’ data, substitutions act to ‘confuse’ data (SHANNON’s terminology)  Each round uses 48 bits from key called the subkey.  Initial and final permutation appear to be redundant. DECRYPTION  Same process as encryption but with subkeys applied in reverse order

64-bit Ciphertext Network Security (N. Dulay & M. Huth)

Symmetric Key Cryptography (3.6)

Feistel Cipher: a cipher design pattern Encryption  N rounds  Plaintext = (L0, R0)  For 1 X. If X in T, check K1 & K2 with new crib (P2, C2). If okay then keys found.  Reduces 2112 to 256 for Double DES, but T is huge!

Network Security (N. Dulay & M. Huth)

* P1

E

K1

K2

E

E

T

C

*

find X

X

D

C1

Symmetric Key Cryptography (3.28)

Triple DES (part of DES standard) TRIPLE DES WITH 2 KEYS (EDE2)

 3 keys considered unnecessary  Cost of 2 key attack is thus 2112  2nd Stage is decryption because if K2=K1 we gain backward compatibility with Single DES  Available in PEM (Privacy Enhanced Mail), PGP, and others.

P

TRIPLE DES WITH 3 KEYS (EDE3)

 Preferred by some  168-bit key length

P Network Security (N. Dulay & M. Huth)

K1

K2

K1

E

D

E

K1

K2

K3

E

D

E

C

C

Symmetric Key Cryptography (3.29)

IDEA  Lai and Massey, ETH Zurich, 1991  International Data Encryption Algorithm

RC5  Designed by Ron Rivest (Ron’s Code 5) of RSA fame in 1995  Patented by RSA Inc

 Patented but blanket permission for non-commercial use

 Variable block size (32, 64, 128)

 64-bit block cipher, 128-bit key

 Variable key size (0 to 2048)

 Uses XOR, Modular + and * in each round (8 rounds)

 Variable no. of rounds (0 to 255)

 Considered strong, but 6-round attack requires 264 known plaintexts and 2126.8 operations

 Uses XOR, modular + and circular left rotations.

 Used in PGP Network Security (N. Dulay & M. Huth)

 12-round version subject to differential attack, needs 244 plaintexts Symmetric Key Cryptography (3.30)

The Advanced Encryption Standard Michael Huth [email protected] www.doc.ic.ac.uk/~mrh/430/ Network Security (N. Dulay & M. Huth)

Symmetric Key Cryptography (3.31)

Introduction  In January 1997 US NIST solicited proposals for new Advanced Encryption Standard (AES) to replace DES as a federal standard. Approved for classified US governmental documents by US NSA  Five algorithms shortlisted. Winner: Rijndael (by Joan Rijmen & Vincent Daemen from Belgium). AES is minor variant of Rijndael  Web Page: csrc.nist.gov/encryption/aes  US FIPS PUB197, Nov 2001

Network Security (N. Dulay & M. Huth)

 Resistant to Known Attacks, at least in “full” version  Very fast. Parallel Design.  Blocksize: 128 bits Keysizes (Rounds): 128 (10), 192 (12) & 256 (14) bits.  Simple operations over bytes and 32-bit words.  Bytes/words -> polynomials  Implementations for wide range of processors incl. smartcards.  Encryption # Decryption

Symmetric Key Cryptography (3.32)

Byte - b7b6b5b4b3b2b1b0  Bytes represent finite field elements in GF(28), GF means “Galois Field”  Correspond to a 8 term polynomial, with 0 or 1 coefficients.

b7x7 + b6x6 + b5x5 + b4x4 + b3x3 + b2x2 + b1x + b0 Example: x6 + x5 + x3 + x2 + 1 polynomial {0110 1101}

binary

6D

hex

Network Security (N. Dulay & M. Huth)

Symmetric Key Cryptography (3.33)

Byte Addition in GF(28)  To add 2 finite fields elements in GF(28) we add coefficients of corresponding powers modulo 2  In binary: xor (⊕) the bytes Example: (x6 + x4 + x2 + x + 1) + (x7 + x + 1) = (x7 + x6 + x4 + x2) {0101 0111} ⊕ {1000 0011} = {1101 0100} 57 ⊕ 83 = D4

Network Security (N. Dulay & M. Huth)

binary hex

Symmetric Key Cryptography (3.34)

Byte Multiplication in GF(28)  To multiply (denoted by • ) 2 finite fields elements in GF(28) we multiply the polynomials modulo an irreducible polynomial of degree 8 (i.e. ensures result is less than degree 8).  Irreducible if only divisors are 1 and itself. Can find multiplicative inverse using Extended Euclidean algorithm (with works for any “integral domains”, certain kinds of rings).  For AES we use (x8 + x4 + x3 + x + 1) as the irreducible polynomial, i.e. multiplication is:

c(x) = a(x) • b(x) mod m(x) where m(x) = (x8 + x4 + x3 + x + 1) Multiplication • is the basis for non-linear behaviour of AES: it’s easy to understand over polynomials, but hard to predict as operation on bytes. Network Security (N. Dulay & M. Huth)

Symmetric Key Cryptography (3.35)

Byte Multiplication in GF(28) - Example (x7 + x6 + 1) • (x2 + x) = (x9 + x8 + x2) + (x8 + x7 + x) = x 9 + x 7 + x2 + x

x8 + x4 + x3 + x + 1

x 9 + x7 + x2 + x x9 + x5 + x4 + x2 + x x7 + x5 + x4

Result = x7 + x5 + x4

Network Security (N. Dulay & M. Huth)

Symmetric Key Cryptography (3.36)

xtime - multiplication by x i.e. {02}  If we multiply a byte by x we have

b7x8 + b6x7 + b5x6 + b4x5 + b3x4 + b3x3 + b1x2 + b0x  If b7=0, then the result is okay, otherwise we need to subtract m(x). This is known as the xtime operation in AES:

Smile Life

When life gives you a hundred reasons to cry, show life that you have a thousand reasons to smile

Get in touch

© Copyright 2015 - 2024 PDFFOX.COM - All rights reserved.