Úvod k seriálu o ochranách proti kopírování
Kapitoly článků
Není tomu dávno, co proti nelegálnímu kopírování postačilo jednoduše program (hru) vylisovat na CD. S příchodem prvních vypalovaček se však situace začala měnit. Zprvu se zdálo, že CD rekordéry zůstanou určeny pouze pro zálohování velkých objemů dat, ke terým byly původně určeny. To se jejich cena pohybovala kolem 100 000 korun a CD-R média stála až 500,-. Tato idyla však neměla dlouhého trvání. Možná si vzpomenete na inzeráty, ve kterých bojovali cenami někteří místní dovozci. Začalo to nejprve opatrně stlačením ceny na 40 000, aby se záhy podařilo stlačit koncovou cenu až pod 20 000. To už producenti začali být velmi nervózní a začali přemýšlet o prvních ochranách svých produktů. Poslední ránou se pak stalo hrmadné nasazení vypalovaček i do obyčejných počítačů. Dnes se dá pořídit CD rekordér i pod 4 000.
Stejně jako u virů, je snaha o prolomení ochranných kódů vždy o nějaký malý krok za nejnovějšími technologiemi, které chrání produkty proti nelegálnímu kopírování. Dříve často postačilo použít nejaký rezidentní program (SecuROM) a bylo po ochraně. Dnes je na špici zatím víceméně úpěšný SafeDisc2 (i když už i ten má na kahánku).
Co vlastně ochrana proti kopírování CD znamená?
Nejprve je třeba říci, že jakýkoliv binární kód je možné zkopírovat. Výrobci proto musí provádět nějakou kontrolu, která není zavislá na onom binárním kódu. Typickým příkladem jsou dobře známe key lock klíče, jenž dobře znají například majitelé AutoCADů. Zjednodušeně řečeno, taková ochrana proti kopírování je modifikace původního kódu, která je závislá na nějaké externí akci jenž je vlastním klíčem, vedoucím ke spuštění aplikace v původním tvaru. Každá taková ochrana musí obsahovat tři základní části. Absence jedné z nich znamená vyřazení ochrany z činnosti:
- Závislost na externí akci: Každý chráněný program musí obsahovat alespoň jednu malou část, která je schopna pracovat bez spuštěné ochrany. Tento kód pak spustí (zavolá) samotný modul ochrany. Je velmi vhodné tento kód nějakým způsobem zakódovat, aby bylo co nejvíce obtížné jeho činnost dekódovat.
- Modul ochrany: Je to kód, který provede konverzi původního programu do spustitelného tvaru, nebo ho nějak jinak inicializuje aby se dal spustit. To musí být uděláno tak, aby se program spustil, je tu přítomen nějaký klíč (originální CD, keylock, ...). Teprve projde-li kontorla v pořádku, je možné chráněný program spustit. Tato akce by měla být provedena pokud možno "neviditelně" a to jak z hlediska legálního uživatele, tak i případného hackera. To znamená, že nesmí být patrné, jakou kontrolu modul provádí, a jak to provádí. Akce by také neměla trvat dlouho, aby nezdržovala spouštění programu. To předpokládá, že i tato činnost je co nejvíce chráněna, aby nebylo možné provést trasováním a úpravou kódu její vyřazení z činnosti.
- Fyzický klíč: Musí být skutečným fyzickým zařízením nebo předmětem, který je použit jako důkaz vlastnictví, nebo práva k použití chráněného produktu. Může nabývat různých forem: originální CD, keylock (např na paralelním, nebo sériovém portu, disketa, nebo nějaká magnetická, či čipová karta.
Když už si povídáme o tom jak to celé funguje a jak se to dělá a říkáme zde, že ochrany mají vždy jen malý krok před jejich rozlousknutím, měli bychom si také asi říci, jakým způsobem se daří jejich kódy rozluštit. I to je cesta, jak může být novější způsob chránění produktu odolnější.
Diskuse ke článku Úvod k seriálu o ochranách proti kopírování