TPM versus HSM versus secure element: plaats, doel, sleutelbescherming en certificering vergeleken

Alle drie zijn speciale hardware die cryptografische sleutels genereert en bewaart en intern ondertekent of ontsleutelt, zonder privésleutels naar buiten te laten. Ze verschillen in wat ze beschermen en waar ze zitten. Een TPM zit in elke pc of server, legt de opstarttoestand van die machine vast en toont die aan, en beschermt sleutels die aan die machine zijn gebonden. Een HSM is een speciaal apparaat dat de belangrijkste sleutels van een organisatie op één plek bewaart; het vormt het hart van certificaatautoriteiten, betaalsystemen en sleutelbeheerdiensten in de cloud en verwerkt grote aantallen ondertekeningen en ontsleutelingen. Een secure element is een kleine manipulatiebestendige chip in smartcards en telefoons die betaal- en identiteitsgegevens beschermt in apparaten die mensen bij zich dragen.

KenmerkTPMHSMSecure element
Plaats en vormEen aparte chip op het moederbord van een pc of server; kan ook firmware in de CPU of SoC zijn (fTPM)Een PCIe-kaart of een apparaat aan het netwerk; ook aangeboden als clouddienstEen kleine chip in smartcards, simkaarten of op het bord van een smartphone of IoT-apparaat; kan ook in een SoC zijn geïntegreerd
HoofddoelDe opstarttoestand van die machine vastleggen en aantonen, en sleutels beschermen die eraan zijn gebondenDe belangrijke sleutels van een organisatie op één plek beschermen en verzoeken tot ondertekenen en ontsleutelen van veel systemen afhandelenBetaal-, identiteits- en abonneegegevens voor mobiele netwerken beschermen in apparaten die mensen bij zich dragen
Typische apparaten en gebruikersPc's en serversCertificaatautoriteiten, banken en betaaldienstverleners, sleutelbeheerdiensten (KMS) in datacenters en cloudsSmartcards zoals creditcards en personeelspassen, simkaarten, smartphones, IoT-apparaten
Hoe sleutels worden beschermdSleutels worden in de TPM gegenereerd en het privédeel verlaat die nooit in leesbare vorm; sealing kan een sleutel aan PCR-waarden binden, zodat die alleen wordt vrijgegeven als de opstarttoestand correct isSleutels worden in het apparaat gegenereerd en bewaard; applicaties vragen „onderteken met deze sleutel” en krijgen alleen het resultaat terug; gebruikersrollen en een audittrail worden beheerdSleutels en credentials staan op de chip, en applicaties (applets) op de chip voeren authenticatie en ondertekening uit
CryptoprestatiesLaag; grote hoeveelheden data versleutelt de CPU met een sleutel die de TPM vrijgeeftHoog; gebouwd om continu veel ondertekeningen en sleutelbewerkingen te verwerkenLaag; geschikt voor authenticatie of ondertekening van korte stukken data
Manipulatiebestendigheid en certificeringEen aparte chip is manipulatiebestendig; een fTPM steunt op de bescherming van de hoofdprocessor. Afhankelijk van het product gecertificeerd volgens Common Criteria of FIPS 140Wist zijn sleutels als het een poging tot openen detecteert; veel producten zijn gecertificeerd volgens normen zoals FIPS 140-3Manipulatiebestendigheid op smartcardniveau, waarbij ook tegenmaatregelen tegen zijkanaal- en foutinjectieaanvallen worden beoordeeld; veel zijn geëvalueerd volgens Common Criteria (ISO/IEC 15408)
AttestatieEen kernfunctie: PCR-waarden worden ondertekend met een sleutel die de TPM niet kan verlaten (een quote), voor remote attestationGeen kernfunctie; sommige producten kunnen aantonen dat een sleutel intern is gegenereerd en niet kan worden geëxporteerdGebruikt om aan te tonen dat een sleutel op de chip is gegenereerd en dat de chip echt is
Kosten en omvangGoedkoop; één onderdeel van een pc, en een fTPM vraagt geen extra componentHet duurst en het grootst; diensten die niet mogen stoppen gebruiken meerdere exemplaren voor redundantieHet kleinst; past in kaarten en kleine apparaten en is per stuk goedkoop doordat het in massa wordt geproduceerd
Typische toepassingenSealing van sleutels voor schijfversleuteling, measured boot, controle van de apparaatstatus vóór netwerktoegangOndertekeningssleutels van CA's, betaalsleutels, KMS-sleutels op het hoogste niveau, sleutels voor codeondertekening van softwareContactloos betalen, abonneeauthenticatie voor sim en eSIM, e-paspoorten en identiteitskaarten, authenticatie van IoT-apparaten

