Multi-functional Java cryptographic tool with graphical user interface
Thesis title: | Multifunkční krypto-nástroj v Javě s grafickým rozhraním |
---|---|
Author: | Daum, Martin |
Thesis type: | Diplomová práce |
Supervisor: | Pecinovský, Rudolf |
Opponents: | Oraný, Vladimír |
Thesis language: | Česky |
Abstract: | V práci je navržena a implementována kompaktní desktopová open-source aplikace CryptoGUI s grafickým rozhraním v jazyce Java, která může sloužit jako "švýcarský nožík" pro různé s kryptografií související operace, např. generování RSA/EC klíčů a X.509 certifiká-tů, RSA šifrování/dešifrování, manipulace s úložišti klíčů a certifikátů (keystore) (JKS, PKCS12), počítání hashů, konverze/kódování dat (např. Base64).Pro kryptografické funkce jsou využity knihovny Java Security API a knihovny Bouncy-Castle. Grafické rozhraní je vytvořeno pomocí Java Swing. Výhoda aplikace oproti např. konzolovým nástrojům OpenSSL nebo Java Keytool spočívá ve snadnosti použití (grafické uživatelské rozhraní), oproti existujícím grafickým nástrojům díky přítomnosti velkého počtu praktických funkcionalit v jedné aplikaci.Aplikace využívá Spring framework pro zajištění modularizace a rozšiřitelnosti aplikace a oddělení aplikační logiky od logiky grafického uživatelského rozhraní. Textová část práce se věnuje návrhu a architektuře aplikace a uživatelské příručce. |
Keywords: | Java Spring; Spring framework; kryptografie; RSA; Java; kryptografie nad eliptickými křivkami; EC; digitální certifikát; X.509; hash; keystore; Java Swing; grafické uživatelské rozhraní; BouncyCastle |
Thesis title: | Multi-functional Java cryptographic tool with graphical user interface |
---|---|
Author: | Daum, Martin |
Thesis type: | Diploma thesis |
Supervisor: | Pecinovský, Rudolf |
Opponents: | Oraný, Vladimír |
Thesis language: | Česky |
Abstract: | This thesis is dedicated to the design and implementation of a compact desktop open-source application called CryptoGUI with a graphical user interface using the Java lan-guage that may serve as a “Swiss army knife” for various operations related to practical cryptography, for instance RSA/EC key and X.509 certificate generation, RSA encryp-tion/decryption, keystore manipulation (JKS, PKCS12), hash computation, data conver-sion/encoding (for instance Base64).Java Security API libraries and BouncyCastle libraries are be used for cryptographic fea-tures. The graphical interface was created using Java Swing. The application’s advantage over console tools such as OpenSSL or Java Keytool lies in the ease of use (graphical user interface), the advantage over existing graphical tools is in the presence of a large number of practical features inside one application.The application makes use of the Spring framework to ensure modularity and extensibility and the separation of the application logic from the graphical user interface. The textual part of the thesis is dedicated to the description of the design and the architecture of the application and the user guide. |
Keywords: | Spring framework; cryptography; digital certificate; X.509; hash; keystore; Java Swing; Java; Java Spring; BouncyCastle; RSA; elliptic curve cryptography; EC; graphical user interface |
Information about study
Study programme: | Aplikovaná informatika/Podniková informatika |
---|---|
Type of study programme: | Magisterský studijní program |
Assigned degree: | Ing. |
Institutions assigning academic degree: | Vysoká škola ekonomická v Praze |
Faculty: | Faculty of Informatics and Statistics |
Department: | Department of Information Technologies |
Information on submission and defense
Date of assignment: | 14. 2. 2018 |
---|---|
Date of submission: | 22. 6. 2018 |
Date of defense: | 19. 9. 2018 |
Identifier in the InSIS system: | https://insis.vse.cz/zp/64815/podrobnosti |