Hardwarová ochrana informací - Hardwarový klíč Guardant

1. 1. 2003

Sdílet

Krádež je pojem starý jak lidstvo samo. Na tomto tvrzení zřejmě není možné niczměnit. Ostatně o zlodějích se lze dočíst v mnoha příbězích z průběhu celé historie, stejně tak j...
Krádež je pojem starý jak lidstvo samo. Na tomto tvrzení zřejmě není možné nic
změnit. Ostatně o zlodějích se lze dočíst v mnoha příbězích z průběhu celé
historie, stejně tak jako o způsobech ochrany před nimi. Je pravda, že pokud se
jedná o krádež hmotných statků, existují vždy po ruce páky, jak ji zabránit,
znemožnit nebo alespoň minimalizovat riziko. Chránit fyzický předmět lze mnoha
způsoby: zamčením do bezpečného trezoru, oplocením pozemku, nebo třeba najmutím
ostrahy. Tyto metody však bohužel selhávají pokud se jedná o loupež informací,
které jsou uloženy na počítačích či jejich médiích. Zkopírovat takové médium a
získat cizí cenné informace je poměrně snadná záležitost, zvláště pokud se
jedná o data, která tvoří spustitelné programy. Data textových dokumentů či
tabulek je možné zakódovat nějakým chytrým algoritmem a pojistit šifrovacím
klíčem. Rozšířené jsou šifrovací programy např. RSA, PGP a další. Tuto ochranu
však nelze použít v případě programů, jelikož ty by v zakódovaném formátu
nemohly být spuštěny.

Je tomu už dávno, co začali vývojáři opatřovat své produkty sériovými čísly,
jež měla zabránit nedovolenému šíření. Bohužel, bez většího úspěchu. Číslo
identifikující legálnost instalace, se sice používá i dnes, ale ochranný
charakter už dávno ztratilo. V době, kdy se objevily na trhu první CD nosiče a
programy se počaly ukládat na ně, se zdálo, že softwarovému pirátství, jak se
začalo loupežím programů říkat, je jednou provždy odzvoněno.

Vývoj v následujících letech pak ukázal, že opak byl pravdou příchod stříbrných
kompaktů následovaly brzy i zapisovací mechaniky CD-RW. Od uvedení vypalovaček
se nelegální kopie užitkových aplikací i her počaly paradoxně šířit daleko
rychleji než do té doby. Moudré hlavy, kterým začaly unikat zisky, se snažily
přijít na nové způsoby ochrany svých produktů a tak se zanedlouho počaly
objevovat nestandardní CD, obsahující různé ochranné technologie. Klasickým
příkladem takové technologie byly SaveDisc 1 či 2 nebo LaserLok. Nutno dodat,
že téměř žádná ochranná technologie zabraňující přímému kopírování CD disku
nezůstala dlouho účinná. Buď přišly na trh vypalovací mechaniky, které dokázaly
s patřičným softwarem (např. CloneCD) funkční kopii stejně vytvořit, nebo se
objevily cracky, umožňující používat neautentickou kopii. Zkrátka, ani tato
cesta nevedla k úspěchu. Dokonce ani v poslední době diskutovaná ochrana
Audio-CD, nosičů zvaná Cactus Data Shield, nezůstala potupy ušetřena. Ostatně,
tato technologie byla ostře (a oprávněně) kritizována za porušení norem
audiokompaktů (Red Book) a neumožňovala přehrávat originální nosič v mechanice
PC, či dokonce ani v některých typech stolních CD přehrávačů. Tak či tak,
stejně Cactus Data Shield neuspěl a dnes jej šikovní kutilové kopírují v nových
vypalovačkách s tím, že ze zmetkových nahrávek CDS vytvářejí alespoň standardní
formát Audio-CD.

