Trusted Platform Module: de kluis in je computer
Stel je voor dat je laptop een klein, ondoordringbaar kluisje aan boord heeft. Niet voor geld, maar voor digitale sleutels: wachtwoorden, encryptiesleutels en bewijzen dat de computer niet is geknoeid met malware. Dat kluisje bestaat echt en heet een Trusted Platform Module, afgekort TPM. Het is een klein chipje – of tegenwoordig vaak een stukje beveiligde software in de processor – dat in vrijwel elke moderne laptop, desktop en server zit, meestal zonder dat gebruikers het ooit opmerken.
Een TPM doet in wezen twee dingen heel goed: geheimen bewaren en bewijzen dat een systeem betrouwbaar is opgestart. Vergelijk het met een kluis in een hotelkamer die niet alleen je sieraden veilig opbergt, maar ook een logboek bijhoudt van wie de kamer heeft betreden en of er iets is veranderd aan de deur. Als een aanvaller de harde schijf van je laptop steelt, heeft hij niets aan de versleutelde bestanden zonder de sleutel die veilig in de TPM zit opgesloten. En als er malware in het opstartproces sluipt, kan de TPM dat detecteren en melden.
Wat is het precies?
Een TPM is een gespecialiseerde chip, gebaseerd op een open standaard van de Trusted Computing Group (TCG), een samenwerkingsverband van techbedrijven. De huidige versie, TPM 2.0, is ook internationaal vastgelegd als ISO/IEC 11889. Het belangrijkste kenmerk van een TPM is dat hij geïsoleerd is van de rest van de computer: het besturingssysteem en programma's kunnen er wel opdrachten naartoe sturen, maar niet direct bij de geheimen die erin zitten.
De TPM kan cryptografische sleutels genereren en, cruciaal, die sleutels nooit meer prijsgeven. In plaats daarvan voert de chip zelf bewerkingen uit — zoals data versleutelen of een digitale handtekening zetten — zonder dat de geheime sleutel ooit het chipje verlaat. Dit heet 'sealed storage': gegevens worden zo vergrendeld dat ze alleen ontgrendeld kunnen worden onder specifieke, vooraf gedefinieerde voorwaarden.
Een tweede kernfunctie is 'measured boot' (gemeten opstarten). Bij elke stap van het opstartproces — van de firmware tot het besturingssysteem — berekent de computer een soort digitale vingerafdruk (een hashwaarde) van de software die wordt geladen, en die vingerafdruk wordt vastgelegd in speciale TPM-registers, de Platform Configuration Registers (PCR's). Als er ook maar één byte verandert, bijvoorbeeld door malware die zich in de opstartcode nestelt, verandert de vingerafdruk volledig. Zo kan het systeem — of een externe partij — controleren of de computer nog in de verwachte, ongewijzigde staat verkeert. Dit proces heet 'remote attestation'.
Fysiek bestaan er twee hoofdvormen. Een 'discrete TPM' is een apart chipje op het moederbord, fysiek gescheiden van de hoofdprocessor. Een 'firmware TPM' (fTPM) is dezelfde functionaliteit, maar dan geïmplementeerd als beveiligde software die draait in een afgeschermd deel van de processor zelf, zoals Intel's Platform Trust Technology (PTT) of AMD's fTPM. Firmware-varianten zijn goedkoper en inmiddels de norm in consumentenapparatuur, maar gelden doorgaans als iets minder weerbaar tegen geavanceerde fysieke aanvallen dan een apart chipje.
Wat wil men ermee bereiken?
Het uitgangspunt achter de TPM is simpel maar fundamenteel: software alleen kan zichzelf niet volledig beveiligen. Als malware eenmaal diep genoeg in een systeem zit, kan die malware ook liegen over zijn eigen aanwezigheid. Door een deel van de beveiliging in aparte, gespecialiseerde hardware te plaatsen die niet door het besturingssysteem te manipuleren is, ontstaat een steviger fundament — een 'hardware root of trust', oftewel een vertrouwensanker dat niet door software-trucs is te omzeilen.
Concreet wil men met TPM's een aantal problemen oplossen. Ten eerste: het veilig bewaren van encryptiesleutels, zodat gestolen laptops of harde schijven geen bruikbare data opleveren. Ten tweede: garanderen dat een computer opstart met ongewijzigde, vertrouwde software, wat relevant is tegen zogeheten 'bootkits' — malware die zich nestelt vóórdat het besturingssysteem zelf actief wordt. Ten derde: apparaten een unieke, hardwaregebonden identiteit geven, zodat bedrijfsnetwerken kunnen verifiëren dat een inloggende laptop ook echt het toegestane, bedrijfseigen apparaat is.
Het doel is dus niet dat gebruikers voortdurend met de TPM interacteren, maar dat besturingssystemen en beveiligingssoftware er op de achtergrond gebruik van maken om beloftes waar te maken die puur softwarematig moeilijk hard te maken zijn.
Voorbeelden uit de praktijk
Het bekendste voorbeeld voor de meeste mensen is BitLocker, de schijfversleuteling van Microsoft Windows. BitLocker gebruikt de TPM om de versleutelingssleutel van de harde schijf te bewaren en te koppelen aan de integriteit van het opstartproces: als iemand probeert de schijf in een andere computer te zetten of het opstartproces te manipuleren, weigert de TPM de sleutel vrij te geven.
In 2021 kondigde Microsoft aan dat Windows 11 een TPM 2.0-chip verplicht stelt voor installatie. Dit besluit zorgde voor veel discussie, omdat het miljoenen oudere, functioneel prima werkende pc's technisch gezien 'niet ondersteund' maakte, terwijl veel gebruikers nog nooit van een TPM hadden gehoord.
Chipfabrikant Infineon is een van de grootste leveranciers van discrete TPM-chips (de OPTIGA-serie) en levert al sinds de jaren 2000 miljoenen exemplaren aan pc-bouwers zoals Dell, HP en Lenovo.
Op het gebied van serverbeveiliging gebruiken clouddienstverleners zoals Microsoft Azure en Google Cloud TPM-achtige technologie voor 'attestation' van virtuele machines: klanten kunnen bewijs krijgen dat hun cloud-instantie draait op ongewijzigde, vertrouwde firmware en hypervisors, wat relevant is voor gevoelige workloads in de financiële sector en overheid.
In de Linux-wereld ondersteunt het open source-project tpm2-tools sinds de late jaren 2010 het aansturen van TPM 2.0-chips, en de 'Integrity Measurement Architecture' (IMA) in de Linux-kernel maakt gebruik van vergelijkbare meetprincipes om de integriteit van bestanden tijdens runtime te bewaken.
Hoe ver is de techniek?
TPM is geen opkomende technologie meer, maar een volwassen, breed uitgerolde standaard. TPM 1.2 verscheen begin jaren 2000; de huidige generatie, TPM 2.0, werd in 2014 gepubliceerd door de TCG en is sindsdien meerdere keren bijgewerkt en verder gestandaardiseerd door ISO. Sinds ongeveer 2016 is een TPM 2.0-achtige functie standaard aanwezig in vrijwel elke nieuwe zakelijke laptop en desktop, vaak in de vorm van een firmware-TPM die simpelweg 'aan' gezet moet worden in de BIOS/UEFI-instellingen.
De verplichting die Microsoft in 2021 oplegde voor Windows 11 was in die zin geen technologische doorbraak, maar een beleidskeuze die bestaande, al jaren aanwezige hardware eindelijk verplicht ging benutten.
Toch zijn er reële kanttekeningen. Beveiligingsonderzoek, zoals het in 2019-2020 gepubliceerde 'TPM-Fail'-onderzoek van academici (onder wie onderzoekers van de Worcester Polytechnic Institute en de Universiteit van Californië San Diego), toonde aan dat sommige TPM-implementaties kwetsbaar waren voor timing-aanvallen, waarbij aanvallers via subtiele tijdsverschillen in berekeningen geheime sleutels konden afleiden. Fabrikanten hebben deze specifieke lekken sindsdien gerepareerd, maar het voorbeeld laat zien dat een TPM geen onfeilbare zwarte doos is.
Daarnaast blijft er discussie over het verschil in beveiligingsniveau tussen discrete TPM-chips en firmware-varianten: bij een fTPM lopen geheimen tijdelijk via hetzelfde siliciumoppervlak als de hoofdprocessor, wat in theorie meer aanvalsoppervlak biedt dan een volledig fysiek gescheiden chip. Voor de gemiddelde consument is dit verschil doorgaans niet praktisch relevant, maar voor overheden en hoogrisico-omgevingen kan het meewegen in aanschafbeleid.
Wie werken eraan?
De standaard zelf wordt beheerd door de Trusted Computing Group (TCG), een non-profit industrieconsortium dat in 2003 werd opgericht als opvolger van het eerdere Trusted Computing Platform Alliance (TCPA, 1999). Oprichtende en leidende leden zijn onder meer AMD, Cisco, HP, IBM, Intel, Lenovo en Microsoft.
Op het gebied van chipproductie zijn Infineon Technologies (Duitsland) en STMicroelectronics (Frankrijk/Zwitserland/Italië) de belangrijkste leveranciers van discrete TPM-chips wereldwijd. Intel en AMD leveren de firmware-implementaties die in hun processors zijn ingebouwd.
Microsoft is de grootste drijvende kracht achter brede adoptie via Windows en BitLocker; Google gebruikt vergelijkbare, deels eigen concepten (zoals de Titan-beveiligingschip) in Chromebooks en datacenters. De internationale standaardisatie loopt via ISO/IEC, en in de Verenigde Staten volgt het National Institute of Standards and Technology (NIST) de technologie in het kader van overheidsrichtlijnen voor cyberbeveiliging.
Verder lezen
- Trusted Computing Group (officiële beheerder van de TPM-standaard)
- ISO — internationale standaardisatieorganisatie (ISO/IEC 11889)
- National Institute of Standards and Technology (NIST)
- Microsoft — documentatie over BitLocker en Windows 11 TPM-vereisten
- Infineon Technologies — fabrikant van TPM-chips