Šifrovací knihovna s obtížným dešifrováním

Mirage

Re:Šifrovací knihovna s obtížným dešifrováním
« Odpověď #45 kdy: 03. 02. 2014, 15:20:47 »
To máš pravdu, já ten jeho "MOD" taky nepovažuji za nic zázračného, ale výborných matematiků je málo a pokud z akce vyřadí ty tooly, tak to účel splní. Studium binárky vyžaduje podstateně víc úsilí, tedy určitě v porovnáním se spuštěním už hotového nástroje.

Sám jsi ho citoval:
TVŮJ SOFTWARE NIKOHO NEZAJÍMÁ!
Pokud mám něco zašifrovaného jinak, než tak, aby na to šlo jednoduše uplatnit bruteforce attack a zároveň to je nějaká aplikačka, která nikoho nezajímá, je to jeho řešení naprosto dostačující. Malou změnou odstavíš už hotové tooly a k vůli prdu se s tím nikdo matlat nebude.

Tak jsem ho pochopil já.

Možná jsem vlákno nečetl dostatečně důkladně, tady padlo něco o tom, že šifra má chránit tajemství v hodnotě miliard?

Naprostá většina burteforce útoků funguje s použitím vlastního nástroje, který je vybavený právě standardní knihovnou.
Pokud tyhle nástroje odstavíte, vyžaduje to nasání nástroje nového, což už je právě v té říši pohádek.
Samozřejmě nehájím krátká hesla obecně, ale bez dekompilace původního nástroje to prostě nedáte.

Pokud přejdu ten sebevědomý tón, má pravdu.
Sice použijete standardní knihovnu, ale oproti čistě standardní knihovně budete mít výstup o malilinko bezpečnější.


Re:Šifrovací knihovnu s obtížným dešifrováním
« Odpověď #46 kdy: 03. 02. 2014, 15:25:09 »
Vsaďme se o 5000,- Kč, ...

Pripada mi, ze v tom, co Bla navrhuje, je jeden zasadni podfuk. Nikde nerika nic o tom, jak vypadaji zasifrovana data. Takze pokud zasifruje neco nahodneho (treba ani ne nahodne znaky, ale vylozene nahodne byty), nemate jak zjistit, ze jste opravdu nasli spravne heslo a rozsifrovali to, nebo to jen "jakorozsifrovali" spatnym heslem.
Pokud je to prave ten pripad, ze se spoleha na tohle, je mozne, ze je to efektivni na nahodna data, ale uplne k nicemu na realna data.

jednoduchy priklad:
Vezmu heslo "blee" a proXORuju jim nahodna data. Diky symetrii XORu se na to ale muzu podivat tak, ze daty bylo ono mnohokrat zretezene "blee" a klicem ta nahodna data => Vernamova šifra...

pepak

Re:Šifrovací knihovnu s obtížným dešifrováním
« Odpověď #47 kdy: 03. 02. 2014, 15:50:30 »
Mě se ten jeho postup líbí, vezme šifru třeba AES+Twofish a přidáním další vrstvy, bez změny vlastní knihovny, vyřadí ze hry všechny standardní dešifrovací nástroje pro AES+Twofish. Jsem přesvědčený, že to fugovat bude.
Nebude. Celé to jeho schéma je přesně tak bezpečné, jak dobře zaobfuskovaný je algoritmus pro prodloužení klíče, nic víc, nic míň. Žádný útočník samozřejmě nebude brute-forcovat prodloužené heslo, on si prostě rozebere algoritmus prodloužení a potom ho bude aplikovat na běžný brute-force generátor hesel. To, že tento postup "vyřadí ze hry všechny standardní dešifrovací nástroje", není žádná skutečná výhoda - každý seriozní útočník si pro *každý* nástroj, který chce prolomit, napíše upravenou verzi dešifrovacího nástroje. Zablokování standardních nástrojů je funkční tak akorát proti script kiddies.

