Spojení hashovacích funkcí

Gdhsjskksks

Re:Spojení hashovacích funkcí
« Odpověď #45 kdy: 02. 02. 2016, 17:00:01 »
Jasne ze dlzka do MD5 vstupuje :) neviem si realne predstavit ze by do nejakeho algorythmu dlzka nevstupovala (ale mozete ma prekvapit) ide o to ze tu dlzku by som posielal dalej NEHASHOVANU aby sa snou nedalo manipulovat :-) o to ide aby file mal prosiste urcity pocet bitov a tym to hasne.


Re:Spojení hashovacích funkcí
« Odpověď #46 kdy: 02. 02. 2016, 17:02:58 »
Je mi jasne ze sa da pridavat bordel (a odoberat, aj ked to je uz tahsie "asi") aby boli kolizie, preco sa o danom dokumente nepusti nejake info ktore neni hashovane, pomerne jenoznacne, a nikto tam nic moc nepomeni?
Hashovací funkce bere na vstupu libovolnou posloupnost bajtů, na výstupu je přesně daný počet bajtů (šlo by to obecně i s bity, ale dnes se prakticky používají jen funkce, kde je počet bitů zaokrouhlen na bajty). Jakým způsobem se s tím dál pracuje, jak ten hash uložíte atd., to už je záležitost konkrétní implementace.

Proti útokům typu „tady je dokument, k němu chci jiný se stejným hashem“ by kontrola délky souboru byla většinou docela účinná obrana, proti útoku typu „útočník vytvoří jeden dokument, nechá ho podepsat, a pak k hashi předloží druhý“ by to tak slavné nebylo.

Ale hlavně je zbytečné vymýšlet pochybné obezličky k používání slabých hashovacích funkcí, které budou fungovat jen za specifických podmínek, když máme k dispozici dostatečně silné hashovací funkce.

Re:Spojení hashovacích funkcí
« Odpověď #47 kdy: 02. 02. 2016, 17:56:18 »
Udana delka skoro zadnou bezpecnost navic neprinasi: http://www.x-ways.net/md5collision.html

Ivan

Re:Spojení hashovacích funkcí
« Odpověď #48 kdy: 02. 02. 2016, 18:04:53 »
anebo funkci pro hash tabulku
MD5+SHA-1 má 128+160 bitů, to by byla slušná tabulka. Jestli máte tolik místa na disku, nenašel by se tam malilinkatý kousíček volného prostoru pro mne? Že bych si tam zazálohoval celý internet…

Zni to jako blbost, ale presne takova je realita. Lidi jsou tak zblbli ze vsech tech clanku o bezpecnosti, ze se bezne pouziva MD5 anebo SHA-1 pro hashing. Staci vzit jen par signifikantnich bajtu.

ByCzech

Re:Spojení hashovacích funkcí
« Odpověď #49 kdy: 02. 02. 2016, 18:13:48 »
Co tak pocet bitov HEX? Tam si uz fakt neviem predstavit co by s tym kto narobil...

[input].MD5 + "[input].lenghtInHEX

A keby sme chceli byt uz uplny zialenci tak este k tomu to SHA-1 ....

A najst koliziu, pre input X, kde je znama jeho fixna dlzka MD5 a SHA-1 to by som si kukol :D

Preto ma to napadlo ze niekto pisal ze pri nekonecnom moznosti INPUTU je aj nekonecna moznost kolizii (ok to znie fakt nebezpecne) ale takto by sme input obmedzili na jeho dlzku (pridavat nemoze, uberat nemoze, mozes iba "menit")... A tam by to uz nemuselo byt take easy ani na "silnejsom HW"

A pritom taka blbost... :)

Uvažuješ velmi správně. Přesně tohle doporučuji pro ověřování dat, když např. není možné použít novější hash funkci. Když vím 2 různé typy hashů a k tomu délku dat, těžko někdo bude schopen vyrobit jiný soubor, který by měl tyto 3 prvky společné při jiném obsahu.


Re:Spojení hashovacích funkcí
« Odpověď #50 kdy: 02. 02. 2016, 18:23:48 »
Co tak pocet bitov HEX? Tam si uz fakt neviem predstavit co by s tym kto narobil...

[input].MD5 + "[input].lenghtInHEX

A keby sme chceli byt uz uplny zialenci tak este k tomu to SHA-1 ....

A najst koliziu, pre input X, kde je znama jeho fixna dlzka MD5 a SHA-1 to by som si kukol :D

