Zadanie

Ak máte akékoľvek otázky ohľadom tejto úlohy napíšte Edovi “Baklažánovi” Batmendijnovi na

Ako agenti Príšerne Rýchlej Agentúry Stíhajúcej Kriminálnikov ste boli v rámci operácie “EVA” poverení získaním tajných informácií z komunikácie dvojice teroristov. Viete, že teroristi spolu komunikujú tak, že si posielajú obrázky, do ktorých rôznymi spôsobmi ukrývajú tajné správy. Podarilo sa vám odchytiť niekoľko takýchto obrázkov, ostáva už len nájsť v nich tajné správy.

Úloha

Zo stránky ksp.sk/~prask/specialne/2/1/3/tajne_spravy.zip si stiahnite súbor tajne_spravy.zip, v ktorom nájdete šesť podúloh. Každá podúloha pozostáva z jedného alebo dvoch obrázkov, v ktorých je ukrytá tajná správa. Tajná správa je vždy nejaký link. Keď na tento link pôjdete, budú vám automaticky pripočítané body. Prvé tri podúlohy sú každá za dva body, druhé tri podúlohy majú každá hodnotu tri body.

Pri riešení tejto úlohy bol potrebný nejaký obrázkový editor (program na prácu s obrázkami). V tomto vzorovom riešení si ukážeme, ako sa dala riešiť pomocou editorov GIMP1 a Skicár2. Samozrejme, väčšina vecí by sa v iných editoroch dala riešiť veľmi podobne.

Podúloha 1

Ako prvé si môžeme všimnúť, že v zadaní sa nám vyskytuje niečo, čo sa podobá na QR kód 3. Skúsime teda nájsť nejaký nástroj na prečítanie tohto QR kódu. Môžeme použiť napríklad Webqr 4. Keď však obrázok načítame, zistíme, že kód je neplatný. Ako sa náš kód líši od iných, resp. čo ho robí neplatným? Sú to vymenené (invertované) farby. Čiernu nahradila biela a naopak. Keď chceme získať pôvodný kód, musíme farby vymeniť naspäť. V Skicári to urobíme nasledovne: po otvorení obrázka si ho označíme a po kliknutí pravým tlačidlom sa nám ukáže možnosť invertovať farbu. V GIMP-e je treba po otvorení obrázka použiť Farby->Invertovanie hodnôt. Po tomto zásahu nám už nástroj na rozpoznávanie QR kódov vypíše správny link: https://prask.ksp.sk/specialne/prask/2/1/3/1/uplne_najtajnejsi_link_ktory_nikdy_nijaky_fiskus_neuhadne

Podúloha 2

V tejto podúlohe išlo o to, že náš hľadaný link je napísaný úplne naspodku, farbou, ktorú nemôže ľudské oko rozoznať od pozadia. To znamená, že na prečítanie musíme tento text od pozadia nejakým spôsobom odlíšiť. Ak pozorne prečítame viditeľnú časť postupne sa strácajúceho textu, mali by sme si všimnúť, že nás nabáda hneď k dvom riešeniam úlohy. Prvé, jednoduchšie, je otvoriť si obrázok v Skicári a použiť nástroj plechovka na zafarbenie pozadia inou farbou ako čiernou alebo bielou, potom je už link v obrázku jasne viditeľný. Druhé riešenie, o čosi zložitejšie, je otvoriť si program v GIMP-e a v časti Farby, nájsť nastavenia jasu a kontrastu a obe tieto hodnoty zvýšiť na maximum. Link, ktorý bol riešením: https://prask.ksp.sk/ucet/login/?next=/specialne/prask/2/1/3/2/heslo_je_afmnskm/

Podúloha 3

Keď sa lepšie pozrieme na obrázok, môžeme si všimnúť, že je to len veľmi natiahnutý text. Obrázok je v tomto stave nečitateľný, preto ho musíme zmeniť na čitateľnú veľkosť. Buď tak, že ho roztiahneme do šírky alebo mu zmenšíme výšku.

Riešenie v skicári: treba roztiahnuť papier na veľkosť približne \(500 \times 20000\) pixelov (výška \(\times\) šírka), prípadne ho zmenšiť na zhruba \(15 \times 500\) pixelov. Musíme preto použiť nástroj Zmeniť veľkosť v záložke Domov, kde nastavíme požadované rozmery. Pozor si treba dať na možnosť Zachovať pomer strán, ktorú musíme vypnúť.

Riešenie v GIMP-e: Podobne ako pri Skicári iba zmeníme rozmery obrázka nástrojom Zmeniť mierku (v anglickej verzii Scale image), ktorý nájdeme v záložke Obrázok (Image). Nastavíme rozmery obrázka, pričom si znovu musíme dať pozor na zachovanie pomeru strán. Výsledný odkaz:

https://prask.ksp.sk/specialne/prask/2/1/3/3/je_naozaj_tazke_vymysliet_kreativny_tazko_hadatelny_link

