Practical Cryptography



Instructor
Prof. Dr. KASUN DE ZOYSA
University of Colombo School of Computing,
35, Reid Avenue, Colombo 7, Sri Lanka

***Download Course Brochure

Goals:

The concepts and scientific thinking in Cryptography will be explored within the course and the student will be studying cryptographic algorithms and protocols. This course will help to build cryptography knowledge and can be used in other cybersecurity areas.

Certificate/Award

  • Digital Certificate will be delivered to successful Candidates.
  • Top 10 performer will receive award 100 Euro each.

Practical Cryptography

Course Description

Goals

 

The concepts and scientific thinking in Cryptography will be explored within the course and the student will be studying cryptographic algorithms and protocols. This course will help to build cryptography knowledge and can be used in other cybersecurity areas.
Learning Outcomes

 

Upon completion of this course, students will be able to do the followings:

LO1. Understand the basic concepts and scientific thinking in cryptography.

LO2. Describe a number of cryptographic algorithms and protocols.

LO3: Develop cryptographically secure software applications.

Learning Resources MOOC:

  1.  Cryptography I – https://www.coursera.org/learn/crypto
  2.  Cryptography – https://www.coursera.org/learn/cryptography

Text Books:

  1. Douglas R. Stinson, Cryptography: Theory and Practice, Third Edition, CRC Press, 2005
  2. Menezes, van Oorschot, and Vanstone, Handbook of Applied Cryptography, Fifth Edition, CRC Presss, 2001

Other Resources:

  1. Advanced Topics in Cryptography –https://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-876j-advanced-topics-in-cryptography-spring-2003/
  2.  Selected Topics in Cryptography –https://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-897-selected-topics-in-cryptography-spring-2004/
Evaluation Criteria
  1. Assignments 50 Marks + Final Examination 50 Marks
  2. Five (5) programming assignments from the topics which cover in the week of 2,3,4, 5 and 6 ( 10 Marks for each assignments).
  3. Final Examination (25 Multiple Choice Questions* 2 Marks)

 

Syllabus/Lesson Plan

Week Topic(s) Hours
1 Introduction to Cryptographic Systems

  • Encryption & Decryption
  • Plain Text and Cipher Text
  • Encryption Algorithms
  • Monoalphabetic Substitutions such as the Caesar Cipher
  • Polyalphabetic Ciphers such as Vigenere Tableaux
  • Perfect Substitution Cipher such as the Vernam Cipher
  • Stream and Block
2
2 Hash Functions

  • Hash Concept
  • Description of Hash Algorithms
  • Message Digest Algorithms
  • Coding Examples
2
3 Block Ciphers

  • The Data Encryption Standard (DES)
  • Triple DES
  • Advance Encryption Standard (AES)
  • Coding Examples
2
4 Block Ciphers Operational Modes

  • Electronic Codebook (ECB)
  • Cipher Block Chaining (CBC)
  • Cipher Feedback (CFB)
  • Output Feedback (OFB)
  • Counter (CTR)
  • Coding Examples
2
5 Properties of Arithmetic Operations

  • Primes
  • Greatest Common Divisor
  • Euclidean Algorithm
  • Modular Arithmetic
  • Properties of Modular Arithmetic
  • Fermat’s Theorem
  • Random number generation
  • Coding Examples
2
6 Public Key Cryptography

  • Diffie-Hillman key (DH)
  • Rivest-Shamir-Adelman (RSA) Encryption
  • Elliptic Curve Cryptography (ECC)
  • Coding Examples
2
7 Key Management Protocols

  • Diffie-Hellman Algorithm
  • Key Exchange with RSA
  • Key exchange with ECC
  • Key management tools
2
8 Public Key Infrastructure (PKI)

  • Concept of Digital Certificate
  • Certificate Authorities and its roles
  • Types of Public Key Infrastructure
  • The Automatic Certificate Management Environment (ACME)
2