Pokud se budeme chtít podívat na prostornější média nastupující po CD nosičích,
tedy na DVD (Digital Versatile Disc dříve Digital Video Disc), můžeme už dnes
směle říci, že ani ochrana na tomto poli nezůstala neprolomena. Zatím se filmy
z DVD nosičů šíří nejvíce v podobě tzv. rippů na CD, což znamená, že se prolomí
ochranné kódování souborů VOB umístěných na DVD disku a převedou se do známého
formátu DivX:-). Nicméně už dnes začínají být dostupné DVD zapisovací mechaniky
a tak se objevují první kopie filmů z originálních DVD. Je ale fakt, že
maximální kapacita zapisovacího DVD média je pouhých 4,7 GB, což je zpravidla
méně než zabírá celý originální film na DVD-ROM. Problém se tedy řeší
převzorkováním komprese snímku do nižšího datového toku (bitratu), což konvence
MPEG, respektive DVD videa umožňuje. Výsledkem je vytvořená DVD kopie z
originálu, jejíž kvalita je neznatelně nižší než u původního titulu. Všechny
následující kopie jsou pak už úplně beze ztráty kvality, neboť se již digitálně
kopírují 1 : 1.

Vraťme se však přímo k počítačům a ochraně klasického softwaru, neboť zde jsme
ještě všechny možnosti ochrany nevyčerpali. Dalším způsobem, jak zabezpečit
aplikaci před jejím využíváním bez oprávnění, je využití služeb tzv.
hardwarového klíče. Jak už sám název napovídá, nejedná se jen o nějaký fiktivní
algoritmus, jenž by šel snadno prolomit, ale o hardware, tedy fyzický předmět.
V našem případě klíč, který odemkne jinak nepřístupný a chráněný program.
Tvůrci při prvních pokusech o výrobu bezpečného ochranného systému vycházeli z
předpokladu, že zkopírovat program není nikdy takový problém, jako vytvořit
novou kopii fyzického předmětu.

První hardwarové klíče se připojovaly na paralelní či sériový port, a pokud
program vyslal požadavek na příslušné rozhraní, mohl identifikovat, zda je
hardwarový klíč přítomen či nikoliv. Klíče byly v počátcích velmi jednoduchá
zařízení bez složitější elektroniky, tudíž se našly i chytré hlavy, které se
vyzbrojily pájkou a sadou nářadí a jednoduše kopii klíče vyrobily. Tuto metodu
vzápětí vystřídali hackeři, kteří disasemblovali program v exe či com tvaru do
podoby assembleru a tam, kde zjistili dotaz na přítomnost hardwarového klíče,
program jednoduše upravili. Znovu zkompilovaný program pak mohl v poklidu
pracovat i bez ochranného klíče. Řada takto cracknutých titulů je velice
dlouhá, a to jak u programů pro DOS, tak i u aplikací pro operační systém
Windows. Nicméně pokrok se nezastavil a vývoj zaznamenaly i ochranné
technologie. Poslední generace hardwarových klíčů dnes nabízí velmi silné
ochranné mechanismy, které zdaleka překonávají mnoho jiných zabezpečení.

Abychom vás s poslední generací hardwarových klíčů mohli blíže seznámit,
zapůjčili jsme si od společnosti Fineco vývojářskou sadu Guardant. Účelem
tohoto kitu je implementace spolehlivé ochrany do vlastních vyvíjených aplikací
za pomoci inteligentního HW klíče.

Základem celé sady je samotný HW klíč, který je v případě sady Guardant buď v
provedení pro USB, nebo paralelní port. My jsme vyzkoušeli variantu obsahující
klíč pro konektor univerzální sériové sběrnice, tedy USB 1.x. Samotný klíč,
rozměrově velmi malý, vypadá téměř jako přenosná paměť Flashdisk, ostatně nemá
k ní tak daleko. Na rozdíl od ní však skrývá procesor, který je schopen
samostatné práce a dokáže tak i zpracovávat šifrovací algoritmy. Klíč navíc
obsahuje i 256 bytů paměti, kterou je možné využít pro uložení dat. S tímto
vybavením se už lze softwarovému pirátství směle postavit. Zvlášť pokud k němu
připočítáte i řadu přibalených užitečných programů.

