Introduction to Security and Privacy
A tour of Internet security and privacy. Societal impacts and case studies. Topics from: protection goals of stakeholders; history of public key cryptography; programming languages and security; security engineering and testing; cybercrime and malware; Internet privacy and anonymity; government surveillance; regulation; ethics; blockchain applications.
Study notes
Independent, AI-drafted study guide · Public sources linked below · Added November 5, 2026
Independent introductory guide aligned with the Fall 2026 public outline. OWASP and NIST references supply supplementary defensive frameworks. Topics describe technical and societal concepts rather than a jurisdiction-specific legal interpretation.
Assets, stakeholders, and threat models
Security starts with identifying what matters, to whom, and against which adversaries. An asset can be account access, private correspondence, availability, or the integrity of a decision. A threat describes a possible harmful event; a vulnerability is a weakness that may enable it; risk also considers likelihood and consequence. List trust boundaries where information or authority crosses between components. A school messaging service, for example, must consider students, teachers, administrators, outsiders, and the service operator. Different stakeholders can have conflicting goals, so assumptions should be explicit.
References: COMP 2109 A — Fall 2026 course outline · OWASP — Web Security Testing Guide
Least privilege, mediation, and secure failure
Least privilege gives each component only the authority required for its task. Complete mediation checks permission whenever a protected operation occurs rather than trusting a previously displayed page. Secure failure preserves an appropriate protection when something goes wrong: a database timeout should not accidentally grant access. Defense in depth combines controls whose failures are not identical. Simplicity improves the ability to inspect and maintain these rules. Distinguish authentication, which establishes an identity claim, from authorization, which determines what the authenticated or anonymous actor may do.
References: COMP 2109 A — Fall 2026 course outline · OWASP — Web Security Testing Guide
Software vulnerabilities and defensive testing
Input becomes dangerous when a program treats untrusted data as instructions or trusts it to determine authority. Parameterized database operations separate query structure from data; context-appropriate output handling reduces unintended script interpretation. Server-side authorization remains essential even if a user interface hides a button. Security tests should examine expected denials and invalid state transitions as carefully as successful actions. Work within an explicitly authorized system and use synthetic data when possible. Findings should describe the violated property, reproducible conditions, impact, and a focused correction rather than merely naming a vulnerability category.
References: COMP 2109 A — Fall 2026 course outline · OWASP — Web Security Testing Guide
Privacy, inference, and data minimization
Privacy concerns what processing does to people, including collection, linkage, inference, disclosure, and retention. Data can be secured against outsiders while still being collected or used in ways that harm the person it describes. Removing names does not necessarily prevent reidentification when timestamps, locations, or rare attributes can be linked to other sources. Data minimization reduces the information required for a purpose; retention limits reduce how long exposure persists. Explain defaults and choices clearly, and evaluate whether users can make a meaningful decision about the processing.
References: COMP 2109 A — Fall 2026 course outline · NIST — Privacy Framework
Worked case: a campus attendance application
Suppose an attendance app collects a student identifier, precise GPS location every minute, and contact lists to prove lecture attendance. The purpose may require only a class-specific attendance event, making the extra collection difficult to justify technically. Threats include account takeover, an unauthorized administrator query, exposed logs, and later use of location history. Possible design changes include collecting a minimal check-in proof, restricting roles, limiting retention, and recording administrative access. Each change should be assessed against a stated abuse scenario and the legitimate attendance workflow.
References: COMP 2109 A — Fall 2026 course outline · OWASP — Web Security Testing Guide · NIST — Privacy Framework
Abuse, anonymity, governance, and ethical analysis
Security mechanisms operate inside institutions and social incentives. Anonymity can protect vulnerable speakers while complicating abuse response; identification can support accountability while increasing surveillance. Compare proposed controls using evidence about the harm, effectiveness, affected groups, and alternatives. Malware and fraud often exploit human workflows as well as technical flaws, making recovery and understandable warnings part of the system. Governance defines who can change rules, audit decisions, and challenge errors. For legal requirements, consult the current applicable primary law and institutional policy rather than assuming a technical framework establishes compliance.
References: COMP 2109 A — Fall 2026 course outline · NIST — Privacy Framework
Practice & worked answers
Original exercises for this guide.
1. An API returns another user’s record after changing an identifier. Which property failed?
Show worked answer
Authorization failed: knowing or guessing a record identifier should not grant access. The server must verify the requester’s authority for the specific record on each protected operation.
2. Does encryption make indefinite location retention harmless?
Show worked answer
No. Encryption reduces some disclosure risks, but authorized access, key compromise, later linkage, and unintended uses remain. Purpose, minimization, access, and retention still matter.
3. Why test denied operations?
Show worked answer
A system can implement its successful workflow correctly while granting unintended authority on error paths or alternate endpoints. Explicit denial tests check that protection holds across those paths.
Public notes & references
Course sources establish the scope above. Reference materials support the explanations; linked lecture notes and books remain with their authors.
Prerequisites & course information
Prerequisite(s): ( COMP 1006 or COMP 1406 ) with a minimum grade of C- , and COMP 2401 with a minimum grade of C- . Lectures three hours a week.