Tip: Choose Save as PDF in the print dialog to download. Use A4 paper size.
Shade in the A or B circle for each question.
Draw a line connecting each item on the left to its match on the right.
| Left column | Right column | |
|---|---|---|
| 1Use of data | AEvidence: the API uses HTTPS and the database file is encrypted | |
| 2Dissemination of data | BChecks which other parties receive the data, such as third-party APIs, partners or advertisers | |
| 3Storage and protection: evidence is that data is encrypted at rest and in transit | CIgnores that the data owner keeps control and rights over their data, so the data cannot be passed on without permission. | |
| 4Recommending a fix: name a specific change that removes the weakness found | DChecks what the exchange does with the data and whether that purpose matches what the user agreed to | |
| 5Evaluation: 'The exchange is secure because it is fast.' | EGives no evidence for any of the five aspects. Speed says nothing about use, dissemination, storage, accuracy or ownership. | |
| 6Ownership: 'We collected the data, so we can sell it to anyone.' | FFix: move the API key into an environment variable, not the code |
Complete each line of code by filling in the missing parts.
Shade in the letter of the line that contains an error.
Security-impact evaluation — Judging a data exchange on five aspects: use, dissemination, storage, accuracy and ownership of data, with evidence for each, then recommending a fix.five = ["use", "dissemination", "storage"]findings["accuracy"] = "no checks on input"findings["ownership"] = "user cannot delete"five = ["use", "dissemination", "storage"]
for aspect in five:
print(aspect)if "storage" in findings:
fix = "encrypt data at rest"