{"id":24355496,"url":"https://github.com/sdanielsilva/simpleimageencryptor","last_synced_at":"2026-06-04T14:31:07.689Z","repository":{"id":262529029,"uuid":"887560038","full_name":"sDanielSilva/SimpleImageEncryptor","owner":"sDanielSilva","description":"A versatile file encryption tool that securely encrypts and decrypts image and other file types with AES and DES algorithms, supporting multiple modes and easy key management.","archived":false,"fork":false,"pushed_at":"2024-11-19T17:05:56.000Z","size":2087,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-03-12T07:32:51.343Z","etag":null,"topics":["aes","cbc","cipher","cryptography","cryptography-tools","data-protection","des","ecb","encryption","file-encryption","image-encryption","iv-generation","java","key-management","secure-file-storage","security"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/sDanielSilva.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-11-12T22:15:09.000Z","updated_at":"2024-11-19T17:06:00.000Z","dependencies_parsed_at":"2024-11-12T23:26:20.101Z","dependency_job_id":"016ef104-d75b-4279-b414-8d0159881306","html_url":"https://github.com/sDanielSilva/SimpleImageEncryptor","commit_stats":null,"previous_names":["sdanielsilva/simpleimageencryptor"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/sDanielSilva/SimpleImageEncryptor","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sDanielSilva%2FSimpleImageEncryptor","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sDanielSilva%2FSimpleImageEncryptor/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sDanielSilva%2FSimpleImageEncryptor/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sDanielSilva%2FSimpleImageEncryptor/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sDanielSilva","download_url":"https://codeload.github.com/sDanielSilva/SimpleImageEncryptor/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sDanielSilva%2FSimpleImageEncryptor/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28003937,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-12-24T02:00:07.193Z","response_time":83,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["aes","cbc","cipher","cryptography","cryptography-tools","data-protection","des","ecb","encryption","file-encryption","image-encryption","iv-generation","java","key-management","secure-file-storage","security"],"created_at":"2025-01-18T17:57:33.610Z","updated_at":"2025-12-24T15:08:28.509Z","avatar_url":"https://github.com/sDanielSilva.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 🔐 Simple Image Encryptor - DES/AES Encryption\n\nWelcome to **Simple Image Encryptor**, a tool that allows you to **encrypt and decrypt images** using DES and AES encryption with two modes: **ECB** and **CBC**. This project is a demonstration of how DES and AES encryption works in a simple, easy-to-understand way, making it perfect for learning and experimenting with cryptography!\n\n✨ **Key Features:**\n- DES and AES encryption in **ECB** and **CBC** modes\n- Encrypt and decrypt image files seamlessly\n- Choose between multiple AES key sizes: **128, 192, 256**\n- Intuitive and easy-to-use\n\n## 🖼️ Example\n\nTake a look at how the encryption process transforms your images!\n\n| **Original Image**                | **Encrypted Image (AES/ECB)**      | **Encrypted Image (AES/CBC)**     |\n|-----------------------------------|-------------------------------------|------------------------------------|\n| ![Original Image](images/original.bmp) | ![Encrypted Image ECB](images/encryptedECB.bmp) | ![Encrypted Image CBC](images/encryptedCBC.bmp) |\n\n| **Original Image**                | **Encrypted Image (DES/ECB)**      | **Encrypted Image (DES/CBC)**     |\n|-----------------------------------|-------------------------------------|------------------------------------|\n| ![Original Image](images/original.bmp) | ![Encrypted Image ECB](images/ECBDES.bmp) | ![Encrypted Image CBC](images/CBCDES.bmp) |\n\n\n## 🚀 Getting Started\n\n### Prerequisites\n\nBefore running the project, ensure you have the following installed:\n\n- Java (JDK 17 or above)\n- Maven (for dependency management)\n- Git (for version control)\n- An image file to test encryption!\n\n### Installing\n\n1. **Clone the repository**:\n\n```bash\ngit clone https://github.com/sDanielSilva/SimpleImageEncryptor.git\ncd SimpleImageEncryptor\n```\n\n2. **Build the project** using Maven:\n\n```bash\nmvn clean install\n```\n\n3. **Run the application**:\n\n```bash\njava -jar target/SimpleImageEncryptor.jar\n```\n\n### Usage\n\nWhen you run the program, you will be prompted to:\n\n1. Choose the operation:\n   - `1` for Encrypt\n   - `2` for Decrypt\n\n2. Select the encryption mode:\n   - `1` for ECB\n   - `2` for CBC\n\n3. Choose the encryption algorithm:\n   - `1` for AES\n   - `2` for DES\n\n4. If AES, specify the key size (128, 192, 256).\n5. Enter the file paths:\n   - Encryption Key, Input and Output file paths (for decryption)\n   - Input and Output image file path (for encryption)\n\nFor example:\n\n```bash\nChoose operation (1 - Encrypt, 2 - Decrypt): 1\nChoose mode (1 - ECB, 2 - CBC): 2\nChoose algorithm (1 - AES, 2 - DES): 1\nEnter AES key size (128, 192, 256): 256\nEnter input file path: images/original.bmp\nEnter output file path: images/encrypted.bmp\n```\n\n### Configuration\n\n- **Key Sizes**: AES supports three key sizes: **128 bits**, **192 bits**, and **256 bits**.\n- **Modes**: You can select either **ECB** (Electronic Codebook) or **CBC** (Cipher Block Chaining) mode for encryption.\n\n## 🎯 Roadmap\n\nHere’s a quick look at what’s coming next:\n\n- Support for more encryption algorithms (RSA, IDEA)\n- Enhanced UI/UX (GUI for image upload, encryption, and download)\n\n## 🤝 Contributing\n\nFeel free to fork the project and submit a pull request if you have ideas for improvements, new features, or bug fixes. We'd love to see your contributions!\n\n1. Fork the repository\n2. Create a feature branch\n3. Commit your changes\n4. Push to the branch\n5. Create a pull request\n\n## 💬 Contact\n\n- **Developer:** [Daniel Silva](https://github.com/sDanielSilva)\n- **Email:** d.m.silva@ua.pt\n\n---\n\n### ⭐️ Support This Project\n\nIf you like the project, please ⭐️ it! Any support is greatly appreciated.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsdanielsilva%2Fsimpleimageencryptor","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsdanielsilva%2Fsimpleimageencryptor","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsdanielsilva%2Fsimpleimageencryptor/lists"}