Dalo by se samozřejmě diskutovat o tom jeho zamaskování plaintextu přičtením/přixorováním nějakých dat. Jenže když z toho ořízneme bláboly a přehánění, tak v lepším případě zjistíme, že jsme před použitím AES+Twofish (když už jste s ním začal) data ještě zašifrovali pseudonáhodným "Vernamem" (který ovšem nesmí být pseudonáhodný, že) a tedy jsme přidali složitost odpovídající složitosti seedu použitého PRNG. No a tím jsme zase zpátky na začátku - prodlužujeme heslo, protože uživatel si neumí zapamatovat silné heslo, a k tomu, aby to fungovalo, potřebujeme další heslo, které poslouží jako seed PRNG.

Citace
Ovšem ty tvrdíš, že to, co navrhuje, naprosto nefunguje a že je kašpar.
Je to sice trochu tvrdé, ale bohužel to je pravda.

Citace
To není o penězích, netvrdil, že ty šifry bude někdo louskat za 5kkč, tvrdí, že to funguje, ty tvrdíš, že ne, sázka je o tom, jestli si dokážete stát za svým slovem. PTÁM SE TEDY, PROČ SE S NÍM NEVSADÍŠ?
Protože podmínky jsou stanoveny krajně nevýhodně pro mě. Totiž ty, které jsou stanoveny a které si tedy nemůže libovolně měnit podle situace. Něco jiného by bylo, kdyby například vystavil ten svůj program a řekl, "prvnímu, kdo to do 30 dnů prolomí, vyplatím 5000 Kč". Pořád by tam byl trochu problém, že někteří z nás mají spoustu práce a 5000 není žádné velké terno, ale přinejmenším by to trochu odpovídalo reálné situaci.

Citace
Bla má u mě bod za odvahu!
Za jakou odvahu? Když ti navrhnu sázku o to, že kohokoliv z netu porazím v nějakém sportu s tím, že ten sport si zvolím až poté, co se mnou uzavřeš v tomto smyslu smlouvu, tak budeš chodit kolem a říkat, "Ten pepak má ale odvahu"?

Tomas

Re:Šifrovací knihovnu s obtížným dešifrováním
« Odpověď #48 kdy: 03. 02. 2014, 15:51:52 »

Po zvazeni ten jeho software vlastne vubec nic neni. Je to jenom neco co transformuje kratke heslo na dlouhe. Dnes ale neni problem drzet dlouhe heslo pomoci prislusnych nastroju. Problem muze byt, ze nejsou po ruce. Jenze stejny problem je i s tim jeho nastrojem. Pokud ho nemate u sebe tak heslo pro decrypt taky neziskate.

Cili je to vlastne svou funkcionalitou velmi omezene uloziste hesel a s sifrovanim to nema pranic spolecneho.

JSH

Re:Šifrovací knihovnu s obtížným dešifrováním
« Odpověď #49 kdy: 03. 02. 2014, 15:56:14 »
Jestli ho chápu správně, netvrdí, že tím primitivním postupem udělá ze slabé šifry silnou, ale že jednoduchou úpravou podstatně ztíží dešifrování, což je přesně to, o com v tomhle vláknu jde. Mě se ten jeho postup líbí, vezme šifru třeba AES+Twofish a přidáním další vrstvy, bez změny vlastní knihovny, vyřadí ze hry všechny standardní dešifrovací nástroje pro AES+Twofish. Jsem přesvědčený, že to fugovat bude. Krása jeho postupu je v tom, že není nutné upravovat standardní šifrovací knihovnu.
Já to bohužel spíš vidím tak, že ze slabé šifry udělá slabou šifru na které to není tak vidět. Celý ten primitivní postup je mezikus který se dá přidat do jakéhokoliv bruteforce, nebo slovníkového útoku bez jakýchkoliv problémů. Obzvlášť pokud k tomu nabízí i binárku.
Ovšem ty tvrdíš, že to, co navrhuje, naprosto nefunguje a že je kašpar.
To není o penězích, netvrdil, že ty šifry bude někdo louskat za 5kkč, tvrdí, že to funguje, ty tvrdíš, že ne, sázka je o tom, jestli si dokážete stát za svým slovem. PTÁM SE TEDY, PROČ SE S NÍM NEVSADÍŠ? Pokud se s ním nechceš vsadit, je na místě tuším velmi slušná omluva a pořádná halda popela nasypaná na tvou hlavu. V opačném případě bys tu sázku měl přijít, pokud má tvoje slovo tedy alespoň nějakou cenu.
Budu upřímný. Za těchhle podmínek by se o prachy vsadil jen blbec.To zadání je napsané tak vágně, že může klidně vyhrát přes kreativní výklad pravidel.
Bla má u mě bod za odvahu!
Stojí si za svým slovem a je ochotný se za svůj názor i bít.
Bez ohledu na to, jestli má a nebo nemá pravdu, autoritu si u mě vysloužil právě Bla a ještě JSH, který nekecá a maká.
Co na to Filip Jirsák, jaký je to člověk, zbaběle se stáhne nebo se zachová jako chlap?
Docela mě překvapuje, že by měl být můj přístup nějaký lepší. Vždyť jsem zbaběle odmítnul sázku o prachy. Tahle sázka může být daleko náročnější na čas než jakékoliv vysvětlování evidentních chyb ve fóru a nějakých 5k (ještě pro několik lidí) je za to dost málo. Obzvlášť takoví, o jejichž zpětnou vazbu by měl Bla stát nejvíc, na to čas určitě nemají. Ta zásadní chyba navíc není v konkrétní implementaci (kterou může znova a znova flíkovat), ale v Blaově přístupu. Tyhle laické hacky můžou dokonce snižovat bezpečnost těch standardních algoritmů za nimi.