De getalswaarden zijn typische ordegroottes en variëren per procesgeneratie en product.

Wanneer welke variant?

TPM
Op pc's en servers, wanneer je sleutels wilt beschermen die aan de opstarttoestand zijn gekoppeld (bijvoorbeeld voor schijfversleuteling) of aan een server wilt aantonen dat de machine de juiste software heeft opgestart.
HSM
Wanneer de belangrijkste sleutels van een organisatie, zoals ondertekeningssleutels van een CA of betaalsleutels, op één plek moeten worden bewaakt terwijl veel systemen ze gebruiken. Ook gebruikt wanneer regelgeving of audits eisen dat sleutels in een gecertificeerd apparaat worden behandeld.
Secure element
In kaarten, telefoons en IoT-apparaten die in handen van een aanvaller kunnen vallen, wanneer betaal- of identiteitsgegevens en sleutels per apparaat tegen fysieke aanvallen moeten worden beschermd.
Samen
Systemen gebruiken ze vaak naast elkaar: een server toont zijn opstarttoestand aan met een TPM, de kritieke sleutels van de dienst staan in een HSM, en de smartphone van de gebruiker bewaart betaalsleutels in een secure element.

Veelgestelde vragen

Wat is het verschil tussen een TPM en een HSM?

Een TPM zit in één machine, legt de opstarttoestand vast en toont die aan, beschermt sleutels die aan die machine zijn gebonden en is relatief traag. Een HSM is een speciaal apparaat dat de belangrijke sleutels van een organisatie bewaart en verzoeken tot ondertekenen en ontsleutelen van veel systemen met hoge prestaties afhandelt. Beide volgen het idee om sleutels intern te verwerken zonder ze naar buiten te laten; ze verschillen in schaal en rol.

Zijn een secure element en een TEE hetzelfde?

Nee. Een secure element is een aparte manipulatiebestendige chip met een eigen processor en geheugen. Een TEE (trusted execution environment), zoals Arm TrustZone, creëert een geïsoleerde uitvoeringsomgeving in de hoofdprocessor en deelt cores en caches met het gewone besturingssysteem. Smartphones gebruiken vaak beide, bijvoorbeeld om vingerafdrukken in de TEE te vergelijken terwijl de waardevolste sleutels in een secure element blijven.

Is een fTPM even veilig als een aparte TPM-chip?

De interface is dezelfde, maar de bescherming verschilt. Een fTPM draait in een geïsoleerde omgeving in de hoofdprocessor, dus er is geen extra chip nodig, maar hij kan worden getroffen door kwetsbaarheden in de firmware van de processor en door zijkanaalaanvallen. Een aparte chip kan speciaal worden ontworpen om fysieke aanvallen te weerstaan. De keuze hangt af van de aanvallen die je moet kunnen weerstaan.

Wat is het verschil tussen FIPS 140-3 en Common Criteria?

