"Cryptography with
Lab"
MCIS 4680 Course Details Alan Turing and the Enigma Cipher Machine
At the conclusion of this course, students will
be able to:


Course Description:
In this course students will explore the world
of cryptography from many perspectives. We will study the historical battle between those who tried desperately
to keep secrets and those who worked tirelessly to tease the hidden meaning out of encrypted messages. We will
examine the mathematical underpinnings of cryptography, including information theory topics and the "trap
door" problems of number theory that make public key methods possible. We will explore the technical tradeoffs
involved in deciding whether to deploy cryptographic functionality in the form of hardware or software. We will
also consider some of the legal and public policy implications of choosing to implement this technology.
Each student will be required to complete a weekly lab exercise and participate in an online discussion of the
assigned reading topics. (A description of the lab exercises can be found further down on this page.)
Credit:
Students who take this class for credit will earn
3 graduate credit hours upon completion.
Tuition and Fees:
Rates are dependent on student program and enrollment
status. Certain groups may qualify for special rates. See the University College Tuition and Fees page for complete information.
Schedule:
"Cryptography with Lab" will be offered
as an online course during
the winter term (January 2 through March) of 2008.
Prerequisite:
MCIS 3125 - Introduction to C++ Programming; or
equivalent work experience.
(The lab exercises are designed to build and strengthen the programming skills of the students. Those who may feel
that their programming skills are a little rusty need not worry. On the other hand, those who are not able to compile
and execute a simple "Hello, World!" program are probably not ready to take this course. If you have
questions, please contact info@TimberlineTechnologies.com.)
Objectives:
Textbook:
Fergeson, Niels and Schneier, Bruce Practical Cryptography, John Wiley & Sons, New York, NY, 2003
Technology:
Lab Exercises:
There will be no tests or quizzes administered
as part of this course. Each student's progress rating will be based on practical mastery of the skills required
as demonstrated by participation in the discussion forum and completion of assigned lab exercises. The weekly programming
exercises will consist of C++ source code files, provided by the instructor, in which certain sections have not
been completed and must be filled in by the student. The lab exercises are designed to provide "hands-on"
experimentation with cryptographic techniques and to give the student an appreciation of the interplay between
cryptography and cryptanalysis.
Weekly Topic Schedule:
Week 1 - Introduction to Cryptography
Lab: "Ancient Encryption Schemes and Brute-Force Attacks"
Week 2 - Block Ciphers
Lab: "Rotational Ciphers and Statistical Pattern Matches"
Week 3 - Hash Functions
Lab: "Cracking the Newspaper Cryptogram"
Week 4 - Secure Channels
Lab: "How Babbage Broke the Vigenère Cipher"
Week 5 - Randomness and Prime Numbers
Lab: "Using and Abusing One-Time Pads"
Week 6 - Diffie-Hellman and RSA
Lab: "SHA-256 Implementation"
Week 7 - Cryptographic Protocols
Lab: "AES Implementation"
Week 8 - Key Servers
Lab: "Diffie-Hellman Implemenation"
Week 9 - Public Key Infrastructure
Lab: "RSA Implementation"
Week 10 - Standards
Lab: "A Real-World Example"
For additional information about this course email info@TimberlineTechnologies.com.
Back to the Timberline Technologies Home Page
© 2005 by Timberline Technologies LLC