pepak

Re:Šifrovací knihovna s obtížným dešifrováním
« Odpověď #50 kdy: 03. 02. 2014, 15:58:18 »
To máš pravdu, já ten jeho "MOD" taky nepovažuji za nic zázračného, ale výborných matematiků je málo
Zásadní problém těchto schémat je, že nepotřebují výborného matematika - obvykle jim stačí matematik, který je *lepší* než ten, kdo schéma navrhl. A takových lepších matematiků je obvykle sakra hodně. V případě Bla rozhodně, soudě podle toho, co zatím napsal.

Citace
Studium binárky vyžaduje podstateně víc úsilí, tedy určitě v porovnáním se spuštěním už hotového nástroje.
To jistě, ale už hotový nástroj eliminuješ i podstatně jednoduššími technikami. Pokud chceš komplexnější eliminaci, musíš počítat s tím, že na tvoje schéma bude útočit schopnější útočník a pro něj není studium binárky zásadním problémem.

Citace
Pokud mám něco zašifrovaného jinak, než tak, aby na to šlo jednoduše uplatnit bruteforce attack a zároveň to je nějaká aplikačka, která nikoho nezajímá, je to jeho řešení naprosto dostačující. Malou změnou odstavíš už hotové tooly a k vůli prdu se s tím nikdo matlat nebude.
Bude. Prolomit aplikaci, kterou používají tři lidí na světě, je větší úspěch než *neprolomit* aplikaci, kterou používá každý. Proto mají útočníci motivaci prolamovat i "nezajímavé" aplikace.

JS

Re:Šifrovací knihovna s obtížným dešifrováním
« Odpověď #51 kdy: 03. 02. 2014, 16:05:23 »
Rad bych se vratil k puvodnimu dotazu. Staci trochu pocitat a zjistime, ze nema smysl tim ztracet cas:

- Prodlouzeni desifrovaciho algoritmu je konstantni faktor. Dejme tomu, ze prodlouzime cas desifrovani 16x; o to zpomalime brute force utok.

- Volba hashovaciho algoritmu s delsim klicem je exponencialni faktor. To znamena, ze po pridani pouhych 4 bitu k vyslednemu hashi bude brute force utok trvat 16x dele take.

- Pokud tedy napriklad zvolime SHA512 misto SHA256, je to ekvivalentni tomu, prodlouzit cas desifrovani o 2^256. :-) Pochybuji, ze bude uzivatel ochoten tak dlouho cekat, kdyz zivotnost vesmiru je nekde kolem 2^60.

Jinak receno, zvolte delsi klic, bude to mnohem efektivnejsi, a hlavne (jak uz tu nekdo zminil) nezapomente na salt.