Podúloha 4

V tejto podúlohe máme až dva obrázky, pričom oba na prvý pohľad vyzerajú ako náhodný čiernobiely šum. Môžeme si všimnúť, že oba obrázky majú rovnakú veľkosť v pixeloch. To by nám mohlo napovedať, že obrázky treba prekryť. V GIMP-e sa to dá urobiť tak, že obrázky otvoríme ako dve vrstvy jedného obrázka. To môžeme urobiť napríklad tak, že najprv otvoríme jeden obrázok a potom pomocou možnosti Súbor->Otvoriť ako vrstvu otvoríme druhý.

Vrstvy v GIMP-e si môžete predstaviť ako papiere, ktoré sú položené na sebe. Niektoré papiere môžu byť priesvitné alebo čiastočne priesvitné. Vtedy je vidieť papier, ktorý je pod nimi. V našom prípade sú obe vrstvy nepriesvitné, preto vidíme iba vrchnú (druhý obrázok). V dialógovom okne Vrstvy (v anglickej verzii Layers)5 môžeme vidieť dva riadky s malými ikonkami našich dvoch vrstiev a ich názvami (názvy pôvodných obrázkov), pričom jedna z nich by mala byť označená. Ak je označená spodná vrstva, klikneme na vrchnú, čím ju označíme. Potom jej zmenšíme Krytie (Opacity) na 50 %. Tým sa vrstva stane polopriesvitnou a uvidíme čiastočne aj vrstvu pod ňou (prvý obrázok). Teraz už dokážeme prečítať link, ktorý je sivý, kým zvyšok pozadia je čiernobiely šum.

Výsledný link je:

https://prask.ksp.sk/specialne/prask/2/1/3/4/poculi_ste_o_spravnom_konovi_baterie_zosivajucom/

Podúloha 5

Táto úloha mala dve riešenia, “poctivé” a “nepoctivé”. To poctivé bolo pozerať GIF stále dookola a nejakým spôsobom vyčítať link. Vzorové riešenie bolo otvoriť animáciu v nejakom programe na to určenom. Túto konkrétnu úlohu s animáciou zvláda aj GIMP a nie je potrebný nejaký špeciálny program zameraný na animácie. Animácia je vlastne postupnosť po sebe idúcich obrázkov. GIMP nám tieto obrázky otvorí ako jednotlivé vrstvy jedného obrázka, pričom prvý obrázok animácie bude spodná vrstva a posledný obrázok bude vrchná vrstva. Po otvorení teda uvidíme posledný obrázok animácie, ktorý je celý čierny. Ten zneviditeľníme (buď tak, že mu znížime krytie na nulu alebo klikneme na ikonku oka vedľa tohto obrázka v okne Vrstvy) a uvidíme predposledný obrázok, na ktorom je napísaný link:

https://prask.ksp.sk/specialne/prask/2/1/3/5/dufam_ze_ste_tuto_podulohu_vyriesili_poctivo

Podúloha 6

Tento obrázok má iba jeden čierny pixel a nemá sám o sebe žiadnu výpovednú hodnotu. Preto ho ani nemá zmysel nejak graficky upravovať. Samotný obrázok ale okrem primárnych údajov (informácie v pixeloch) nesie aj sekundárne údaje (metadáta), ktoré môžu hovoriť o obrázku niečo viac (napríklad autora, v prípade fotiek dátum a čas odfotenia, aké má mať obrázok rozmery pri tlači atď.). Skúsme tieto metadáta preskúmať. Na internete je kopa nástrojov na prehľadávanie metadát. Jeden z nich je na http://regex.info/exif.cgi. Keď sa nám zobrazia metadáta, môžeme spozorovať, že komentár k tomuto obrázku obsahuje náš hľadaný link:

https://prask.ksp.sk/specialne/prask/2/1/3/6/tam_kde_nic_nie_je_sa_ani_nic_nemoze_stratit/

Iným spôsobom riešenia tejto úlohy bolo otvoriť si obrázok v obyčajnom textovom editore (t. j. napríklad Notepad, Gedit, Vim, …). Uvidíme hromadu nezmyselných znakov a niekde medzi nimi úsek, ktorý dáva zmysel: náš link.


  1. http://www.gimp.org/

  2. https://sk.wikipedia.org/wiki/Skic%C3%A1r_(softv%C3%A9r)

  3. viac o QR kódoch nájdete na https://sk.wikipedia.org/wiki/QR_k%C3%B3d

  4. https://webqr.com/index.html

  5. ak ho nemáte otvorené, tak kliknite na Okná->Dokovateľné dialógy->Vrstvy (Windows->Dockable dialogs->Layers)

Diskusia

Tu môžte voľne diskutovať o riešení, deliť sa o svoje kusy kódu a podobne.

Pre pridávanie komentárov sa musíš prihlásiť.