https://github.com/joegithubpro/cryptography
Cryptography algorithms - Desktop application
https://github.com/joegithubpro/cryptography
Last synced: about 1 month ago
JSON representation
Cryptography algorithms - Desktop application
- Host: GitHub
- URL: https://github.com/joegithubpro/cryptography
- Owner: JoeGitHubPro
- Created: 2024-04-06T12:13:33.000Z (about 2 years ago)
- Default Branch: master
- Last Pushed: 2024-05-14T18:42:06.000Z (about 2 years ago)
- Last Synced: 2025-01-09T09:52:22.717Z (over 1 year ago)
- Language: C#
- Homepage:
- Size: 173 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
Cryptography Algorithms Desktop Application
This is educational project for Cryptography theory
Features
-
Algorithm Support: The application supports multiple cryptography algorithms, including symmetric and asymmetric encryption algorithms, hash functions, and digital signatures. -
User-Friendly Interface: The application provides an intuitive and user-friendly interface for easy interaction and operation. -
Encryption and Decryption: Users can encrypt their sensitive data using different algorithms and decrypt it back to its original form when needed.
Implemented Algorithms
- Caesar : A substitution cipher where each letter in the plaintext is shifted a certain number of places down or up the alphabet.
- Columnar Transposition: A transposition cipher where the plaintext is rearranged according to a matrix of a fixed column width.
- Hill: A polygraphic substitution cipher based on linear algebra, using matrices to encrypt and decrypt plaintext.
- Monoalphabetic: A substitution cipher where each letter in the plaintext is consistently replaced by another letter from a fixed mapping.
- Playfair: A digraph substitution cipher that encrypts pairs of letters together based on a 5x5 grid of letters generated from a keyword.
- Rail Fence: A transposition cipher where the plaintext is written diagonally in zigzag fashion across a number of "rails" and then read off row by row.
- Vernam (One-Time Pad): An encryption method that uses a random key as long as the message itself, XORing each plaintext character with a corresponding key character.
- Vigenère: A polyalphabetic substitution cipher where each letter in the plaintext is shifted using a keyword, with each letter of the keyword determining the shift for the corresponding letter in the plaintext.
Installation
- Clone the repository:
git clone https://github.com/JoeGitHubPro/Cryptography.git
- Install the required dependencies.
- Build and run the application using your preferred development environment or IDE.
Usage
Contributing
Contributions are welcome! If you'd like to contribute to this project, please follow these steps:
- Fork the repository.
- Create a new branch for your feature or bug fix.
- Make your changes and commit them.
- Push your changes to your forked repository.
- Submit a pull request detailing your changes.
License
This project is licensed under the MIT
Contact
If you have any questions or suggestions, feel free to reach out to the project owner:
- GitHub: JoeGitHubPro
Acknowledgments
WinForm, C#, DS&A