python-keyutils is a set of python bindings for keyutils (available from http://people.redhat.com/~dhowells/keyutils), a key management suite that leverages the infrastructure provided by the Linux kernel for safely storing and retrieving sensitive infromation in your programs.
Usage
The C extension module follows closely the C API (see add_key(2), request_key(2), keyctl_read_alloc(2)).
Exceptions also follow the C API. The only notable difference is for request_key: when the key is not present, None is returned, instead of raising an exception (which is usually a more expensive operation).
Note that the function parameters are passed as bytes not strings! On python 3 this usually requires an explicit param.encode() call.
For example:
import keyutils
# NOTE: only pass `bytes` to the keyutils API:
name = b'foo'
value = b'bar'
ring = keyutils.KEY_SPEC_PROCESS_KEYRING
key_id = keyutils.add_key(name, value, ring)
assert keyutils.request_key(name, ring) == key_id
assert keyutils.read_key(key_id) == value
# set timeout to 5 seconds, wait and then... it's gone:
keyutils.set_timeout(key_id, 5)
from time import sleep
sleep(6)
assert keyutils.request_key(name, ring) == None
Further examples can be found in the test subfolder.
Metadata
Release files for keyutils 0.6
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| keyutils-0.6.tar.gz | 42.5 kB | Details |
Release files / keyutils-0.6.tar.gz
| Download URL | keyutils-0.6.tar.gz |
|---|---|
| Size | 42.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
a9cfbacc33a5ada165531ff2d6e1241ec93a9f0cabc63205d6ff73f8eff33752
|
|
BLAKE2b-256 checksum How to use checksums |
febcb30a947305d3b47982a5c72df623ba4d42396c5869dce2942f1eaa83f546
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/1.12.1 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.7.2 requests-toolbelt/0.9.1 tqdm/4.30.0 CPython/3.6.7
|