Skip to main content

A tool for ciphering messages using various algorithms

Project description

Ciphers

A Python tool for ciphering messages using various algorithms.

Installation

Using uv (recommended)

# Install uv if you don't have it
pip install uv

# Create and activate a virtual environment with uv
uv venv
source .venv/bin/activate  # On Linux/macOS
# or
# .venv\Scripts\activate  # On Windows

# Install the package in development mode
uv pip install -e .

Using pip

pip install -e .

Usage

# Encrypt a message using Caesar cipher with a shift of 3
cipher encrypt --algorithm caesar --key 3 "Hello, World!"

# Decrypt a message using Caesar cipher with a shift of 3
cipher decrypt --algorithm caesar --key 3 "Khoor, Zruog!"

Development

Installing Development Dependencies

With uv:

# Install development dependencies
uv pip install -e ".[dev]"

With pip:

# Install development dependencies
pip install -e ".[dev]"

Running Tests

# Run tests with pytest
pytest

# Run tests with coverage
pytest --cov=ciphers

Code Formatting and Linting

# Format code with black
black .

# Sort imports with isort
isort .

# Lint with ruff
ruff check .

# Format with ruff
ruff format .

# Type checking with mypy
mypy ciphers tests

Supported Algorithms

  • Caesar Cipher: A simple substitution cipher where each letter is shifted by a fixed number of positions.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ciphers_vbcd-0.1.1.tar.gz (5.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ciphers_vbcd-0.1.1-py3-none-any.whl (5.5 kB view details)

Uploaded Python 3

File details

Details for the file ciphers_vbcd-0.1.1.tar.gz.

File metadata

  • Download URL: ciphers_vbcd-0.1.1.tar.gz
  • Upload date:
  • Size: 5.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.7.3

File hashes

Hashes for ciphers_vbcd-0.1.1.tar.gz
Algorithm Hash digest
SHA256 c4c28b39b642f897d0399804a3ffd6bf548cb8646daa5f366d31b027e9003fc9
MD5 1f31be1f96ce5619ec9a2e6c32e4fb4a
BLAKE2b-256 9bc852816634f153b32ef7eed29fcfc31f85e174439130a97a9a785ff62ed6fd

See more details on using hashes here.

File details

Details for the file ciphers_vbcd-0.1.1-py3-none-any.whl.

File metadata

File hashes

Hashes for ciphers_vbcd-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 6eb963519753760af7fb793d2a241841d1a703d17d70fd68a52e916551a888ea
MD5 9a27911d15a6cbb6fd548152e0c776bd
BLAKE2b-256 fa0d2d41729e8595cb5259582f89c463f8e4b8438ac42b656ceb9a6102fff6d6

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page