Cryptography and Network Security Chapter 7

Similar documents
Cryptography and Network Security Chapter 7. Fourth Edition by William Stallings

Double-DES, Triple-DES & Modes of Operation

Network Security Essentials Chapter 2

Chapter 6 Contemporary Symmetric Ciphers

Chapter 6: Contemporary Symmetric Ciphers

Information Security CS526

NC7201 Communication. Dr.G.A.Sathish Kumar Professor EC

T Cryptography and Data Security

Information Security CS526

Cryptography. Summer Term 2010

T Cryptography and Data Security

Cryptography. Dr. Michael Schneider Chapter 10: Pseudorandom Bit Generators and Stream Ciphers

APPENDIX D RANDOM AND PSEUDORANDOM NUMBER GENERATION

Computer Security: Principles and Practice

Analysis, demands, and properties of pseudorandom number generators

PRNGs & DES. Luke Anderson. 16 th March University Of Sydney.

U-II BLOCK CIPHER ALGORITHMS

Basic principles of pseudo-random number generators

Acronyms. International Organization for Standardization International Telecommunication Union ITU Telecommunication Standardization Sector

Stream ciphers. Lecturers: Mark D. Ryan and David Galindo. Cryptography Slide: 91

CSC 580 Cryptography and Computer Security

Network Security Essentials

Stream Ciphers An Overview

RC4. Invented by Ron Rivest. A stream cipher Generate keystream byte at a step

page 1 Introduction to Cryptography Benny Pinkas Lecture 3 November 18, 2008 Introduction to Cryptography, Benny Pinkas

3 Symmetric Cryptography

Practical Aspects of Modern Cryptography

Blum-Blum-Shub cryptosystem and generator. Blum-Blum-Shub cryptosystem and generator

Lecture 1 Applied Cryptography (Part 1)

A Secured Key Generation Scheme Using Enhanced Entropy

Introduction to Modern Cryptography. Lecture 2. Symmetric Encryption: Stream & Block Ciphers

Introduction to Cryptography. Lecture 3

Stream Ciphers - RC4. F. Sozzani, G. Bertoni, L. Breveglieri. Foundations of Cryptography - RC4 pp. 1 / 16

Stream Ciphers. Stream Ciphers 1

Symmetric Encryption Algorithms

Security. Communication security. System Security

Introduction to Cryptography. Lecture 3

Cryptography and Network Security Overview & Chapter 1. Network Security. Chapter 0 Reader s s Guide. Standards Organizations.

Block ciphers, stream ciphers

Darshan Institute of Engineering & Technology Page Information Security (IS) UNIT-2 Conventional Encryption Techniques

1 Achieving IND-CPA security

Block Cipher Operation. CS 6313 Fall ASU

Outline. Data Encryption Standard. Symmetric-Key Algorithms. Lecture 4

CIS 4360 Secure Computer Systems Symmetric Cryptography

Recurrent Neural Network Models for improved (Pseudo) Random Number Generation in computer security applications

EEC-484/584 Computer Networks

3 Symmetric Key Cryptography 3.1 Block Ciphers Symmetric key strength analysis Electronic Code Book Mode (ECB) Cipher Block Chaining Mode (CBC) Some

CPS2323. Symmetric Ciphers: Stream Ciphers

IDEA, RC5. Modes of operation of block ciphers

Computer Security. 08. Cryptography Part II. Paul Krzyzanowski. Rutgers University. Spring 2018

Chapter 3 Block Ciphers and the Data Encryption Standard

Computer Security 3/23/18

ECE 646 Lecture 8. Modes of operation of block ciphers

How crypto fails in practice? CSS, WEP, MIFARE classic. *Slides borrowed from Vitaly Shmatikov

CS682 Advanced Security Topics

Cryptography CS 555. Topic 11: Encryption Modes and CCA Security. CS555 Spring 2012/Topic 11 1

Cryptography and Network Security Block Ciphers + DES. Lectured by Nguyễn Đức Thái

