CS 459Privacy, Cryptography, Network and Data Security
- Units
- 0.50
- Faculty
- Mathematics
- Subject
- Computer Science
When it runs
- F24
- W25
- S25
- F25
- W26
- S26
- F26
- W27
- S27
Ran in 7 of the last 7 terms. Winter 2027: scheduled, 2 lecture sections. Spring 2027: schedule not out yet.
Introduction to privacy and security using cryptography and related techniques in networks, distributed systems, and data science. The course examines how data and metadata can be protected at rest, in transit, and during computation. For at-rest protection, specific topics include the basics of cryptography and relevant ethics/policy concepts. For in-transit protection, specific topics include network defenses, authentication, and secure and anonymous communication protocols. For during-computation protection, specific topics include data inference, differential privacy, homomorphic encryption, multi-party computations, and related protocols.
Prerequisites
- Complete all of the following
- Must have completed at least 1 of the following:
- Must have completed at least 1 of the following:
- Enrolled in H-BBA & BCS Double Degree, H-Computer Science (BCS), H-Computer Science (BMath), JH-Computer Science (BCS), JH-Computer Science (BMath), H-Computing & Financial Management, H-Data Science (BCS), or H-Software Engineering
Corequisites
Antirequisites
- Not completed nor concurrently enrolled in:
Leads to
No course lists it as a requisite.
Fall 2026 sections
| Section | Class | Enrolled | Meets |
|---|---|---|---|
| LEC 001 | 6650 | 12 / 70 | TTh 08:30–09:50 |
Winter 2027 sections
| Section | Class | Enrolled | Meets |
|---|---|---|---|
| LEC 001 | 6267 | 0 / 75 | MW 10:00–11:20 |
| LEC 701 | 2405 | 35 / 9999 | Online or by arrangement |
Resources
Around the web
Found by uwloo’s link finder, which checks that each page names CS 459.
- CS 459/659 - Privacy, Cryptography, Network and Data Security - Fall 2026 Course website · Fall 2026 · crysp.uwaterloo.ca · from Urs Hengartner’s site Remove
- CS 459/698 - Privacy, Cryptography, Network and Data Security - Fall 2025 Course website · Fall 2025 · crysp.uwaterloo.ca · from Urs Hengartner’s site Remove
Reviewed on UW Flow
75% liked it75% easy71% useful
From 8 ratings and 7 comments on UW Flow. The most helpful comments, quoted as written, without names. Read them all on UW Flow.
A lot of breadth but we're also expected to learn depth (tested on midterm + final) which makes it hard. Lowkey the course is really interesting but it moves really fast.
Apr 2026 · liked itOn UW FlowRemove this
Took the F25 offering with Professor Hengartner. Lectures were moderately interesting and entertaining, with frequent interactions between the professor and the class. Assignments were quite open-ended, but required a significant time dedication if you wanted to score well. Written portions make it less of a burden to complete, since most of it is again quite open-ended and short answers are accepted.
Where I had a HUGE problem with the course was the witch hunt against GenAI use. If you plan on using GenAI—don't. Having done everything entirely on my own, they still came up with 2 documents of allegations that "suggest" GenAI usage in an attempt to invoke Policy 71 on my work. Thankfully,…Dec 2025 · didn’t like itOn UW FlowRemove this
Took the course with Diogo Barradas in W25. Definitely felt like more of a survey course than a deep dive into any particular privacy topic, but almost every concept introduced was very interesting.
Apr 2025 · liked itOn UW FlowRemove this
Pretty fun class! Lots of topics covered, not all the most interesting but probably varies per person. Lecture slides are well done. Good course structure (20% * 3 for assignments, 20% * 2 for midterms). Had Diogo Barradas as the instructor and he was nice.
Apr 2025 · liked itOn UW FlowRemove this
I can confirm that this is a banger course made especially great by the course staff I had for Winter 2025. My prof, Diogo Barradas, is one of the most articulate and helpful profs I've had at this uni, and even the TAs (all of which were amazing) were better at teaching than most of the profs I've had at this uni. Assignments were easier relative to other CS/math courses I've had, but still really fun and engaging. The midterm was definitely harder, but still manageable. Course materials are pretty high quality as well. Don't listen to bluds on Reddit that tell you to ignore this course and take CS453 or CO487 instead - they aren't aware of how applicable this course is for cybersecurity,…
Mar 2025 · liked itOn UW FlowRemove this
Discussed on r/uwaterloo
18 posts and comments in 4 threads mention CS 459, May 2024 to December 2024. Quoted word for word, newest first; each reply sits under the post and the comment that started its branch. Search r/uwaterloo for newer posts.
Fall 2024
How was it? CS459 Privacy, Cryptography,Network and Data Security 12 points, 16 comments
u/LaApplePear: “… How was CS459 Privacy, Cryptography,Network and Data Security? For anyone taking it this term. It is taught by a new prof so I'm a bit skeptical, but I saw the lecture slides and the prof seems to put good effort into it. …”
u/Ok-Conclusion-5481: [deleted]
u/LaApplePear: “Thank you for sharing! This seems like a more practical course than CS459. I'm leaning towards this course now.”
u/LaApplePear: “… CS453 and CS459. …”
u/LaApplePear: “… modern computing environments Deploy state-of-the-practice detection and defense practices CS 459/698: Privacy, Cryptography, Network, Data Security Course Title: Privacy, Cryptography, Network, Data Security Instructor(s): Abdelkarim Kati Course Description: This course …”
u/LaApplePear: “… Course Topics and Content Weekly Breakdown Comparison |Week|CS 453/698 Topics|CS 459/698 Topics| |:-|:-|:-| |1|Introduction to software and system security; Basic security concepts; Privacy principles|Introduction to security/privacy; Ethics/policy relevant to the course| …”
u/LaApplePear: “… Topics include program security, OS security, bug-finding tools, and hardware security CS 459: Centers on data security and privacy using cryptography Focus on protecting data at rest, in transit, and during computation Evaluates cryptographic techniques and network security …”
u/LaApplePear: “… assessment through assignments Opportunity for research engagement via the write-up CS 459: Assignments: Three assignments (60% total) Mix of theoretical and practical exercises Midterms: Two in-class midterms (20% each) Cover material taught up to each midterm date Survey …”
u/LaApplePear: “… like fuzz testing and static analysis Potentially working with security analysis tools CS 459: Technical Requirements: Not explicitly mentioned; likely involves programming assignments Hands-On Experience: Implementing cryptographic algorithms Applying privacy-preserving …”
u/LaApplePear: “… emphasis on assignments and practical work Flexibility with the optional research component CS 459: Assignments: 60% of the grade Midterms: 40% of the grade (20% each) Survey Paper: Mandatory for CS 698 students (20% of the grade) Evaluation Style: Balanced between assignments …”
u/LaApplePear: “… Careers in: Software security engineering Vulnerability assessment System security analysis CS 459: Skills Developed: Evaluating cryptographic methods for data protection Analyzing security and privacy threats Implementing network security mechanisms Preparation for Careers in: …”
u/LaApplePear: “Conclusion Both CS 453 and CS 459 offer valuable insights into the field of cybersecurity but cater to different interests and career paths: CS 453: Software and System Security is ideal for students passionate about: Software Security: Understanding and mitigating …”
u/Kassaking777: “I believe for CS459, there's a coreq CS456/454. You have to either already taken one of 456 or 454, or taking one of them with 459.”
u/blake_potato: “Just wanted to update on the CS459 experience now that we’re nearing the end of the term. The course has an enrolment cap of 70 people, and although I’m not sure how many people were in the course at the start of the term, we now only have 19 people. …”
u/blake_potato: “… I’d say if you’re more interested in actual cryptography, take CO487, but if you want to dip your toe into a bunch of topics that are in the security space, take CS459. They complement each other well, and I also took CS456 this term which played well with the other two. …”
u/ImLiterallyDepressed: “I see - I hear a lot of people saying to take CO487 over CS459 but I have a lot more interest in secure networks and ML models over plain cryptography, so I'll be taking both at the same time. …”
Course load help 2 points, 1 comment
u/TI231: “Hi, gonna take CS486, CS348, CS 459, STAT 331 and STAT 341, is this as tough as it sounds to me 😭 ??”
Reviews on CS459? 2 points, 1 comment
u/Agitated-Heron-4420: “Hey I’m planning on enrolling in CS459 for my 4B term. I couldn’t find any reviews on it? Has anyone taken it? How do you like it? How programming heavy is it (I suck at code, finessed my way through wloo CS lol)”
Spring 2024
CS 459 Co-requisites 3 points, 1 comment
u/Gauss_given_order: “How important/relevant are the co-reqs (CS 454/456) to the content in CS 459? When the course was offered as one of the 489s, there were no co-reqs, which makes me wonder why this change was made. Adjacently, why are these co-reqs to CS 489: Secure Programming? …”
Check it elsewhere for Fall 2026
- Undergraduate Calendar, 2026–27The official entry
- Requirements for Fall 2026Waterloo’s requisite checker
- Schedule of Classes, Fall 2026Instructors, rooms, live seats
- Quest Class SearchWhere you enrol
- Course outlinesSyllabi from past terms (UW login)
- UW FlowStudent ratings and reviews
- WClassesPast sections back to 2004, and who taught them
Calendar versions
Undergraduate Calendar
- 2024–25
- 2025–26 requisites changed
- 2026–27 requisites changed (shown here)
- 2019–20 and earlier on ucalendar