JS

Re:Šifrovací knihovna s obtížným dešifrováním
« Odpověď #52 kdy: 03. 02. 2014, 16:08:24 »
A jeste k sifrovacimu algoritmu pana Bla: Legrace nastane, az se vam vyskytnou dva uzivatele s podobnym heslem.

Re:Šifrovací knihovna s obtížným dešifrováním
« Odpověď #53 kdy: 03. 02. 2014, 16:13:27 »
- Pokud tedy napriklad zvolime SHA512 misto SHA256, je to ekvivalentni tomu, prodlouzit cas desifrovani o 2^256. :-) Pochybuji, ze bude uzivatel ochoten tak dlouho cekat, kdyz zivotnost vesmiru je nekde kolem 2^60.

Jinak receno, zvolte delsi klic, bude to mnohem efektivnejsi, a hlavne (jak uz tu nekdo zminil) nezapomente na salt.

Pořád je to o tom, že nakonec tam to heslo zadá člověk, který ho musí mít v hlavě, pokud si ho tedy nezapsal na papír (což by neměl). Nebo snad považujete privátní klíč k bitcoinové peněžence uložený v dropboxu zašifrovaný heslem o délce osm znaků i přesto že používá čísla symboly za bezpečné uložení?

Já si nejsem jist (ačkoliv takový klíč tam mám)

Nula

Re:Šifrovací knihovnu s obtížným dešifrováním
« Odpověď #54 kdy: 03. 02. 2014, 16:15:27 »
Zablokování standardních nástrojů je funkční tak akorát proti script kiddies.

Myslím, že tohle je klíčová věc. Jakákoliv samodomo implementace čehokoliv vyřadí ze hry zcela automatické nástroje. Ale nic víc. Ale i to může někomu stačit ke štěstí. Takže v tomhle smyslu to funguje.
Stejně tak jako tady na rootu funguje antispam, který rotuje asi 20 (?) českých otázek. Automatičtí fórum-spammeři jsou ze hry. A je jasné, že kdyby kdokoliv chtě, tak za 30 minut práce naučí svého robota těch 20 otázek a antispam je prolomen. Jenže to zatím zjevně nikomu za těch 30 minut práce nestálo.

Jenže jsou to právě ti automatičtí útočníci, kteří jsou relativně málo nebezpeční, protože jsou obvykle na druhém konci světa a vaše data tam nikoho nezajímají (je jasné, že se nebavíme o žádné větší firmě, nebo někom, kdo spravuje nějaká data větší firmy) a i kdyby nějaké vaše konkurence měla zájem vaše data koupit, tak ten útočník nebude schopen toho kupce vůbec najít.
Rizikem je cílený útok někoho, kdo ví, proč vaše data chce. A právě proti cílenému útoku je celá tahla šaráda úplně na nic - a o to hůře, že ta šaráda vede k tomu, že data jsou pomocí skutečného kryptoalgoritmu zašifrována jenom se slabým heslem.

Takže ono to opravdu funguje. Funguje to tak, že to snižuje riziko málo nebezpečných (automatických) útoků a nepřímo to zvyšuje riziko skutečného nebezpečí (cílené útoky), tím že to vede ke slabým heslům.

pepak

Re:Šifrovací knihovna s obtížným dešifrováním
« Odpověď #55 kdy: 03. 02. 2014, 16:19:10 »
- Pokud tedy napriklad zvolime SHA512 misto SHA256, je to ekvivalentni tomu, prodlouzit cas desifrovani o 2^256. :-)
To snad nemyslíš vážně!

Citace
Jinak receno, zvolte delsi klic, bude to mnohem efektivnejsi
O tom nikdo nepolemizuje. V reálném světě to však má jednu chybu: potřebuješ o tom přesvědčit i uživatele.

Mirage

Re:Šifrovací knihovna s obtížným dešifrováním
« Odpověď #56 kdy: 03. 02. 2014, 16:22:16 »
Nezdá se mi, že by Bla toužil po psaní takových nástrojů.
Prostě si jen stojí za svým.

