Summary: Cryptography is the foundational building block of Cybersecurity and Privacy. While the field of classical cryptography dealt with security and privacy of data in transit, the modern take on the subject has generalized the scope of its applications to ensuring security and privacy of all forms of digital communication, computation, automation, interaction, transaction and preservation. Thus, it is important to understand the technical aspects of cryptography to appreciate its applications in cybersecurity.
The Aim: This cryptography course in Computer Science and Engineering aims to develop your ability to understand how cryptographic algorithms work, to identify the problems associated with the application of cryptography in real-world scenarios, and explain the operation of various cryptographic mechanisms. This course will equip you to know deeply the fundamentals of symmetric key ciphers, hash functions and public key ciphers, enabling you to understand and develop secure cryptography solutions in real life cryptography. It will also introduce you to popular cryptographic libraries and APIs for hands-on implementation of security mechanisms, and some prominent cryptographic standards, guidelines and frameworks from the industry and government bodies.
-
Course Structure (as of 2024):
2 x 40% Quiz
1 x 20% Project (needs coding)The course is difficult and don’t expect Prof. Tay to guide you. Project guidelines are also poorly defined in terms of scope and structure. Lecture notes and tutorials are also unfocused so expect to do much of your research. Prof. Tay also habitually sends important announcements at odd hours and is rude when approaching him for clarification on course material. I would not recommend this module unless you have a strong foundation in math.
November 9, 2024 -
Course Structure:
35% Mid-Term Quiz (1st half content)
35% Final Quiz (2nd half content)
These quizzes mainly test on concepts taught in the lectures/tutorials, and Prof Tay will highlight certain portions that are important to study for the quiz. Hence, you can expect to get >70% for the quizzes if you can fully understand the content in the lectures/tutorials.30% Cryptography Project (10 min presentation + code demo with 5 min QnA)
For this project, there is no scope given but coding is expected, hence students are free to choose any kind of project that they would like to do. Also, use of libraries/APIs to implement cryptography algorithms are allowed. Focus of the project is to either come up with applications for cryptography or research based about cryptography.Overall:
The focus of this module is to give students enough knowledge to use these cryptography algorithms in real-life applications (ie. Creating secure websites etc) and identify poorly implemented algorithms, rather than for students to design their own cryptography algorithm. While not as math heavy as other cryptography courses out there, do be prepared for some math (ie. Number theory for Public-Key cryptography) as it is important for understanding what gives each algorithm its security. Also, course materials are not as well-organised compared to other modules but otherwise still a recommended module for anyone looking to implement secure applications of their own.December 12, 2022