Skip to main content

Django Model Field that supports AES encryption

Project description

AES Field
=============

Provides an AES field for Django that does AES encryption and decryption
using `m2secret-py3`_, a Python wrapper for OpenSSL.

.. _M2Crypto: https://pypi-hypernode.com/pypi/m2secret-py3

Usage
-----

Like any other field::

from aesfield.field import AESField

class SomeModel(...):
key = AESField()

Configuration
-------------

AESField takes the following parameters beyond a normal CharField:

* `aes_prefix`: the prefix to use on fields, defaults to `aes:`

* `aes_key`: the key to use in the lookup method to find a suitable key for
this field, defaults to `default`

Settings:

* `AES_METHOD`: the module to look in for a key lookup method, if you want
something different from the default, `aesfield.default`

* `AES_KEYS`: used by the `aesfield.default` method. It's a dictionary of keys
to filenames. Those files must be able to be read by the Django process. It
must have a `default` key, unless you specify a specifc one in `aes_key`

Commands
--------

If you add `aesfield` to `INSTALLED_APPS` you'll get one more command,
`generate_aes_keys`. This will generate a new file for each file mentioned in
the `AES_KEYS` dictionary. *But only if that file does not already exist*.


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

django-aesfield-2.2.tar.gz (5.1 kB view hashes)

Uploaded Source

Built Distribution

django_aesfield-2.2-py2-none-any.whl (6.8 kB view hashes)

Uploaded Python 2

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