Skip to content

zencrypt-tech/zencrypt-cli-java

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 

Repository files navigation


Zencrypt CLI Java

By: Ryan Hatch / Zencrypt Tech
Keeping It Simple and Secure.

OverviewFeaturesRequirementsInstallationUsageCryptography NotesBuildContributingDisclaimerLicense


© 2026 Ryan Hatch / Zencrypt Tech
All Rights Reserved.


Overview

Zencrypt CLI Java is a terminal-based encryption and hashing tool from the Zencrypt Tech project family.

This CLI provides a simple local interface for generating and verifying SHA-256 hashes, encrypting and decrypting text, encrypting and decrypting files, copying output, and clearing clipboard content.

This repository is the Java CLI version of Zencrypt. It is intended for learning, experimentation, and local encryption workflows while keeping the interface simple, direct, and command-line focused.


Features

  • Hash generation using the SHA-256 hashing algorithm with an optional salt value.
  • Hash verification by comparing provided text and salt input against a known hash.
  • Encrypt and decrypt text using AES symmetric encryption.
  • Encrypt and decrypt files with AES-based file encryption.
  • Copy output to the clipboard for easier terminal workflows.
  • Clear content from the clipboard after sensitive operations.
  • Local-first design for running encryption and hashing tasks directly from the user's machine.

Requirements

Java Development Kit 8+ is recommended.

Confirm Java and the Java compiler are available from your terminal:

java -version
javac -version

Recommended tools:

  • JDK 8 or newer
  • Git
  • Windows Command Prompt, PowerShell, macOS Terminal, or a Linux shell

Installation

To install Zencrypt CLI Java, you will need Java and Git installed on your system.

  1. Clone the repository:
    git clone https://github.com/zencrypt-tech/zencrypt-cli-java.git
  2. Navigate into the project folder:
    cd zencrypt-cli-java
  3. Compile the Java source file:
    javac Zencrypt.java

Usage

Run the application with:

java Zencrypt

Follow the on-screen prompts to perform the desired operation.

Main Menu

1 | Hash Manager
2 | Encrypt Text
3 | Encrypt Files
4 | Clear Clipboard
5 | Exit

Hash Manager

The Hash Manager provides SHA-256 hashing workflows for generating and checking hashes from the terminal.

  • Enter text input.
  • Add an optional salt value.
  • Generate a SHA-256 hash.
  • Compare generated output against a known hash value.

SHA-256 is a one-way hashing algorithm. It is useful for checksums, fingerprints, verification exercises, and learning how fixed-length hash output works.


Text Encryption

The text encryption workflow allows users to encrypt and decrypt text directly from the terminal using AES symmetric encryption.

  1. Choose the text encryption option from the menu.
  2. Enter the plaintext message.
  3. Provide the required encryption input when prompted.
  4. Copy or save the encrypted output.
  5. Use the matching decryption workflow to restore the plaintext.

File Encryption

The file encryption workflow allows users to encrypt and decrypt local files from the command line.

  1. Choose the file encryption option from the menu.
  2. Enter the target file path.
  3. Provide the required encryption input when prompted.
  4. Save the encrypted file output.
  5. Use the matching decryption workflow to restore the file.

Keep backup copies of important files before testing encryption or decryption workflows.


Cryptography Notes

This project is a learning-focused CLI and should be treated as a local utility.

  • SHA-256 hashes are one-way values used for hashing and verification.
  • Text encryption uses AES symmetric encryption.
  • File encryption uses AES-based local file encryption.
  • AES is symmetric, so the same secret or derived key material is required to decrypt what was encrypted.
  • Local keys, passwords, generated secrets, and sensitive test files should be protected and excluded from version control.

Planned Improvements

  • Cleaner key handling.
  • Dedicated test files.
  • Clearer file input and output naming.
  • Packaged releases through GitHub Releases.
  • Expanded Java documentation for future versions.

Suggested Project Structure

zencrypt-cli-java/
├── README.md
├── LICENSE
├── .gitignore
└── Zencrypt.java

Building and Running

Build the project locally with:

javac Zencrypt.java

Run the compiled class with:

java Zencrypt

If a future version uses Gradle, Maven, or packaged release artifacts, keep generated build output separate from the source repository and attach distributable files to GitHub Releases.


Contributing

Please reach out to verify and validate ideas and contributions before continuing any further. Although contributions may be welcome, they should stay focused on the Java CLI version of Zencrypt.

Recommended workflow:

  1. Fork the repository.
  2. Create a new branch:
    git checkout -b feature/your-feature-name
  3. Make your changes.
  4. Confirm that no keys, secrets, generated files, executables, or local test files are included.
  5. Commit your changes:
    git commit -m "Add your feature"
  6. Push to the branch:
    git push origin feature/your-feature-name
  7. Open a pull request.

Disclaimer

<=> <=> <=> <=> <=> <=> <=>

This program is provided for educational and demonstration purposes only. Use it responsibly and only on files, messages, and systems that you own or are authorized to work with.

The project maintainer is not responsible for data loss, misuse, damage, or improper use of this software.

<=> <=> <=> <=> <=> <=> <=>


License

This software is the property of the copyright holder and is protected by copyright laws. All rights are reserved by the copyright holder unless explicitly granted in writing.

The copyright holder grants no implied or express license for the use, copying, modification, distribution, or reproduction of this software, in whole or in part, without prior written permission from the copyright holder, unless a separate license file states otherwise.

Any unauthorized use, copying, modification, distribution, or reproduction of this software, in whole or in part, is strictly prohibited and may constitute a violation of copyright law.

By using this software, you acknowledge that you have read and understood the terms of this license and agree to comply with all applicable laws.


Contact

For inquiries, suggestions, or project-related questions, contact the project maintainer through the Zencrypt Tech organization or open a GitHub issue.


Zencrypt Tech
Keeping It Simple and Secure.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages