Download Link : https://fastupload.io/a8addea77dc10b70
This project introduces Encrypto, a Java-based application designed to enhance the security of Microsoft Word documents through encryption and decryption functionalities
Key Features
- Robust Encryption: Employs the Advanced Encryption Standard (AES) algorithm, a widely recognized and secure encryption standard, to safeguard document content...
- User-Friendly Interface: Provides a simple and intuitive graphical user interface (GUI) built with Java Swing, making encryption and decryption processes accessible to users.
- Seamless Word Integration: Utilizes the Apache POI library to interact with Word documents (.docx), enabling the extraction, modification, and saving of encrypted content within the document structure..
- Base64 Encoding: Converts encrypted binary data into a text-based format using Base64 encoding, ensuring compatibility with the text-based nature of Word documents.
- Efficient Development: Leverages Maven for build automation and dependency management, streamlining the development process and ensuring project consistency.
- Cross-Platform Compatibility: Developed in Java, the application is designed to run on various operating systems, maximizing its reach and usability.
- Standalone Executable: Utilizes Launch4j to package the application into a standalone executable, simplifying distribution and eliminating the need for users to have Java installed.
How Encrypto Works
- User Selection: The user chooses to either encrypt or decrypt Word documents within a specified folder.
- Key Management: The application handles the generation or loading of the secret key used for encryption and decryption.
- Encryption:
- Plaintext Extraction: The original content of the Word document is extracted.
- AES Encryption: The extracted text is encrypted using the AES algorithm and the secret key.
- Base64 Encoding: The encrypted binary data is converted to Base64 format.
- Text Replacement: The original text in the document is replaced with the Base64-encoded encrypted text.
- Document Saving: The modified document, now containing encrypted content, is saved.
- Decryption:
- Encrypted Text Retrieval: The Base64-encoded encrypted text is retrieved from the document.
- Base64 Decoding: The encoded text is converted back to binary form.
- AES Decryption: The binary data is decrypted using the AES algorithm and the secret key.
- Text Replacement: The encrypted text is replaced with the original decrypted content.
- Document Saving: The restored document is saved.
Data Structure Performance
The project evaluated the performance of different data structures (linked lists, arrays, and hashmaps) for encryption and decryption tasks. Hashmaps emerged as the most efficient choice, offering a balance of speed and memory usage.
Class Diagram
Project Team
- Ari Jaya Teguh (2702403996) - Developer
- Michael Lee Koesumo (2802470553) - Developer
- Riki Awal Syahputra (2802471404) - Developer Leader
Disclaimer:
This project is primarily an educational endeavor and may not encompass all the complexities of real-world document encryption systems.
License:
This project is licensed under the MIT License.