CSCE 4050/5050 - Applications of Cryptography - Spring 2019
Class hours: Thursdays, 5:30-8:20pm, in NTDP B.185 (updated on Jan 16)
Instructor: Kirill Morozov (Department of Computer Science and Engineering)
Office hours*: Tuesdays 2:00-3:00pm and Thursdays 4:20-5:20pm, or by appointment, in NTDP F.283
E-mail: Kirill [dot] Morozov [at] unt.edu
Teaching assistant: Jingda Guo
Office hours*: Mondays 10:30-11:30am
E-mail: JingdaGuo [at] my.unt.edu
|
Course Description
This course aims at introducing fundamentals of cryptography and their applications. The knowledge gained from this course will enable students to apply cryptographic algorithms as building blocks for designing security solutions.
|
Course webpage
All lectures, assignments, and other materials will be posted at Canvas.
Submissions of assignments must be made via Canvas as well.
Note: For all communications with instructors, the subject of your e-mails must start with "CSCE 4050" or "CSCE 5050".
|
Reference books (recommended)
- D. Boneh and V. Shoup: "A Graduate Course in Applied Cryptography" - Available as draft at: http://toc.cryptobook.us/
- J. Katz and Y. Lindell: "Introduction to Modern Cryptography" (2nd Edition), Chapman & Hall/CRC, 2015.
|
Prerequisites
CSCE 2100 and CSCE 2110, or approval of instructor.
|
Course schedule*
- Lecture 1 (Jan 17): Introduction: Course overview, historical ciphers, mathematical background
- Lecture 2 (Jan 24): Stream ciphers
- Lecture 3 (Jan 31): Block ciphers
- Lecture 4 (Feb 7): Block cipher modes of operation
- Lecture 5 (Feb 14): Message integrity, authentication codes, cryptographic hash functions
- Lecture 6 (Feb 21): Authenticated encryption, key derivation, applications of block ciphers
- Lecture 7 (Feb 28): Basic key exchange and elements of number theory
- Lecture 8 (Mar 7): Public-key encryption I, Midterm Exam
- No lecture on Mar 14: Spring Break
- Lecture 9 (Mar 21): Public-key encryption II
- Lecture 10 (Mar 28): Digital signatures and identification schemes
- Lecture 11 (Apr 4): Public-key infrastructure and authenticated key exchange
- Lecture 12 (Apr 11): Network security protocols and secure login
- Lecture 13 (Apr 18): Quantum cryptanalysis and post-quantum cryptography
- Lecture 14 (Apr 25): Homomorphic encryption, secret sharing, secure multi-party computation
- Lecture 15 (May 2): Blockchain and cryptocurrencies
- May 9: Final Exam
|
Grading*
- Homeworks (some including programming assignments) – 50%
- Programming project (groups of 2-3 students or individual) – 10%
- Mid-term exam – 15%
- Final exam – 25%
|
Course Policies
-
Grading: Assignments may be submitted up to 3 days late, with a penalty of 15% for each day.
No credit will be given after 3 days.
-
Academic Integrity: Cheating in exams/assignments, plagiarism in exams/assignments, collusion and falsification of academic records constitute academic dishonesty.
Students are responsible for being familiar with UNT’s Students Academic Integrity Policy: https://policy.unt.edu/policy/06-003.
Cheating/collusion/plagiarism in assignments/exams will result
in zero credit for them, possible “F” grade for the course, and possible disciplinary action.
-
Students with Disabilities: Students in need of academic accommodations for disability can refer
to the Office of Disability Access for initiating the required arrangements based on ADA terms.
Also, such the students are welcome to arrange an appointment with me to discuss their special needs for academic accommodation during office hours (to ensure confidentiality).
|