Python Easy RSA is a wrapper that allows decryption, encryption, signing, and verifying signature simpler. You can load your keys from a file or from a string. It is easy to use, fast and free!
Project description
Python Easy RSA
Python Easy RSA is a wrapper that allows decryption, encryption, signing, and verifying signature simpler. You can load your keys from a file or from a string. It is easy to use, fast and free!
Generating Public and Private Key
# the directory where the keys are to be stored
# in this case we are using the current file directory
path = Path(__file__).absolute().parent
# initialize the encrypter
encryption = Encryption(path, name=('public_key.pem', 'private1.pem'))
# generates both private and public keys
encryption.generate_keys()
Loading Existing Private and Public Key
# the directory where the keys are to be stored
# in this case we are using the current file directory
path = Path(__file__).absolute().parent
# initialize the encrypter
encryption = Encryption(path, name=('public_key.pem', 'private1.pem'))
# loads both private and public keys
encryption.load_keys()
# at this point both public and private keys are loaded in memory
# check example below to encrypt using the load or generate keys
Encrypting a message
# the directory where the keys are to be stored
# in this case we are using the current file directory
path = Path(__file__).absolute().parent
# initialize the encrypter
encryption = Encryption(path, name=('public_key.pem', 'private1.pem'))
# generates or load both private and public keys
encryption.load_keys() # or encryption.generate_keys()
encrypted = encryption.encrypt('hello world')
# return encrypted string
decrypted = encryption.decrypt(encrypted)
# returns a decrypted message
# 'hello world'
Encrypt with a custom key from a custom file
# one time encryption
# load a public key file
file_content = open('file.pem')
encryption = Encryption()
encrypted = encryption.encrypt('hello world', file_content)
Decrypt with a custom key from a custom file
# one time decryption
file_content = open('file.pem')
encryption = Encryption()
encrypted_message = 'somethin encrypted'
decrypted = encryption.decrypt('hello world', file_content)
# returns a decrypted message
Sign and Verify Message
# loads key from file
encryption = Encryption(path, name=('public_key.pem', 'private1.pem'))
# generates or load both private and public keys
encryption.load_keys() # or encryption.generate_keys()
# sign a string with a private key
hash = encryption.sign('hello world') # or encryption.sign('hello world', private_key_rfrom_file)
# returns a signed hash
# verify if a message is signed by a private key using its counter public key
verified = encryption.verify_sign('hello world', hash) # or encryption.verify_sign('hello world', hash, public_key_from_file)
# returns bool
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
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file python_easy_rsa-1.0.1.tar.gz.
File metadata
- Download URL: python_easy_rsa-1.0.1.tar.gz
- Upload date:
- Size: 4.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.9.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
46381133e1c8917d7913b47a0a06f9e09a86699622efbbf5ab2e13d7026173ee
|
|
| MD5 |
e4159ba7a2baab3f68a046293aeb3ec2
|
|
| BLAKE2b-256 |
a15d1b05825f443b716a98c037c9171d1f91608a92fbd6e41c717ae1c5e47fe2
|
File details
Details for the file python_easy_rsa-1.0.1-py3-none-any.whl.
File metadata
- Download URL: python_easy_rsa-1.0.1-py3-none-any.whl
- Upload date:
- Size: 4.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.9.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
fce485dc7a334d58c02d04e315490a051bd755d2db03c6c2edb0d1ad221377d9
|
|
| MD5 |
18828ab796c294f772630566dfe4dcfc
|
|
| BLAKE2b-256 |
4949044c29986b5563c7557c48dd97576d41d94a2536d77de16702b2f589ae58
|