Preto ma to napadlo ze niekto pisal ze pri nekonecnom moznosti INPUTU je aj nekonecna moznost kolizii (ok to znie fakt nebezpecne) ale takto by sme input obmedzili na jeho dlzku (pridavat nemoze, uberat nemoze, mozes iba "menit")... A tam by to uz nemuselo byt take easy ani na "silnejsom HW"

A pritom taka blbost... :)

Uvažuješ velmi správně. Přesně tohle doporučuji pro ověřování dat, když např. není možné použít novější hash funkci. Když vím 2 různé typy hashů a k tomu délku dat, těžko někdo bude schopen vyrobit jiný soubor, který by měl tyto 3 prvky společné při jiném obsahu.

Jak uz tu padlo, tak to nijak zvlast bezpecnost nezlepsuje.

Kit

Re:Spojení hashovacích funkcí
« Odpověď #51 kdy: 02. 02. 2016, 18:40:59 »
Pro ty, kteří pochybují nad kvalitou MD5 i SHA-1: Zkuste si jen tak cvičně prolomit CRC32. Všichni víme, že to jde, ale už málokdo tuší, kolik to dá práce než doladíme změněný dokument tak, aby CRC sedělo a přitom to nebylo nijak nápadné.

A pak si uvědomte, že MD5 a výše jsou o mnoho řádů lepší...

Re:Spojení hashovacích funkcí
« Odpověď #52 kdy: 02. 02. 2016, 19:28:55 »
Pro ty, kteří pochybují nad kvalitou MD5 i SHA-1: Zkuste si jen tak cvičně prolomit CRC32. Všichni víme, že to jde, ale už málokdo tuší, kolik to dá práce než doladíme změněný dokument tak, aby CRC sedělo a přitom to nebylo nijak nápadné.

A pak si uvědomte, že MD5 a výše jsou o mnoho řádů lepší...

Argumentace vlastni neschopnosti...

Re:Spojení hashovacích funkcí
« Odpověď #53 kdy: 02. 02. 2016, 19:45:58 »
Pro ty, kteří pochybují nad kvalitou MD5 i SHA-1: Zkuste si jen tak cvičně prolomit CRC32. Všichni víme, že to jde, ale už málokdo tuší, kolik to dá práce než doladíme změněný dokument tak, aby CRC sedělo a přitom to nebylo nijak nápadné.

A pak si uvědomte, že MD5 a výše jsou o mnoho řádů lepší...
A pak si uvědomte, jestli jste ochotni těmhle domácím pokusům svěřit celý svůj bankovní účet.

Kryptografie má bohužel tu nevýhodu, že je obrovský prostor mezi tím, co lze chápat „selským rozumem“ a vyzkoušet si doma, a co je  profesionální použití. Když bude mít někdo v domácí databázi problém s deseti tisíci záznamy, asi celkem bez problémů představí, že může existovat databáze s deseti miliony záznamů. Když má někdo doma 10 TB filmů, asi si dokáže představit 1 TB (!) firemní diskové pole. Ale v kryptografii jsou to pokusy s prvočísly 13 a 17 a zkoušení kombinací CRC16 hrubou silou, pak dlouho dlouho dlouho nebezpečno, a pak teprve bezpečná kryptografie. To, že SHA-1 by měla v ideálním případě sílu 280, ale jsou známy útoky oslabující ji na někde kolem 255, se opravdu těžko představuje, zvlášť když je to pořád ještě za hranicí toho, co by si někdo jen tak vyzkoušel pro dobrý pocit z toho, že prakticky prolomil SHA-1.

Gdhsjskksks

Re:Spojení hashovacích funkcí
« Odpověď #54 kdy: 03. 02. 2016, 02:36:01 »
Orig autor: dakujem pani za skvelu diskusiu :-) aj vdaka vam som si co to nasiel na nete a docital sa super inputy :-)

Kolemjdoucí

Re:Spojení hashovacích funkcí
« Odpověď #55 kdy: 04. 02. 2016, 01:11:56 »
Je mi jasne ze sa da pridavat bordel (a odoberat, aj ked to je uz tahsie "asi") aby boli kolizie, preco sa o danom dokumente nepusti nejake info ktore neni hashovane, pomerne jenoznacne, a nikto tam nic moc nepomeni?

Co tak pocet bitov HEX? Tam si uz fakt neviem predstavit co by s tym kto narobil...

[input].MD5 + "[input].lenghtInHEX

