Vánoční nadílka Vánoční nadílka
Vánoční akce! Daruj lepší budoucnost blízkým nebo sobě. Až +50 % zdarma na dárkové poukazy. Více informací
Avatar
Tomáš Martin Holub:26. července 22:02

Chtěl bych se zeptat jestli se vyplatí udělat si vlastní šifrovací algoritmus. Vím že existuje mnoho již vytvořeným, ale člověk může spoléhat jen sám na sebe :) Nevíte někdo popřípadě nějaké tipy,triky,ra­dy,návody a další věci co by mi mohli pomoct? Vím že se možná nevyplatí si udělat vlastní šifru, ale ptám se , protože teoreticky útočník musí rozluštit kód k dešifrování a pak musí zjistit klíče k dešifrování a ty klíče by měli být unikátní, vezmou nějaké hodnoty a podle toho dešifrují. A z jaké šifry bych měl čerpat? ( Omylem tu šifru spíše směruji k ceaserově šifře)

Zkusil jsem: Koukal jsem se na youtube a hledal na googlu, ale vysloveně jsem nepochopil jestli se to vyplatí nebo ne.

Chci docílit: Chtěl bych udělat v rámci možností silný šifrovací algoritmus.

 
Odpovědět 26. července 22:02
Avatar
Honza Bittner
Šupák
Avatar
Odpovídá na Tomáš Martin Holub
Honza Bittner:26. července 23:22

Chtěl bych se zeptat jestli se vyplatí udělat si vlastní šifrovací algoritmus.

Ne.

... ale člověk může spoléhat jen sám na sebe :)

No to právě že takhle neplatí...


TL;DR vlastní šifrovací algoritmus, pokud nejsi dost velkej borec, což nejsi (sorry jako, nikdo z nás tady není), nemá smysl dělat a je lepší i bezpečnější použít známé a ověřené.

Nahoru Odpovědět  +5 26. července 23:22
Milovník Dartu. Student FIT ČVUT. Sleduj mě na https://twitter.com/tenhobi a ptej se na cokoli na https://github.com/...
Avatar
Odpovídá na Honza Bittner
Tomáš Martin Holub:26. července 23:26

A jaký např. ?

 
Nahoru Odpovědět 26. července 23:26
Avatar
Jindřich Máca
Tým ITnetwork
Avatar
Odpovídá na Tomáš Martin Holub
Jindřich Máca:26. července 23:46

Tak co třeba starý dobrý AES - https://en.wikipedia.org/…ion_Standard :-`

Samozřejmě v jeho silném podání AES-256. ;)

 
Nahoru Odpovědět  +6 26. července 23:46
Avatar
Petr Čech
Redaktor
Avatar
Odpovídá na Tomáš Martin Holub
Petr Čech:27. července 0:44

Myslím, že neexistuje jediný případ, kdy by vlastní kryptografické řešení (třeba i od relativně "profi" firem) nedopadlo naprostou katastrofou v momentě, kdy ho někdo opravdu chtěl prolomit.
Tedy pokud nejsi světová špička v kryptografii (což nejsi), ani nemá smysl o tom uvažovat.

Akceptované řešení
+20 Zkušeností
+1 bodů
Řešení problému
Nahoru Odpovědět  +8 27. července 0:44
the cake is a lie
Avatar
Odpovídá na Petr Čech
Tomáš Martin Holub:27. července 7:12

To je asi přesně to co jsem potřeboval slyšet.
Díky :)

 
Nahoru Odpovědět 27. července 7:12
Avatar
David Hynek
Redaktor
Avatar
Odpovídá na Tomáš Martin Holub
David Hynek:27. července 7:46

A tys čekal jinou odpověď?

Nahoru Odpovědět 27. července 7:46
Čím víc vím, tím víc věcí nevím.
Avatar
Odpovídá na David Hynek
Tomáš Martin Holub:27. července 8:24

No, je tam vysvězleno proč.

