Store application credentials in keyring with RSA and AES.
Project description
Credentials Safe
Store application credentials in keyring with RSA and AES.
Hierarchy
credsafe
'---- Agent()
|---- set()
|---- get()
'---- rm()
Example
python
from credsafe import *
# initialize an agent
kp = { # check easyrsa for more info
"private_key": b"...",
"public_key": b"..."
}
import os
# remember these keys otherwise you cannot get credentials
hmac_key = os.urandom(64)
credsafe_agent = Agent(app_name="my app", key_pair=kp, hmac_key=hmac_key)
# set something JSON-serializable for a user
credsafe_agent.set(id="username", pw="password", k="phone", v=123456789)
credsafe_agent.set(id="username", pw="password", k="config", v={"something": "secret"})
# get something for a user
print(credsafe_agent.get(id="username", pw="password", k="phone"))
# 123456789
print(credsafe_agent.get(id="username", pw="password", k="config"))
# {"something": "secret"}
# remove something for a user
credsafe_agent.rm(id="username", pw="password", k="config")
print(credsafe_agent.get(id="username", pw="password", k="config"))
# KeyError
# destroy everything for a user
credsafe_agent.destroy(id="username")
shell
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
credsafe-0.0.29.tar.gz
(3.6 kB
view hashes)
Built Distribution
credsafe-0.0.29-py3-none-any.whl
(16.3 kB
view hashes)
Close
Hashes for credsafe-0.0.29-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 93f57144cba72957f87008d377518b9e9c5e5833cf92a090fd9162e20c1abd2d |
|
MD5 | 59dd045ed40032cda9d617ba7f632481 |
|
BLAKE2b-256 | 5004668ff57a747657494bfd2dda525e43ee9dd489edc5ca52e508171e3bec6c |