No a proč by to měl dělat zadarmo?
Dvacet pet tisíc za napsání podobného šifrovacího nástroje mi přijde jako přiměřená odměna, tedy pokud umí. A jestli umí, jestli si ty peníze zaslouží, rozhodnete právě vy. Máte možnost ho zesměšnit a ještě za jeho peníze uspořádat oslavu týmu profíků.
Lousknete mu to, dáte mu pár otcovských rad, poučíte ho, jak je ještě nevyzrálý a uspořádáte párty.

Jak to řekl, když on tak neumí a vy tak umíte, dokažte to!

Proč Vás hecuju?
Zajímá mě výsledek!
Taky je to příležitost, aby se bezcenné kydání hnoje, které tu neustále dokola probíhá, mohlo alespoň jednou změnit v něco zajímavého.
Hééééj, prostě vezměte to.
Hodím k penězům od Bla další litr!
Voe, snad ví, co plácá ;D Ale jo, přidám se k němu!
Čistě pro tu prču, chci vidět, jak z Vás nadělá jelita.
Sám jsem zkoušel lousknout jeden exe a není to žádná zadek.

Re:Šifrovací knihovnu s obtížným dešifrováním
« Odpověď #57 kdy: 03. 02. 2014, 16:26:17 »
Pripada mi, ze v tom, co Bla navrhuje, je jeden zasadni podfuk. Nikde nerika nic o tom, jak vypadaji zasifrovana data. Takze pokud zasifruje neco nahodneho (treba ani ne nahodne znaky, ale vylozene nahodne byty), nemate jak zjistit, ze jste opravdu nasli spravne heslo a rozsifrovali to, nebo to jen "jakorozsifrovali" spatnym heslem.
Pokud bude algoritmus šifrování vypadat tak, jak Bla popisuje, může klidně zašifrovat náhodná data – a o správnosti rozšifrování nebude pochyb díky tomu, že ten odvozený algoritmus bude dávat stejné výsledky pro jiná vstupní data, jako by dával jeho program. A protože ty jeho algoritmy jsou tak triviální, nemůže existovat jiný algoritmus, který by dával pro testovací data stejné výsledky, ale pro jeho náhodná data jiný výsledek. Samozřejmě pokud by v té aplikaci neměl podfuk a ta by jeho vstup nešifrovala jiným způsobem, než jiné vstupy.

Jinak to, zda vstup do šifrování je náhodný, nebo zda pro pokusu o rozšifrování dokážu určit, zda heslo mohlo být správné, nebo je určitě špatné, je jedno z kritérií pro návrh bezpečnostního modelu. Tohle kritérium je klíčové pro útok hrubou silou. Pokud by útočník nedokázal z rozšifrovaného výstupu poznat, zda může jít o privátní klíč, dostal by po tom útoku hrubou silou na čtyřznaková hesla necelý půl milionu potenciálních klíčů, a musel by všemi podepsat transakci, přičemž jenom jedna z toho půl milion transakcí by prošla – a teprve pak by věděl, který je ten správný klíč. Což by ale zrovna v tomhle případě útočníkovi nevadilo, protože ty transakce by vytvořil prakticky zadarmo. Druhý problém je v tom, že privátní klíč není náhodná směs znaků, naopak musí splňovat určité požadavky. Takže útočník může po rozšifrování otestovat, jestli to, co mu vyšlo, vůbec může být privátní klíč – pro těch půl milionu kandidátů myslím rychle vyloučí všechny až na jeden. Z toho důvodu by ani nebylo potřeba ten Blaův nástavcový algoritmus nijak zkoumat. Prostě by se ten jeho program spustil pro půl milionu různých hesel, a půl milionu výstupů by se otestovalo, zda to může být privátní klíč.

Jestli ho chápu správně, netvrdí, že tím primitivním postupem udělá ze slabé šifry silnou, ale že jednoduchou úpravou podstatně ztíží dešifrování, což je přesně to, o com v tomhle vláknu jde.
Nikoli, v tomhle vlákně jde o řešení případu, když má útočník dostatek výkonu na to, aby zkoušel jedno heslo po druhém. Zatímco u jednoduchého algoritmu s heslem ze čtyř velkých písmen velké abecedy musí útočník vyzkoušet skoro půl milionu různých hesel, s použitím Blaova nástavcového algoritmu musí vyzkoušet skoro půl milionu různých hesel – tedy úplně to samé.

