Hlavnym problemom sucasnych sifrovacich algoritmov a ich praktickeho pouzitia je to, ze su komplikovane, pouziva sa v nich velke mnozstvo navzajom zavislych modulov (ako trebars v PKI) a bezia na este komplikovanejsich operacnych systemoch.
Preto sa utoky nezameriavaju na samotne algoritmy (ktorych bezpecnost je vacsinou teoreticky overena) ale prave na zranitelnost ich implementacie a infrastruktury ( Heartbleed bug, znehuzitie ukradnutych klucov doveryhodnych certifikacnych autorit - pouzival Stuxnet, "zero day" exploity ...).
OTP sifra ma tu vyhodu, ze je implementacne jednoducha (XOR) a da sa implementovat trebars aj na 8 bitovom mikrokontroleri (da sa vyrobit vlastny HSM), kde celu infrastrukturu tvori len jednoduchy program v C, ktory sa da aj jednoducho bezpecnostne auditovat.
>To je jedna z možností. Další je třeba potvrzování operace s privátním klíčem >tlačítko, dotyková ploška). Nebo třeba komunikace přes NFC.
doufam ze ma to vase zarizeni i display, abyste videl co autorizujete...
kde si to muzu koupit, je pravda ze mi tu ten muj starej pocitac dost zavazi ;)
vy takovy firmware ted mate k dispozici? (ja tu ten svuj stary pocitac mam) ;)
a ted otazka za 100 bodu: neni nahodou ten bitcointrezor to same co muj stary pocitac??? :D (jen s horsi klavesnici, displayem, nekontrolovanym prenosem pres USB a urcite by se naslo neco dalsiho )
z webu bitcointrezoru:
What happens if the SatoshiLabs servers are hacked and the firmware signing key is stolen?
First off, this won’t happen ;). The SatoshiLabs master key is kept very safe.
Filipe, uz jsem to tu jednou psal a nekolikrat naznacoval, pokud vim, v soucasne dobe neexistuje zadna "klicenka", ktera umozni bezpecnou praci s asymetrickou sifrou na kompromitovanem pocitaci..
takove zarizeni totiz musi umet prijmout pozadavek na transakci, nechat uzivatele pozadavek overit a potvrdit a pak transakci provest tzn musi mit klavesnici a display
a ted si predstavte ze na takovem zarizeni mate desifrovat gpg (s/mime) zasifrovany email, musite ho tam cely nahrat vcetne zasifrovaneho klice, protoze musite:
a) spocitat otisk prijateho ciphertextu/cleartextu (dle protokolu)
b) desifrovat/overit otisk zpravy podepsany odesilatelem
c) porovnat spocitany otisk a prijaty otisk = overit ze budu desifrovat klic k tomu co jsem dostal a ne k necemu jinemu
d) desifrovat ciphertext zpravy
e) zobrazit prijatou zpravu (zpet do pc uz nesmi, to muze byt napadene)
vsechno to o cem pisete Vy (cipove karty, security tokeny etc) ma ten zasadni problem, ze utocnik Vam v okamziku kdy Vy si myslite ze potvrzujete svou operaci posle do toho zarizeni svoji transakci (pokud ma token svou klavesnici), nebo si tam posle svych 1000 pozdavku v okamziku kdy tam kartu zastrcite a on odchytne pin (pokud je zabezpecena jen PINem)
pokud tohle pochopite/uznate, tak zjistite, ze musite tak jako tak pracovat na bezpecne/nekompromitovane stanici (vcetne fyzicke bezpecnost), a tam je proste vernamova sifra bezpecnejsi (na to existuje matematicky dukaz), a vse co poskytuji soucasne security tokeny zbytecne
Pokud má útočník v moci počítač, na kterém dešifruju, nemusí se klíčem zabývat, protože si počká, až zprávu dešifruju já. Klíčem by se zabýval, pokud by mohl získat klíč a dešifrovat bez mé "asistence".
Pokud se budeme bavit obecně, aby útočník tímhle způsobem zneužil čipovou kartu nebo podobné zařízení, musel by požadavek poslat těsně přede mnou - aby se požadavek na autorizaci neobjevil dřív, než jsem já něco po čipové kartě chtěl. Sice by takhle jedno provedení operace získal, ale hned by se prozradil.
Pokud se smíříte s tím, že klávesnice a displej nemusí být na samotném tokenu nebo čipové kartě, dá se použít třeba mobilní telefon jako druhé zařízení a NFC. Třeba YubiKey NEO umí po NFC komunikovat, takže by se takhle možná dalo použít (ale hotová aplikace na to pokud vím není) - a to je v podstatě běžné spotřební zboží.
Stále zapomínáte na to, že i když samotné dešifrování budete provádět na zabezpečeném počítači, ten klíč musíte uhlídat několik let. To je ten hlavní problém. Zajistit bezpečný počítač na dešifrování je proti tomu brnkačka.
ad1) utocnik muze chtit desifrovat stare zpravy ...
ad2) utocnik se prozradi jen pokud mate token/cip s HW klavesou (kolik jich ted mate u sebe??) , a pokud si toho vsimnete (poslu svou transakci a vyvolam BSOD nebo shodim aplikaci , takhle to udelam jednou za cas, napadne vas ze se neco deje??), system ktery prozradi byt jedinou zpravu pro me neni bezpecny....
ad3) klavesnice a displej musi byt na tokenu viz muj predchozi prispevek
ad4) klic musite chranit vy u asymetricke kryptografie, my s OTP jej ihned nicime
a porad tu je ten zlaty hreb: u OTP mame dukaz ze pri prenosu je zprava bezpecna, to vy tvrdit nemuzete....
Pořád je dost velký rozdíl v tom, zda jediná možnost útočníka je podstrčit mi k šifrování nebo dešifrování jeho zprávu, nebo zda může získat klíč a s ním si pak dělat, co jej napadne.
Klávesnice a displej nemusí být součástí tokenu, nic ve vašem předchozím komentáři něco takového neodůvodňuje.
Celou dobu se tu bavíme o vygenerování velkého klíče, který se bude používat několik let. Když ho hned na začátku zničíte, nebudete moc ani šifrovat ani dešifrovat.
co jineho nez sifrovat/desifrovat s tim klicem utocnik muze delat? vy mu ten klic nedate, ale vase cipova karta mu ty vypocty (stejne jako vam) provede...cilem utocnika neni vas klic ale plaintext a ten ziska
nevim jestli se tak spatne vyjadruju, ale zkusim to prikladem: vygeneruju 1MB klic a tim klicem budu sifrovat 1kb zpravy, zasifruji prvni zpravu a prvni 1kb klice znicim, zbude mit 1023kb klice, zasifruji druhou zpravu znicim dalsi 1kb klice atd, to same dela protistrana
pokud zpravu 1 a 2 po pouziti znicim taky, tak ji ze me uz ani nikdo kdo zachytil ciphertext (narozdil od vas) nevymlati, protoze mu bude jasne ze si ten zniceny 1kb klice nemuzu pamatovat
ale prece se tady nebudeme ucit zaklady kryptografie....
Tak ještě jednou. V mém případě musí útočník počkat, až budu něco dešifrovat já. V takovém okamžiku může jednu zprávu dešifrovat a riskuje, že se prozradí. Pokud budu dešifrovat na jiném, než jím kompromitovaném počítači, má smůlu. Pokud jeho přístup zablokuju, má smůlu. Ve vašem případě má klíč, takže si vaše zprávy může dešifrovat kdy ho napadne, navíc neriskuje žádné prozrazení.
Vygenerujete 1MB klíč. Dešifrujete první zprávu, při dešifrování se útočník zmocní klíče. Pak už si zprávy můžete ničit, jak chcete, můžete dělat jaká opatření chcete, ale bude vám to k ničemu, protože útočník má váš klíč a jednoduše si dešifruje všechny zprávy, které jsou vám určené.
pisete: V mém případě musí útočník počkat, až budu něco dešifrovat já. V takovém okamžiku může jednu zprávu dešifrovat a riskuje, že se prozradí...
zde sam uvadite duvod proc musi byt klavesnice (aspon jedna klavesa) a display na tokenu..
vazne akceptujete kryptograficky system, ktery hrozi prozrazenim byt jedne zpravy??
a ted ke me:
k cemu bude utocnikovi muj klic zasifrovany symetrickou sifrou? pokud chcete namitnout ze odposlechne i heslo k symetricke sifre a klic desifruje, tak stejne tak muze odposlechnout vas pin k tokenu a token vam ukrast nebo si ho v horsim pripade jen pujcit (k obojimu potrebuje fyzicky pristup a ten jsme na zacatku vzdy povazovali za nutnou podminku bezpecnosti)
pokud se tak stane je:
-veskera vase minula komunikace je prozrazena.
-moje minula komunikace je v bezpeci
v pripade budouci komunikace
-jste vy v relativne v bezpeci (bud si vsimnete ze vam karta chybi, nebo vas bude muset utocnik navstivit znova, moznost ze je v karte backdoor a klic se podari zkopirovat ted radsi vyloucime, protoze vyrobce prece tvrdi ze neni)
-ja si toho bud vsimnu a jsem zcela v bezpeci (vymenim klic), nebo si toho nevsimnu a jsem v pr.. pokud me nezachrani nejaky protokol (napr. predem domluvena casove zavisle transformace klice)
a znova opakuji: ja jsem ohrozen pouze v pripade fyzickeho napadeni, vam, hrozi jednak prolomeni pouzite asymetricke sifry jako takove (vsimnete si pod jakym clankem diskutujeme), a pokud pracujete na PC pripojenem do internetu hrozi prozrazeni NEJMENE jedne zpravy (pokud mate token s klavesnici a jste pozorny) i pomoci vzdaleneho utoku
Žádný důvod, proč by na tokenu musela být klávesnice nebo displej nikde neuvádím. Porovnávám dva systémy - jeden, ve kterém může útočník se značným úsilím dešifrovat jednu zprávu, a druhý, ve kterém útočník mnohem snáz získá přístup k dešifrovacímu klíči a může od té doby nepozorovaně dešifrovat všechny následující zprávy až do vyčerpání klíče. Nemůžu si pomoci, ale ten druhý systém je mnohem méně bezpečný.
Pokud tvrdíte, že váš systém je bezpečnější, než symetrická šifra, nemůžete jej chránit to méně bezpečnou symetrickou šifrou. Tím totiž bezpečnost celku snižujete na bezpečnost té symetrické šifry. Celý řetěz je jen tak silný, jako je jeho nejslabší článek. Je to jako byste měl velmi bezpečný trezor, a klíč od něj měl uložený v obyčejné kasičce chráněné běžnou fabkou.
Utajení minulých zpráv lze při použití asymetrické kryptografie triviálně vyřešit tak, že se pro každou zprávu použije nový klíč. Jediný požadavek navíc je, že musíte mít pro komunikaci i zpětný kanál, který stejně bude potřeba v drtivé většině případů.
Zkuste si porovnat, kolik je ukradených počítačů nebo kolik je neoprávněných přístupů k počítačům, s počtem šifrovacích algoritmů, které byly považovány za bezpečné, které se za dobu jejich aktivního používání podařilo prolomit.
Mimochodem, když předpokládáte dešifrovací počítač připojený k internetu v případě asymetrické kryptografie, měl byste stejně předpokládat počítač připojený k internetu i v případě použití Vernamovy šifry. Takže opět porovnáváte prozrazení nejméně jedné zprávy s prozrazením jedné zprávy, dešifrovacího klíče a tím i všech budoucích zpráv.
- jak jinak nez bez klavesnice na tokenu zabranite tomu, aby utocnik neposlal do tokenu 1000 pozadavku okamzite po zasunuti do pc?
-tvrdim (a ne jen ja) ze vernamova sifra je bezpecnejsi pro prenos zpravy (symetrickou sifrou chranim jen klic ulozeny na koncovem zarizeni)
-chcete pro kazdou zpravu pouzivat jiny privatni klic?? to jako vas budu muset kontaktovat pred odeslanim zpravy abyste si vygeneroval novy privatni klic a poslal mi jeho verejnou cast abych vam mohl zpravu zasifrovat a odeslat? a to vse ma byt trivialni a praktictejsi nez OTP ??
- zkuste si porovnat kolik je ukradenych pocitacu a kolik je online utoku, podivejte se na nazev tohoto clanku, mame dve sifry u jedne existuje matematicky dukaz neprolomitelnosti, u druhe ne, pouze se predpoklada ze je ZATIM bezpecna, ale jakmile dojde k prolomeni, bude mozno desifrovat veskerou probehlou komunikaci, tuto zatim bezpecnou sifru (klic) chranite zarizenim treti strany, ktera neco deklaruje, vazne si spravny paranoik vybrat tu druhou?
mozna jsem Vas spatne pochopil, ale zdalo se mi ze jste ze zacatku tvrdil, ze kdyz mate cipovou kartu, token ci HSD jste na tom lip i na pocitaci pripojenem do internetu nez ja s OTP na ostrovnim PC. (protoze tak to prece delaji velci hosi, myslim ze padlo neco i o NSA :) )
Už jsem to psal. Ten token nemusí mít vlastní klávesnici a displej, ale může použít jiné zařízení - a zároveň jiné, než na kterém se dešifruje. Třeba mobilní telefon.
Jinak také záleží na tom, co vše na počítači útočník ovládá. V běžných případech (což není to, co tady teď řešíme) se mu nepodaří vyměnit ovladače tokenu, takže zaslání 1000 požadavků by znamenalo, že na uživatele vyskočí 1000 oken pro zadání PINu.
Pokud předpokládáte, že útočník umí symetrickou šifru rozluštit, nechráníte jí uložený klíč nijak.
Nemusíte před odesláním každé zprávy žádat o nový klíč, protože nový klíč pošlu jako odpověď na přijatou zprávu. Ano, je to pořád praktičtější, než několik let dnem i nocí střežit starý počítač jako oko v hlavě.
Vždyť na bezpečnosti té "zatím bezpečné" šifry závisí vaše řešení. Jakmile dojde k prolomení, nemáte nijak chráněný váš šifrovací a dešifrovací klíč.
To jsem netvrdil. Ale pokud máte dešifrovací uložený nechráněně na ostrovním PC, jste na tom skutečně nesrovnatelně hůř, než kdybyste používal některou z uznávaných šifer. Protože získat přístup k ostrovnímu PC se podařilo už mnohokrát, zatímco prolomit tyhle šifry se zatím nepodařilo.
dobre rano :)
-a jaky je rozdil mezi ostrovnim pocitacem a mobilnim telefonem ?? neni to nahodou to same?
-pokud utocnik umi rozlustit symetrickou sifru, musi v mem pripade fyzicky pro klic ke me domu, ve vasem mu staci kdekoliv po ceste odposlechnout zpravu
-budete mit pro kazdeho s kym komunikujete vlastni token?, u kazde zpravy budete nezavislym kanalem overovat identitu?
-prolomeni symetricke sifry muj klic ohrozi jedine v pripade jeho fyzickeho odcizeni
-vernamova sifra neni uznavana??
-nikdo nikdy nerekl ze OTP klic bude lezet jen tak, od zacatku stale opakuju ze je zasifrovany, paranoici jej nosi stale u sebe, maji ho v trezoru, schovany pod rohozkou....
jedine riziko systemu OTP je NEPOZOROVANE ziskani klice (nemusim tomu zabranit, staci to jen zjistit), mira toho rizika je pro mne prijatelna
Rozdíl mezi mobilním telefonem a ostrovním počítačem je v tom, že z ostrovního počítače se dá ten klíč získat velice snadno, zatímco z mobilního telefonu vůbec, protože v něm není.
Pokud útočník umí rozluštit symetrickou šifru, je pro něj návštěva vašeho domu ten nejmenší problém.
Výhoda asymetrické kryptografie je v tom, že můj veřejný klíč může znát libovolný počet odesílatelů. To naopak vy potřebujete pro každého odesílatele zvláštní klíč.
Chtěl bych vidět, jak ten váš starý počítač nosíte stále s sebou, a jak jste zajistil, aby byl bezpečný.
To, že je klíč zašifrovaný podle vás nedůvěryhodnou šifrou, je právě jednoznačný ukazatel toho, že se jedná o samodomo super bezpečnou šifru, jejíž bezpečnost je založena na tom, že autor o kryptografii jen něco matně tuší. Princip je stále stejný - autor prohlásí nějakou uznávanou šifru za nedůvěryhodnou, vymyslí vlastní šifru, a klíčový prvek téhle vlastní šifry, jehož znalost znamená rozluštění zprávy, zašifruje tou údajně nedůvěryhodnou šifrou. Čímž zajistí, že bezpečnost celého řešení nemůže být vyšší než bezpečnost té údajně nedůvěryhodné šifry.
Obrovské riziko toho vašeho systému je, že se útočníkovi podaří získat (de)šifrovací klíč. To je riziko velmi reálné - ona se všechna ta opatření proti úniku privátního klíče nedělají nadarmo. ještě jsem neslyšel, že by nějaká banka doporučovala, že si má klient flash disk s privátním klíčem schovat pod rohožku, nebo že by to doporučoval někdo při práci s kvalifikovaným podpisem. Naproti tomu riziko prolomení některé z uznávaných symetrických nebo asymetrických šifer je pouze teoretické.
tohle uz zacina byt komedie takze jen zkracene:
-vernamova sifra neni zadny muj samodomo vymysl
-hlavni problem cipovych karet a security tokenu soucasne generace (bez klavesnice a displeje) neni v sifre, ale nemoznosti kontroly jakou operaci provadim
- pokud chcete do operaci mezi cipovou kartou a pc vlozit jeste mobil, abyste byl schopen transakce kontrolovat nevidim zadneho rozdilu mezi vasim a mym resenim, oba pouzivame "ostrovni system" ja volim jednorazovou sifru protoze je pro mne vyhodnejsi nez asymetricka, u vas je to obracene princip zustava stejny: v soucasne dobe neni mozne za pouziti zadnych hyper-super udelatek bezpecne sifrovat na jedinem PC pripojenem k internetu.
-nosit s sebou stary pocitac nemusim, staci mi nosit ten klic; na microsd pod jazykem ;)
-kdyz jste se zkousel vykroutit z toho, ze v pripade prozrazeni privatniho klice u asymetricke kryptografie je kompromitovana veskera minula komunikace, (coz je zakladni vlastnost systemu asymetrickych sifer a nechapu proc se to vubec snazite vyvratit) napsal jste: "Utajení minulých zpráv lze při použití asymetrické kryptografie triviálně vyřešit tak, že se pro každou zprávu použije nový klíč. " kdyz vas na to upozornuji ze je to nesmysl ktery zcela popira vsechny vyhody asymetricke sifry, pisete "Výhoda asymetrické kryptografie je v tom, že můj veřejný klíč může znát libovolný počet odesílatelů. " takze mate jeden nebo vice privatnich klicu?!?!?
Váš samodomo výmysl je ukládat klíč k Vernamově šifře bez zabezpečení po dobu několika let. Tomuhle "detailu" se ve svých komentářích sice pořád vyhýbáte, což ale nic nemění na tom, že je to nejslabší místo celého vašeho výmyslu, tak slabé, že se to dostává někam na úroveň těch nejjednodušších šifer. Jak už jsem psal, máte sice nedobytný trezor, ale klíč od něj ukládáte do kasičky zamčené obyčejnou fabkou. Vy tu pořád básníte o tom trezoru, já vás pořád upozorňuju, že k tomu klíči se dostane každý, kdo bude chtít.
ale my se tady o zadnem pasovani pocitacu nebavime, na zacatku tu kolega psal , ze je dnes jednodussi prenest "bezpecne" 10GB OTP klice (zasifrovany na SDkarte) nez driv, a proto ze je pouzivani OTP je dnes jednoussi nez v minulosti
pokud budu muset nekam prevezt cele zarizeni, bude to za me mobil nebo tablet = moderni ekvivalent stareho pocitace......
to ze jsem napsal "stary pocitac" vzniklo tak, ze se tady na jeden celou dobu divam, a kdybych mel ted v sobotu vecer vstat a "zrealizovat bezpecnou komunikaci chudeho muze" tak ho vezmu a pouziju...