

Programatorská hádanka: Najdi heslo
Ahoj, kdysi dávno se zde objevovali hádanky, které dělal IgorK. Byly velice zábavné. Dneska v práci jsem něco řešil a přitom mě napadla jedna hádanka, tak ji s dovolením odzkouším na vás. Následuje zadání formou fake otázky do poradny:
Mám velký problém, kdysi dávno jsme měli ve firmě cool admina a ten si šifroval svoje soubory svoji vlastní metodou, ale nikdo už neví jak to vlastně dělal a on už u nás nedělá. Jediné, co po něm zbylo je soubor secret.dat a secret_key.dat. Ten soubor secret.dat je pro mě strašně důležitý, protože obsahuje zašifrovaný .zip soubor, ve kterém je uložené důležité heslo k serveru. Pak jsem jestě našel papírek, kde bylo napsáno něco o exkluzivní disjunkci a signed bytech, ale vůbec tomu nerozumím. Zajímavé je, že soubor secret.dat a secret_key.dat mají naprosto stejnou velikost. Nevíte někdo jak soubor dešifrovat, získat tak zip se souborem s heslem?
Zde si můžete zkoušet svá hesla: hof
Přeji úspěšné řešení!
hrátky s XORem, z toho jsem už vyrostl.
Máte málo práce, holomci?!
Specialní prémie pro toho, kdo to vyřeší bez programování jen skriptem v bash...
bash je trapny, kto to spravi ako *.bat subor? :D
Aby to neskončilo jako prémie pro toho, kdo to vyřeší na čtverečkovaném papíru
Může to být skript pro NodeJS?
bash skript je taky program
Tak máme tři úspěšné řešitele, ještě někdo zkusí?
• Co na to budu potrebovat PSPad
a udelat naky mensi binarni prevod, zmenit '.priponu'? .dat se posilal i MAILem a prekladal se pomoci nakého TEXT editoru.
co se odehral zhruba pred hodinou a pul, je tu trochu veselo....
Rad bych, ale kvuli islamo "TERORISTICKEMU ATENTATU"
.dat příponu souborů jsem si vymyslel, nemá nic společného s hádankou. Jedíné, co potřebuješ je vědět že výsledkem má být .zip soubor. PSPad nestačí, musíš taky něco naprogramovat...
Programovat se nemusí. Stačí správný dotaz na Googlu ;)
jojo.. xorfiles.html
Tak jo, no. :)
edit: Sakra, koukám, že pozdě. :D
ŘEŠENÍ
Ano, opravdu stačilo udělat XOR (exkluzivní disjunkci) mezi souborem secret_key.dat a secret.dat a výsledek uložit jako .zip. Respektive načíst prvni byte ze souboru secret_key.dat a první byte ze souboru secret.dat a mezi nimi udělat XOR, tím získáme první byte výsledného zipu. Pak pokračujeme až do konce souborů. Využívá se této vlastnosti funkce XOR:
A XOR B = C
B XOR C = A
Tato vlastnost se hojně využívá v počítačové kryptografii.
Program může vypadat, třeba takto (Java):
Ovšem programovat se nemuselo, stačilo použít utilitu od NirSoftu xorfiles o jejíž existenci jsem nevěděl. Příště vymyslím, něco těžšího...