Skip to main content

🔒 CipherVeil : Katapayadi System 🔒

CipherVeil : Katapayadi System

Ancient cryptography meets modern steganography
Hide your secrets in plain sight using the wisdom of Sanskrit


📌 Overview

The CipherVeil : Katapayadi System is a sophisticated Python package that seamlessly hides messages within images using Sanskrit characters. It implements a novel encoding method inspired by the ancient Katapayadi system - a traditional Sanskrit numerical notation system dating back to ~700 CE. The system first converts English text into Sanskrit characters before embedding them in images using LSB (Least Significant Bit) steganography.

✨ Features

  • 🔠 Text to Sanskrit Encoding – Transforms English messages into Sanskrit characters using the Katapayadi system
  • 🖼️ Advanced Image Steganography – Embeds text within images using LSB encoding for undetectable message hiding
  • 🔍 High Resilience – Maintains image quality while preserving message integrity
  • 🖥️ Modern GUI – Features an intuitive PyQt6-based interface with dark mode
  • 📜 Bidirectional Translation – Extracts hidden Sanskrit-encoded text and converts it back to English
  • 🛡️ Enhanced Security – Adds an extra layer of security through Sanskrit encoding
  • 🐍 Developer-Friendly API – Simple, well-documented API for both CLI and GUI applications

📥 Installation

pip install sanskrit-stegano

From Source (Development)

git clone https://github.com/YashAPro1/kat_cipher.git
cd kat_cipher
pip install -e .

Dependencies

The system requires the following packages:

pip install opencv-python numpy pyqt6

🚀 Usage

🛠️ Python API

from sanskrit_stegano import SanskritSteganoSystem

# Initialize the system
system = SanskritSteganoSystem()

# Define your inputs
message = "This message will be hidden using Sanskrit encoding"
image_path = "input.png"  # Your cover image
output_path = "secret_output.png"  # Where to save the steganographic image

# Encoding - Hide your message in an image
system.encode_message_to_image(message, image_path, output_path)
print("✅ Message successfully hidden inside image!")

# Decoding - Extract the hidden message from an image
decoded_message = system.decode_message_from_image(output_path)
print("🔓 Decoded Message:", decoded_message)

💻 Command Line Interface

# Encode a message
sanskrit-stegano encode --message "Your secret message" --input input.png --output hidden.png

# Decode a message
sanskrit-stegano decode --input hidden.png

🖥️ GUI Application

Launch the graphical interface with:

# If installed via pip
sanskrit-stegano-gui

# If running from source
python -m sanskrit_stegano.gui

🖼️ GUI Preview

CipherVeil : Katapayadi System GUI

The graphical user interface provides two main functions:

  • Left Panel: Encode your secret message in an image
  • Right Panel: Decode hidden messages from steganographic images

🧠 How It Works

  1. Katapayadi Encoding: The system first converts your message into a series of Sanskrit characters using a modernized version of the ancient Katapayadi numerical encoding system.

  2. Steganographic Embedding: The Sanskrit-encoded message is then hidden within the least significant bits of the image pixels, making the changes imperceptible to the human eye.

  3. Extraction and Decoding: To recover the message, the system extracts the modified bits from the image and translates the Sanskrit characters back to the original text.

🔒 Security Considerations

While this system provides an excellent way to hide messages, please note:

  • It's designed for educational purposes and light security needs
  • For critical security applications, consider combining with encryption
  • The strength lies in the dual-layer obscurity (steganography + Sanskrit encoding)

📋 Requirements

  • Python 3.8+
  • OpenCV
  • NumPy
  • PyQt6 (for GUI)

📚 Documentation

For detailed API documentation and examples, please visit our Documentation Page.

🛠️ Development Setup

For developers who want to contribute:

# Clone the repository
git clone https://github.com/YashAPro1/kat_cipher.git

# Setup development environment
cd kat_cipher
pip install -e ".[dev]"

# Run tests
pytest

🙌 Contributing

Contributions are welcome! Here's how you can help:

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add some amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

Please ensure your code follows our coding standards and includes appropriate tests.

📜 License

This project is licensed under the MIT License - see the LICENSE file for details.

💡 Inspiration

This project draws inspiration from:

  • The ancient Katapayadi system of Sanskrit numerical notation
  • Modern steganography techniques
  • The rich cryptographic heritage of ancient India

📧 Contact

For questions, support or collaboration:


Built with ❤️ using ancient wisdom and modern code

Metadata

Release files for kat-cipher 1.0.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for kat-cipher 1.0.1
File Size Uploaded
kat_cipher-1.0.1.tar.gz 13.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for kat-cipher 1.0.1
File Interpreter ABI Platform
kat_cipher-1.0.1-py3-none-any.whl Python 3 none any Details

Total release size: 24.5 kB

Release files / kat_cipher-1.0.1.tar.gz

Download URL kat_cipher-1.0.1.tar.gz
Size 13.2 kB
Tags Source
SHA-256 checksum
How to use checksums
dd0b299a3739b6c91b6ce04a256689e963029b3e581a73560d084d9425454001
BLAKE2b-256 checksum
How to use checksums
e3eff843fe7a56d5290b3c9bb7bda443ae78403f129f2da5f65264ba52c39d84
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.11.13

Release files / kat_cipher-1.0.1-py3-none-any.whl

Download URL kat_cipher-1.0.1-py3-none-any.whl
Size 11.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
c49658290b7c3a358fed0c011b716f9a46f36bce68d2a8bb02be46266626d305
BLAKE2b-256 checksum
How to use checksums
416fb07912d8e20a3443df75b86f47c8dbfe640258f90a342347141e8acb44f7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.11.13

Release history Release notifications | RSS feed

This release

1.0.1 This release

2 release files

1.0.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page