Simple File Encryptor
Máte v počítači súbor, ktorý obsahuje nejaké citlivé informácie (heslá, zmluvy, dokumenty, fotografie, videá, nahrávky alebo niečo iné, čo chcete chrániť)? Potom táto aplikácia je to, čo hľadáte. Pravda, ochrana vašich súborov pravdepodobne neobstojí pred špecialistov tajných služieb, ale vaši priatelia, rodina alebo ľudia, s ktorými zdieľate počítač, nemajú takmer žiadnu šancu dostať sa k vašim informáciám. Ani správcovi systému, ktorí nepotrebujú heslo k vášmu Windows účtu, aby sa dostali k vašim súborom.
Aplikáciu som napísal pre vlastnú potrebu niekedy na jar 2020, pretože som nemohol nájsť na internete nič dostatočne jednoduchého a spoľahlivého, čo by plnil rovnakú funkciu a zároveň som mal vďaka koronavirovým prázdninám fúru voľného času.
Súčasný stav
Na účely súťaže som aplikáciu značne vylepšil. Jedným z hlavných
rozdielov je schopnosť šifrovať a dešifrovať akýkoľvek typ súborov,
vrátane binárnych (napríklad súbory aplikácií Office alebo s príponou
.pdf
). Ďalším rozdielom je pridanie prípony .ecp
k
zašifrovaným súborom, ktorá umožňuje okamžite rozlíšiť súbor
zašifrovaný od nezašifrovaného, aj keď napríklad majú rovnaký názov. V
neposlednom rade bola zvýšená bezpečnosť šifrovanie zašifrovaním
samotného hesla pred jej použitím.
Plány do budúcna
Ak budem mať čas a motiváciu pokračovať vo vylepšovaní aplikácie, rád by som pridal nasledujúce funkcie:
- Možnosť vybrať zložku a zašifrovať / odšifrovat všetky súbory v nej naraz
- Nastaviť súborom s príponou
.ecp
nejakou ikonu, ktorá by sa u nich zobrazovala v prieskumníkovi súborov - Umožnenie dešifrovanie súboru s príponou
.ecp
jednoduchým jeho otvorením a zadaním hesla do vyskakovacieho okna - Hromada ďalších vecí, na ktoré si teraz nespomínam
Ako to funguje
Aplikácia šifruje súbory na princípe vylepšené Vigenèrovy šifry. Tá funguje na princípe sčítanie znaku v šifrovanom textu a hesle. Rozdiel medzi obyčajnou Vigenèrovou šifrou a tou použitú spočíva v tom, že nie sú kódované jednotlivé znaky, ale jednotlivé bajty. Súbor je (postupne) prečítaný ako séria bajtov (číslo 0 až 255) a následne sa do takejto formy prevedie aj zadané heslo. Následne sa len spočíta prvý bajt súboru s prvým bajtom heslá a výsledok prepíše prvý bajt súboru. Heslo je zopakované toľkokrát, aby malo rovnakú dĺžku ako súbor. Pri dešifrovanie je postup rovnaký, ale namiesto pridania bajtov sa bajty odpočítajú.
Vzhľadom k tomu, že pôvodné heslo, ani jeho odtlačok (hash) sa do zašifrovaného súboru neukladajú, je možné pre dešifrovanie použiť akékoľvek heslo, pretože aplikácie nespozná, či je správne či zlé. Dôsledkom použitia zlého hesla je však nečitateľný a poškodený súbor. Niektorí toto môžu považovať za výhodu, iní za nevýhodu.
Tvorcovia
- Jan Štěch (ja)
Programovacie jazyky
Aplikácia je naprogramovaná v jazyku C# a využíva technológiu WinForms.
Ľudské jazyky
Aplikácia je anglicky, avšak pochopiť jej fungovanie by nemalo byť ťažké ani pre tých, ktorí sami anglicky nevedia.
Hodnotenie poroty
Tento projekt sa zúčastnil súťaže ITnetwork summer 2020.
porotca | bodov | hodnotenie |
---|---|---|
David Čapka |
8.5 | Program robí to, čo sa od neho očakáva a robí to dobre. Zaujímavé je, že sa nebojí rovno zmazať pôvodný súbor a nahradiť ho zašifrovanú kópií, je tam ale potvrdenie a zaistí sa tým, že bude naozaj len zašifrovaný, takže prečo nie. Určite by bolo zaujímavejšie použiť nejaký skutočný šifrovací algoritmus, tyhle substitučnú šifry sú skôr také akademické hračky, binárky v sebe majú bežne nejaké známe sekvencie hlavičiek pre operačný systém, ktoré obsahujú aj ASCII texty, takže teoreticky nie je problém frekvenčný analýzou prísť na heslo. Samozrejme to prakticky nikto neurobí, bolo by k tomu potreba veľa vedomostí a času a tie aj zmiňuješ, že ide skôr o rodinné využitie. Pri dešifrovanie by sa malo zobrazovať asi iné potvrdenie, ktoré by vysvetľovalo, čo sa môže stať. Inak k tomu asi nemám výhrad, keby si to chcel nejako výraznejšie propagovať, urobil by som krajší a jednoduchšie UI. |
Samuel Hél |
8 | Aplikácia funguje správne, ako by mala. Jej ovládanie je jednoduché, tak to môže bez problémov využiť aj úplný laik. Páči sa mi funkcia zmazanie súboru, ktorý bude zašifrovaný, aspon nezostane nezašifrované kópie súboru. Čo sa týka bezpečnostného algoritmu, tak si tým nie som úplne istý. Taktiež je veľmi zlé, ak niekto bude chcieť dešifrovať súbor so zlým heslom. Súbor sa potom zle dešifruje, bude nečitateľný (OK), lenže pôvodný majiteľ sa k pôvodným dátam už nedostane. Ak teda nemá zálohu, tak je jeho súbor navždy stratený. Tento systém je však dobrý, ak by niekto robil Brute-force útok. Pre domáce použitie je program asi vhodný, ale dal by som si pozor na tú kópiu. |
michal Čapka |
8 | Jednoduchá, intuitívna aplikácia, ktorá plní svoju funkciu. Určite si dokážem predstaviť, že by som pre ňu ja sám našiel využitie. |
Galéria
Stiahnuť
Stiahnutím nasledujúceho súboru súhlasíš s licenčnými podmienkami
Stiahnuté 13x (567.26 kB)
Aplikácia je vrátane zdrojových kódov v jazyku C#