AES-256-GCM
Autentizované šifrovanie textu aj databázy — overuje sa nielen obsah, ale aj jeho pravosť. Akýkoľvek zásah do zašifrovaných dát sa pri dešifrovaní okamžite odhalí.
Ako systém chráni dáta
HEX-Pulse nie je appka, ktorá tvrdí, že je bezpečná — je appka, ktorá to vie ukázať vrstvu po vrstve. Nižšie je presne to, čo sa deje pri jednom šifrovaní, a potom celý zoznam skutočne implementovaných opatrení.
482913
Ukážka TOTP kódu — mení sa každých 10 sekúnd, presne ako v appke
Šifrovanie krok za krokom
Ochrana nie je jeden zámok, ale postupnosť nezávislých vrstiev, kde každá rieši iný typ hrozby. Aby sa niekto dostal k dátam, musel by prekonať všetky naraz — nestačí prelomiť len jednu.
Appka overí meno a heslo — uložené nie ako čitateľný text, ale ako matematický odtlačok cez Scrypt. Aj keby niekto videl uložený súbor, heslo z neho spätne nezíska.
Pred každým šifrovaním, dešifrovaním, exportom alebo vymazaním appka vyžiada jednorazový 6-miestny TOTP kód z telefónu. Aj keby niekto poznal heslo, bez telefónu sa ďalej nedostane.
Text sa šifruje AES-256-GCM — rovnakým štandardom, aký používajú banky. Nešifruje sa len obsah, ale aj jeho pravosť: zmena čo i len jedného znaku výstupu sa pri dešifrovaní okamžite spozná. Heslo sa pred použitím spracuje cez Scrypt, ktorý zámerne robí každý pokus o uhádnutie hesla pomalým.
Databáza má vlastnú, samostatnú vrstvu ochrany: kľúč k nej sa matematicky rozdelí na tri nezávislé časti — Shamirovo zdieľanie tajomstva. Jedna zostáva v počítači, ďalšie dve mimo neho. Potrebné sú všetky tri naraz.
Ak appku istý čas nepoužívaš, sama sa zamkne a reálne vymaže rozpracované kľúče z pamäte počítača. Appka tiež bráni snímaniu obrazovky, ponúka virtuálnu klávesnicu a spomaľuje opakované nesprávne pokusy o heslo.
Každá dôležitá udalosť sa zapíše do denníka previazaného hashom s predchádzajúcim záznamom. Spätná zmena histórie by pretrhla celú reťaz — a appka to spozná.
Princípy
Každý mechanizmus má jasný dôvod — nič sa nepridáva pre efekt, nič sa nevynecháva pre pohodlie. Zoznam nižšie obsahuje výhradne to, čo appka naozaj má implementované.
Prvá vrstva — čo chráni jedno heslo alebo záznam.
Autentizované šifrovanie textu aj databázy — overuje sa nielen obsah, ale aj jeho pravosť. Akýkoľvek zásah do zašifrovaných dát sa pri dešifrovaní okamžite odhalí.
Zámerne pomalé odvodenie kľúča z hesla, aby bol hrubou silou nedostupný — bežný počítač by na uhádnutie krátkeho hesla potreboval namiesto sekúnd roky.
Druhý faktor priamo pri šifrovaní a dešifrovaní textu — súbor, bez ktorého heslo samotné nestačí.
6-miestny kód meniaci sa v reálnom čase, generovaný na telefóne, vyžadovaný pred každou citlivou operáciou na PC.
Autentizované šifrovanie textu aj databázy — overuje sa nielen obsah, ale aj jeho pravosť. Akýkoľvek zásah do zašifrovaných dát sa pri dešifrovaní okamžite odhalí.
Zámerne pomalé odvodenie kľúča z hesla, aby bol hrubou silou nedostupný — bežný počítač by na uhádnutie krátkeho hesla potreboval namiesto sekúnd roky.
Druhý faktor priamo pri šifrovaní a dešifrovaní textu — súbor, bez ktorého heslo samotné nestačí.
6-miestny kód meniaci sa v reálnom čase, generovaný na telefóne, vyžadovaný pred každou citlivou operáciou na PC.
Kľúče nie sú nikdy na jednom mieste vcelku.
Kľúč k databáze hesiel sa rozdelí na tri nezávislé podiely. Potrebné sú všetky tri naraz — žiadny kompromis, žiadna náhradná cesta dnu.
Iný účel, iný pomer: cieľom je odolnosť voči strate jedného fyzického miesta, nie maximálna prísnosť ako pri databáze.
Bez ručného odpisovania dlhých reťazcov — podiel sa prenesie fotoaparátom telefónu alebo fyzickým USB kľúčom.
Kľúč k databáze hesiel sa rozdelí na tri nezávislé podiely. Potrebné sú všetky tri naraz — žiadny kompromis, žiadna náhradná cesta dnu.
Iný účel, iný pomer: cieľom je odolnosť voči strate jedného fyzického miesta, nie maximálna prísnosť ako pri databáze.
Bez ručného odpisovania dlhých reťazcov — podiel sa prenesie fotoaparátom telefónu alebo fyzickým USB kľúčom.
Čo sa deje počas bežnej práce s appkou, nielen okolo šifrovania.
Zašifrovaný či dešifrovaný text sa zobrazí až po kliknutí, potom sa po 10 sekundách znova automaticky skryje.
Skopírovaný citlivý text sa zo schránky sám vymaže po 5 sekundách.
Ochrana pri zadávaní hesla proti programom, ktoré zaznamenávajú stláčanie klávesov.
Pri opakovaných zlých pokusoch — prihlásenie, TOTP, dešifrovanie — sa čakanie medzi pokusmi exponenciálne predlžuje.
Priebežné hodnotenie pri zadávaní, nie až po odoslaní.
Každý používateľ na tom istom počítači má vlastnú, od ostatných úplne nezávislú databázu. Voliteľný zdieľaný trezor pre kolegov je od osobného trezoru oddelený.
Zašifrovaný či dešifrovaný text sa zobrazí až po kliknutí, potom sa po 10 sekundách znova automaticky skryje.
Skopírovaný citlivý text sa zo schránky sám vymaže po 5 sekundách.
Ochrana pri zadávaní hesla proti programom, ktoré zaznamenávajú stláčanie klávesov.
Pri opakovaných zlých pokusoch — prihlásenie, TOTP, dešifrovanie — sa čakanie medzi pokusmi exponenciálne predlžuje.
Priebežné hodnotenie pri zadávaní, nie až po odoslaní.
Každý používateľ na tom istom počítači má vlastnú, od ostatných úplne nezávislú databázu. Voliteľný zdieľaný trezor pre kolegov je od osobného trezoru oddelený.
Ochrana histórie, súborov a spôsobu, akým sa appka vôbec aktualizuje.
Každý záznam previazaný s predchádzajúcim — ochrana proti spätnému sfalšovaniu histórie.
Súbory uložené výhradne v šifrovanej podobe. Uložené HTML stránky bežia bez JavaScriptu a bez prístupu na internet.
Appka prijíma len súbory vlastného formátu, s ochranou proti zip-bombe aj zip-slip útoku.
Inštalátor podpísaný Adminovým kľúčom appky len upozorní na novšiu verziu — nikdy sa neinštaluje sama, bez dohľadu.
Okno appky sa nezobrazí v screenshotoch ani v nahrávaní obrazovky.
Appka zablokuje použitie pri podozrivo posunutom systémovom čase a upozorní, ak hibernácia beží bez aktívneho šifrovania disku.
Každý záznam previazaný s predchádzajúcim — ochrana proti spätnému sfalšovaniu histórie.
Súbory uložené výhradne v šifrovanej podobe. Uložené HTML stránky bežia bez JavaScriptu a bez prístupu na internet.
Appka prijíma len súbory vlastného formátu, s ochranou proti zip-bombe aj zip-slip útoku.
Inštalátor podpísaný Adminovým kľúčom appky len upozorní na novšiu verziu — nikdy sa neinštaluje sama, bez dohľadu.
Okno appky sa nezobrazí v screenshotoch ani v nahrávaní obrazovky.
Appka zablokuje použitie pri podozrivo posunutom systémovom čase a upozorní, ak hibernácia beží bez aktívneho šifrovania disku.
Doplnková ochrana
Appka chráni dáta aj bez toho. HEX VPN je voliteľné rozšírenie ochrany na úroveň celej siete — vlastná, bezplatná VPN cez domáci router, bez tretej strany a bez mesačných poplatkov.
Medzi zariadením a domácim routrom sa vytvorí šifrovaný tunel. Všetka internetová prevádzka zariadenia ide cez tento tunel, akoby bolo fyzicky pripojené priamo doma — aj na cudzej alebo verejnej Wi-Fi sieti tak nikto v tej istej sieti nevidí, čo sa cez ňu prenáša.
Tunel beží na protokole OpenVPN — nie na staršom a kryptograficky prelomiteľnom PPTP. Certifikát si vygeneruje priamo domáci router a nikam sa neposiela; k tunelu sa dá pripojiť len so súborom, ktorý router sám vydá. Na rozdiel od platených VPN služieb tretích strán tu nie je žiadny cudzí poskytovateľ, ktorému by bolo treba dôverovať — tunel vedie vždy len do vlastnej domácej siete.
Nie je to nutnosť, len odporúčaná doplnková ochrana. Návod na nastavenie je priamo v appke aj v mobilnej aplikácii.