Instalace softwarového příslušenství je poměrně jednoduchou záležitostí, po
skončení je ještě potřeba restartovat operační systém a vývojová sada Guardant
je připravena k použití. K dispozici je hned několik užitečných aplikací. Mezi
prvními zmiňme upgradovací systém, který je s pomocí internetového připojení
velmi snadnou záležitostí, a za pozornost stojí i utilita pro konfiguraci
ovladačů HW klíče. Významnější aplikace pak jsou Dongle Programming Utility,
což je editační program pro správu paměti hardwarového klíče. Zde je možné
zapisovat či editovat nebo mazat informace konkrétního klíče samozřejmě lze
tyto operace provádět i později, přímo ve vytvářeném programu pomocí dodaných
knihoven API. Zajímavý je i automatický průvodce, který zjednodušuje práci
vývojářům při implementaci ochrany. Programátorům též pomůže i aplikace s
názvem Source Code Generator. Ta umí podle přání obsluhy vygenerovat zdrojový
kód pro různé programovací jazyky. V podstatě pak není potřeba psát a dlouze
studovat přesnou syntaxi API, generátor tuto nepříjemnou práci zvládne za vás.
Na výběr jsou programovací jazyky od nejnižší úrovně assembleru pro DOS i
Windows, přes Borland Pascal, Delphi, Visual Basic, jazyk C až po TopSpeed
Clarion a FoxPro. U těchto programovacích jazyků máte připravenou solidní
podporu pro využívání hardwarového klíče.

Jak již bylo řečeno, lze s využitím systému Guardant pořídit mnoho. Už se
nemusíte omezovat jen na pouhou detekci klíče a spoléhat, že se nenajde
cracker, kterému se tuto jednoduchou ochranu podaří prolomit. Je možné využít i
daleko rafinovanější ochranu, např. ukládat důležitá data do klíče a uchovávat
je tam, nebo je možno s funkcemi API testovat přítomnost klíče v časových
intervalech. S pomocí procesoru klíče lze také nechat data kódovat přes
algoritmus v klíči uložený, a v neposlední řadě můžete část kódu programu
uložit do klíče. Se systémem je celkem snadné vytvářet aplikace, které mají
limitovaný počet spuštění (max. 65 534) nebo časovou platnost (max. 226 dní),
po vypršení můžete v programu samozřejmě nastavit nové limity a podobně.

Systém Guardant v síťové verzi lze s pomocí aplikace Guardant Net Server
využívat i pro ochranu aplikací v celé síti. A to dokonce tak, že nebudete
muset pořizovat pro každou instalaci vlastní HW klíč. Server se postará o
správu klíče, a samostatné instalace vašeho programu se jen přihlásí a ověří
nejen přítomnost HW klíče v počítači, kde je nainstalovaný server, ale i
platnost licence.

Jak je vidět, bezpečnost softwarových produktů proti nelegálnímu využívání
nelze brát příliš na lehkou váhu. Zabezpečit aplikace lze sice různým způsobem,
ale ne každý je "neprůstřelný". Obecně je možno říci, že kromě výjimek se vždy
našel člověk, který dokázal sebelepší ochranu probourat. Zda zůstane
neprůstřelným systém Guardant, můžeme zatím jen hádat, ostatně jeho
neporazitelnost tkví i ve variabilitě využití, kterou nabízí. Proto také v
současnosti patří mezi nejbezpečnější ochranné systémy proti šíření nelegálního
softwaru.


Hardwarový klíč Guardant

podpora programovacích jazyků
bezpečnost
cena
zabírá USB port jiným zařízením
Cena vč. DPH: 1 660 Kč
K testu zapůjčila firma: Fineco, http://www.finecom.cz