Algoritmus MD5 neznám dopodrobna, ale domnívám se, že délka vstupního stringu do něj také vstupuje.

"neznám dopodrobna, ale domnívám se" to je prostě super formulace! Nedala by se na tomto přístupu postavit nějaká alternativní varianta kryptografie?  ;D

MIlan

Re:Spojení hashovacích funkcí
« Odpověď #56 kdy: 04. 02. 2016, 07:37:02 »
Pokud chcete něco SUPER utajit, vytvořte si vlastní algoritmus, který není znám. Např. mezi byte jednoho hashe občas někam vsunout byte jiného hashe... Pokud utočník vůbec nebude vědět o co jde, určitě to nedá...
Z druhé strany dnes nemá moc logiku vůbec hash používat. Dokument je možné zakryptovat tajným klíčem celý a na druhé straně dekryptovat. Žádné kolizní dokumenty nebudou existovat.... Dnešní výpočetní výkon i přenosové kapacity to umožˇnují. Jak prosté....

Re:Spojení hashovacích funkcí
« Odpověď #57 kdy: 04. 02. 2016, 08:03:39 »
Pokud chcete něco SUPER utajit, vytvořte si vlastní algoritmus, který není znám. Např. mezi byte jednoho hashe občas někam vsunout byte jiného hashe... Pokud utočník vůbec nebude vědět o co jde, určitě to nedá...
Tohle je velice hloupý postup, protože bez potřebných znalostí takhle s největší pravděpodobností vytvoří něco velmi děravého. A ten super tajný vlastní algoritmus nejspíš bude to první, co útočník získá.

Z druhé strany dnes nemá moc logiku vůbec hash používat. Dokument je možné zakryptovat tajným klíčem celý a na druhé straně dekryptovat. Žádné kolizní dokumenty nebudou existovat.... Dnešní výpočetní výkon i přenosové kapacity to umožˇnují. Jak prosté....
Takže pokud chci přenést přes síť několikagigový soubor, mám jej přenést minimálně dvakrát, abych si byl jistý, že je správně? Když budu chtít dokument opatřit časovým razítkem, mám ho celý poslat autoritě časových razítek? Když bude na dokumentu více podpisů a více časových razítek, budou se velikosti násobit? Heslo mám serveru také předávat v otevřeném tvaru místo hashe?

Re:Spojení hashovacích funkcí
« Odpověď #58 kdy: 04. 02. 2016, 09:22:15 »
Pokud chcete něco SUPER utajit, vytvořte si vlastní algoritmus, který není znám. Např. mezi byte jednoho hashe občas někam vsunout byte jiného hashe... Pokud utočník vůbec nebude vědět o co jde, určitě to nedá...
Dve tvrdenia a ja nemôžem súhlasiť ani s jedným
Citace
Security through obscurity is discouraged and not recommended by standards bodies. The National Institute of Standards and Technology (NIST) in the United States specifically recommends against this practice: "System security should not depend on the secrecy of the implementation or its components."[1]
https://en.wikipedia.org/wiki/Security_through_obscurity
Z druhé strany dnes nemá moc logiku vůbec hash používat. Dokument je možné zakryptovat tajným klíčem celý a na druhé straně dekryptovat. Žádné kolizní dokumenty nebudou existovat.... Dnešní výpočetní výkon i přenosové kapacity to umožˇnují. Jak prosté....

Ako vtip do silvestrovského programu dobré, ale inak mi idú zimomriavky po chrbte keď si predstavím, že by si toto myslel niektorý môj kolega

Re:Spojení hashovacích funkcí
« Odpověď #59 kdy: 04. 02. 2016, 10:53:14 »
Kazdopadne - ano dakujem sa skvelu diskusiu, jasne nesiel som vynajst koleso a viem ze su lepsie algoritmy a su super :) mna to len zauimalo.

Co som myslel tym && bolo concatenate dvoch hashov. Nie XOR, ani hash hashu ale proste len dva hashe vedla seba.

Jak zaznělo velmi rychle, problém je, že útočník dostane jak MD5 tak SHA. To už se mi jako lepší jeví ten XOR, i když u něj je problém s nestejnými délkami hashe. Stejně jako další doporučuji, je-li to možné, raději sáhnout po jiné funkci jako SHA-2 či SHA-3.
Záleží i na tom, co hodláte hashovat - pro hesla je SHA naprosto nevhodná, pro zdrojáky se hodí velice.