Skip to main content

simple encode decode with a private key, based on the base64 encode and decode.

Project description

simple encode decode w/ private key, based on the base64 encode and decode.

Initially developed for turning database ID’s into URL’s without exposing the ids in the url, or having a bot iterate over the values.

Also useful for storing passwords which need to be converted back to clear text, in alphanumeric form given a secret word. This is NOT encryption nor a hash. This is NOT cryptographically safe. For that an SSL public/private key pair is preferred. For situations where the encoded string is already protected by a privileged account, and the secret key is stored in a configuration file which is also protected by a privileged login, this system is secure. It is secure by virtue of having all its elements secure, and mitigates the risk of compromise of either one of those vectors (but not both).

This is good for websites which store the secret key in a configuration file on disk, and the encoded word in a database (accessible by a different user), and where both values are not in transactional memory except for the duration of decoding and using the decoded string, which should be immediate.

Requires Python 2.4 or greater

>>> from simpleencode import encode, decode, mksecret
>>> secret_key = mksecret()
>>> secret_key
"{iIb'd/y!%w$'BDL&6NkWf`LeyZvp+}6QFm3~sBQjP)[!8xZ}a"
>>> encoded = encode("Some Text", secret_key)
>>> encoded
'S1lwA3QLQhwBcRJcUxs5fQNSekZjNjwREzFzNSthFh9kNj5PSzl6Cih6HxtWa1lvKhE='
>>> decode(encoded, secret_key)
'Some Text'
>>>

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

simpleencode-1.0.0.tar.gz (4.3 kB view details)

Uploaded Source

File details

Details for the file simpleencode-1.0.0.tar.gz.

File metadata

File hashes

Hashes for simpleencode-1.0.0.tar.gz
Algorithm Hash digest
SHA256 b95392f095db4dbcf1908ccc8437f5f526ad829a2124a3ac48c7eccd843cbf3b
MD5 f6a4638270fa9ef6769691c9b93a3dd5
BLAKE2b-256 309962e60f9a6ab9d55487a3a0d9090424d828f13d9120a5a0eebcec615c5e79

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page