{"id":22039261,"url":"https://github.com/panagiotiskots/encryption-and-decryption","last_synced_at":"2025-03-23T13:13:50.128Z","repository":{"id":224771442,"uuid":"764181438","full_name":"PanagiotisKots/Encryption-and-Decryption","owner":"PanagiotisKots","description":"EndKrypter is a simple Encryption and Decryption tool written fully in C for Windows platforms","archived":false,"fork":false,"pushed_at":"2024-09-06T11:23:56.000Z","size":421,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-01-28T19:17:14.852Z","etag":null,"topics":["ascii-art","c","decryption","educational","encryption-algorithms","encryption-decryption","fun"],"latest_commit_sha":null,"homepage":"","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/PanagiotisKots.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","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-02-27T16:14:37.000Z","updated_at":"2024-09-14T11:47:37.000Z","dependencies_parsed_at":null,"dependency_job_id":"cc9329f9-1686-4b75-a71c-da87b0967d3f","html_url":"https://github.com/PanagiotisKots/Encryption-and-Decryption","commit_stats":null,"previous_names":["panagiotiskots/endkrypter","panagiotiskots/encryption-and-decryption"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PanagiotisKots%2FEncryption-and-Decryption","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PanagiotisKots%2FEncryption-and-Decryption/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PanagiotisKots%2FEncryption-and-Decryption/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PanagiotisKots%2FEncryption-and-Decryption/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/PanagiotisKots","download_url":"https://codeload.github.com/PanagiotisKots/Encryption-and-Decryption/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245104530,"owners_count":20561380,"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","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":["ascii-art","c","decryption","educational","encryption-algorithms","encryption-decryption","fun"],"created_at":"2024-11-30T11:10:01.457Z","updated_at":"2025-03-23T13:13:50.041Z","avatar_url":"https://github.com/PanagiotisKots.png","language":"C","readme":"# 🔐 **EndKrypter**\n\u003cimg src = \"img/img3.jpg\"\u003e\n\n**EndKrypter** is a simple **Encryption** and **Decryption** tool written entirely in C for **Windows** platforms.\n\n## ⚙️ **Overview**\n\nEndKrypter provides a variety of encoding and decoding methods aimed at protecting personal messages. This program offers several encoding techniques, including:\n\n- 🅰️ **ASCII**\n- 🏛️ **Caesar Cipher**\n- 🔑 **Vigenere Cipher**\n- 💾 **Binary**\n- 🔢 **Base64**\n- 🛡️ **AES**\n- 🧩 **SHA-256**\n\nEach method allows users to encrypt or decrypt messages in different ways, making EndKrypter a versatile tool for multiple use cases.\n\n\n## 🔍 **Encryption Methods \u0026 Descriptions**\n\n| Method                | Description                                                                                  | Example Usage                    |\n|-----------------------|----------------------------------------------------------------------------------------------|-----------------------------------|\n| 🅰️ **ASCII**           | Encodes each character to its corresponding ASCII number and replaces it in the message.     | `A -\u003e 65`                        |\n| 🏛️ **Caesar Cipher**   | Shifts each character in the message by a fixed number of positions.                         | `ABC -\u003e DEF` (shift of 3)         |\n| 🔑 **Vigenere**        | Uses a keyword to apply multiple shifts to each character in the message.                    | Keyword: `KEY`                   |\n| 💾 **Binary**          | Converts the message to a binary format.                                                     | `A -\u003e 01000001`                  |\n| 🔢 **Base64**          | Encodes the message in Base64, commonly used in data transmission.                           | `A -\u003e QQ==`                      |\n| 🛡️ **AES**             | Utilizes the **Advanced Encryption Standard** with a key for secure encryption.              | 256-bit encryption               |\n| 🧩 **SHA-256**         | Computes a cryptographic hash of the message (one-way function).                             | Produces a 64-character hash      |\n\n## 🛠️ **Additional Features**\n\n- **File Encryption \u0026 Decryption**: EndKrypter also supports the encryption and decryption of text files via two different methods.\n\n## 📂 **Practical Use Cases**\n\n| Use Case                | Description                                                                                 |\n|-------------------------|---------------------------------------------------------------------------------------------|\n| 🔐 **Communication Security** | Encrypt messages for secure transmission, such as sensitive information exchange.         |\n| 🗄️ **File Protection**      | Encrypt personal or professional files to prevent unauthorized access.                    |\n| 📚 **Educational Tool**      | Learn about basic encryption algorithms and encoding processes for educational purposes.  |\n\n\n\n## 🛠️ **Setup Instructions**\n\nFollow the steps below to compile and run **EndKrypter** on your Windows system:\n\n### 1️⃣ Install Dependencies (if plan to contribute)\n\n- 📦 **OpenSSL**: Install the full OpenSSL package.\n- 🔨 **GCC-G++ Compiler**: Install **MINGW** to set up the compilation environment.\n\n\n### 2️⃣ Execution\n\nTo run the compiled program, use the following command:\n\n\n EndKrypterV2.exe\n\n\n\n\n## 🎯 **Why Use EndKrypter?**\n\nEndKrypter is ideal for several purposes:\n\n- 🔐 **Secure Communication**: Protect confidential messages.\n- 🗂️ **File Safety**: Keep sensitive files away from prying eyes.\n- 📚 **Learning Platform**: Explore encryption techniques and algorithms interactively.\n\n## ⚠️ **Note**\n\n- ❌ The program is built for the **Windows** environment.\n- ❌ It does not use `–trigraphs` as these are Linux-specific and may lead to unintended behavior in Windows.\n\n## 💻 **License**\n\n**EndKrypter** is open-source software. Feel free to modify and distribute it under the **MIT License**.\n\n## 🌟 **Contributing**\n\nFeel free to open issues and submit pull requests for new features, bug fixes, or improvements.\n\n\n\n\n| **Method**         | **Usage**                                          | **Advantages**                                      | **Complexity**                                              | **Decoding Difficulty**           |\n|--------------------|----------------------------------------------------|----------------------------------------------------|-------------------------------------------------------------|-----------------------------------|\n| 🅰️ **ASCII**        | Character-to-number encoding/decoding              | Simple to implement and fast                       | Basic conversion, no real encryption                         | 🟢 **Easy**: Direct reverse mapping |\n| 🏛️ **Caesar Cipher**| Shifts characters by a fixed number of positions   | Easy to understand, good for basic encryption      | Vulnerable to frequency analysis attacks                     | 🟢 **Easy**: Can be brute-forced easily|\n| 🔑 **Vigenere**     | Shifts characters based on a repeating keyword     | Stronger than Caesar due to varying shifts         | More secure than Caesar, but key repetition can be exploited  | 🟠 **Moderate**: Key length and frequency analysis |\n| 💾 **Binary**       | Converts message into binary representation        | Universal encoding, compact for machine processing | Direct translation of data, simple encoding                  | 🟢 **Easy**: Reverse conversion from binary to text |\n| 🔢 **Base64**       | Encodes binary data into ASCII string format       | Efficient for transmitting binary data             | Not real encryption, used mainly for encoding                | 🟢 **Easy**: Decoded using standard Base64 decoding |\n| 🛡️ **AES**          | Symmetric key encryption, widely used              | Highly secure, fast decryption with the key        | Computationally efficient, secure against most attacks       | 🔴 **Hard**: Requires the key; virtually unbreakable without it |\n| 🧩 **SHA-256**      | Cryptographic hashing, irreversible                | Ensures data integrity, secure one-way function    | Irreversible hash, secure but susceptible to brute force on short inputs | 🔴 **Impossible**: One-way function, cannot be decoded |\n\n\n## 🛠️ **Technologies \u0026 Tools Used**\n\nEndKrypter was created using the following programming languages, technologies, and tools:\n\n| **Category** | **Icon** | **Description**                        |\n|--------------|----------|----------------------------------------|\n| **Languages** | ![C](https://skillicons.dev/icons?i=c) | C programming language                   |\n| **Technologies** | ![OpenSSL](https://img.icons8.com/color/48/000000/lock--v1.png) | OpenSSL for cryptographic operations     |\n| **Compilers** | ![GCC](https://img.icons8.com/ios/50/000000/gcc.png) | GCC for compiling (alternative icon)     |\n| **Editors** | ![VSCode](https://skillicons.dev/icons?i=vscode) | Visual Studio Code for development        |\n| **Operating System** | ![Windows](https://skillicons.dev/icons?i=windows) | Windows as the operating environment      |\n| **Build Tools** | ![Make](https://skillicons.dev/icons?i=make) | Make for build automation                 |\n| **Version Control** | ![Git](https://skillicons.dev/icons?i=git) | Git for version control                   |\n\n\n| ![Image 1](img/img1.jpg) | ![Image 3](img/img4.jpg) |\n|--------------------------|--------------------------|\n| 📸 Image 1               | 📸 Image 2               |\n\n ![Image 3](img/img2.jpg)\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpanagiotiskots%2Fencryption-and-decryption","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpanagiotiskots%2Fencryption-and-decryption","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpanagiotiskots%2Fencryption-and-decryption/lists"}