Basis en toepassingen van cryptografie

Het gebruik van de hashwaarde SHA-256(K ‖ m) van een geheime sleutel K gevolgd door een bericht m als tag om manipulatie te detecteren, wordt als gevaarlijk beschouwd. Wat is de reden daarvoor?

  1. AAls de tag en de lengte van de invoer bekend zijn, kan zonder K te kennen de tag worden berekend van een bericht waarbij achter m gegevens zijn toegevoegd
  2. BEr is een efficiënte methode bekend om uit de uitvoer van SHA-256 alleen de sleutel K aan het begin van de invoer terug te rekenen
  3. CDoor de sleutel K vóór het bericht te plaatsen wordt de invoer langer, en bij SHA-256 worden botsingen dan makkelijker te vinden
Antwoord en toelichting tonen

Antwoord: A. Als de tag en de lengte van de invoer bekend zijn, kan zonder K te kennen de tag worden berekend van een bericht waarbij achter m gegevens zijn toegevoegd

Bij een hashfunctie met een Merkle–Damgård-constructie zoals SHA-256 is de uitgevoerde hashwaarde precies de interne toestand na het verwerken van het laatste blok. Een aanvaller kan daarom de tag als interne toestand nemen en de berekening voortzetten, en zo zonder K te kennen de hashwaarde berekenen van een bericht dat bestaat uit K ‖ m gevolgd door padding van een vaste vorm en willekeurige gegevens (een lengte-extensieaanval). HMAC gebruikt twee uit de sleutel afgeleide waarden en hasht de binnenste hashwaarde nog een keer samen met de sleutel; deze structuur voorkomt de aanval. SHA-3 is door zijn constructie niet vatbaar voor deze aanval, en daarom is ook KMAC gestandaardiseerd, dat de sleutel eenvoudig vooraan zet.

Dit onderwerp oefenen Naar de onderwerppagina

Meer vragen over Basis en toepassingen van cryptografie

  1. Stel 1 GiB = 2³⁰ bytes en 1 EiB = 2⁶⁰ bytes. Een blokcijfer met een blok van 64 bits (zoals 3DES) wordt in CBC-modus gebruikt om een grote hoeveelheid gegevens onder één sleutel te versleutelen. Als de blokken cijfertekst als willekeurige waarden van 64 bits worden beschouwd, bij welke hoeveelheid gegevens is de kans dat er door de verjaardagsparadox een paar identieke blokken cijfertekst verschijnt volgens de vuistregel niet meer te verwaarlozen?
  2. In protocollen zoals TLS 1.3 wordt het gedeelde geheim uit een ECDHE-sleuteluitwisseling niet direct als versleutelingssleutel gebruikt; in plaats daarvan worden sleutels gemaakt door het door een sleutelafleidingsfunctie (KDF) zoals HKDF te halen. Wat is daarvoor een passende reden?
  3. Het mechanisme van RSA wordt met kleine getallen gecontroleerd. Uit de priemgetallen p = 5 en q = 11 wordt n = pq gevormd, en de publieke exponent is e = 3. Met φ(n) = (p − 1)(q − 1): welke privé-exponent d (0 < d < φ(n)) voldoet aan e × d ≡ 1 (mod φ(n))?
  4. Bij RSA is de publieke sleutel n = 55 en e = 3. Wat is de cijfertekst c als de platte tekst m = 7 wordt versleuteld als c = m^e mod n?
  5. Welke uitspraak beschrijft juist een probleem van het gebruik van RSA uit het tekstboek (waarbij c = m^e mod n direct uit de platte tekst m wordt berekend) zonder padding in echte communicatie?