two pseudo-random number generators, an overview

12
Two Pseudo-random Number Generators, an Overview By Kato Mivule Bowie State University Computer Science Department Wireless Security Presentation - Spring 2012 Dr. Claude Turner

Upload: kato-mivule

Post on 18-Nov-2014

2.702 views

Category:

Technology


3 download

DESCRIPTION

 

TRANSCRIPT

Page 1: Two Pseudo-random Number Generators, an Overview

Two Pseudo-random Number Generators, an

Overview

By Kato Mivule

Bowie State University Computer Science Department

Wireless Security Presentation - Spring 2012

Dr. Claude Turner

Page 2: Two Pseudo-random Number Generators, an Overview

Two Pseudo-random Number Generators, an Overview

Overview

• Introduction • A Pseudorandom Bit Generator • Linear Congruential Generator (LCG)

• Blum-Blum-Shub Pseudorandom Bit Generators • BBS Algorithm • Conclusion and Suggestions

Page 3: Two Pseudo-random Number Generators, an Overview

Two Pseudo-random Number Generators, an Overview

Introduction

• Random number generation is a critical part of any cryptographic and

spread spectrum systems in terms of strength and security.

• A weak random number generation in a cryptographic or spread spectrum system could results in a compromised system.

• As such a number of cryptographic and spread spectrum systems depend on the generation random and pseudorandom bits for enhanced security.

Page 4: Two Pseudo-random Number Generators, an Overview

Two Pseudo-random Number Generators, an Overview

A pseudorandom bit generator (PRBG)

• This is an algorithm that utilizes deterministic procedures when given a seed, to produce a sequence of random bits based on the seed value that appear to be random and will pass the random number tests.

• The input to the PRBG is known as the seed, while the output of the PRBG is referred to as a pseudorandom bit sequence

Page 5: Two Pseudo-random Number Generators, an Overview

Two Pseudo-random Number Generators, an Overview

Linear Congruential Generator (LCG)

• This type of algorithm generates long random strings of numbers with the sequence repeating at some point.

• The random string of values generated is determined by a fixed number called a seed.

• 𝑥𝑛+1 = (𝑎𝑥𝑛 + 𝑏) 𝑚𝑜𝑑 𝑚

Page 6: Two Pseudo-random Number Generators, an Overview

Two Pseudo-random Number Generators, an Overview

Linear Congruential Generator (LCG)

• One of the popular techniques for the production of pseudorandom numbers is the utilization of Linear Congruential Generators (LCG).

• LCGs produce pseudorandom sequences of numbers 𝑥1, 𝑥2, 𝑥3... according to the linear recurrence:

• 𝑥𝑛+1 = (𝑎𝑥𝑛 + 𝑏) 𝑚𝑜𝑑 𝑚

• Where 𝑛 ≥ 1

Page 7: Two Pseudo-random Number Generators, an Overview

Two Pseudo-random Number Generators, an Overview

Linear Congruential Generator (LCG) In a Linear Congruential Generator, the next pseudorandom number is generated from the current one such that:

𝑥𝑛+1 = (𝑎𝑥𝑛 + 𝑏) 𝑚𝑜𝑑 𝑚

Where 𝑎 and 𝑏, are relatively prime numbers

𝑚 = modulus and 𝑚 > 0

𝑎 = the multiplier and 0 < 𝑎 < 𝑚

𝑏 = the increment and 0 < 𝑏 < 𝑚

𝑥0 = the starting seed value and 0 ≤ 𝑥0 < 𝑚

The scope of random numbers generated is less than the range of the integer used in the calculation . The generated random numbers 𝑥𝑖 are said to be periodic where the period is always less ≤ 𝑚 and all 𝑥𝑖 are in the interval 0 ≤ 𝑥𝑖 < 𝑚.

Page 8: Two Pseudo-random Number Generators, an Overview

Two Pseudo-random Number Generators, an Overview

Linear Congruential Generator (LCG) Example of LCG m = 16; a = 3; b = 1

𝑥𝑛+1 = (3𝑥𝑛 + 1) 𝑚𝑜𝑑 16

𝑥0 = (3*0 + 1) mod 16 = 1 𝑥1 = (3*1 + 1) mod 16 = 4 𝑥2 = (3*4 + 1) mod 16 = 13 𝑥3 = (3*13 + 1) mod 16 = 8 𝑥4 = (3*8 +1) mod 16 = 9 𝑥5 = (3*9 +1) mod 16 = 12 𝑥6 = (3*12 +1) mod 16 = 5 𝑥7 = (3*5 +1) mod 16 = 0 𝑥8 = (3*0 +1) mod 16 = 1

