experimentation
Project description
xoryx
A simple XOR encryption/decryption CLI tool that encrypts files to ASCII hex format.
Installation
pip install xoryx
For development:
uv pip install -e .
Usage
Command Line Mode
Encrypt a file:
xoryx encrypt plaintext.txt encrypted.hex
# Or use short aliases:
xoryx enc plaintext.txt encrypted.hex
xoryx e plaintext.txt encrypted.hex
Decrypt a file:
xoryx decrypt encrypted.hex decrypted.txt
# Or use short aliases:
xoryx dec encrypted.hex decrypted.txt
xoryx d encrypted.hex decrypted.txt
Provide key on command line (not recommended for sensitive data):
xoryx encrypt plaintext.txt encrypted.hex --key "mysecretkey"
xoryx decrypt encrypted.hex decrypted.txt -k "mysecretkey"
If you don't provide a key with --key or -k, you'll be prompted to enter it securely (hidden input).
Interactive Mode
Launch the interactive menu by running xoryx without arguments:
xoryx
# Or explicitly:
xoryx interactive
xoryx i
xoryx menu
This will present a user-friendly menu where you can choose to encrypt or decrypt files interactively.
Options
-k,--key: Specify the encryption/decryption key (will prompt if not provided)--encoding: Text encoding (default: utf-8)-h,--help: Show help message
Examples
# Encrypt with prompted key
xoryx encrypt secrets.txt secrets.hex
# Decrypt with key on command line
xoryx decrypt secrets.hex restored.txt -k "mypassword"
# Use custom encoding
xoryx encrypt data.txt data.hex --encoding utf-16
# Interactive mode
xoryx
Features
- 🔐 Simple XOR encryption/decryption
- 📝 Outputs to ASCII hex format
- 🎨 Colored terminal output
- 🔒 Secure key input (hidden by default)
- 🎯 Both CLI and interactive modes
- ⚡ Fast and lightweight
How it works
xoryx uses XOR cipher to encrypt plaintext files. The encrypted output is stored as ASCII hex for easy storage and transmission. While XOR encryption is not suitable for highly sensitive data, it's perfect for quick obfuscation and educational purposes.
License
MIT
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file xoryx-0.0.2.tar.gz.
File metadata
- Download URL: xoryx-0.0.2.tar.gz
- Upload date:
- Size: 46.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
50e12574f8be4194c19341473540f275a9ded55a95f5fa5dcc277bfcc76c0d95
|
|
| MD5 |
c17a1fd443c39fd75c1dc9298e1b48f7
|
|
| BLAKE2b-256 |
8547785c04bc2ddd04ec406a79f0ec196b7d86378b3d1f1b40d071e9ccfe1f69
|
File details
Details for the file xoryx-0.0.2-py3-none-any.whl.
File metadata
- Download URL: xoryx-0.0.2-py3-none-any.whl
- Upload date:
- Size: 5.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c68b2a025cde68173e944f824eb2f20d6b7bc6aa431a0020e4920d01d39f8a9a
|
|
| MD5 |
bbdcb699ccb217e771595c6cf7633f74
|
|
| BLAKE2b-256 |
65722dd4d5fedf21ec1e9a557969e8b2bf6ef601174340a20aabad820dea0301
|