Cryptography and Security

(3-0-0-3)

CMPE Degree: This course is Not Applicable for the CMPE degree.

EE Degree: This course is Not Applicable for the EE degree.

Lab Hours: 0 supervised lab hours and 0 unsupervised lab hours.

Technical Interest Group(s) / Course Type(s): Digital Signal Processing

Course Coordinator:

Prerequisites: None.

Catalog Description

Algebraic and number theory approaches to cryptographic techniques, information security, secret key and public key encryption, signature schemes, hash functions, message authentication, and key distribution. Credit not allowed for both ECE 6280 and CS 6260.

Textbook(s)

Cryptography

Course Outcomes

Not Applicable

Strategic Performance Indicators (SPIs)

Not Applicable

Topical Outline

Introduction
* Overview of cryptography.
* Simple classical cryptosystems
* Cryptanalysis

Complexity of Computations
* The big-O notation
* Time estimates
* P, NP, and NP-completeness

Shannons Theory
* Information theoretic security
* One time pad

Secret Key Encryption (Block Ciphers)
* Description of DES
* Description of AES (advanced encryption standard)

Brief Review of Algebra and Number Theory
* Groups, fields, Rings
* Euclidean algorithm for polynomials
* Chinese remainder theorem
* Other useful facts

RSA Cryptosystem and factoring Integers (Public Key Cryptosystem)
* RSA cryptosystem
* Implementing RSA
* Probabilistic primality testing
* Square root modulo n
* Factoring algorithms (Pollard P-1 alg., Polard Rho alg., Dixons random square alg., etc)
* Other attacks on RSA: Decryption exponent, Bit security, Timing attacks
* Rabin cryptosystem

Public Key Cryptosystems based on Discrete Logarithm Problem
* ElGamal cryptosystem
* Algorithms for discrete log (Shanks, Pollard Rho, Pohlig-Hellman, and Index Calculus methods)
* Elliptic curve cryptosystem (Abstract Discrete Log, Discrete Log Ciphers, Elliptic Curves)

Digital Signatures
* How to sign using RSA
* ElGamal signature scheme
* Digital Signature Standard (DSS)

Hashing
* Collision-free hash functions, Motivation and applications,
* Discrete-Log Hash function,
* Merkle-Damgard and other constructions
* Message Authentication codes (keyed hash functions)

Key Distribution and Key Agreement (time permitting)
* Key predistribution
* Deffie-Hellman key exchange