Computer Security. 08r. Pre-exam 2 Last-minute Review Cryptography. Paul Krzyzanowski. Rutgers University. Spring 2018

Network Security. Random Number Generation. Chapter 6. Network Security (WS 2003): 06 Random Number Generation 1 Dr.-Ing G.

Random number generation

CENG 520 Lecture Note III

CS 161 Computer Security. Week of September 11, 2017: Cryptography I

Overview of Security Principles

CS 179: GPU Computing. Lecture 16: Simulations and Randomness

Random and Pseudorandom Bit Generators

Lecture Nov. 21 st 2006 Dan Wendlandt ISP D ISP B ISP C ISP A. Bob. Alice. Denial-of-Service. Password Cracking. Traffic.

Solutions to exam in Cryptography December 17, 2013

Cryptography and Network Security

Pseudorandom Number Generator. Using Rabbit Cipher

EEC-682/782 Computer Networks I

Chapter 6 Random Number Generation

Cryptography and Network Security

CPSC 467b: Cryptography and Computer Security

Block Cipher Operation

What did we talk about last time? Public key cryptography A little number theory

CPSC 467: Cryptography and Computer Security

INTERNATIONAL JOURNAL OF PURE AND APPLIED RESEARCH IN ENGINEERING AND TECHNOLOGY

Analysis of Cryptography and Pseudorandom Numbers

Computer Security CS 526

Cryptography Functions

Cryptography and Network Security Chapter 3. Modern Block Ciphers. Block vs Stream Ciphers. Block Cipher Principles

ECE 646 Lecture 7. Modes of Operation of Block Ciphers. Modes of Operation. Required Reading:

CS61B Lecture #32. Last modified: Sun Nov 5 19:32: CS61B: Lecture #32 1

Cryptography MIS

Cache Timing Analysis of LFSR-based Stream Ciphers

Introduction to Cryptography. Lecture 2. Benny Pinkas. Perfect Cipher. Perfect Ciphers. Size of key space

Introduction to Cryptography. Vasil Slavov William Jewell College

Cryptography BITS F463 S.K. Sahay

Encryption. INST 346, Section 0201 April 3, 2018

n-bit Output Feedback

Comp527 status items. Crypto Protocols, part 2 Crypto primitives. Bart Preneel July Install the smart card software. Today

MTAT Applied Cryptography

6 Block Ciphers. 6.1 Block Ciphers CA642: CRYPTOGRAPHY AND NUMBER THEORY 1

Security: Cryptography

Computer Security Fall 2006 Joseph/Tygar MT 2 Solutions

Cryptographic Primitives A brief introduction. Ragesh Jaiswal CSE, IIT Delhi

Appendix A: Introduction to cryptographic algorithms and protocols

Public-Key Cryptography

Cryptography and Network Security Chapter 12. Message Authentication. Message Security Requirements. Public Key Message Encryption

CPSC 467b: Cryptography and Computer Security

Transcription:

Cryptography and Network Security Chapter 7 Fifth Edition by William Stallings Lecture slides by Lawrie Brown (with edits by RHB) Chapter 7 Stream Ciphers and Random Number Generation The comparatively late rise of the theory of probability shows how hard it is to grasp, and the many paradoxes show clearly that we, as humans, lack a well grounded intuition in this matter. In probability theory there is a great deal of art in setting up the model, in solving the problem, and in applying the results back to the real world actions that will follow. The Art of Probability, Richard Hamming Outline pseudorandom number generation stream ciphers RC4 true random numbers Random Numbers many uses of random numbers in cryptography nonces in authentication protocols to prevent replay session keys public key generation keystream for a one-time pad in all cases its critical that these values be statistically random, uniform distribution, independent unpredictability of future values from previous values true random numbers provide this care needed with generated random numbers

