20
An Introduction to Stream Ciphers Zahra Ahmadian Electrical Engineering Department Sahrif University of Technology [email protected]

An Introduction to Stream Ciphers

  • Upload
    ciro

  • View
    54

  • Download
    1

Embed Size (px)

DESCRIPTION

An Introduction to Stream Ciphers. Zahra Ahmadian Electrical Engineering Department Sahrif University of Technology [email protected]. Overview . The development of stream ciphers Two types of stream ciphers Synchronizing stream ciphers Self synchronizing stream ciphers - PowerPoint PPT Presentation

Citation preview

Page 1: An Introduction to Stream Ciphers

An Introduction to Stream Ciphers

Zahra AhmadianElectrical Engineering Department

Sahrif University of [email protected]

Page 2: An Introduction to Stream Ciphers

Overview

• The development of stream ciphers

• Two types of stream ciphers

– Synchronizing stream ciphers

– Self synchronizing stream ciphers

• Cryptanalyses of stream ciphers

• eStream project

• Conclusion

Page 3: An Introduction to Stream Ciphers

Taxonomy of cryptographic primitives

Keyed Hash Functions

Page 4: An Introduction to Stream Ciphers

Vernam one time pad cipher

• Vernam one time pad cipher: a sequence of independent and uniformly distributed bits.

• its perfect security is proven by Shannon; I(M,C)=0.

• No deterministic algorithm can produce truly independent outputs.

• The keystream should be at least as long as the plaintext and each key should be used only once so the exchanging of the private key becomes difficult.

Page 5: An Introduction to Stream Ciphers

The development of Stream cipher

• Tries to be a generalization of Vernam cipher.

• Turning a blind eye, Stream ciphers can be considered as Pseudo Random Generators (PRG).

• Generation of a periodic key stream with

– maximal period,

– Maximal linear complexity,

– Easy to implement,

– Fast algorithm,

– Easily controlled by the key.

Page 6: An Introduction to Stream Ciphers

Stream cipher V.S. Block ciphers

• Stream ciphers are typically

• Faster

– Suitable for real time scenarios

– multi-Gigabit-per-second communications e.g. routers

• More efficient compact implementation

– Suitable for constrained devices

• zero error propagation

– Suitable for radio communications

Page 7: An Introduction to Stream Ciphers

Current widespread application

• A5 family in GSM mobile network

• SNOW 3G in UMTS mobile network

• E0 in Bluetooth

• RC4 in Wired Equivalent Privacy (WEP)

• …

Page 8: An Introduction to Stream Ciphers

synchronous stream cipher

Page 9: An Introduction to Stream Ciphers

self-synchronizing stream cipher

Page 10: An Introduction to Stream Ciphers

Comparison of synchronous and Self synchronizing Stream ciphers

Property synchronous Self synchronizing

Synchronizing Weak (IV is needed) Good

Error propagation Good Weak

Detection of active attacks Weak Good

Possible attack scenarios

Ctx only Yes Yes

Known Ptx Yes Yes

Chosen Ptx No Yes

Known Ctx No Yes

Page 11: An Introduction to Stream Ciphers

Cryptanalysis of stream ciphers

• The standard assumption: KNOWN PLAINTEXT ATTACK

• This implies knowledge of the keystream

Page 12: An Introduction to Stream Ciphers

Types of attacks

• Key Recovery attacks

– Recover the secret key k.

• Distinguishing Attacks

– Build a distinguisher that can distinguish the running key from a random sequence

• Other attacks:

– Prediction of the next symbol

– Recovering the initial state

– …

Page 13: An Introduction to Stream Ciphers

Attack techniques

• Universal distinguishers

– Apply known statistical tests

• Time-memory tradeoff attacks

– Decrease computational complexity by using memory

• Guess-and-determine

– Guess unknown things on demand

Page 14: An Introduction to Stream Ciphers

Attack techniques

• Correlation attacks

– Dependence between output and internal unknown variables

• Linear attacks

– Apply linear approximations

• Algebraic attacks

– View your problem as the solution to a system of nonlinear equations

Page 15: An Introduction to Stream Ciphers

eStream Project

Page 16: An Introduction to Stream Ciphers

eStream Project

• Held by ECRYPT a consortium of European research organizations.

• A multi-year effort running from 2004 to 2008

• A Call for Stream Cipher Primitives to identify new stream ciphers suitable for widespread adoption.

Page 17: An Introduction to Stream Ciphers

eStream Project

• The submissions fall into either or both of two profiles:

– Profile 1: Stream ciphers for software applications with high throughput requirements

– Profile 2: Stream ciphers for hardware applications with restricted resources such as limited storage, gate count, or power consumption.

Page 18: An Introduction to Stream Ciphers

Three phases of eStream Project

• Phase 1. a general analysis of all submissions based on their security, performance, simplicity, flexibility, justification, clarity and completeness of the documentation.

• Phase 2.  For each of the profiles, a number of algorithms have been selected to be focus Phase 2 algorithm.

Page 19: An Introduction to Stream Ciphers

Three phases of eStream Project

• Phase 3. for each of the profiles, eight candidate have been introduced to be analyzed with more scrutiny,

• It ended April 15, 2008 with the announcement of the candidates that had been selected for the final eSTREAM portfolio.

Profile 1 (SW) Profile 2 (HW)

HC-128 Grain v1

Rabbit MICKEY v2

Salsa20/12 Trivium

SOSEMANUK

Page 20: An Introduction to Stream Ciphers

Conclusion

• Due to the advantages of stream ciphers, they are widely used in many applications (e.g. wireless)

• Before eStream project, there was a little work on stream ciphers.

• eStream introduced new block cipher designs and also results in a extensive development in cryptanalysis method for stream ciphers.

• A serious competitor for stream ciphers are block ciphers in counter or OFB modes of operation.