https://github.com/levnagornov/crypto-cli
Java CLI app that works with Caesar cipher
https://github.com/levnagornov/crypto-cli
ciphers cli java
Last synced: 27 days ago
JSON representation
Java CLI app that works with Caesar cipher
- Host: GitHub
- URL: https://github.com/levnagornov/crypto-cli
- Owner: levnagornov
- License: mit
- Created: 2024-04-16T16:16:30.000Z (about 2 years ago)
- Default Branch: master
- Last Pushed: 2024-05-18T13:33:11.000Z (about 2 years ago)
- Last Synced: 2026-06-10T01:38:32.416Z (27 days ago)
- Topics: ciphers, cli, java
- Language: Java
- Homepage:
- Size: 1.62 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
Crypto CLI
[](LICENSE)
[](https://github.com/RichardLitt/standard-readme)
## Description
This СLI app works with the Caesar cipher. This is one of the simplest and most famous encryption methods.
🛠️ Program functionality:
- Text encryption using a specific key
- Text encryption using a random key
- Decrypting text using a specific key
- Decrypting text using brute force (searching through all options)
- (not yet implemented) Decrypting text using statistical text analysis
So, the program opens a text file specified by the user and performs one of the above actions with it, then a new file with the result is created in the same directory.
✨ Other features:
- SOLID principles usage
- Design patterns usage: Factory, Command, Template method, Singleton
- Unit testing
Created by Lev Nagornov.
## Table of Contents
- [Install](#install)
- [Usage](#usage)
- [Contributing](#contributing)
- [License](#license)
## Install
1. Clone the repository using:
```
git clone git@github.com:levnagornov/crypto-cli.git
```
2. Install Java if needed:
```
sudo apt update
sudo apt install default-jdk
java -version
```
3. Download and install [Maven](https://maven.apache.org/download.cgi)
4. Build the project
```
cd crypto-cli
mvn package
```
5. Run the app
```
java -jar target/crypto-cli-1.0-SNAPSHOT.jar
```
## Usage
1. Start the app.
2. Select options by typing number and hit enter to confirm
3. Provide an encrypted file
4. Check result

## Contributing
PRs accepted.
Small note: If editing the Readme, please conform to the [standard-readme](https://github.com/RichardLitt/standard-readme) specification.
## License
[MIT © Lev Nagornov.](./LICENSE)