Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/ooknosi/django_honeywords
Django implementation of the Honeywords Project
https://github.com/ooknosi/django_honeywords
Last synced: 18 days ago
JSON representation
Django implementation of the Honeywords Project
- Host: GitHub
- URL: https://github.com/ooknosi/django_honeywords
- Owner: ooknosi
- License: apache-2.0
- Created: 2019-04-08T10:02:39.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2023-04-21T20:33:14.000Z (over 1 year ago)
- Last Synced: 2024-10-13T14:37:32.790Z (about 1 month ago)
- Language: Python
- Size: 53.7 KB
- Stars: 2
- Watchers: 2
- Forks: 0
- Open Issues: 2
-
Metadata Files:
- Readme: README.rst
- Changelog: CHANGELOG.rst
- Contributing: CONTRIBUTING.rst
- License: LICENSE
Awesome Lists containing this project
README
=================
Django Honeywords
=================
Django implementation of the `Honeywords Project`_ by Ari Juels and Ronald L. Rivest... _Honeywords Project: http://people.csail.mit.edu/rivest/honeywords/
Generates a list of honeywords along with the actual user password on user registration. If the wrong compromised honeyword is used to login, the user account will be automatically deactivated.
Written for Django 2.2 on Python 3.6
Honeychecker Quick Link
-----------------------`Honeychecker`__
__ honeychecker.py_
Quick Start
-----------
#) Install Django Honeywords::pip install django-honeywords
#) Add ``honeywords`` to ``INSTALLED_APPS`` in ``settings.py``::
INSTALLED_APPS = [
...
'honeywords',
]#) Add ``honeywords.hashers.HoneywordHasher`` to top of ``PASSWORD_HASHERS`` in ``settings.py`` (or add ``PASSWORD_HASHERS`` if missing)::
PASSWORD_HASHERS = [
'honeywords.hashers.HoneywordHasher',
'django.contrib.auth.hashers.PBKDF2PasswordHasher',
'django.contrib.auth.hashers.PBKDF2SHA1PasswordHasher',
'django.contrib.auth.hashers.Argon2PasswordHasher',
'django.contrib.auth.hashers.BCryptSHA256PasswordHasher',
]#) Add ``honeywords.backends.HoneywordsBackend`` to the top of ``AUTHENTICATION_BACKENDS`` in ``settings.py`` (or add ``AUTHENTICATION_BACKENDS`` if missing)::
AUTHENTICATION_BACKENDS = [
'honeywords.backends.HoneywordsBackend',
'django.contrib.auth.backends.ModelBackend',
]#) Add ``HONEYCHECKER_URI = http(s)://:`` into ``settings.py``::
HONEYCHECKER_URI = 'http://192.168.56.101:55555'
#) Create Honeywords table::
./manage.py makemigrations honeywords
./manage.py migrate#) Download `honeychecker.py`_ to the Honeychecker server::
wget -c https://raw.githubusercontent.com/ooknosi/django_honeywords/master/src/honeywords/honeychecker.py
.. _honeychecker.py: https://raw.githubusercontent.com/ooknosi/django_honeywords/master/src/honeywords/honeychecker.py
#) Edit the ``IP``, ``PORT`` and ``DATABASE`` settings in ``honeychecker.py``::
### Settings
IP = '192.168.56.101'
PORT = 55555
DATABASE = 'honeychecker_db.sqlite3'
####) Run ``honeychecker.py`` on the Honeychecker server::
python honeychecker.py
Documentation
-------------
TODO