Skip to main content

A matrix-based encryption library developed for TUBITAK 2204-a

Project description

89crypt | (ENcrypt)

A secure and efficient matrix-based encryption library for specific use cases developed for TUBITAK 2204-a project.

Features

  • Matrix-based encryption using periodic decimal expansions
  • Support for custom alphabets and character sets
  • High-precision numerical operations
  • Comprehensive error handling
  • Type-safe implementation with full type hints
  • Extensive documentation and examples

Installation

pip install encryptlib

For development installation with documentation tools:

pip install "encryptlib[dev,docs]"

Quick Start

from encryptlib import ENcrypt

# Create an encryptor with a key
encryptor = ENcrypt(59)

# Encrypt a message
encrypted = encryptor.encrypt("Hello World")
print(f"Encrypted matrix:\n{encrypted}")

# Decrypt the message
decrypted = encryptor.decrypt(encrypted)
print(f"Decrypted message: {decrypted}")

Documentation

Full documentation is available at Read the Docs.

Development

  1. Clone the repository:

    git clone https://github.com/TheBruh141/89crypt.git
    cd 89crypt
    
  2. Install development dependencies:

    pip install -e ".[dev,docs]"
    
  3. Run tests:

    pytest
    
  4. Build documentation:

    cd docs
    make html
    

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

License

This project is licensed under the GNU General Public License v3 - see the LICENSE file for details.

Author

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

en_encrypt-1.0.0.tar.gz (29.6 kB view details)

Uploaded Source

Built Distribution

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

en_encrypt-1.0.0-py3-none-any.whl (18.6 kB view details)

Uploaded Python 3

File details

Details for the file en_encrypt-1.0.0.tar.gz.

File metadata

  • Download URL: en_encrypt-1.0.0.tar.gz
  • Upload date:
  • Size: 29.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.13.1

File hashes

Hashes for en_encrypt-1.0.0.tar.gz
Algorithm Hash digest
SHA256 599eb6b70cfef5b4a9d91f94ccf3ae7cef6539c354eea8bd97f518aee76cb045
MD5 653b2f93b5a86e5454d18eca9990e813
BLAKE2b-256 7bc988985d69fe5cfa7e99970c786d34a557710ded90977a96269015ea1b89a8

See more details on using hashes here.

File details

Details for the file en_encrypt-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: en_encrypt-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 18.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.13.1

File hashes

Hashes for en_encrypt-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 28dea967e2694450af4665be47f8f917cf8ea06fa17035e51930f3eb11bbff3f
MD5 4da98824ce10f8a784714b5b5593276a
BLAKE2b-256 5a3891189ff1caa8dd9527bc35a5012528b6e3024315d64bc63185e476260b4f

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