Ugrás a tartalomhoz

known-plaintext attack

A Wikiszótárból, a nyitott szótárból


Főnév

known-plaintext attack (tsz. known-plaintext attacks)

  1. (informatika) A known-plaintext attack (KPA) – magyarul ismert szöveges támadás – egy kriptanalitikai technika, amelynek során a támadó hozzáfér egy vagy több titkosítatlan (plaintext) és a hozzájuk tartozó titkosított (ciphertext) üzenethez, és ez alapján próbálja visszafejteni a kulcsot vagy megfejteni más titkosított üzeneteket.



🧠 Alapötlet

A támadó ismer néhány olyan szövegrészletet, amelyet a célrendszer titkosított, és ezekhez hozzájutott a titkosított változatukhoz is. Ezen párok alapján:

  • Következtet a kulcsra, vagy
  • Feltöri a használt titkosítási algoritmust, vagy
  • Más titkosított üzenetek tartalmára derít fényt.



🔐 Példa (egyszerű Caesar-kódnál):

Tegyük fel, hogy tudjuk:

  • Plaintext: HELLO
  • Ciphertext: KHOOR

A Caesar-kód 3 karakterrel tol el minden betűt. A támadó ezt észreveszi, így gyorsan megtalálja a kulcsot: +3 eltolás.

Ezután bármilyen más üzenetet vissza tud fejteni ezzel a módszerrel.



🧩 Támadás menete (általános titkosítás esetén)

  1. A támadó megszerzi néhány titkosítatlan szöveg és a hozzátartozó titkosított változatok párosait.
  2. Ezek alapján megpróbálja:
    • Kitalálni a kulcsot (különösen ha az gyenge vagy ismétlődik),
    • Feltörni az algoritmust (pl. az AES implementációban hibát találni),
    • Új üzeneteket dekódolni, amelyek ugyanazzal a kulccsal lettek titkosítva.



🔎 Hol fordulhat elő?

  • Katonai kódfejtés (pl. Enigma feltörése a II. világháborúban),
  • Titkos e-mailek elemzése (pl. ismert aláírási sablon miatt),
  • WPA/WPA2 Wi-Fi titkosítás feltörése (ha ismert forgalmi minták alapján támadnak),
  • PDF vagy Office fájlok titkosítása, ha a támadó tudja a fejlécet vagy tipikus bevezetőt.



🛡️ Védekezés

  • Modern titkosítási algoritmusok (pl. AES) használata randomizált inicializálási vektorral (IV),
  • Kulcsok gyakori cseréje,
  • Padding és véletlenszerűség bevezetése az üzenetekbe,
  • Üzenetek sózása és MAC használata (Message Authentication Code),
  • Kerülni az ismétlődő vagy kiszámítható üzenetmintákat.



🧬 Kapcsolódó támadástípusok

Típus Leírás
Ciphertext-only attack Csak a titkosított üzenet ismert
Chosen-plaintext attack A támadó maga választhatja ki a titkosítandó szöveget (pl. padding oracle)
Chosen-ciphertext attack A támadó dekódolási kérést indíthat a rendszer felé
Brute-force attack Minden lehetséges kulcsot kipróbál



⚠️ Valós veszély?

Igen, ha:

  • Gyenge algoritmust használunk (pl. régi DES),
  • Ismétlődő vagy sablonos üzeneteket titkosítunk,
  • Rossz implementációt használunk (pl. ugyanazzal a kulccsal és IV-vel több üzenetet kódolunk).



📌 Összefoglalás

A known-plaintext attack akkor működik, ha a támadó rendelkezik legalább egy (de gyakran több) olyan párhuzamos titkosítatlan és titkosított adatpárral, amelyek alapján visszafejtheti a kulcsot vagy más üzeneteket. Ezért minden biztonságos titkosítási rendszernek garantálnia kell, hogy ilyen támadások ne vezessenek sikerhez – például véletlenszerűség és modern kriptográfiai protokollok bevezetésével.