Parse Fernet tokens as much as possible without using a key.
Project description
A Python library to parse Fernet tokens as much as possible without using a key. This is useful for doing limited, non-cryptographic validation or introspection of Fernet tokens.
Usage
>>> token = 'gAAAAAAdwJ6wAAECAwQFBgcICQoLDA0ODy021cpGVWKZ_eEwCGM4BLLF_5CV9dOPmrhuVUPgJobwOz7JcbmrR64jVmpU4IwqDA=='
>>> import keyless_fernet
>>> t = keyless_fernet.Token(token) # tokens are validated on init
>>> t.validate(ttl=60) # but you can also validate a token against any TTL
>>> t.version # retrieve the token's version, as an integer
128
>>> t.timestamp # retrieve the token's timestamp, as a datetime
datetime.datetime(1985, 10, 26, 8, 20)
>>> t.iv # and see the hex representations of the other attributes
'000102030405060708090a0b0c0d0e0f'
>>> t.ciphertext
'2d36d5ca46556299fde13008633804b2'
>>> t.hmac
'c5ff9095f5d38f9ab86e5543e02686f03b3ec971b9ab47ae23566a54e08c2a0c'
Testing
No external testing dependencies are required:
$ python -m unittest discover
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
keyless_fernet-1.0.0.tar.gz
(7.2 kB
view details)
File details
Details for the file keyless_fernet-1.0.0.tar.gz
.
File metadata
- Download URL: keyless_fernet-1.0.0.tar.gz
- Upload date:
- Size: 7.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 18bb3033bbf14d891fd36c84045df16994097456dfe41e365a5448dfc581c3e0 |
|
MD5 | d60149531797460ce9f4095766ccd6bf |
|
BLAKE2b-256 | 6013dfe56344c8a96cadad33ac482b5585e4656edf2f51926fe06ef95f9739f5 |