DTTF/NB479:
Sponsored Links
This presentation is the property of its rightful owner.
1 / 8

Announcements: Matlab : tutorial available at math.ufl/help/matlab-tutorial/ PowerPoint PPT Presentation


  • 110 Views
  • Uploaded on
  • Presentation posted in: General

DTTF/NB479: Dszquphsbqiz Day 5. Announcements: Matlab : tutorial available at http://www.math.ufl.edu/help/matlab-tutorial/ Questions? Today: Wrap up Hill ciphers One-time pads and LFSR Schedule change: skip Playfair cipher, start ch 3 tomorrow. Next: one time pads.

Download Presentation

Announcements: Matlab : tutorial available at math.ufl/help/matlab-tutorial/

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.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


DTTF/NB479: DszquphsbqizDay 5

  • Announcements:

    • Matlab: tutorial available at http://www.math.ufl.edu/help/matlab-tutorial/

  • Questions?

  • Today:

    • Wrap up Hill ciphers

    • One-time pads and LFSR

  • Schedule change: skip Playfair cipher, start ch 3 tomorrow


Next: one time pads

  • Back to Vigenere: if the codeword were really long, say 25% as long as the entire plaintext, how many characters would contribute to each dot product? ____

    • What does this say about our ability to do a frequency analysis?

  • Now consider the extreme case, the one-time pad…


One-time pads

  • Represent the plaintext in binary, length n

    • Works for text (from ASCII), images, music, etc

  • The key is a random vector of length n

  • Ciphertext = plaintext XOR key

  • Do

    • message = 1000011, key = 1110010

    • Cipher = ???

  • ciphertext XOR key = ???


Unbreakable?

  • Yes, for ciphertext only…

    Ciphertext:

    EOFMCKSSDKIVPSSAD

    Could be:

    thephoneisringing

    meetmeinthegarage

    I need the whole key to decrypt.

  • What’s the downside to using a one-time pad?

    Variation: Maurer, Rabin, Ding et al’s satellite method

  • If I’m willing to compromise some security…


Linear Feedback Shift Register (LFSR) Sequences

Name comes from hardware implementation

Generated bit stream

Shift register

b1 b2 b3 b4 … bm-1 bm

To encrypt plaintext of length n, generate an n-bit sequence and XOR with the plaintext.

Feedback function

  • Need initial conditions (bits in register) and a function to generate more terms.

  • Example:

    • x1 = 0, x2 = 1, x3 = 0, x4 = 0, x5 = 0;

    • xn+5 = xn + xn+2 (mod 2)

  • What does this remind you of in math?


Linear Feedback Shift Register (LFSR) Sequences

  • A recurrence relation!

    • Specify initial conditions and coefficients, for example:

    • x1 = 0, x2 = 1, x3 = 0, x4 = 0, x5 = 0;

    • xn+5 = xn + xn+2 (mod 2)

    • Another way to write is xn+5 = 1xn + 0xn+1 + 1xn+2 +0xn+3 + 0xn+4 (mod 2)

  • In general,

  • Generate some more terms

  • How long until it repeats? (the period of the sequence)

    • 10 bits (0100010100) generates ____ bits

    • Demo


Long periods

  • LFSR can generate sequences with long periods

    • Like Vigenere with long key: hard to decrypt!

    • Lots of “bang for the buck”!

    • But it depends on the key

  • Good example:xn+31=xn + xn+3 (mod 2)

  • How many bits do we need to represent this recurrence?

    • 62 bits

  • How long is the period?

    • Over 2 billion! Why?

    • There exist (231 – 1) 31-bit words

      • Why “-1”?

      • If it cycles through all of these, it’s maximal. Related to Mersenne primes

      • See http://www.ece.cmu.edu/~koopman/lfsr/index.html for a list of maximal-period generators

  • Can you devise a bad example (one with period << 2n-1)?


LFSR Demo

  • Downside: very vulnerable to known plaintext attacks.

  • Determine key length by computing determinants

    • Theorem: If N is the length of the shortest recurrence that generates the sequence, then det(MN) = 1 (mod 2) and det(Mn)=0 (mod 2) for all n > N.

    • 0 1 1 0 0 1 0 0 0 0 0 0 0 0 0 …  length = 5

  • Use the key length to solve for the recurrence.

  • Verify your solution by using the solution to generate the whole key


  • Login