FIPS 140-3 is een norm die in de Amerikaanse en Canadese programma's wordt gebruikt en beveiligingseisen stelt aan cryptografische modules, ingedeeld in vier steeds strengere beveiligingsniveaus. Common Criteria (ISO/IEC 15408) is een internationale norm waarbij een product wordt beoordeeld aan de hand van beveiligingsdoelen die ervoor zijn vastgelegd, met de diepgang van de evaluatie uitgedrukt in evaluation assurance levels (EAL) en vergelijkbare maatstaven. HSM's worden meestal gevalideerd volgens FIPS 140-3 en smartcards en secure elements volgens Common Criteria, al hebben sommige producten beide.

Test uw begrip

Welke uitspraak over de belangrijkste rol van een TPM (Trusted Platform Module) in bijvoorbeeld pc's is juist?

  1. AEen speciale schakeling om de beeldschermweergave te versnellen
  2. BEen component dat de koeling van de CPU beheert
  3. CHet levert beveiligingsfuncties zoals het veilig maken en bewaren van sleutels, het vastleggen van de gestarte software en het bewijzen van die toestand
Antwoord en toelichting tonen

Antwoord: C. Het levert beveiligingsfuncties zoals het veilig maken en bewaren van sleutels, het vastleggen van de gestarte software en het bewijzen van die toestand

Een TPM is een tegen manipulatie van buitenaf bestendige beveiligingschip (of in de CPU opgenomen functie) die onder meer sleutels genereert en bewaart, cryptografie uitvoert, toevalsgetallen genereert en hashes van gestarte software vastlegt. Als de sleutel voor schijfversleuteling bijvoorbeeld alleen wordt vrijgegeven wanneer de opstarttoestand juist is, zijn de data moeilijk te lezen, ook als de schijf wordt verwijderd of de opstartsoftware wordt herschreven.

Welke uitspraak over de rol van een HSM (hardware security module) is juist?

  1. AEen snel opslagapparaat met ingebouwde versleutelingsfuncties om grote hoeveelheden versleutelde gegevens op te slaan
  2. BEen apparaat dat sleutels in manipulatiebestendige hardware genereert en bewaart en bewerkingen zoals ondertekenen en ontsleutelen uitvoert zonder de sleutels naar buiten te laten
  3. CEen netwerkapparaat dat het netwerkverkeer bewaakt en kwaadaardige pakketten en aanvalsverkeer opspoort en blokkeert
Antwoord en toelichting tonen

Antwoord: B. Een apparaat dat sleutels in manipulatiebestendige hardware genereert en bewaart en bewerkingen zoals ondertekenen en ontsleutelen uitvoert zonder de sleutels naar buiten te laten

Een HSM is een speciaal apparaat om sleutels te beschermen, zoals de ondertekeningssleutels van certificaatautoriteiten, betalingssleutels en de sleutels op het hoogste niveau van sleutelbeheerdiensten (KMS) in de cloud. Sleutels worden binnen de HSM gegenereerd en het apparaat is zo gebouwd dat ze het niet als platte tekst kunnen verlaten; applicaties sturen verzoeken zoals „onderteken met deze sleutel” en krijgen alleen het resultaat terug. Het beschikt over manipulatiebestendigheid: het wist bijvoorbeeld zijn sleutels als iemand het probeert te openen, en veel producten zijn gecertificeerd volgens normen zoals FIPS 140-3. Ook het secure element van een smartphone en de TPM van een pc beschermen sleutels volgens een vergelijkbaar idee, zij het op kleinere schaal.

Welke uitspraak over de manipulatiebestendigheid (tamper resistance) die van beveiligingschips zoals in IC-kaarten wordt gevraagd is juist?

  1. ADe eigenschap dat de chip niet kapotgaat als hij nat wordt
  2. BDe eigenschap dat fysieke aanvallen zoals het openen van de chip of het aanleggen van probes moeilijk worden gemaakt en de geheimen binnenin worden beschermd, bijvoorbeeld door de sleutel te wissen bij detectie
  3. CDe eigenschap dat de chip ook bij hoge temperatuur snel werkt
Antwoord en toelichting tonen