>
ale ptám se , protože teoreticky útočník musí rozluštit kód k dešifrování a pak musí zjistit klíče k dešifrování a ty klíče by měli být unikátní, vezmou nějaké hodnoty a podle toho dešifrují

 
Nahoru Odpovědět 27. července 8:24
Avatar
Honza Bittner
Šupák
Avatar
Odpovídá na Tomáš Martin Holub
Honza Bittner:27. července 9:16

Dost často se veřejně udává, jaké algoritmy se používají. Znalost či neznalost algoritmu o ničem nerozhoduje, možná je i jeho veřejná znalost v jistém ohledu bezpečnější.

Nahoru Odpovědět 27. července 9:16
Milovník Dartu. Student FIT ČVUT. Sleduj mě na https://twitter.com/tenhobi a ptej se na cokoli na https://github.com/...
Avatar
Petr Čech
Redaktor
Avatar
Odpovídá na Tomáš Martin Holub
Petr Čech:27. července 9:19

ale ptám se , protože teoreticky útočník musí rozluštit kód k dešifrování a pak musí zjistit klíče k dešifrování a ty klíče by měli být unikátní, vezmou nějaké hodnoty a podle toho dešifrují

Bohužel tomu nerozumím kvůli naprosté absenci interpunkce, ale dohromady s "Omylem tu šifru spíše směruji k ceaserově šifře" mi připadá, že nerozumíš principu kryptografie (nebo spíš filozofii). Všichni ví, jak se šifruje a všichni dělají úplně to samé - proto je to bezpečné, protože hromada hodně velkých borců mohla vidět, jak to pracuje a mohli se shodnout, že to je bezpečné. Jediné, co se mění jsou klíče (a soli, IV atp.) Kdyby bylo tajné, jak se šifruje a třeba by ten algoritmus ani neměl klíče (viz Caesarova šifra), je problém, že jakmile to někdo prolomí, všechno, co jsi tím kdy zašifroval je automaticky čitelné. Takovýto způsob je možná použitelný před 2000 lety nebo ve hře na dětském táboře, ale je k smíchu v IT.

klíče by měli být unikátní

Klíče nejsou nutně unikátní, rozhodně neexistuje jen jeden klíč, ale existují jich strašlivé hromady, protože si každý vygeneruje vlastní klíč.

Možná narážíš na nejednoznačnost českého slova "klíč", které může také znamenat způsob, jakým se něco dělá - v IT takto "klíč" použít nelze jinak než možná ke zmatení nepřítele :D

Nahoru Odpovědět  +1 27. července 9:19
the cake is a lie
Avatar
Peter Mlich
Člen
Avatar
Peter Mlich:27. července 9:29

Petr Čech - 'neexistuje jediný případ' - Mno, mozna by se par naslo. Napr jakasi firma sifruje maily. Ale asi k tomu pouziva klasicke RSA.

Tomáš Martin Holub - Jak pise P. Cech. Vetsina vlastnich reseni skonci katastrofou. Bud se to proflakne nebo z nejakeho duvodu nastane porucha a to sifrovane uz nikdo nerozlusti :)

Jestli sledujes zive.cz, root.cz, tak tam je obcas zminka o tom, ze opravuji chyby v zabezpeceni techto sifer. Kazdou chvili to tam bylo behem posl. pul roku. Takze, zadne reseni neni bezpecne.

A pak, vis, kdo ten sifrovaci program pripravuje? Ono to muze byt tak, ze to zverejnuji clenove skupin jako FBI, CIA. Ti udelaji nekterou cast super. Ale soucasne maji v reseni nekolik zpusobu, jak se dostat ke zdroji zpravy. Algoritmus muze byt v poradku, ale sabotuji vnejsi zdroje, ovladnou server s klici a podstrci tam vlastni, treba. Ostatne, to se nedavno stalo. Jakysi router presmeroval komunikaci na urcitem uzemi pres sebe a rozesilal vlastni certifikaty a cast komunikace preposilal jinam.

Cili, ano, vlastni reseni je dobre. Ale musis pocitat s tim, ze se k dekodovacimu programu muze dostat hacker. At uz jenom nahodou, ze zrovna monitoroval veskery ftp prenos na server nebo zachytil tebou posilana hesla uzivateli.

