Basis en toepassingen van cryptografie
AES (bloklengte 16 bytes) wordt in CBC-modus gebruikt met PKCS#7-padding. Bij PKCS#7 worden, als er n bytes ontbreken, n bytes met de waarde n toegevoegd, en ook als de lengte van de platte tekst precies een veelvoud van 16 is, worden 16 bytes met de waarde 16 toegevoegd. Hoe lang is de cijfertekst (zonder de IV) als een platte tekst van 96 bytes wordt versleuteld?
- A96 bytes
- B112 bytes
- C128 bytes
Antwoord en toelichting tonen
Antwoord: B. 112 bytes
96 bytes is precies 6 blokken van 16 bytes, maar PKCS#7 voegt ook als de lengte deelbaar is een blok toe van 16 bytes met de waarde 16. De platte tekst wordt dus 96 + 16 = 112 bytes (7 blokken), en de cijfertekst ook 112 bytes. Ook in dat geval wordt padding toegevoegd, zodat de ontvangende kant de padding altijd kan verwijderen door naar de waarde van de laatste byte te kijken. Modi die de gegevens via XOR met een sleutelstroom combineren, zoals CTR-modus en GCM, hebben geen padding nodig, en de cijfertekst is dan even lang als de platte tekst.
Verder: nog 9 vragen over Basis en toepassingen van cryptografie