Pseudorandom Number Generators (PRNGs( PRNGs) often use deterministic algorithmic techniques to create random numbers although are not truly random can pass many tests of randomness known as pseudorandom numbers created by Pseudorandom Number Generators (PRNGs( PRNGs) Random & Pseudorandom Number Generators PRNG Requirements randomness uniformity, scalability, consistency unpredictability forward & backward unpredictability use same tests to check characteristics of the seed secure if known adversary can determine output so must be random or pseudorandom number Linear Congruential Generator common iterative technique using: X n+1 =(ax n +c) modm given suitable values of parameters can produce a long random-like sequence suitable criteria to have are: function generates a full-period generated sequence should appear random efficient implementation with 32-bit arithmetic note that an attacker can reconstruct sequence given a small number of values (knowing acm) have possibilities for making this harder

Blum Blum Shub Generator Example Operation of BBS based on public key algorithms use least significant bit from iterative equation: x 0 =s 2 modn LOOP x i =x i-12 modn b i =x i mod2 where n= p.q,, and primes p,q=3 mod4 unpredictable, passes next-bit test security rests on difficulty of factoring n is unpredictable given any run of bits slow, since very large numbers must be used too slow for cipher use, good for key generation Using Block Ciphers as PRNGs for cryptographic applications, can use a block cipher to generate random numbers often for creating session keys from master key CTR X i =E K [V i ] OFB X i = E K [X i-1 ] ANSI X9.17 PRG a relatively complicated construction, including timestamps, and multiple encryptions date and time (DT i ) uses 2-key (K 1,K 2 ) triple DES (3 times per random bit R i ) feeds back between rounds (V i )

ANSI X9.17 PRG Stream Ciphers process message bit by bit (as a stream) have a pseudo random keystream combined (XOR) with plaintext bit by bit (cf. one-time pad) randomness of stream key completely destroys statistically properties in message C i = M i XOR StreamKey i but must never reuse stream key otherwise can recover messages (via XOR of msgs) Stream Cipher Structure Stream Cipher Properties some design considerations are: long period with no repetitions statistically random depends on large enough key large linear complexity properly designed, can be as secure as a block cipher with same size key but usually simpler & faster

RC4 a proprietary cipher owned by RSA DSI another Ron Rivest design, simple but effective variable key size, byte-oriented stream cipher widely used (web SSL/TLS, wireless WEP/WPA) key forms random permutation of all 8-bit 8 values uses that permutation to scramble input info processed a byte at a time RC4 Key Schedule starts with an array S of numbers: 0..255 use key to well and truly shuffle S S forms internal state of the cipher for i=0i to 255 do S[i]=i T[i]=K[i mod keylen] j=0 for i=0i to 255 do j=(j+s[i]+t[i]) ])(mod256) swap(s[i S[i], ],S[j]) RC4 Encryption RC4 Overview encryption continues shuffling array values sum of shuffled pair selects "stream key" value from permutation XOR S[t] ] with next byte of message to en/decrypt i=j=0 for each message byte M i i= (i+ 1) (mod 256) j= (j+ S[i]) (mod 256) swap(s[i S[i], S[j]) t=(s[i]+ S[j]) (mod 256) C i =M i XOR S[t]

RC4 Security claimed secure against known attacks when managed properly have some analyses, none practical result is very non-linear since RC4 is a stream cipher, must never reuse a key Natural Random Noise best source is natural randomness in real world find a regular but random event and monitor do generally need special h/w to do this eg. radiation counters, radio noise, audio noise, thermal noise in diodes, leaky capacitors, mercury discharge tubes etc photon detectors starting to see such h/w in new CPU's problems of bias or uneven distribution in signal have to compensate for this when sample, often by passing bits through a hash function best to only use a few noisiest bits from each sample RFC4086 recommends using multiple sources + hash Photon Detector TRNG Photon Detector TRNG

Using a TRNG to give seed Published Sources a few published collections of random numbers Rand Co, in 1955, published 1 million numbers generated using an electronic roulette wheel has been used in some cipher designs cf Khafre earlier Tippett in 1927 published a collection issues are that: these are limited too well-known for most uses