Udelat vlastni program neni problem. Musis si jen vybrat zpusob. Muzes sifrovat treba nakolika slovy najednou. Pokud utocnik zna algoritmus a dekodovani zavisi jen na tipovani, tak lze zapojit i kvantove procesory nebo superpocitace a vysledky mas do par minut, mozna hodin.

text + znak = caesarova sifra
klonuj(slovo1) = slovo1slovo1slo­vo1slovo1...
text + klonuj(slovo1) + klonuj(slovo2) + klonuj(slovo3) = text + smes = jina smes (Slova muzes tipovat, v prumerne knizce se pouziva 20.000-30.000 v cestine. To je i se sklonovanim)

Jednoduche sifrovani je xor s predchozim znakem. Dekodovani je xor s predchozim znakem. Jednoduche :)

Jak uz bylo receno. Nez vymyslet vlastni reseni, lepe se spolehnout na jiz pouzivane. I za cenu, ze dojde k uniku, pokud nekdo objevi chybu v algoritmu. Za 2 roky nebudes vedet, jak tvuj algoritmus funguje. A pokud dojde k poruse, prijdes o data, program, nebudes schopen napsat znovu kodovaci, dekodovaci program.
To mas jako s hrami a dvd. Neustale vymysli ruzne ochrany a a hackeri i bez kvantoveho pc dokazi do jednoho nebo par mesicu ten kod prolomit nebo zcizit. Nedavno byl clanek, ze opet padla nejnovejsi ochrana dvd a na webu se objevili nesifrovane filmy.

 
Nahoru Odpovědět  -1 27. července 9:29
Avatar
Peter Mlich
Člen
Avatar
Peter Mlich:27. července 9:33

Byt hacker, jak bys to resil ty? Jednoduse. Vytvorim program na dekodovani. Udelam si ucet s bitcoiny. Nazvu to tezbu cryptomen. Ty si nainstalujes program, stahnes od nej zadani. Propocitas, posles zpet. Dostanes bitcoiny. Hacker zapoji furu pocitacu, ktere provedou dekodovani napr certifikatu microsoft jako jeden velky superpocitac.

 
Nahoru Odpovědět  -1 27. července 9:33
Avatar
Václav Methez:27. července 12:25

Na ukládání hesel pouzivam -> password_hash($tex­t, PASSWORD_BCRYPT); a na kontrolu password_verify();
Na rozdil od jednoduchych alogoritmu password_hash uklada i ten stejny text podruhe uplne jinak narozdil od jinych funkci. password_verify() pak vraci true nebo false, podle toho zda heslo sedi. Doporucuju pouzivat tuto funkci. Ver tomu ze i ti nejlepsi hackeri si u toho nejakej patek posedej :D

 
Nahoru Odpovědět 27. července 12:25
Avatar
Odpovídá na Václav Methez
Uživatel sítě :27. července 21:01

