"Why do we care about computer security?"
"What are the basic principles of computer security?"
"What are the areas of computer security (and research!)?"
If you have ever asked these questions at least once so far, this course would be the right choice for you.
This is an introductory course on computer security (and even privacy; exciting!) with an objective to learn basic security principles, expose yourself to the areas of computer security (and research; double-excitement!), and have opportunities to do hands-on practices. Here are the topics we will cover through 10-week with hands-on micro-assignments.:
- Basic cryptography
- Network security
- Internet security
- Software security
- Trustworthy ML
- Usable security
This course employs the format of Capture-The-Flag (CTF) challenges. You will not only learn the concepts and techniques, but you will also have numerous opportunities to apply them to near-to-commercial-scale systems. This class should be fun!
The University's Code of Academic Integrity applies, modified as follows:
- Do NOT share your code or write-up with others.
- Do NOT copy and paste someone else's code or write-up in yours.
- Do NOT ask for the solutions on the Internet
(e.g., do not post your homework to StackOverflow).
- Brainstorm your ideas with other students.
- Discuss and explain your solutions with other students.
- Discuss the problems and concepts for the team project.
- Collaborate with your team-members to run experiments for the team project.
Please write down the students' names if you received any help from them. It won't affect the scores for your homework or projects. But, you will learn from this practice how to credit others for their services. It is an essential skill when you collaborate with others in the future.