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