Umm, myslím si, že zde byla řeč o šifrování a né hashování.. :-`
Pokud chce získat data i zpětně tak je s prominutím tvůj komentář zcela irelevantní k této diskusi.

ALE! Výborně, že používáš správný způsob k ukládání hesel! :) (*_*)

Nahoru Odpovědět  +3 27. července 21:01
Chybami se člověk učí, běžte se učit jinam!
Avatar
Tomáš Martin Holub:27. července 21:24

Dobře, takže je možnost si udělat vlastní šifrovací algoritmus,ale je to neefektivní a vždy to nefunguje na 110%

 
Nahoru Odpovědět 27. července 21:24
Avatar
Odpovídá na Uživatel sítě
Václav Methez:27. července 23:55

Omlouvám se. diskuzi jsem nestihl celou přečíst :) Teď zírám co jsem to sem napsal, musel sem být asi trochu mimo když se mi popletli pojmy šifrování a hashing :D Jinak co se týče šifrování tak asi nejznámější je AES-256, kterou používám. Vymýšlet něco vlastního je ale běh na dlouhou trať :)

 
Nahoru Odpovědět  +1 27. července 23:55
Avatar
Odpovídá na Václav Methez
Tomáš Martin Holub:28. července 7:12

Ok, takže jestli chápu dobře z diskuse tak je tam ta možnoat udělat si vlastní šifrovací algoritmus,ale moc se to nedělá, je to docela těžké a neefektivní.

 
Nahoru Odpovědět  +1 28. července 7:12
Avatar
Petr Čech
Redaktor
Avatar
Odpovídá na Tomáš Martin Holub
Petr Čech:28. července 10:21

Nic ti nebrání udělat si vlastní šifrovací algoritmus, je to algoritmus jako každý jiný, nic speciálního na tom není. Ale protože nejsi expert, tak stejně jako tobě nic nebrání ve vytvoření vlastního šifrování, nebude útočníkovi moc bránit v jeho prolomení, protože nevíš, jak udělat bezpečný šifrovací algoritmus.

Nahoru Odpovědět  +1 28. července 10:21
the cake is a lie
Avatar
Odpovídá na Petr Čech
Tomáš Martin Holub:28. července 10:22

A proto jsem vytvořil tuto diskusi,protože jsem se chtěl zeptat jestli s tím někdo nemá zkušenosti popř. tipy- triky

 
Nahoru Odpovědět 28. července 10:22
Avatar
Martin Dráb
Redaktor
Avatar
Odpovídá na Tomáš Martin Holub
Martin Dráb:28. července 10:44

Ok, takže jestli chápu dobře z diskuse tak je tam ta možnoat udělat si vlastní šifrovací algoritmus,ale moc se to nedělá, je to docela těžké a neefektivní.

Přístup dnešní kryptografie (držený už takových pár desítek let) tkví v otevřenosti – jediné, co je drženo v tajnosti, jsou klíče. Usnadníš tak život různým výzkumníkům, kteří takový algoritmus pak snadno mohou podrobit svým analýzám aniž by jej museli dekompilovat (což je tak akorát otrava :-) ). Historicky (i v druhé světové válce a ve Studené válce) se používal i princip utajování algoritmů, ale jak se můžeš dočíst, mělo to jisté zásadní nevýhody.

Pokud si chceš udělat vlastní algoritmus, řekněme symetrickou šifru (jako DES, AES...), tak by sis měl přečíst hodně o tom, jak jsou tyhle věci navrhované a z jakých menších bloků se skládají. Například se podívej na Feistalovu síť, to je primitivum, na kterém staví dost šifer dnes považovaných za bezpečné. Vydávat se neprobádaným směrem (kterým svým způsobem vznikl AES – místo ověřených postupů se použilo trochu víc matematiky) moc nedoporučuji.

A nebo můžeš chvíli počkat, jelikož mám v notebooku článek o symetrických šifrách z trochu teoretického pohledu. Říkal jsem si, že jej sem dám, až jich (článků) bude více, ale to by mohlo trvat dlouho.

Jestli sledujes zive.cz, root.cz, tak tam je obcas zminka o tom, ze opravuji chyby v zabezpeceni techto sifer. Kazdou chvili to tam bylo behem posl. pul roku. Takze, zadne reseni neni bezpecne.

Většinou se jedná buď o prolomení/nalomení jednodušších variant šifer, nebo o napadení složitějších protokolů, na těch šifrách postavených (kde problém není v té šifře samotné, ale ve způsobu použití).

Nahoru Odpovědět  +1 28. července 10:44
2 + 2 = 5 for extremely large values of 2
Avatar
Odpovídá na Martin Dráb
Tomáš Martin Holub:28. července 10:49

Díky takže asi použiju vlastní šifru,ale ještě budu dlouho na ní pracovat aby byla co nejbezpečnější.

 
Nahoru Odpovědět 28. července 10:49
Avatar
Martin Dráb
Redaktor
Avatar
Odpovídá na Tomáš Martin Holub
Martin Dráb:28. července 10:58

Díky takže asi použiju vlastní šifru,ale ještě budu dlouho na ní pracovat aby byla co nejbezpečnější.

Podle mě je to zbytečná námaha :-). Otázka je, co tak důležitého potřebuješ utajit, že nevěříš dostupným prostředkům.

Nahoru Odpovědět  +3 28. července 10:58
2 + 2 = 5 for extremely large values of 2
Avatar
Odpovídá na Martin Dráb
Tomáš Martin Holub:28. července 11:02

Spíš ne že bych tomu nevěřil, ale jsem moc velký prase na to abych instaloval jeden soubor :) A taky bych si to chtěl alespoň zkusit a myslím že to co budu šifrovat stejně nebude moc podstatné.

 
Nahoru Odpovědět 28. července 11:02
Avatar
Odpovídá na Tomáš Martin Holub
Matěj Strnad:28. července 20:28

Myslíš že uděláš lepší šifru než světoví experti na bezpečnost? %P

Nahoru Odpovědět 28. července 20:28
Ty vaše internety!
Avatar
Odpovídá na Matěj Strnad
Tomáš Martin Holub:28. července 22:16

No, šifru mně dostačující nejspíše ano

 
Nahoru Odpovědět 28. července 22:16
Avatar
Odpovídá na Tomáš Martin Holub
Vladislav Ladicky:29. července 20:12

Už len z toho, že si tú otázku vôbec položil, vyplýva odpoveď "nie". A z obsahu tej otázky, ako, vyplýva, že to nemáš ani len skúšať. A záverom hádam len, že neexistuje nič také ako "mne dostačujúca šifra". Šifrovanie má obstáť pred útočníkmi, nie pred tebou.

 
Nahoru Odpovědět  +4 29. července 20:12
Avatar
David Hynek
Redaktor
Avatar
Odpovídá na Vladislav Ladicky
David Hynek:29. července 21:24

To melo byt plus, omlouvam se.

Nahoru Odpovědět 29. července 21:24
Čím víc vím, tím víc věcí nevím.
Avatar
Odpovídá na Vladislav Ladicky
Tomáš Martin Holub:29. července 22:37

Tak já nevím, ten píše to ten zas tamto.

 
Nahoru Odpovědět 29. července 22:37
Avatar
DarkCoder
Člen
Avatar
Odpovídá na Tomáš Martin Holub
DarkCoder:30. července 1:01

Máš pochybnosti že to chceš nedokážeš nebo to nemá smysl? Čelit pochybnostem se dá jen tak, že se o to pokusíš! Rozumíš? Když Ti řeknu, že abys viděl jasně měsíc, musíš se koukat do louže. Budeš se koukat do louže? Ne! Budeš se koukat na oblohu. Netvrdím ani nedokáži říci, že ta cesta bude krátká a úspěšná, ale pokud se po ni vydáš, dost toho poznáš co se Ti může v budoucnu hodit. Každá cesta, at je krátká nebo dlouhá, začíná prvním krokem. A jen ten, kdo se o to pokusí, pozná, jak dlouhá byla...

Nahoru Odpovědět 30. července 1:01
"„Učíš-li se proto, aby sis zapamatoval, zapomeneš. Učíš-li se proto, abys porozuměl, zapamatuješ si."
Avatar
Odpovídá na DarkCoder
Tomáš Martin Holub:30. července 2:14

Asi před 4 hodinami jsem se koukal na videa o počítačové kryptografii,ši­frách, asynchronních šifrách apod. a je to neskutečně obsáhlé,ale začíná mě to docela bavit :)

 
Nahoru Odpovědět 30. července 2:14
Avatar
Peter Mlich
Člen
Avatar
Peter Mlich:30. července 13:18

No, kdyz myslis :)
On algoritmus muze byt dobry. Ale zpusob jeho realizace miva obvykle vic der ne jiz hotove. Samozrejme, dirou je i spolehat se na cizi reseni. Oni ti dodaji treba funkcni reseni. Pak udelaji upgrade. A nove reseni bude generovat klice z nejake jejich databaze.
To si proste nevyberes :)

Jako jednoduche reseni vidim prave ten xor. Pak nejak zmenis poradi znaku . A uz to nikdo neda dohromady :)
(n+1) = (n+1) xor (n)
Nebo, ma oblibena BTW, (pouziva ji zip, napr) ktera obsah zpravy v podstate seradi. A ke spravnemu poradi pak slouzi jedine cislo, poloha pocatecniho znaku.
Nebo k zapisu 1 znaku muzes pouzit 1-3 znaky. Kde treba si urcit vzor, ze platny je jen znak
2, 1, 3, 1 a doplnis nahodnymi znaky. Nebo udelas normalni platna slova.
xahxxoj
zahni-o-jeden-krok-vlevo = a ted si z toho zkus neco vylustit :)
Neni problem si udelat tabulku slov a vzdycky vybrat nejake slovo vhodne do vety. A kdyz to nejde, tak to nejde, tak tam das schvalne nejaky nesmysl. A v jednom z nesmyslu treba snadno zamaskujes i poradi tech pismen, klic.

 
Nahoru Odpovědět 30. července 13:18
Avatar
Odpovídá na Tomáš Martin Holub
Vladislav Ladicky:30. července 13:22

To je síce pekné, že ťa to začína baviť, ale vyberiem ťa z omylu. Dnešná kryptografia nie je nič iné ako matematika. Hodne vysoká matematika. Ak sa tomu chceš venovať na úrovni "vlastných" šifier, nepomôže ti nič iné ako príslušná vysoká škola. Ideálne aspoň dve. Plus doktorát aspoň na jednej z nich. TO ti dá dostatok informácií na ZMYSLUPLNÉ premýšľanie o vlastnej šifre. NIČ INÉ NEPOMÔŽE. Bez toho, rokov driny, sa o šifrovanie môžeš zaujímať len z užívateľského hľadiska. Ako s programovaním. Môžeš byť dosť dobrý programátor v nejakom jazyku, ale to neznamená, že si schopný naprogramovať vlastný, na zmysluplnom podklade. Ak sa o to pokúsiš bez príslušného akademického pozadia, pohoríš. To isté so šifrovaním. Môžeš sa maximálne tak naučiť ako do svojho programu zaimplementovať už existujúce šifrovacie algoritmy. Ale nie vytvoriť vlastný algoritmus. Inak zasa pohoríš. Avšak ... možno aj to by stačilo aby bol o teba záujem. Naučiť sa ako správne používať už existujúce. Pretože dnes a denne sú weby hackované nie preto, že existujúce algoritmy sú nedostatočné. Ale preto, že niekto následne nevyužije kryprograficky dostatočne silné náhodné čísla, že opakovane použije inicializačný vektor, atď, atď... Ktorú cestu si vyberieš, to už je na tebe a tvojich možnostiach. Ale dovtedy stále platí ... nerob nič okolo šifrovania sám, bude to, jemne povedané, kontraproduktívne :) Howgh

 
Nahoru Odpovědět 30. července 13:22
Avatar
Peter Mlich
Člen
Avatar
Peter Mlich:30. července 13:23

Jo, a pozor. Pokud bys ted klic nechal jen v programu a mel porad stejny a sifroval takhle treba hesla uzivatelu, tak staci se zaregistrovat se stejnym znamym heslem a zcizit databazi. Rozdil obou retezcu ti urci shodne znaky, polohu znaku a pokud ty znaky odpovidaji textu, ktery znas, mas dekodovaci klic pro dalsi hesla jinych uzivatelu.

 
Nahoru Odpovědět 30. července 13:23
Avatar
Odpovídá na Peter Mlich
Tomáš Martin Holub:30. července 13:51

Koukal jsem se na videa o kryptografiia je tam mnoho způsobů jak šifry prolomit a jak je zabezpečit: Taky jsem zjistil jaká kombinace je nejlepší- jednosměrný širovací algoritmus + generátor náhodných čísel.

 
Nahoru Odpovědět 30. července 13:51
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 34 zpráv z 34.