EE 480F
Cryptology and Information Security
Tues-Thurs 4:25-5:50
Lecture Hall 4
  • Course Information
    • Syllabus
  • Assignments:
    • Program 0
    • Assignment 1
    • Assignment 2
    • Arbitrary precision arithmetic
  • Reading material:
    • Notes on detection

    • Detection Illustrated

    • Code to break Vignère

    • Notes on Information Theory

  • Links:
    • Command line arguments

    • My web page
  • My office hours are Tuesdays and Thursdays, 1:00-4:00pm.
  • Here is a review for the final.
  • Test inputs for your programming assignment: Try the following primes:
    • p = 37235E2181 (236816572801 decimal)
    • q = C3E3624DA1 (841333493153 decimal)
    You should get these results from multiplication and addition:
    • N = p*q = 2A30EA3C3F51C4A8DF21 (199241714431187059531553 decimal)
    • Phi(N) = (p-1)*(q-1) = 2A30EA3C3E56BDE87000 (199241714430108909465600 decimal)
    To encrypt and decrypt, use the following exponents:
    • e = 31 (49 decimal)
    • d = B318C82EBF7AA8C08D1 (52860046685539098429649 decimal)
    Verify by division that (e*d) mod Phi(N) = 1.

    Here is an example of exponentiation mod N:

    • Encrypt(7A69) = 7A69 ^ e (mod n) = 1E50FEF9C7962719711B (143165106947588670189851 decimal)
    • Decrypt(1E50FEF9C7962719711B) = 1E50FEF9C7962719711B ^ d (mod n) = 7A69
      (31337 decimal)
  • Here is some C code for managing integers: arb.h, arb.c, nums.c (add and multiply functions), and a sample main function. Put them all in the same directory on bingsuns and try gcc main.c.
  • The next assignment is here.
  • Here are solutions for the last homework: here
  • Here is a tentative handout on information theory and perfect secrecy. Also, your next homework assignment.
  • A solution for assignment 0 is up. If you are unfamiliar with C, I recommend examining this source file to understand how it works.
  • I have uploaded software to perform Vignère encryption, and to break it. You can find the code, with instructions, in the sidebar.

    Secondly, I have uploaded assignment 1. One problem requires you to run the aforementioned code, so make sure you can do this.

  • In the sidebar is a short, simple (1 page) illustrated handout on detection. This explains the notation we use in the much larger handout on detection. It should be much easier to digest.
  • I have added a page on using command line arguments in C.
  • I have posted (look left) some notes on cryptanalysis and detection. We will be going over some of this material, in bits and pieces, over the next few weeks.
  • Assignment 0 is up (look left.)
  • The course Syllabus is up. You can also find this document on Blackboard. It is tentative.
Created with vi