Platform-Agnostic Security Tokens for Python
Project description
python-paseto
Platform-Agnostic Security Tokens for Python
Installation
Clone the repository, in the future a pip install will be available.
poetry is used to manage project dependencies / build / test / publish.
Install dependencies with
poetry install
Run tests
pytest
To check code coverage run
coverage run -m pytest
coverage report
Low level API
Initial implementation of the V2 encrypt / decrypt functions. Alpha version. Low level API focuses on solid, high quality, production ready primitives as specified directly in the PASETO protocol.
Example use
from paseto.protocol.version2 import Version2
message = b"foo" # your data
key = b"0" * 32 # encryption key
token = Version2.encrypt(message, key)
plain_text = Version2.decrypt(token, key)
assert plain_text == message
print(f"token={token}")
print(f"plain_text={plain_text}")
print(f"message={message}")
With optional footer
from paseto.protocol.version2 import Version2
message = b"foo" # your data
key = b"0" * 32 # encryption key
optional_footer = b"sample_footer" # authenticated but not encrypted metadata
token = Version2.encrypt(message, key, optional_footer)
plain_text = Version2.decrypt(token, key, optional_footer)
assert plain_text == message
print(f"token={token}")
print(f"plain_text={plain_text}")
print(f"message={message}")
High level API
In the future a high level API will provide developer friendly access to low level API and support easy integration into other projects.
Code formatting is managed by black. To format run
black .
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
Hashes for python_paseto-0.2.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0f65184930f33ce6364952b82cfbd88ac5d5856e04cc296f8e17ec592e5530dc |
|
MD5 | c2019613319ae821123f343a91a91001 |
|
BLAKE2b-256 | d1c51cd190e09214e6463bb07f560f29056f557d991c2016a1599c325c3c4d64 |