Applied Cryptography Chuck Frank Northern Kentucky University
CSC 382/682 Cryptography & Computer Security • CSC 382 - Upper level undergraduates • CSC 682 – MSCS students • Cryptography is approximately 1/3 of the course
Why Cryptography? • Powerful tool for keeping data and communications secure • Cryptography properly applied lessen security threats.
Goals • Students should be able to apply cryptography in the software they will develop. • Students should be able to apply cryptography in the systems they will manage.
Incorporating Cryptographyinto Programs • Reference: • Garns & Somerfield, Professional Java Security, Wrox Press • Java Cryptography Extension (JCE)
Java Cryptography • Look at a variety of Java cryptography applications • Assign several small Java programs including a network application
Incorporating Cryptography into Computer Systems • Kaufman, Perlman, Speciner, Network Security, 2nd edition, Prentice Hall
Knowledge of Modern Cryptography • Secret Key Cryptography • Public Key Cryptography • Hashing and Message Digests • Protocols
Secret Key Cryptography • What is it? • Basic understanding of algorithms • DES • Triple-DES • Rijndael
Public Key Cryptography • What is it? • Algorithms • RSA • Diffie Hellman
Hashes and Message Digest • Why is useful? • Basic understanding of algorithms • MD5 • SHA-1 • Tripwire
Protocols • SSL/TSL • Used for e-commerce • Public key for key exchange • Secret key for encryption • IPSec • Use for VPNs
Mathematical Background • Student have had 10 hours of calculus & discrete math • Cover sufficient number theory • Modular arithmetic & Euler’s theorem • To understand RSA • Generation of probable primes
Not Covered • Classical, yet obsolete, ciphers • Caesar, Vigenére • History of cryptography