Sorry, že na to reaguju, ale používat MD5 zrovna v diskusi tohoto typu (o bezpečnostním software), to už je fakt moc. :-(
V roce 1996 se našla zranitelnost a v roce 2004 už její louskání byla hračka pro ntb na 1minutu (a dokonce na tom pracoval český kryptolog). Proboha, přestaňte konečně, po 18, (resp. 10 letech), tu funkci používat!
Ta zranitelnost, pokud vím, umožňuje vygenerovat nová data, ale lišící se délkou.
Ale pro zajímavost uvádím hashe mé zálohy (27. 3. 2012), shodné s čerstvě staženým instalátorem (TrueCrypt Setup 7.1a.exe, 32-bit, 3466248 B):
MD5 = 7a23ac83a0856c352025a6f7c9cc1526
SHA1 = 7689d038c76bd1df695d295c026961e50e4a62ea
SHA256 = e95eca399dfe95500c4de569efc4cc77b75e2b66a864d467df37733ec06a0ff2
Toto bych celkem rád viděl někde podrobněji a lidštěji popsané. Vidím, že se orientujete, můžete prosím upřesnit, odkázat na něco konkrétního?
Vím, že technologie opravdu hodně pokročily. Ale pokud mám .tar.gz soubor, mám jeho délku (ta byla zmiňována jinde, pravda) a mám MD5, tak ukázat že je dnes dostupné provést nemalou smysluplnou účelovou změnu (zásah do rozbalených zdrojových kódů) tak, aby výsledný .tar.gz měl odpovídající délku a MD5.
Tedy ne jen proof-of-concept upravení pár bajtů pro stejný MD5. Ale komplexnější změny. Google mi nachází jen ty obecné změny a že jsou kolize lehce k nalezení, ale ne účelové velké změny a úpravy tak, aby daly výslednou kolizi.
Nebo (spíše) dělám chybu v úvaze a blbě hledám? Jakou?
http://cryptography.hyperlink.cz/MD5_collisions.html
Give me any three files and I will give you another three with the same MD5 hash... More info The program pack3 was written by Ondrej Mikle. It is based on MD5 collision program by Vlastimil Klima. Usage: pack3 file1 file2 file3 file4 file5 file6 will create two packages, package1.exe and package2.exe. Both will have the same MD5 sum, while package1.exe will extract files 1-3 and package2.exe will extract files 4-6.
U zagzipovaného souboru by to bylo složitější. Ale ten instalátor byl EXE (bavili jsme se o windowsové verzi, ne? předřečník psal truecrypt-7.1a-setup-x64 - to je windows)
Ono i ten setup je balený. A určitě i .tar.gz tam bude mít prostor pro změny (poznámky, ...), ale pravda, u .exe to asi bude jednodušší, nalézt místo.
Děkuji za odkazy, podívám se. Ale stále se mi to nezdá. Nemluvím o situaci, kdy mám nalézt nějaký nesmyslný soubor se stejným MD5 či generovat úplně nové se stejným MD5. Ale případ, kdy musím udělat smysluplné změny ve zdrojácích které pak zabalím (a případně přidám .exe rozbalovací balast) a výsledný soubor upravím tak, aby měl stejnou délku a MD5 jako již nějaký nyní existující samorozbalovací archiv. Existující - bez možnosti jeho změny.
Pracoval na tom Vlastimil Klíma, který původní hledání kolizí zrychlil 1000x (http://www.root.cz/clanky/nalezani-kolizi-md5-hracka-pro-notebook/), a potom Ondrej Mikle přišel s programem, který je schopný pomocí vycpávek dosáhnout stejného MD5 pro dva různé soubory (http://eprint.iacr.org/2004/356.pdf -- určitě bude lepší zdroj, měl přednášku video i na ČVUT v roce 2005).
Ty vycpávky lze přidat téměř kamkoliv (zdrojové kódy mají komentáře, binárky mají různé sekce (ne vše je spustitelný kód), pdf také, místo v tgz by se asi také našlo).
Ale ono je to celkem jedno, md5 je jediná funkce (o které vím), kde si s tím kryptologové (veřejně) pohráli až k reálné aplikaci na generování různých souborů se stejnou haší. Většinou stačí (a mělo by to stačit pro každého, kdo chce nějakou funkci použít), nalézt slabiny (většinou na ty kolize ani nedojde). MD5 je, bohužel, natvrdo zapsáná snad ve všech knížkách o PHP apod, takže se i po 18 letech od nalezení oslabení používá a to i v nových programech.
Tady by měla být ta videa (http://www.avc-cvut.cz/archiv/informatika/cryptofest/2005)
Doporučuju alespoň 3 videa: Klíma, Mikle a Rosa.
Ono o tom neni potreba cist, na vlastni kuzi jsem nekolik shodnych MD5 souctu videl. Slo o MD5 soucty ktere odpovidali ruznym datovym souborum v mem pocitaci.
Pokud si pamatuji dobre, tak pred nalezenim prvni chyby v MD5 (stara verze MD5) tak se i bezne stavalo ze soucty velkych souboru vysli pokazde jinak. V kazdem pripade uz i SHA1 jsem pro kratkost/nespolehlivost opustil asi pred 7-mi let a minimalne 5 let uz nepuzivam pro kontrolu vubec zadne takoveto kody (dal jsem si mnohahodinovou, mozna i deni praci, a vsechny stare SHA1 hash-kody nahradil SHA256).
Presto jsem jeste dnes schopen blaznum kteri to pozaduji vygenerovat mrknutim oka MD5 soucet (ponechal jsem si na to v systemu rutinu).
Osobne ale prijimam tyto soucty (z webu autoru programu) velmi nerad. Nechapu proc je jeste pouzivaji. Neduveruji temto kodum, a vzdy jeste najdu jiny zpusob jak alespon odhadem (s urcitou presnosti) overit ze jsem alespon stahl ten stejny program jaky stahl nekdo jiny pred tydnem, mesicem, rokem,...
Co se tyka vaseho programu "truecrypt-7.1a-setup-x64" - Vubec nechapeme co to ma byt!
Instalacka pro Windows obsahuje jak x86, tak x64 verzi a originalni nazev byl "TrueCrypt Setup 7.1a.exe". Vas kontrolni soucet MD5 neodpovida nicemu, stejne jako jmeno souboru neodpovida zadnemu originalnimu nazvu.
Pokud jde o Linux (coz nekde v tomto vlakne vyvracite a tvrdite ze jde o Windows), mozna jde o nejaky balicek, nebo naopak oznamujete hash neceho co vzeslo rozpakovanim tar.gz archivu.
Zatim se zda ze tohle budou opravdu ty spravne hash kody TrueCrypt 7.1a stahnutelneho na webu GRC (https://www.grc.com/misc/truecrypt/truecrypt.htm), nebo na webu TrueCrypt.ch (http://truecrypt.ch/)
04db58b737c05bb6b0b83f1cb37a29edec844b59ff223b9e213ee1f4e287f586 ?SHA256*TrueCrypt 7.1a Mac OS X.dmg
e6214e911d0bbededba274a2f8f8d7b3f6f6951e20f1c3a598fc7a23af81c8dc ?SHA256*TrueCrypt 7.1a Source.tar.gz
9ec1a8002d80a4bfa43cb1d4116fb59c3f00d94407a042556183fe72541ea431 ?SHA256*TrueCrypt 7.1a Source.zip
e95eca399dfe95500c4de569efc4cc77b75e2b66a864d467df37733ec06a0ff2 ?SHA256*TrueCrypt Setup 7.1a.exe
3f48210cca1c17f433572845586d5e2a1a717a545480d136cb970689a44e3c32 ?SHA256*truecrypt-7.1a-linux-console-x64.tar.gz
7871a40aaca4556d2c6f3377d62347bc38302f4f1ef191e7d07123bdf4a4d008 ?SHA256*truecrypt-7.1a-linux-console-x86.tar.gz
43f895cfcdbe230907c47b4cd465e5c967bbe741a9b68512c09f809d1a2da1e9 ?SHA256*truecrypt-7.1a-linux-x64.tar.gz
9d292baf87df34598738faef7305cddaa15ea9f174c9923185653fb28f8cfef0 ?SHA256*truecrypt-7.1a-linux-x86.tar.gz
> Pokud si pamatuji dobre, tak pred nalezenim prvni chyby v MD5 (stara verze MD5) tak se i bezne stavalo ze soucty velkych souboru vysli pokazde jinak.
WTF? Ne, ty algoritmy jsou deterministické, tohle dělá chyba disku a operační systém, který se s ní nedokáže vypořádat (checksum).