Ciphering made easy.
Project description
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
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
aCrypt-0.1.7.tar.gz
(3.4 kB
view details)
Built Distribution
File details
Details for the file aCrypt-0.1.7.tar.gz
.
File metadata
- Download URL: aCrypt-0.1.7.tar.gz
- Upload date:
- Size: 3.4 kB
- Tags: Source
- Uploaded using 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
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 262c2212db13977f4e04c2e18bc764b9baccb4f5548fd2dc94a895f76229a926 |
|
MD5 | 41fc9c97356ae43f383fcde67f4d67f5 |
|
BLAKE2b-256 | a8118d733338e9a1d215558e3289c78fa4e3d44d352272f2f8eb780f62ecc7a3 |
File details
Details for the file aCrypt-0.1.7-py3-none-any.whl
.
File metadata
- Download URL: aCrypt-0.1.7-py3-none-any.whl
- Upload date:
- Size: 4.4 kB
- Tags: Python 3
- Uploaded using 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
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | b7cd027440afb99ff250c732521ace1224e1b9a9182fa02cb924b7567be98e74 |
|
MD5 | 642b923deb5fd026e4e68734ec0bb619 |
|
BLAKE2b-256 | 45b20a4b8da01b1fb96545e8c41b21a14e33f5b4f7fbf6b5bbd95995a843a0ec |