Basis en toepassingen van cryptografie
Een server die in CBC-modus versleutelde gegevens ontvangt, gaf verschillende foutmeldingen wanneer de padding na het ontsleutelen onjuist was en wanneer de padding juist was maar de controle van de inhoud mislukte. Welke uitspraak over deze situatie is juist?
- AEen aanvaller kan gewijzigde cijferteksten sturen en met het verschil in foutmeldingen als aanwijzing mogelijk zonder de sleutel de platte tekst byte voor byte achterhalen
- BHet verschil in foutmeldingen verraadt alleen de lengte van de padding, dus zolang de sleutel niet uitlekt, kan de inhoud van de platte tekst zelf niet uitlekken
- CAls de sleutel van AES-128 naar AES-256 wordt gewijzigd, verdwijnt het risico dat de platte tekst uit het verschil in foutmeldingen wordt achterhaald
Antwoord en toelichting tonen
Antwoord: A. Een aanvaller kan gewijzigde cijferteksten sturen en met het verschil in foutmeldingen als aanwijzing mogelijk zonder de sleutel de platte tekst byte voor byte achterhalen
Bij het ontsleutelen in CBC-modus keert het omdraaien van een bit in een blok cijfertekst de bit op dezelfde positie in het ontsleutelde resultaat van het volgende blok om. Door varianten van de laatste byte van het voorgaande blok te sturen en te zoeken naar een waarde die als „juiste padding” wordt beoordeeld, vindt een aanvaller de laatste byte van de platte tekst, en door dit te herhalen legt hij de platte tekst byte voor byte bloot. Dit is de padding-oracle-aanval, waarbij verschillen in het soort foutmelding of in de reactietijd als aanwijzing (het orakel) dienen. De basistegenmaatregel is geauthenticeerde versleuteling zoals GCM gebruiken, of eerst een aan de cijfertekst toegevoegde MAC controleren en gemanipuleerde cijferteksten vóór het ontsleutelen zonder onderscheid weigeren.
Verder: nog 9 vragen over Basis en toepassingen van cryptografie