1 / 11

Stream Ciphers

In this session, students will learn how to create pseudo-random numbers using Linear Feedback Shift Registers (LFSRs) and understand the methods used to evaluate the randomness of these bits. The objectives include generating a sequence of random bits based on primitive polynomials, testing the resulting bits for randomness through various statistical tests (Poker, Runs test, Long Run test), and ensuring the generated bits meet specified criteria. Students will produce a 20,000-bit sequence, analyze its randomness, and explore essential cryptographic practices.

Télécharger la présentation

Stream Ciphers

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Stream Ciphers Day 18

  2. Objectives Students will be able to… • …to create a pseudo-random number with a linear feedback shift register. • …understand some of the methods for checking to a set of bits for randomness.

  3. Problem: Random string of bits

  4. Linear Feedback Shift Register

  5. Primitive polynomials • Example: p(x) = x3 + x + 1 • Length until repeating is 2n - 1

  6. Example 1: • Find a list of primitive polynomials. • Generate a list of random bits.

  7. Example 2: • Generate a list of 20000 random bits. • 20-bit register • You will need… • a coin for the initial 20-bit register • Excel program from the SMA website.

  8. Test or randomness • Create 20,000 bits • Count the number of 1’s: Must be in the 9654-10,346 range • FIPS 140-1 (Poker test) • Divide into 4-bit segments and convert to decimal numbers • Count and store the number of occurrences • 1.03 < x < 57.4

  9. Test or randomness • The Runs test

  10. Test or randomness • The long run test • Run of length 34 or more • On the sample of 20,000 bits, the test is passed if there are NO long runs

  11. Example 3: • Test your 20,000 “random” bits for randomness using the 4 tests.

More Related