Notice: For the latest information and guidance on Purdue's response to COVID-19 please visit: https://coronavirus.purdue.edu/students

# Cryptography and Data Security

## CS55500

3

### Learning Objective:

To give students knowledge of cryptography and its applications.

### Description:

Elements of cryptanalysis. Elements of number theory used in cryptography. One-key ciphers like DES and AES and their modes of operation. Two-key ciphers like RSA and ElGamal. Digital signatures. Hash functions and MACs. Secret splitting and sharing. Protocols including mental poker, fair coin-flipping, oblivious transfer, zero-knowledge proofs, bit commitment, blind signatures, key exchange, contract signing, digital cash and voting. PGP and Kerberos. Elliptic curves as applied to cryptography.

### Topics Covered:

Definitions, substitution and transposition ciphers, principles of modern cryptography, perfect secrecy, private key encryption schemes, pseudorandomness, pseudorandom functions and permutations, chosen plaintext attacks, modes of operation for block ciphers, linear feedback shift registers and how to break them, DES, AES, meet-in-the-middle attacks. Number theory: divisibility, greatest common divisor, primes, congruences, Fermat and Euler theorems and their corollaries, Chinese remainder theorem, quadratic residues, square roots modulo p and pq. Groups. RSA public key cipher and signatures, discrete logarithms, Diffie-Hellman key exchange, Pohlig-Hellman cipher, ElGamal, mental poker, oblivious transfer, zero-knowledge proofs. Hash functions: MD5 and SHA, birthday paradox. Threshold schemes. Digital signature algorithm, subliminal channels. Signing contracts by email. Digital cash, electronic voting. Key exchange protocols. Kerberos, PGP, random number generation. Integer factoring algorithms. Elliptic curves applied to cryptography.

### Prerequisites:

A bachelor degree in computer science or an equivalent field. Students not in the Computer Science master's program should seek department permission to register.
Linear algebra, data structures, and introduction to the analysis of algorithms.

### Applied / Theory:

https://www.cs.purdue.edu/homes/jblocki/courses/555_Spring17/

### Homework:

Six to seven homework sets, no late homeworks will be accepted. The solution is usually posted on the web one day after the homework is due. Email homework to grader.

### Projects:

Report to contain a listing of program, the separate document that describes it, and test data and results. Student will demonstrate project; some of the grading will be based on this demonstration.

### Exams:

One midterm exam and one comprehensive final exam.

### Textbooks:

Official textbook information is now listed in the Schedule of Classes. NOTE: Textbook information is subject to be changed at any time at the discretion of the faculty member. If you have questions or concerns please contact the academic department.
Required:Introduction to Modern Cryptography, Second Edition (Chapman & Hall/CRC Cryptography and Network Security Series) ISBN:9781466570269

### Computer Requirements:

ProEd minimum computer requirements.

### Other Requirements:

No special software required.

view

view