Skip to main content

aCrypt - Python

Ciphering made easy.

Features

  • Encode a string into numbers using a secret key
  • Decode encoded strings into their original form using a secret key
  • Generate a valid aCrypt key

Usage

Usage Params Return Value
create_key() None: None int: key
cipher() str: message, int: key str: ciphered
decipher() str: message, int: key str: deciphered

Examples

Lets say you have private JSON data that you need to encode:

# lets imagine this is the data
data = {
    "username": "ilovecats",
    "password": "meow123"
}

Of course though, writing this un-encoded data can be very unsafe. So the only way to protect it is to cipher it.

from json import dumps, loads
from os import getenv

data = {
    "username": "ilovecats",
    "password": "meow123"
}

# turn the JSON into a string we can encode
data = dumps(data)

# using a key we can store in our environment variables, we can cipher it
encoded_data = cipher(data, os.getenv("CIPHER_KEY")) # you can also keep the key in a variable, thought this is unsafe as users can just use the key

# voila! The data has been ciphered:
print(encoded_data)

And to decipher the data and use it, you can do the reverse:

from json import dumps, loads
from os import getenv

# decipher the data
decoded_data = decipher(encoded_data, os.getenv("CIPHER_KEY"))

# turn the string back into json data
data = loads(decoded_data)

# now you can use it!
print("Your username is" + data.username + "!")

Credits

  • Thank you to the repl.it community for providing such amazing services for free.
  • Thank you to Atticus Kuhn for pointing out safety concerns on the project.
  • Thank you to AmazingMech2418 (https://repl.it/@AmazingMech2418), for showing me the world of cryptography.
  • Thank you StealthHydra179 (https://repl.it/@StealthHydra179), for being the only person who cared about programming in my school.
  • Thank you Giothecoder (https://repl.it/@Giothecoder), for being there when I needed you most.

Change Log

  • 0.0.1 - Cipher was added, deciphering was unfinished
  • 0.0.2 - Deciphering finished with lots of bugs
  • 0.0.3 - Atticus Kuhn pointed out a safety bug, and thus it was patched
  • 0.0.4 - Bugs fixes
  • 0.0.5 - Added Credits
  • 0.0.6 - AmazingMech2418 pointed out huge safety feature that should be added
  • 0.0.7 - Bugs fixes
  • 0.0.8 - Test Version
  • 0.0.9 - Test Version
  • 0.1.0 - Update 0.0.6 was revisited and implemented
  • 0.1.1 - Added changelog
  • 0.1.3 - Bug fixes
  • 0.1.4 - Made key generation more efficient
  • 0.1.5 - Added examples

Metadata

Release files for aCrypt 0.1.7

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

Source distribution (sdist)

Source distribution for aCrypt 0.1.7
File Size Uploaded Provenance
aCrypt-0.1.7.tar.gz 3.4 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for aCrypt 0.1.7
File Interpreter ABI Platform
aCrypt-0.1.7-py3-none-any.whl Python 3 none any Details

Total release size: 7.8 kB

Release files / aCrypt-0.1.7.tar.gz

Download URL aCrypt-0.1.7.tar.gz
Size 3.4 kB
Tags Source
SHA-256 checksum
How to use checksums
262c2212db13977f4e04c2e18bc764b9baccb4f5548fd2dc94a895f76229a926
BLAKE2b-256 checksum
How to use checksums
a8118d733338e9a1d215558e3289c78fa4e3d44d352272f2f8eb780f62ecc7a3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/47.1.0 requests-toolbelt/0.8.0 tqdm/4.48.2 CPython/3.8.5

Release files / aCrypt-0.1.7-py3-none-any.whl

Download URL aCrypt-0.1.7-py3-none-any.whl
Size 4.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
b7cd027440afb99ff250c732521ace1224e1b9a9182fa02cb924b7567be98e74
BLAKE2b-256 checksum
How to use checksums
45b20a4b8da01b1fb96545e8c41b21a14e33f5b4f7fbf6b5bbd95995a843a0ec
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/47.1.0 requests-toolbelt/0.8.0 tqdm/4.48.2 CPython/3.8.5

Security for aCrypt 0.1.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

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