Thuta Learning
AdvancedSecurityintermediate

Privacy Fundamentals

What you'll walk away with

  • Explain the core ideas behind Privacy Fundamentals
  • Read the diagram/checklist and trace how the threat, control, and decision connect
  • Explain how this applies to your own digital life or developer workflow

Build the mental model

Every previous lesson has been about security. Privacy is a related but genuinely separate discipline.

Privacy concerns how personal data is collected, used, shared, and controlled — including by people and companies fully authorized to have it.

Secure but still a privacy problem

A company can securely store data with strong encryption and access control, while still collecting far more than a user would expect. Security protects data; privacy governs even authorized access.

Personal data covers more than obvious identifiers — location history, account identifiers, photos, financial details, and browsing data all count too.

Sensitivity depends heavily on context: a public username alone is low-sensitivity, but combined with a home address and daily schedule, it can enable real-world harm.

Data minimization: collect and retain only what's needed for a legitimate purpose. It quietly serves privacy, security, and operational simplicity all at once.

Privacy
The discipline of governing how personal data is collected, used, shared, and controlled — including by parties who are fully authorized to access it.
Data Minimization
Collecting and retaining only the data actually needed for a legitimate, stated purpose — nothing more "just in case."
text
SECURITY VS PRIVACY
-------------------
SECURITY                      PRIVACY
-----------------------       -----------------------
Protects data from            Controls what gets
unauthorized access           collected, used, and
                               shared -- even by
                               authorized parties

Both apply to personal data. A system can be secure
AND still over-collect -- that gap is a privacy
problem, not a security bug.

Connect it to a real scenario

The function below turns data minimization into a runnable check: given a data type, a stated purpose, and whether it's actually needed, it returns a clear verdict.

The check itself is simple on purpose: it forces someone to answer, honestly, whether this specific data is actually required for the stated purpose.

Shipping address for delivery

Clearly matches the stated purpose — verdict: OK.

GPS history for a newsletter

Doesn't match the stated purpose at all — verdict: OVER-COLLECTING.

Apply the same question to every field on a signup form or every app permission: name the purpose, then ask honestly if this data is actually required.

Try the working example

javascript
function checkDataMinimization(practice) {
  const followsMinimization = practice.isNeededForThatPurpose === true;

  return {
    dataType: practice.dataType,
    statedPurpose: practice.statedPurpose,
    followsMinimization,
    verdict: followsMinimization
      ? "OK — collection matches a legitimate, stated purpose."
      : `OVER-COLLECTING — "${practice.dataType}" is not needed for "${practice.statedPurpose}".`,
  };
}

const minimalExample = checkDataMinimization({
  dataType: "shipping address",
  statedPurpose: "deliver a physical order",
  isNeededForThatPurpose: true,
});

const overCollectingExample = checkDataMinimization({
  dataType: "precise GPS location history",
  statedPurpose: "send a monthly email newsletter",
  isNeededForThatPurpose: false,
});

console.log(JSON.stringify(minimalExample, null, 2));
console.log(JSON.stringify(overCollectingExample, null, 2));
You should see
{
  "dataType": "shipping address",
  "statedPurpose": "deliver a physical order",
  "followsMinimization": true,
  "verdict": "OK — collection matches a legitimate, stated purpose."
}
{
  "dataType": "precise GPS location history",
  "statedPurpose": "send a monthly email newsletter",
  "followsMinimization": false,
  "verdict": "OVER-COLLECTING — \"precise GPS location history\" is not needed for \"send a monthly email newsletter\"."
}

5-minute try-it

Extend checkDataMinimization to accept a retentionPeriod field and flag practices that keep data indefinitely (no defined retention period) as a second kind of problem, separate from over-collection.

One important caution

Assuming that because data is stored securely, collecting it in the first place is automatically fine.

Collecting data "just in case it's useful later" instead of tying every field to a specific, stated purpose.

EFF — PrivacyDigital Privacy & Modern Security

Easy traps

  • Assuming that because data is stored securely, collecting it in the first place is automatically fine.
  • Collecting data "just in case it's useful later" instead of tying every field to a specific, stated purpose.
  • This is not a restart of the Cybersecurity Basics course -- it assumes passwords, 2FA, phishing, malware, encryption, and backups are already covered there. This course adds what that one doesn't: passkeys, public Wi-Fi/VPN, browser security, privacy, developer-focused auth/API security, and AI security.

Exercise

Extend checkDataMinimization to accept a retentionPeriod field and flag practices that keep data indefinitely (no defined retention period) as a second kind of problem, separate from over-collection.

You'll know it worked when: { "dataType": "shipping address", "statedPurpose": "deliver a physical order", "followsMinimization": true, "verdict": "OK — collection matches a legitimate, stated purpose." } { "dataType": "precise GPS location history", "statedPurpose": "send a monthly email newsletter", "followsMinimization": false, "verdict": "OVER-COLLECTING — \"precise GPS location history\" is not needed for \"send a monthly email newsletter\"." }

Privacy Fundamentals | Thuta Learning