Reducing supply chain risk
Use fewer, trusted dependencies, pin versions, verify integrity and scan for known vulnerabilities so a weak link in code you rely on cannot harm your system.
Understanding Reducing supply chain risk in Years 9–10 Digital Systems
What it does: Writing the exact version with == pins the dependency, so only the version you reviewed gets installed. The --require-hashes option makes pip verify each package against a known hash, so a tampered file is rejected. Every dependency is another link in your supply chain. Fewer, trusted ones mean fewer weak links an attacker can use. Pinning gives you control over when a change enters your project. You still need to scan and update on purpose, because old versions can have known flaws. Reviewing a dependency first helps you spot abandoned, suspicious or fake packages before they get into your system.
Common mistakes: The version is not pinned. '>=1.0' lets any newer version install, including a compromised one. It should be a fixed version such as numpy==1.26.4. The check compares age to 12 months, but this line counts downloads instead. It should be age ← monthsSinceUpdate(dep) so abandoned packages are rejected.
Free printable worksheet with full answer key — or add this module to a class and your students practise it interactively.
This module's key terms are also in a printable crossword (Modules 70–79) and word search (Modules 41–79).
Take this worksheet further — free with Cloodit
Each concept is reinforced from every angle — learned, then applied, then tested.
Cloodit turns curriculum-aligned coding content into journeys students work through one biome at a time.
Over 100 of them, across seven natural biomes.
Turns their work into revision material ready for Flash Cards and Exam study.
Live, competitive practice for the start of the lesson or a teacher-led lesson finisher.
Honour your top performers, or encourage a student who's trying hard — ready to print in seconds.
Quick Questions
Match the Pairs
Key Term
reduce supply chain riskFill in the Blanks
Spot the Error
Student with a class code? Join your class →