Mě se ten jeho postup líbí, vezme šifru třeba AES+Twofish a přidáním další vrstvy, bez změny vlastní knihovny, vyřadí ze hry všechny standardní dešifrovací nástroje pro AES+Twofish.
Ty nástroje nevyřadí ze hry, jenom bude muset těm nástrojům předhodit jiný slovník. Ještě jednodušší, než řešit nějaké standardní dešifrovací nástroje (nevím, co to je), bude použít přímo ten program, který chce Ondřej napsat. To bylo další kritérium, které jsem napsal – zda ten šifrovací program bude k dispozici uživatelům, nebo zda se počítá s tím, že poběží někde na nedobytném serveru.

To není o penězích, netvrdil, že ty šifry bude někdo louskat za 5kkč, tvrdí, že to funguje, ty tvrdíš, že ne, sázka je o tom, jestli si dokážete stát za svým slovem. PTÁM SE TEDY, PROČ SE S NÍM NEVSADÍŠ? Pokud se s ním nechceš vsadit, je na místě tuším velmi slušná omluva a pořádná halda popela nasypaná na tvou hlavu. V opačném případě bys tu sázku měl přijít, pokud má tvoje slovo tedy alespoň nějakou cenu.
Nevsadím se s ním proto, protože zatím nenavrhl žádné přijatelné podmínky. Zatím navrhl jenom že dodá nějaký blackbox, kde klidně může být

Kód: [Vybrat]
if (muj_tajny_vstup) then {
  muj_tajny_vystup
}

Na to, aby se něčím takovým někdo zabýval, je 5 000 Kč slabá motivace. Proč asi Bla nenavrhl, že ten program zveřejní i se zdrojovým kódem?

Kód: [Vybrat]
Bla má u mě bod za odvahu!Ano, když o tématu vůbec nic neví, je odvaha o tom psát a ještě se sázet. Naštěstí měl Bla tolik rozumu, aby podmínky sázky nastavil tak, že on může klidně podvádět. Bohužel je taková sázka nezajímavá.

Mirage

Re:Šifrovací knihovnu s obtížným dešifrováním
« Odpověď #58 kdy: 03. 02. 2014, 16:32:57 »
tím že to vede ke slabým heslům.

On se krátkých hesel nezastával, viz:
Samozřejmě nehájím krátká hesla obecně, ale bez dekompilace původního nástroje to prostě nedáte.

To heslo na čtyři písmenka nabídl z toho důvodu, aby dokázal, že po vyřazení už hotových nástrojů, jste bez dekompilace naprosto ze hry. Skoro stejnou funkci by plnil i program, který by za každé heslo přidával telefonní číslo na Billa Gatese.

JSH

Re:Šifrovací knihovna s obtížným dešifrováním
« Odpověď #59 kdy: 03. 02. 2014, 16:34:26 »
Pořád je to o tom, že nakonec tam to heslo zadá člověk, který ho musí mít v hlavě, pokud si ho tedy nezapsal na papír (což by neměl). Nebo snad považujete privátní klíč k bitcoinové peněžence uložený v dropboxu zašifrovaný heslem o délce osm znaků i přesto že používá čísla symboly za bezpečné uložení?
Proč by ho nemohl zapsat na papír? Pro peněženku s praktickou částkou použiju heslo, které si zapamatuju. Pro peněženku s milionem si můžu heslo zapsat na papír a ten si založit někam do knížky. Podobných cárů papíru mám doma hromady. To heslo můžu nějak rozumně transformovat a zapamatovat si tu transformaci. Dá se to rozdělit na víc cárů, dá se použít neviditelný inkoust, můžu to heslo vypálit na DVD s hromadou porna a schovat do peřiňáku ... Závisí na uživateli a na množství bitcoinů. Heslo pro takovou peněženku nebudu a ani bych neměl zadávat moc často. A vlastně by ani neměla běžně ležet na disku.