A package that helps encrypt any given string and returns an encrypted string with a signed hash.This data can be sent over the internet and only you will know how to decrypt it because you control the cipher.
Project description
Mistyfy
A package that helps encrypt any given string and returns an encrypted version of it. This package is very pythonic and has no dependencies. You can expand on it but it gives you the ability to encrypt data in a way only you can understand.
Install
You should download python, any version from 3.6.x will do. This should come with pip and you can
use pip install mistyfy
to complete the installation.
How to use it
from mistyfy import encode, decode, ciphers, generator
import os
# ciphers is a dictionary containing ascii characters, you can change this at will
# use the generator function to create your own unique cipher
gn = generator(ciphers, -400, 138192812) # first arg is the cipher block, second & third arg is the start and stop counter
secret = b'somesecretkey' # create any secret key, easier if you use os.urandom(n)
# secret = os.urandom(16)
a = "This is a secret message or password"
b = encode(a, secret, gn)
# output is a dictionary which contains a signed value when decrypting:
# 'eyJtaXN0eWZ5IjogWzQ5Nxxxxxx...
c = decode(b, secret, gn)
# Output:
# This is a secret message or password
# Output: if the secret is wrong
# Failure decrypting data
Use cases
- Safely store a password or token, validate that it is signed before it can be decoded.
- Transmit a large set of encrypted strings.
- Create your own
cipher block
and be the only one who can decrypt it.
There are other part of the script you can use. To easily create a password checking system use signs
and verify_signs
function, this takes a similar example given by python doc for hashlib but with the ability to add a secret.
from mistyfy import signs, verify_signs
secrets = 'someimportstuff'
password = 'myverypassword'
encrypt_decrypt = signs(password, secret=secrets)
print(encrypt_decrypt)
# cfe13a4eef4e9c9ccbedf4ec05873ed0
# verify takes into two arguments and 1 required keyword arg to compare if their hashes are the same
# in this situation, the signed data and the actual outcome.
verify = verify_signs(password, encrypt_decrypt, secret=secrets)
if verify is True:
print('User is valid')
else:
print('User is not valid')
# Output
# User is valid
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
File details
Details for the file mistyfy-2.0.4.tar.gz
.
File metadata
- Download URL: mistyfy-2.0.4.tar.gz
- Upload date:
- Size: 11.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.1 importlib_metadata/4.9.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.50.0 CPython/3.8.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | e239c2250ef6c62f16027b9cd5dc6c451618f100b4bca22eabd0c8e37b0dc1ef |
|
MD5 | 7871fc20e43fbf4761f29510b52dab75 |
|
BLAKE2b-256 | 711e4304cd47ea2e328f57f765fcb710b4d9a9cc389d02d78a5e3dc64cf0506f |
File details
Details for the file mistyfy-2.0.4-py3-none-any.whl
.
File metadata
- Download URL: mistyfy-2.0.4-py3-none-any.whl
- Upload date:
- Size: 8.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.1 importlib_metadata/4.9.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.50.0 CPython/3.8.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8b2fcbc1c37a2bd784be38f0692ad4c7a42841d8b535a33926040457347223ff |
|
MD5 | d30ad78d97d62e35f5c9655d332d6c76 |
|
BLAKE2b-256 | ee63994922141badd6c6365b290a5cc2de35151ff319847080e38f60ead6ecfa |