Antwoord: B. De eigenschap dat fysieke aanvallen zoals het openen van de chip of het aanleggen van probes moeilijk worden gemaakt en de geheimen binnenin worden beschermd, bijvoorbeeld door de sleutel te wissen bij detectie

Manipulatiebestendigheid is de eigenschap om aanvallen te doorstaan waarbij een chip wordt gedemonteerd of probes op interne bedrading worden gezet om geheimen eruit te halen. Maatregelen worden gecombineerd, zoals detectie wanneer het metalen bedradingsnet (shield) dat het oppervlak bedekt wordt doorgesneden, detectie van afwijkingen in licht, temperatuur en spanning, het versleutelen of ingewikkeld plaatsen van interne bedrading en het wissen van de sleutel bij detectie van een afwijking. Ook maatregelen tegen side-channels en foutinjectie worden in de beoordeling betrokken.

  1. Welke uitspraak over remote attestation (attestatie op afstand) is juist?
  2. Welke uitspraak over een foutinjectieaanval (fault injection) is juist?
  3. Noem een DEK een gegevensversleutelingssleutel en een KEK een sleutelversleutelingssleutel. Welke beschrijving van envelopeversleuteling, zoals gebruikt bij opslag in de cloud en elders, is juist?

Oefenvragen over Hardwarebeveiliging

Belangrijke termen uitgelegd

TPM
Trusted Platform Module. Beveiligingschip of -functie die sleutels genereert en bewaart, meetwaarden van opgestarte software vastlegt en de toestand bevestigt.
HSM (hardware security module)
Een speciaal apparaat dat cryptografische sleutels veilig genereert en bewaart en bewerkingen zoals ondertekenen en ontsleutelen intern uitvoert, zonder de sleutels naar buiten te laten. Het is manipulatiebestendig en wist zijn sleutels wanneer het pogingen zoals openbreken detecteert. Het wordt gebruikt om de ondertekeningssleutels van certificaatautoriteiten, betalingssleutels en de sleutels op het hoogste niveau van sleutelbeheerdiensten (KMS) in de cloud te beschermen. Veel producten zijn gecertificeerd volgens normen zoals FIPS 140-3. Behalve als PCIe-kaarten en als apparaten die op het netwerk worden aangesloten, worden HSM's ook als clouddienst aangeboden.
Manipulatiebestendigheid (tamper resistance)
Eigenschap om geheimen in de chip te beschermen door fysieke aanvallen zoals het openen van de chip of het aanbrengen van probes te weerstaan en bij detectie bijvoorbeeld sleutels te wissen.
Remote attestation
Mechanisme waarbij een apparaat de toestand van de software die erin draait met een sleutel in de chip ondertekent en aan een server op afstand toont, zodat die kan nagaan of het apparaat te vertrouwen is.
Measured boot
Mechanisme waarbij in elke opstartfase de hashwaarde van de volgende software in onder meer een TPM wordt vastgelegd, zodat de opstarttoestand achteraf kan worden gecontroleerd.
TEE (trusted execution environment)
Uitvoeringsomgeving die door hardware wordt beschermd en ook van het gewone besturingssysteem is geïsoleerd. Voert belangrijke verwerking uit zoals sleutelbewerkingen en authenticatie. Bijvoorbeeld Arm TrustZone.
Envelopeversleuteling (envelope encryption)
Een schema waarbij gegevens worden versleuteld met een gegevensversleutelingssleutel (DEK), waarna die DEK met een aparte sleutelversleutelingssleutel (KEK) wordt versleuteld (ingepakt, wrapping) en samen met de gegevens wordt opgeslagen. De KEK blijft binnen een KMS of HSM en verlaat die nooit, terwijl grote gegevens lokaal kunnen worden versleuteld. Bij het vernieuwen van de KEK hoeven alleen de kleine DEK's opnieuw te worden versleuteld, niet alle gegevens. Het wordt veel gebruikt voor de versleuteling van cloudopslag en databases.

Verwante vergelijkingen