Vytvorte aplikáciu, ktorá umožní používateľovi šifrovať a dešifrovať súbory symetrickým kľučom K, náhodne vygenerovaným a uloženým niekde mimo zašifrovaného súboru (popr. správy). Použite symetrickú kryptografiu. Na riešenie zadania využite hotove kryptograficke API, (nepoužívať vlastné implementácie kryptografických funkcií).
Pokyny:
1. Využite existujúce kryptografické funkcie / API, nie však celé hotové cudzie riešenie.
2. Vyberte si jeden zo štandardných programovacích jazykov: Java, C/C++, Python. V prílohe zadania sú odkazy na stránky, z ktorých sa dá odraziť pri tvorbe kryptografickej časti zadania.
3. Napíšte k aplikácii stručnú používateľskú dokumentáciu, ktorá obsahuje informácie:
A. čo ste použili (jazyk, knižnica, zdroje),
B. schematicky, aký je formát zašifrovaného súboru
C. aké je to rýchle: koľko trvá programu šifrovanie 1GB súboru
D. ako sa aplikácia kompiluje/inštaluje,
E. ako sa aplikácia používa,
F. bezpečnostné odporúčania pre používateľa/komentáre.
Pozn.: Pri výbere šifrovacích funkcií a veľkosti kľúča, treba klasť dôraz aj bezpečnostné odporúčania ohľadne šifrovania.
Subory odovzdate do AIS miesto odovzdania pre váš vybraný systém najneskôr do terminu uzatvorenia miesta odovzdania A do hodnotiaceho systému https://uvoddopocitacovejbezpecnosti.herokuapp.com/ . V prípade neodovzdania, alebo neskoreho odovzdania bude za zadanie pridelene 0 bodov.
Odkazy:
Java:
http://docs.oracle.com/javase/7/docs/technotes/guides/security/crypto/CryptoSpec.html
– kompletny popis, Cipher class aj Mac class, s prikladmi
http://www.codejava.net/coding/file-encryption-and-decryption-simple-example
– priklad jadra aplikacie v Jave
https://www.bouncycastle.org/ zbierka API funkcií pre oblasť kryptografie
.NET/C#:
https://msdn.microsoft.com/en-us/library/0ss79b2x(v=vs.110).aspx
– uvod + vid dalsie stranky
https://msdn.microsoft.com/en-us/library/bb397867(v=vs.110).aspx
– priklad / jadro aplikacie
http://www.codeproject.com/Articles/26085/File-Encryption-and-Decryption-in-C
– kratky priklad
Python:
https://www.dlitz.net/software/pycrypto/
– je vela kniznic, ale tato je asi najviac odporucana
http://eli.thegreenplace.net/2010/06/25/aes-encryption-of-files-in-python-with-pycrypto
– jadro aplikacie
https://www.bouncycastle.org/ zbierka API funkcií pre oblasť kryptografie
Necessary cookies are absolutely essential for the website to function properly. This category only includes cookies that ensures basic functionalities and security features of the website. These cookies do not store any personal information.