A kriptográfiai algoritmusok feltörhetőségéről

Ma a titkosítási algoritmusoknak teljesen más kihívásoknak kell megfelelnie, mint régen. (Természetesen már alapfeltételnek számít az aszinkron kódolás is.) Mivel a titkosítás általában publikus szerveren fut ezért annak, aki ennek feltörésével próbálkozik szinte végtelen sok kísérletezési lehetősége van. Küldhet csak egyetlen karaktert, aztán kettőt, aztán hármat és így tovább, sokféle megoldással próbálkozhat annak érdekében, hogy fokozatosan logikai összefüggéseket állapítson meg az algoritmus működését illetően.
Régebben a titkosítási algoritmusok nem voltak kitéve ilyen kihívásoknak. Például a híres Enigma titkosítást a szakértőknek aránylag nagyon kevés mérési eredmény alapján kellet megfejteniük.
Felmerül a kérdés, mikor mondhatjuk azt, hogy egy algoritmus nem feltörhető, annak ellenére sem, hogy végtelen sok mérési lehetőséget vizsgálhatunk meg? Erre a kérdésre szerintem nagyon nehéz egzakt feleltet adni. Viszont bizonyos megoldások nagymértékben növelhetik egy algoritmus feltörhetetlenségét.
Tételezzük fel, hogy a bementi bájtokat valamilyen hatékony kompressziós algoritmussal (zip) tömörítjük és ezen használunk valamilyen titkosítási algoritmust. Mint tudjuk a kompressziós algoritmusok (mint a zip) nagymértékben csökkentik az ismétlődő szekvenciákat, melyek alapul szolgálhatnának a titkosítás működésének kianalizálására. Ezzel igen hatékony és nagyon nehezen feltörhető titkosítást készíthetünk, mert valójában a kompresszió korlátozza a végtelen próbálkozási lehetőségeket, tehát a titkosítási algoritmus nem tesztelhető tetszőleges bemenettel, ami nagyban megnehezíti vagy teljesen lehetetlenné teszi a titkosítási algoritmus megfejtését. Természetesen sok más megoldás is lehetséges, melyek használatával "feltörhetetlen" titkosítás hozható létre, mai ismereteink szerint.