CRYPTOGRAPHY: ALGORITHMS AND
APPLICATIONS
CS627
Spring 2005
This syllabus is available in both PDF format and HTML format. The PDF format is more printer friendly while the HTML version contains many URL links, including the links to course slides (in the COURSE CONTENT section).
|
|
|
Discussion Rules |
||
|
||
|
FAQ |
|
Classic Papers |
Additional |
Name |
: |
|
E-Mail |
: |
|
Phone |
: |
(540) 568-3668 |
Fax |
: |
(540) 568-2745 (add Attn: |
Office |
: |
ISAT/CS 205 |
Web Site |
:
|
Blackboard. Syllabus and course content will also be available from http://users.cs.jmu.edu/wangxx/web/2005spring-cs627/index.html |
Office Hours |
: |
Monday-Friday. May also be available on weekends but not guaranteed |
Cryptographic techniques to achieve confidentiality, integrity, authentication and non-repudiation are examined. The underlying mathematical concepts are introduced. Topics to be covered include symmetric and public key encryption, hashing, digital signature, cryptographic protocols and other recent developments in the field.
CS 515 |
Fundamentals of Computer Science for Information Security |
or |
the permission of the instructor |
Required |
: |
William Stallings. Cryptography and Network Security Principles and Practices (The 3rd Edition). Prentice Hall Press. 2002. ISBN: 0130914290. Visit author's website for book information and errata. (This book is called CNS hereafter.) |
Optional |
: |
Niels Ferguson and Bruce Schneier. Practical Cryptography. John Wiley & Sons. 2003. ISBN: 0471223573. (This book is called PC hereafter.) |
|
|
A. Menezes, P. van Oorschot and S. Vanstone. Handbook of Applied Cryptography. CRC Press. 1996. Note that this book is available on-line for free at http://www.cacr.math.uwaterloo.ca/hac |
Your grade in the course will be earned / calculated as follows:
Class participation |
: |
15% |
Graded homework |
: |
25% |
Project |
: |
20% |
Final |
: |
40% |
GRADE |
|
|
DESCRIPTION |
||
A |
® |
94 |
- |
100 |
Excellent |
A- |
® |
90 |
- |
93 |
|
B+ |
® |
85 |
- |
89 |
Very Good |
B |
® |
80 |
- |
84 |
Good |
B- |
® |
70 |
- |
79 |
|
C |
® |
60 |
- |
69 |
Poor |
F |
® |
0 |
- |
59 |
Failure |
Honor code: All homework, project and final exam should be individual work. JMU honor code applies.
General submission: It is your responsibility to make sure that you have submitted your homework/project correctly. You can verify the submission by downloading a copy and checking it. Late resubmission will NOT be accepted and submission of an empty file will result in a zero grade for that assignment.
Homework: Each homework is assigned at 12:01AM, Monday of the specified week and is due at 11:59PM, Sunday of the same week. The details for each homework are given in the teaching slides of the corresponding unit.
Homework submission: Homework must be submitted through the Blackboard system. When submitting your homework, please use [your-first-name]_[your-last-name]_Homework_[homework-unit-number].filename-extension as the file name. Microsoft Word and RTF formats are acceptable. If applicable, you should also add your full name to the document header.
Project: The project is assigned at 12:01AM, Monday of the specified starting week and is due at 11:59PM, Sunday of the specified ending week.
Project reminder: Please do not discuss the project in the Blackboard system before unit 15 (the course review unit). Any form of violation of this will be treated as cheating and JMU honor code applies. Reference solution for the project will be provided in the course review unit (unit 15).
Final exam: The final exam will last 2 hours and will be administrated by Prometric.
These dates are for your information ONLY. It is your responsibility to contact the university to get the official dates. You can find the university calendar at http://www.jmu.edu/registrar/calendar_2004-2005.shtml
First class |
: |
Jan 10th, 2005 (Monday) |
Drop deadline without tuition liability |
: |
Jan 14th, 2005 |
Add deadline |
: |
Jan 18th, 2005 |
Drop deadline without Dean's permission |
: |
Jan 14th , 2005 |
Midterm exam |
: |
None |
Last class |
: |
April 25th ~ 29th, 2005 |
Final Exam |
: |
To be announced |
You are required to read the JMU Academic Honor Code and abide by it. The details of the JMU academic honor code can be found in Section VI of the JMU Student Handbook.
Students with disabilities who require reasonable accommodations to fully participate in course activities and/or meet course requirements are strongly encouraged to register with the Office of Disability Service (ODS) and contact me to privately discuss access issues. ODS will provide you with an Access Plan Letter that will verify your need for services and make recommendations for accommodations to be used in my classroom. ODS is located in the Wilson Hall Learning Center, Room 107. Phone/TTY 8-6705.
Table 1 gives the tentative schedule for this course. In the HTML version of this syllabus, for each unit, you can find the URL links to the teaching slides, which are given in five formats: one-slide-per-page (1), two-slide-per-page (2), three-slide-per-page (3), four-slide-per-page (4) and six-slide-per-page (6). Some, but not all, units also provide accompanying notes (0). These slides can be best viewed using Adobe Reader 5.0 or higher versions, which is free and can be downloaded at http://www.adobe.com/products/acrobat/readstep2.html.
Date |
Topic /
Activity |
Text |
Discussion |
Homework & Project |
||
Unit |
Start Date |
End Date |
||||
1 |
Jan 10th |
Jan 16th |
Syllabus & Introduction |
CNS-Chap 1, PC-Chap {1, 2, 3} |
Discussion 1 starts |
|
2 |
Jan 17th |
Jan 23rd |
The confidentiality model & classical techniques |
CNS-Chap 2 |
Discussion 1 ends |
Homework 1 assigned |
3 |
Jan 24th |
Jan 30th |
DES & Related |
CNS-Chap {3, 6.1, 6.4}, PC-Chap {4, 5} |
Discussion 2 starts |
|
4 |
Jan 31st |
Feb 6th |
Number Theory 1 |
CNS-Chap 4 |
Discussion 2 Continues |
Homework 2 assigned |
5 |
Feb 7th |
Feb 13th |
AES |
CNS-Chap{5, 5A} |
Discussion 2 ends |
|
6 |
Feb 14th |
Feb 20th |
Applied Confidentiality |
CNS-Chap {6.5, 7}, PC-Chap 18 |
Discussion 3 |
|
7 |
Feb 21st |
Feb 27th |
Number theory 2 |
CNS-Chap 8, PC-Chap 11 |
Discussion 4 starts |
Homework 3 assigned |
8 |
Feb 28th |
Mar 6th |
Public key encryption: RSA |
CNS-Chap 9, PC-Chap 13 |
Discussion 4 ends |
|
|
Mar 7th |
Mar 13th |
Spring Break (no class) |
|||
9 |
Mar 14th |
Mar 20th |
Diffie-Hellman & ECC |
CNS-Chap 10, PC-Chap 12 |
Discussion 5 |
Homework 4 assigned |
10 |
Mar 21st |
Mar 27th |
The authentication model, MAC, CBC-MAC, HMAC |
CNS-Chap 11, PC-Chap 7 |
Discussion 6 starts |
assigned (project selection is due) |
11 |
Mar 28th |
Apr 3rd |
Hash algorithms |
CNS-Chap 12, PC-Chap 6 |
Discussion 6 continues |
Project phase I (draft design) is due |
12 |
Apr 4th |
Apr 10th |
CNS-Chap {13, 14.2}, PC-Chap {19, 20, 21} |
Discussion 6 ends |
|
|
13 |
Apr 11th |
Apr 17th |
Authentication applications |
CNS-Chap 14, PC-Chap 8 |
Discussion 7 |
|
14 |
Apr 18th |
Apr 24th |
E-mail Security |
CNS-Chap 15 |
Discussion 8 |
Project due |
15 |
Apr 25th |
May 1st |
Course Review |
NOTES |
|
|
16 |
May 2nd |
May 8th |
Final Exam Week (exam date to be announced) |
By the end of this semester, you should be able to
1) cryptology, cryptography, cryptanalysis, steganography, threat, assets, vulnerability, confidentiality, integrity, availability, authentication, data-origin authentication, entity authentication, non-repudiation, general use cryptosystem, restricted use cryptosystem, code
2) plaintext, ciphertext/cryptogram, encryption/encipherment, key, symmetric key, public key, private key, Kerckhoff assumption, perfect secrecy, one-time pad, unconditional secrecy, conditional/computational secrecy, substitution, transposition, diffusion, confusion, Feistel cipher, DES weak keys, DES semi-weak keys, stream cipher, block cipher, AES, DES, Triple-DES, ECB, CBC, CFB, OFB, CTR, RC4, brute-force attack, ciphertext-only attack, known-plaintext attack, chosen plaintext attack, chosen ciphertext attack, adaptive chosen ciphertext attack, differential cryptanalysis, linear cryptanalysis
1) one-way function, plain RSA, ElGamal, DH, DSA/DSS, elliptic-curve cryptosystem, Chinese Remainder Theorem (CRT), discrete logarithm, Euclidean GCD, extended Euclidean GCD, prime, key exchange, authenticated key exchange, one-way/mutual authentication
2) digital signature, hash function, MD5, SHA-1, RIPEMD-160, MAC, CBC-MAC, HMAC, strong/weak collision resistance
3) digital certificate, CRL, OCSP, PKI
4) replay attack, active attack, passive attack
5) link encryption, end-to-end encryption, traffic analysis, random, pseudo-random
6) PGP,
GPG, S/MIME
1) For the symmetric key cryptography model, the students should be able to compare and contrast block cipher with stream cipher, AES with DES, CBC with CTR
2) For the public key cryptography model, one should know
I. how RSA encryption/decryption works (how to find two large primes, how RSA decryption works, how to do modulo exponentiation efficiently), why we need PKCS #1, why and how we can use Chinese Remainder Theorem to speed up the computation
II. how ElGamal works
III. how ECC works
1) how RSA digital signature works
2) how DSA works
3) how ECDSA works
This course is structured for the most recent development (at least to my best knowledge). So, stick to your notes.
“It is insufficient to protect ourselves with laws; we
need to protect ourselves with mathematics”
¾
Bruce Schneier
“It's
just not true. Cryptography can't do any of that. ... I was pretty naïve.”
¾
Bruch Schneier, referring
to his above remark
“Skill in production cryptanalysis has always been
heavily on the side of the professionals, but innovation, particularly in the
design of new type of cryptographic systems, has come primarily from the
amateurs.”
-- Whitfield Diffie
and Martin Hellman
“...all the great cryptographic papers in the world do
not protect a single bit of traffic.”
-- Whitfield Diffie