Therefore generated sequence = {1, 4, 13, 8, 9, 12, 5, 0, 1}

Page 9: Two Pseudo-random Number Generators, an Overview

Two Pseudo-random Number Generators, an Overview

Blum-Blum-Shub (BBS) Pseudorandom Bit Generators • Blum Shub (BBS) is a pseudorandom number generator suggested in 1986 by

Lenore Blum, Manuel Blum and Michael Shub (Blum et al., 1986).

• BBS is said to be a cryptographically secure pseudorandom bit generator (CSPRBG). A CSPRBG is defined as one that passes the next-bit test.

• A pseudorandom bit generator is said to pass the next-bit test, if given the first k bits of the sequence, there is no practical algorithm that can predict that the next bit will be a 1 or 0 with probability greater than ½ therefore the sequence is unpredictable.

• Blum Blum Shub is in the form: • 𝑥𝑛+1 = 𝑥𝑛

2 𝑚𝑜𝑑 𝑚

Page 10: Two Pseudo-random Number Generators, an Overview

Two Pseudo-random Number Generators, an Overview

BBS Algorithm • Generate two large secret random prime numbers 𝑝 and 𝑞 • Let each of the chosen primes 𝑝 and 𝑞 be harmonious

1. Compute 𝑛 = 𝑝𝑞 2. Select a random integer 𝑠 (the seed) in the interval [1, 𝑛 − 1] such

that gcd 𝑠, 𝑛 = 1 3. Let 𝑥0 = 𝑠2 𝑚𝑜𝑑 𝑛 4. For 𝑖 = 1 𝑡𝑜 ∞ 𝑑𝑜 5. Compute 𝑥𝑖 = 𝑠2 𝑚𝑜𝑑 𝑛 6. Compute 𝑥𝑖 = 𝑥𝑖 𝑚𝑜𝑑 2 7. 𝑧𝑖 = 𝑡ℎ𝑒 𝑙𝑒𝑎𝑠𝑡 𝑠𝑖𝑔𝑛𝑖𝑓𝑖𝑐𝑎𝑛𝑡 𝑏𝑖𝑡 𝑜𝑓 𝑥𝑖 8. Output the sequence as𝑧1, 𝑧2, 𝑧3, … , 𝑧𝑙

Page 11: Two Pseudo-random Number Generators, an Overview

Two Pseudo-random Number Generators, an Overview

Thank You!

Comments, Questions, and Suggestions.

Page 12: Two Pseudo-random Number Generators, an Overview

Two Pseudo-random Number Generators, an Overview

Sources and Bibliography [1] Alfred J. Menezes, Paul C. Van Oorschot, Scott A. Vanstone "Handbook of Applied Cryptography" ISBN 0849385237, 9780849385230, Pages 169-190, CRC Press, 1997 [2] X. Wang, W. Yu, X. Fu, D. Xuan, and W. Zhao, “iloc: An invisible localization attack to internet threat monitoring systems,” IEEE INFOCOM 2008. The 27th Conference on Computer Communications, 2008, pp. 1930–1938. [3] William Stallings, "Cryptography and Network Security: Principles and Practice", Prentice Hall, 2010, ISBN 0136097049, 9780136097044 [4] Bob Bockholt, "linear congruential generator", in Dictionary of Algorithms and Data Structures [online], Paul E. Black, ed., U.S. National Institute of Standards and Technology. 17 December 2004. (accessed June 20th, 2010) Available from: http://www.itl.nist.gov/div897/sqg/dads/HTML/linearCongruentGen.html [5] Samuel S. Wagstaff, Jr, "Cyptanalysis of Number Theoretic Ciphers", Chapman & Hall/CRC, ISBN 1-58488-153-4, page 211 [6] M.E. Yalcin, J.A.K. Suykens, J. Vandewalle "True random bit generation from a double-scroll attractor", IEEE Transactions on Circuits and Systems, 2004 [7] Anders Andersen, Finn Jensen, Morten Kristensen "TrueRandom", 2009, http://www.daimi.au.dk/~ivan/reports2009/TrueRandom.pdf [8] Henk C. A. van Tilborg, "Encyclopedia of cryptography and security", Springer, 2005, ISBN 038723473X, 9780387234731 [9] Richard A. Mollin, "RSA and public-key cryptography", Volume 21 of Discrete mathematics and its applications, CRC Press, 2003, ISBN 1584883383, 9781584883388