Data Protection and Cryptography

Instructor(s): Dr. S.G. Stavrinides
Teaching Hours and Credit Allocation: 30 Hours, 6 Credits
Course Assessment: Exam & Coursework


Cryptography has been an invaluable tool for information protection for centuries. Until the 1970s, cryptography was almost exclusively found in diplomatic, military and government applications. During the 1980s, the financial and telecommunications industries deployed hardware cryptographic devices. The first mass-market cryptographic application was the digital mobile phone system of the late 1980s. Today, everyone uses cryptography daily. This course introduces theoretical and practical modern cryptography and data protection principles in computer security. Threat and vulnerability assessment, encryption techniques (symmetric and asymmetric keys, public and secret key encryption, digital signatures etc.) are some of the topics that will be covered. Finally, more exotic (for the time being) but promising approaches, like chaotic and quantum cryptography, are introduced.


This course aims in providing solid knowledge in of cryptology, a domain where computer science, mathematics and electronic engineering are intersecting. Comprehensive knowledge on the theoretical foundations of the area (fundamental principles, elements, and protocols) is offered. Besides this and considering the extremely fast developments (old algorithms are broken and withdrawn and new algorithms and protocols emerge), the addition of new developments and advanced protocols provide with more fancy material. Topics that are relevant to cryptography practitioners today are introduced and explored by the most practical approach (step by step introduction to the basic concepts and judiciously chosen algorithms and protocols). Finally, the course prompts to further reading, for those who want to expand and deepen their knowledge.

Learning Outcomes

On completing the course students will be able to:

  • Understand the essential mathematics behind contemporary cryptographic schemes.
  • Implement basic cryptographic protocols (by hand as a proof of concept and utilizing the coding).
  • Understand and estimate the limits/performance of the cryptographic power of various protocols.
  • Understand the limits of breaking code approaches.
  • Come in touch with new, “out of the box” cryptographic approaches.
  • Have the background needed, to understand the upcoming methods and approaches in the area.


  • Introduction to Cryptography and Data Security
  • Symmetric Cryptography
  • Stream Ciphers
  • The Data Encryption Standard (DES) and Alternatives
  • The Advanced Encryption Standard (AES)
  • About Block Ciphers
  • Asymmetric Cryptography
  • Introduction to Public-Key Cryptography
  • The RSA Cryptosystem
  • Public-Key Cryptosystems Based on the Discrete Logarithm Problem
  • Hash Functions
  • Message Authentication Codes (MACs)
  • Chaotic Encryption
  • Basics of Quantum Cryptography


· “Understanding Cryptography: A Textbook for Students and Practitioners” by Christof Paar, Jan Pelzl

· “A Classical Introduction to Cryptography: Applications for Communications Security” by Serge Vaudenay

· “Introduction to Cryptography: Principles and Applications” by Hans Delfs, Helmut Knebl

· “Cryptographic Engineering” by Cetin Kaya Koc

· “Chaos-based Cryptography: Theory, Algorithms and Applications” by Ljupco Kocarev, Shiguo Lian