Ztížení reverzního inženýrství

Navigace:  Něco navíc >

Ztížení reverzního inženýrství

Předchozí stránkaNahoruDalší stránka

Pomocí metod reverzního inženýrství lze ze zkompilované cartridge zpětně odvodit např. definici zón (zajímavá je především zóna s finálkou), odpovědi na některé otázky apod. Hráč, který takto získal podstatné informace, pak nemusí hru vůbec hrát a může se jít přímo zapsat do logbooku. Ponechme stranou otázku, co to těmto lidem přináší. V našem seriálu se na tuto problematiku podíváme pouze pragmaticky z pohledu toho, jak můžeme těmto „hráčům“ jejich činnost co nejvíce ztížit.

 

Abychom to mohli udělat, musíme nejprve vědět, jaké postupy tito „reverzní inženýři“ používají. Určitě nejzajímavější pro ně je identifikovat souřadnice zóny, kde je umístěna finální krabička. Většina autorů takovou zónu pojmenuje nějak mnemotechnicky, např. „Finálka“, „Krabička“ apod. Tento název je však za normálních okolností ve zkompilované cartridgi uložen tak, že se dá celkem jednoduše přečíst. A když víme, že se zóna jmenuje např. „Finálka“, není už velkým problémem získat její souřadnice. Pokud by tedy zóny nebyly pojmenovány takto zřejmě, určitě by to tuto podloudnou činnost ztížilo.

 

Další, na co se „reverzní inženýři“ zaměřují, je získávání textů, které jsou použity jako popisy objektů, různé zprávy, zadání úkolů apod. Z nich se pak snaží dovodit, co má hráč ve hře za úkol, kam se má dostat, jaké jsou správné odpovědi na položené otázky. Všechny texty jsou totiž v cartridgi opět uloženy v běžné podobě, takže jsou čitelné prakticky libovolným prohlížečem.

 

Urwigo disponuje nástroji, které tuto činnost dokáží ztížit. Najdeme je mezi parametry cartridge (Zobrazit > Cartridge) v sekci Ostatní. Jedná se o následující zaškrtávací políčka:

 

Maskovat texty - je-li zaškrtnuto, pak budou všechny texty v cartridgi zašifrovány pomocí speciálního klíče. V cartridgi jsou tak uloženy ve formě, která není bez znalosti tohoto klíče čitelná.

Šifrovat odpovědi - je-li zaškrtnuto, pak budou zašifrovány všechny texty, které se používají pro porovnávání uživatelského vstupu. Zapnutím tohoto nástroje znemožníme zjistit z cartridge správné odpovědi.

Maskovat identifikátory - je-li zaškrtnuto, budou všechny automaticky vytvořené identifikátory objektů zašifrovány, takže nebude možné podle identifikátoru dovodit význam objektu. Pozor - týká se to pouze automaticky vytvořených identifikátorů. Identifikátory, které vyplníme sami ručně, se maskovat nebudou. Pokud tedy používáme vlastní identifikátory (především kvůli spolupráci s jazykem Lua), musíme se o vhodné pojmenování postarat sami.

 

Je potřeba podotknout, že ani použití těchto nástrojů ještě nemusí znamenat, že naše cartridge bude „nedobytná“. Přesto není důvod je nepoužívat. Bez uzardění zaškrtněte nebo nechte zaškrtnutá všechna tři zmíněná políčka. Proč někomu něco usnadňovat? Když někomu nepřijde hloupé prolamovat cartridge, se kterou jste se několik měsíců vytvářeli a ladili ji, tak ať to aspoň nemá tak jednoduché.