CS416 Cryptography

Print this page Please use the scale options of your printing settings for adjustments.

Course Code Course Title Weekly Hours* ECTS Weekly Class Schedule
T P
CS416 Cryptography 3 2 6 Tue: 16:00 - 16.50 Thu: 15:00 - 16:50
Prerequisite MATH204, CS302 It is a prerequisite to
Lecturer Office Hours / Room / Phone

Currently not available

E-mail
Assistant Armin Basic Assistant E-mail basic.armin1@gmail.com
Course Objectives This course introduces basic concepts in cryptography and discusses both theoretical foundations and practical applications. The course will cover fundamentals of cryptography, stream ciphers: OTP, LFSR, Trivium; block ciphers: DES, 3DES, AES, block cipher modes; public-key cryptosystems: RSA, Diffie–Hellman key exchange, Elgamal public-key cryptosystems; elliptic curve cryptosystems; digital signatures; hash functions; message authentication codes.
Textbook Christof Paar, Jan Pelzl (2010) Understanding Cryptography - A Texbook for Students and Practitioners, Springer-Verlag, Berlin Heidelberg, ISBN 978-3-642-04100-6
Learning Outcomes After successful  completion of the course, the student will be able to:
  1. Understand the fundamental concepts, encryption and decryption methods and algorithms of cryptographic systems.
  2. Understand how cryptographic techniques are used to establish security in information and communication systems.
  3. Analyze cryptographic methods used in the security protocols and certificates in hardware and software sustems.
  4. Apply cryptographic methods and techniques in designing secure hardware, software and communication systems.
  5. Know how to develop new cryptographic systems based on different mathematical and computational concepts.
Teaching Methods Class lecturing and discussions with examples. Active laboratory and tutorial sessions for engaged learning and continuous feedback on progress. Group projects on the applications of learned concepts and methods.
WEEK TOPIC REFERENCE
Week 1 Introduction to Cryptography: Overview; Modular Arithmetic; Historical Cryptosystems Chapter 1
Week 2 Stream Ciphers: Random Numbers; Unbreakable Stream Cipher; OTP Chapter 2
Week 3 Stream Ciphers: Sift Register Based Stream Ciphers; LFSR; Trivium Chapter 2
Week 4 The Data Encryption Standard (DES): Structure of DES; Security of DES; DES Alternatives Chapter 3
Week 5 Galois Fields: Prime Fields; Extension Fields; Operations in Extension Fields Chapter 4
Week 6 The Advanced Encryption Standard (AES): Galois Fields, Structure of AES; Decryption Chapter 4
Week 7 Block Cipher Modes: ECB; CBC; OFB; CFB; CTR; GCM; Increasing the Security of Block Ciphers Chapter 5
Week 8 Midterm Examination: Revision; Preparation and Examination
Week 9 Public-Key Cryptography: Practical Aspects of Public-Key Cryptography; Number Theory Chapter 6
Week 10 The RSA Cryptosystem: Encryption and Decsryption; Key Generation; Primality Tests Chapter 7
Week 11 Diffie-Hellman Key Exchange: The Discrete Logarithm Problem; Elgamal Encyption Scheme Chapter 8
Week 12 Elliptic Curve Cryptosystem: Elliptic Curves; Diffie-Hellman Key Exchange with Elliptic Curves Chapter 9
Week 13 Digital Signatures: RSA Digital Signature; Elgamal Digital Signature; Digital Signature Algorithm Chapter 10
Week 14 Hash Functions: Security Requirements; Hash Algorithms; SHA-1/2 Chapter 11
Week 15 Message Authentication Codes (MAC): HMAC; CBC-MAC; GMAC Chapter 12
Assessment Methods and Criteria Evaluation Tool Quantity Weight Alignment with LOs
Final Exam 1 35 1,4
Semester Evaluation Compenents
Home Assignments 4 20 2,3
In-term Examination 1 25 1,3
Quizzes 2 10 1,2
Group Projects 1 10 4,5
***     ECTS Credit Calculation     ***
 Activity Hours Weeks Student Workload Hours Activity Hours Weeks Student Workload Hours
Lecture Hours 3 15 45 In-term Exam study 10 1 10
Active Tutorials 2 15 30 Active Tutorials 2 15 30
Home Study 2 15 30 Home Assignment Study 2 10 20
        Total Workload Hours = 150
*T= Teaching, P= Practice ECTS Credit = 6
Course Academic Quality Assurance: Semester Student Survey Last Update Date: 19/03/2020
QR Code for https://ecampus.ius.edu.ba/course/cs302-algorithms-and-data-structures

Print this page Please use the scale options of your printing settings for adjustments.