{ "info": { "author": "Bouke Haarsma", "author_email": "bouke@haarsma.eu", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Environment :: Web Environment", "Framework :: Django", "Framework :: Django :: 1.11", "Framework :: Django :: 2.1", "Framework :: Django :: 2.2", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Topic :: Security", "Topic :: System :: Systems Administration :: Authentication/Directory" ], "description": "================================\nDjango Two-Factor Authentication\n================================\n\n.. image:: https://travis-ci.org/Bouke/django-two-factor-auth.svg?branch=master\n :alt: Build Status\n :target: https://travis-ci.org/Bouke/django-two-factor-auth\n\n.. image:: https://codecov.io/gh/Bouke/django-two-factor-auth/branch/master/graph/badge.svg\n :alt: Test Coverage\n :target: https://codecov.io/gh/Bouke/django-two-factor-auth\n\n.. image:: https://badge.fury.io/py/django-two-factor-auth.svg\n :alt: PyPI\n :target: https://pypi.python.org/pypi/django-two-factor-auth\n\nComplete Two-Factor Authentication for Django. Built on top of the one-time\npassword framework django-otp_ and Django's built-in authentication framework\n``django.contrib.auth`` for providing the easiest integration into most Django\nprojects. Inspired by the user experience of Google's Two-Step Authentication,\nallowing users to authenticate through call, text messages (SMS), by using a\ntoken generator app like Google Authenticator or a YubiKey_ hardware token\ngenerator (optional).\n\nI would love to hear your feedback on this package. If you run into\nproblems, please file an issue on GitHub, or contribute to the project by\nforking the repository and sending some pull requests. The package is\ntranslated into English, Dutch and other languages. Please contribute your own\nlanguage using Transifex_.\n\nTest drive this app through the online `example app`_, hosted by Heroku_. It\ndemos most features except the Twilio integration. The example also includes\ndjango-user-sessions_ for providing Django sessions with a foreign key to the\nuser. Although the package is optional, it improves account security control\nover ``django.contrib.sessions``.\n\nCompatible with modern Django versions. At the moment of writing that's\nincluding 1.11, 2.1, and 2.2 on Python 2.7, 3.4, 3.5, 3.6 and 3.7. Documentation\nis available at `readthedocs.org`_.\n\n\nInstallation\n============\nRefer to the `installation instructions`_ in the documentation.\n\n\nGetting help\n============\n\nFor general questions regarding this package, please hop over to Stack \nOverflow. If you think there is an issue with this package; check if the\nissue is already listed (either open or closed), and file an issue if\nit's not.\n\n\nContribute\n==========\n* Submit issues to the `issue tracker`_ on Github.\n* Fork the `source code`_ at Github.\n* Write some code and make sure it is covered with unit tests.\n* Send a pull request with your changes.\n* Provide a translation using Transifex_.\n\nRunning tests\n-------------\nThis project aims for full code-coverage, this means that your code should be\nwell-tested. Also test branches for hardened code. You can run the full test\nsuite with::\n\n make test\n\nOr run a specific test with::\n\n make test TARGET=tests.tests.TwilioGatewayTest\n\nFor Python compatibility, tox_ is used. You can run the full test suite,\ncovering all supported Python and Django version with::\n\n tox\n\nReleasing\n---------\nThe following actions are required to push a new version:\n\n* Update release notes\n* If any new translations strings were added, push the new source language to\n Transifex_. Make sure translators have sufficient time to translate those\n new strings::\n\n make tx-push\n\n* Add migrations::\n\n python example/manage.py makemigrations two_factor\n git commit two_factor/migrations -m \"Added migrations\"\n\n* Update translations::\n\n make tx-pull\n\n* Package and upload::\n\n bumpversion [major|minor|patch]\n git push && git push --tags\n python setup.py sdist bdist_wheel\n twine upload dist/*\n\n\nSee Also\n========\nHave a look at django-user-sessions_ for Django sessions with a foreign key to\nthe user. This package is also included in the online `example app`_.\n\n\nLicense\n=======\nThe project is licensed under the MIT license.\n\n.. _`example app`: http://example-two-factor-auth.herokuapp.com\n.. _django-otp: https://pypi.python.org/pypi/django-otp\n.. _Transifex: https://www.transifex.com/projects/p/django-two-factor-auth/\n.. _Twilio: http://www.twilio.com/\n.. _Heroku: https://www.heroku.com\n.. _django-user-sessions: https://pypi.python.org/pypi/django-user-sessions\n.. _tox: https://testrun.org/tox/latest/\n.. _issue tracker: https://github.com/Bouke/django-two-factor-auth/issues\n.. _source code: https://github.com/Bouke/django-two-factor-auth\n.. _readthedocs.org: http://django-two-factor-auth.readthedocs.org/\n.. _`installation instructions`:\n http://django-two-factor-auth.readthedocs.io/en/stable/installation.html\n.. _Yubikey: https://www.yubico.com/products/yubikey-hardware/\n.. _`Hynek's Sharing Your Labor of Love: PyPI Quick And Dirty`:\n https://hynek.me/articles/sharing-your-labor-of-love-pypi-quick-and-dirty/\n\n\n", "description_content_type": "", "docs_url": null, "download_url": "https://pypi.python.org/pypi/django-two-factor-auth", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/Bouke/django-two-factor-auth", "keywords": "", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "django-two-factor-auth", "package_url": "https://pypi.org/project/django-two-factor-auth/", "platform": "", "project_url": "https://pypi.org/project/django-two-factor-auth/", "project_urls": { "Download": "https://pypi.python.org/pypi/django-two-factor-auth", "Homepage": "https://github.com/Bouke/django-two-factor-auth" }, "release_url": "https://pypi.org/project/django-two-factor-auth/1.9.1/", "requires_dist": [ "Django (>=1.11)", "django-otp (<0.99,>=0.6.0)", "qrcode (<6.99,>=4.0.0)", "django-phonenumber-field (<1.99,>=1.1.0)", "django-formtools", "twilio (>=6.0); extra == 'Call'", "twilio (>=6.0); extra == 'SMS'", "django-otp-yubikey; extra == 'YubiKey'" ], "requires_python": "", "summary": "Complete Two-Factor Authentication for Django", "version": "1.9.1" }, "last_serial": 5496391, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "7d1682d848b8278ddf942a8a46333bc7", "sha256": "b6f4ce3c43de456c5d5a9e86dbef0bca102059fd24aa9343857aa589f88fa3f4" }, "downloads": -1, "filename": "django-two-factor-auth-0.1.0.tar.gz", "has_sig": false, "md5_digest": "7d1682d848b8278ddf942a8a46333bc7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14506, "upload_time": "2012-09-12T09:28:04", "url": "https://files.pythonhosted.org/packages/2c/8a/94031f53f1be54ac80131bca7b4bff18f0271b86df405c54aaf680ea3d78/django-two-factor-auth-0.1.0.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "b0a2b78156ee489e3f03c982b52d5707", "sha256": "e9f574077ca15efbf67ea0c9d9443c8aa5e4e862f8581c0c03a220559c8adea4" }, "downloads": -1, "filename": "django-two-factor-auth-0.1.1.tar.gz", "has_sig": false, "md5_digest": "b0a2b78156ee489e3f03c982b52d5707", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14515, "upload_time": "2012-09-12T19:19:43", "url": "https://files.pythonhosted.org/packages/9f/2f/7bc580246564211ac2fbcd19bfaacfaa6ee3eca480591a3e8cfe217f1ed5/django-two-factor-auth-0.1.1.tar.gz" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "ef1d9fd044b20b89946d31db9371ddd7", "sha256": "bf40814871810d4befa157ff6f71fabde1c5a539d30282768fe258fcacfaf8e4" }, "downloads": -1, "filename": "django-two-factor-auth-0.1.2.tar.gz", "has_sig": false, "md5_digest": "ef1d9fd044b20b89946d31db9371ddd7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15263, "upload_time": "2013-01-13T10:31:26", "url": "https://files.pythonhosted.org/packages/13/86/143a5a6134f58661c9e44cc024f6ab3e3e867bceae46270b6041044cdb6e/django-two-factor-auth-0.1.2.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "a42a0ac6e529f8da09426ab32281a2a7", "sha256": "aa13658c9caba4af70218d883ede7c765ac6d592c996dbf41e966c902643a0b9" }, "downloads": -1, "filename": "django-two-factor-auth-0.2.0.tar.gz", "has_sig": false, "md5_digest": "a42a0ac6e529f8da09426ab32281a2a7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 25088, "upload_time": "2013-11-20T14:19:43", "url": "https://files.pythonhosted.org/packages/af/f0/87ef2cb3ece812655ddcb8c1b2b25fe81e2354a8698821faa3ada585b7ea/django-two-factor-auth-0.2.0.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "1c45ed4ec73f2455201cd454baae3adc", "sha256": "190aaf36929a0d71fcf565320d7f404731afdd43837868fee458d145948b0bd0" }, "downloads": -1, "filename": "django-two-factor-auth-0.2.1.tar.gz", "has_sig": false, "md5_digest": "1c45ed4ec73f2455201cd454baae3adc", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 25227, "upload_time": "2013-11-25T19:53:46", "url": "https://files.pythonhosted.org/packages/79/5c/434c2462a79fc1bf01045c38e7a041f97610a05fd1d6d0b80960f260a374/django-two-factor-auth-0.2.1.tar.gz" } ], "0.2.2": [ { "comment_text": "", "digests": { "md5": "13065821bbcab448a1af0c7492e0c1aa", "sha256": "525604b4317ec92ab3499688147bf40953f723203930349f3a4227f86d7cd936" }, "downloads": -1, "filename": "django-two-factor-auth-0.2.2.tar.gz", "has_sig": false, "md5_digest": "13065821bbcab448a1af0c7492e0c1aa", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 26593, "upload_time": "2013-11-27T20:27:01", "url": "https://files.pythonhosted.org/packages/94/38/e5861b99b62656f5f2bae0eb5ebc878867d664edda9e846ead182f37c384/django-two-factor-auth-0.2.2.tar.gz" } ], "0.2.3": [ { "comment_text": "", "digests": { "md5": "0d3360b9ee798179a95d6715607f65ad", "sha256": "b46589570eb129242cdf9970f43300355b750f26ba51b6cbebf13743bda04df3" }, "downloads": -1, "filename": "django-two-factor-auth-0.2.3.tar.gz", "has_sig": false, "md5_digest": "0d3360b9ee798179a95d6715607f65ad", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 33331, "upload_time": "2014-01-03T16:52:04", "url": "https://files.pythonhosted.org/packages/0b/31/cb12e1ded70bde039b7a524d14601ae44419f745646799ed1e0248ec4654/django-two-factor-auth-0.2.3.tar.gz" } ], "0.3.0": [ { "comment_text": "", "digests": { "md5": "b72684caddd5eb12f72ecb74baa9a929", "sha256": "a27435ae0880843099d5c98433a10c0a8f6d6dfbba507bf2965a876b72601752" }, "downloads": -1, "filename": "django-two-factor-auth-0.3.0.tar.gz", "has_sig": false, "md5_digest": "b72684caddd5eb12f72ecb74baa9a929", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 39942, "upload_time": "2014-01-15T16:50:51", "url": "https://files.pythonhosted.org/packages/a2/6e/3af0d4ad2cc8ce35cecb097eba804ec6c9eb268f89c828c2c07ab7c19d85/django-two-factor-auth-0.3.0.tar.gz" } ], "0.3.1": [ { "comment_text": "", "digests": { "md5": "6da1dcca1dfe0ebf9fcc145bf0f3a356", "sha256": "9f7ecf57af3ced0e37bc6f56312ed4d4d1145314c5ed76369bb4f698531c4f4a" }, "downloads": -1, "filename": "django-two-factor-auth-0.3.1.tar.gz", "has_sig": false, "md5_digest": "6da1dcca1dfe0ebf9fcc145bf0f3a356", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 40523, "upload_time": "2014-01-19T10:34:41", "url": "https://files.pythonhosted.org/packages/60/88/ff5620fc6f8eefa819143bbac5ed04f754bbd9f2921c26467d78ca52b847/django-two-factor-auth-0.3.1.tar.gz" } ], "0.4.0": [ { "comment_text": "", "digests": { "md5": "f36f871a249b0b76375da07d4585c568", "sha256": "6ec82565cdee4811528a0d36faf9231bae3dce086e276468026a7191bd215800" }, "downloads": -1, "filename": "django-two-factor-auth-0.4.0.tar.gz", "has_sig": false, "md5_digest": "f36f871a249b0b76375da07d4585c568", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 40543, "upload_time": "2014-01-30T15:33:17", "url": "https://files.pythonhosted.org/packages/01/eb/578c41887c490df8d10f1b390ad4719d4ace789953c1c5b6dffaad567784/django-two-factor-auth-0.4.0.tar.gz" } ], "0.5.0": [ { "comment_text": "", "digests": { "md5": "442aae9f058e8edba49ef40fc9c8dec3", "sha256": "63fe27cfd84084b621191db881456c5cb7519781eb0b9fd2f00d999ec79cd3a8" }, "downloads": -1, "filename": "django-two-factor-auth-0.5.0.tar.gz", "has_sig": false, "md5_digest": "442aae9f058e8edba49ef40fc9c8dec3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 43363, "upload_time": "2014-03-23T08:11:13", "url": "https://files.pythonhosted.org/packages/d5/99/43d9579d6bdf35c33b417efcfbbfba42beb635236166bc6a2bc0ba0eaa24/django-two-factor-auth-0.5.0.tar.gz" } ], "1.0.0": [ { "comment_text": "", "digests": { "md5": "e842435d1c8a5c6a356c104893d3a2ed", "sha256": "b23074d7270422db289184e42f168487146ae1a6ffc7ee7c5d1e8b67928d9b6c" }, "downloads": -1, "filename": "django_two_factor_auth-1.0.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "e842435d1c8a5c6a356c104893d3a2ed", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 134498, "upload_time": "2014-09-19T16:41:40", "url": "https://files.pythonhosted.org/packages/0a/5d/35444779f9f08f9912d753e9d7c3b5d6a7a31882d7051c8d6f07a7ce95a0/django_two_factor_auth-1.0.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "ce7c801c36d75948ab4e899c27839682", "sha256": "ce26826ac75ecf0acaba943da1c17a6f24e1b13aa876627959d0bf62e9799d11" }, "downloads": -1, "filename": "django-two-factor-auth-1.0.0.tar.gz", "has_sig": false, "md5_digest": "ce7c801c36d75948ab4e899c27839682", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 62542, "upload_time": "2014-09-19T16:41:18", "url": "https://files.pythonhosted.org/packages/e2/29/208b0778a467c04b9d2104fd3e9516fb138213d195eb3fa80711d8b80268/django-two-factor-auth-1.0.0.tar.gz" } ], "1.0.0-beta1": [ { "comment_text": "", "digests": { "md5": "4676849c9f42614d9d3046d99bb0e0d2", "sha256": "7949e68f5c3527d407181b7fdbfca711861aa62f472b2718c125bc4ba47d0dcc" }, "downloads": -1, "filename": "django_two_factor_auth-1.0.0_beta1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "4676849c9f42614d9d3046d99bb0e0d2", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 134392, "upload_time": "2014-06-01T08:24:29", "url": "https://files.pythonhosted.org/packages/c8/2b/39ea8776d2c938e17a27d3a47c0bf67e14143723cd4702382cd3aff04913/django_two_factor_auth-1.0.0_beta1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "5377fc8296cf9ea0d4d32073874ec082", "sha256": "45465871acb011170dec5b896cf436569e82324556c0456374eecd2de4f9be86" }, "downloads": -1, "filename": "django-two-factor-auth-1.0.0-beta1.tar.gz", "has_sig": false, "md5_digest": "5377fc8296cf9ea0d4d32073874ec082", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 63268, "upload_time": "2014-06-01T08:23:26", "url": "https://files.pythonhosted.org/packages/3a/ba/b38ddecbb3cc211505c8ac3b11976e68683e33843c3c2b5934626a950cea/django-two-factor-auth-1.0.0-beta1.tar.gz" } ], "1.0.0-beta2": [ { "comment_text": "", "digests": { "md5": "f8f17798cada6b25705c9d671b50d752", "sha256": "62baad8b23d70559f542cb912dcca18dea02b3e68e37229c79bc58550946a1c4" }, "downloads": -1, "filename": "django_two_factor_auth-1.0.0_beta2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "f8f17798cada6b25705c9d671b50d752", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 134369, "upload_time": "2014-06-04T19:56:56", "url": "https://files.pythonhosted.org/packages/b7/2d/2d25993aae9d611daa356537952b94590a824303ae7b578ef57c8c53efe6/django_two_factor_auth-1.0.0_beta2-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "4c2dadfa3224c88cc37e5f365765a804", "sha256": "2bcc200e799c9e5983a685c1675124832441eb7099619cea2f912b0b90646a4d" }, "downloads": -1, "filename": "django-two-factor-auth-1.0.0-beta2.tar.gz", "has_sig": false, "md5_digest": "4c2dadfa3224c88cc37e5f365765a804", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 63230, "upload_time": "2014-06-04T19:38:42", "url": "https://files.pythonhosted.org/packages/e7/b3/5397747f6089bb1e18fc8b9bf4d2b6fb5633a4db68c944539424c1f2f895/django-two-factor-auth-1.0.0-beta2.tar.gz" } ], "1.0.0-beta3": [ { "comment_text": "", "digests": { "md5": "d4c3ef1977c2f164c4ec73bfcca4cf2d", "sha256": "dd10084f2d711c984ae65116fbb260f316b5e46b90eeabcc88acc8aa495a9b98" }, "downloads": -1, "filename": "django_two_factor_auth-1.0.0_beta3-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "d4c3ef1977c2f164c4ec73bfcca4cf2d", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 134986, "upload_time": "2014-06-15T09:20:30", "url": "https://files.pythonhosted.org/packages/76/c6/5146ace826d13a93cd597df1b44c9bc906585287934310883f1e58d0fde7/django_two_factor_auth-1.0.0_beta3-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "8760809dacf3da3dd453b581d458babb", "sha256": "27cf4ad7f9950523b577b67414d1aad34a0e0a3d23e007f176657cfedcb89b43" }, "downloads": -1, "filename": "django-two-factor-auth-1.0.0-beta3.tar.gz", "has_sig": false, "md5_digest": "8760809dacf3da3dd453b581d458babb", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 63240, "upload_time": "2014-06-15T09:19:36", "url": "https://files.pythonhosted.org/packages/4f/fe/9e2e8adef95e809fa4ebae1802d82d73a75908d461d9753bfa6d5d3b7262/django-two-factor-auth-1.0.0-beta3.tar.gz" } ], "1.1.0": [ { "comment_text": "", "digests": { "md5": "b42526635c2467a9dfc4e31f625a2958", "sha256": "8906dffb86461522f0e26034e0b3aa0008ac3a7e1ea0e778a88b9fc4a1f399f4" }, "downloads": -1, "filename": "django_two_factor_auth-1.1.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "b42526635c2467a9dfc4e31f625a2958", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 136586, "upload_time": "2015-01-07T20:39:29", "url": "https://files.pythonhosted.org/packages/d6/bc/94352c9d03424866b48d0bb31f794f1a0afe062b77d889ab98e506524494/django_two_factor_auth-1.1.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "b1f72daedea78bff6368192973dd97aa", "sha256": "bf8dd0037e35bceb1aaf286c8f88c456e9bd5edcd773d0d88a3b6ae26e0e9841" }, "downloads": -1, "filename": "django-two-factor-auth-1.1.0.tar.gz", "has_sig": false, "md5_digest": "b1f72daedea78bff6368192973dd97aa", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 63909, "upload_time": "2015-01-07T20:37:32", "url": "https://files.pythonhosted.org/packages/d1/4b/7c0a153c4c53cbee5577f2d11312ef8182faa3b15b4381c8c32da5050b94/django-two-factor-auth-1.1.0.tar.gz" } ], "1.1.1": [ { "comment_text": "", "digests": { "md5": "2f88ccdfb6d37c501691d00e7f12b20e", "sha256": "8996d7fe1986f3b5b5ae761e4de576b27ad98be76f00e16c2fcc706d828bc47b" }, "downloads": -1, "filename": "django_two_factor_auth-1.1.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "2f88ccdfb6d37c501691d00e7f12b20e", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 137246, "upload_time": "2015-01-10T07:34:47", "url": "https://files.pythonhosted.org/packages/aa/dc/04ba0487bf97dadb20474ae18a45e64898bcd14fa82a1f49c513ec9b79d9/django_two_factor_auth-1.1.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "a178059d4bdb124272a31c7b54bd048b", "sha256": "2536af17ddf6bfba8939e4c0591c7356c3697b25aab231564254ed013127de6e" }, "downloads": -1, "filename": "django-two-factor-auth-1.1.1.tar.gz", "has_sig": false, "md5_digest": "a178059d4bdb124272a31c7b54bd048b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 64072, "upload_time": "2015-01-10T07:34:43", "url": "https://files.pythonhosted.org/packages/fb/aa/13de9df5e9da5302e84c5dd30323faaadd9d974ab89dda83399fbce076ab/django-two-factor-auth-1.1.1.tar.gz" } ], "1.2.0": [ { "comment_text": "", "digests": { "md5": "845bff2c396691d73afcb7ced05219d4", "sha256": "4eafa630142eaefa9326925fbfe604d8a5683b52ac7a261450025dc2b032841b" }, "downloads": -1, "filename": "django_two_factor_auth-1.2.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "845bff2c396691d73afcb7ced05219d4", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 137394, "upload_time": "2015-05-02T09:33:46", "url": "https://files.pythonhosted.org/packages/88/c2/d3080818cdb0ef57bc553260cb51d8bc16cf5e8c0d793cd7772be11a8800/django_two_factor_auth-1.2.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "82b72783c2345b3413d1c4cc3c6ef64b", "sha256": "fc3ccd81abe5caea7e1e1aae19aff1f76d16358158b6534d93fcaf5a38b8f329" }, "downloads": -1, "filename": "django-two-factor-auth-1.2.0.tar.gz", "has_sig": false, "md5_digest": "82b72783c2345b3413d1c4cc3c6ef64b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 64217, "upload_time": "2015-05-02T09:33:43", "url": "https://files.pythonhosted.org/packages/c1/58/e4dd0c44c54b3226a75800921dc2d21707f60d1c67767c37e99bab8d3854/django-two-factor-auth-1.2.0.tar.gz" } ], "1.2.1": [ { "comment_text": "", "digests": { "md5": "f4d6e631462097971b9d41e9d5b17fa4", "sha256": "d05fe1e7df081d9b06786f66de8ce5e0cfa276cef3e1d3f96ba755f361fd26a3" }, "downloads": -1, "filename": "django_two_factor_auth-1.2.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "f4d6e631462097971b9d41e9d5b17fa4", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 137398, "upload_time": "2015-10-28T21:43:01", "url": "https://files.pythonhosted.org/packages/a0/e0/3d130004dd2525891a9276565d74e170545a37633ba702cf664b8403540d/django_two_factor_auth-1.2.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "478d526c6f6aeab45115b0a633dc8b37", "sha256": "e8ae62cf21d6686dafd45757be41e2f4559acbd403b7d119fd13c444edfbf851" }, "downloads": -1, "filename": "django-two-factor-auth-1.2.1.tar.gz", "has_sig": false, "md5_digest": "478d526c6f6aeab45115b0a633dc8b37", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 64176, "upload_time": "2015-10-28T21:42:55", "url": "https://files.pythonhosted.org/packages/38/4c/ac6528ee38b63256a1960bbac9cfbb3ed6eee04618a4b94d22abd7c31e89/django-two-factor-auth-1.2.1.tar.gz" } ], "1.2.2": [ { "comment_text": "", "digests": { "md5": "735a0662e42a54a66bae5565a2cf70fe", "sha256": "5269c2bc30cd5c86e39ec18eb5b459c21cfeb6410dc57b5116c40825ef76c0e5" }, "downloads": -1, "filename": "django_two_factor_auth-1.2.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "735a0662e42a54a66bae5565a2cf70fe", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 137399, "upload_time": "2015-11-19T20:29:49", "url": "https://files.pythonhosted.org/packages/ad/47/f0dd53374a8b5cd29124253d3af5b890925ed0079ece485b3d5525017703/django_two_factor_auth-1.2.2-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "eb3e0bd7d69edec4f23b8b96616ebd99", "sha256": "5ba67499ba73a627340b1e1bdbec14f7c40eaec80b5c2c1cf2a4ca2a5f12e48d" }, "downloads": -1, "filename": "django-two-factor-auth-1.2.2.tar.gz", "has_sig": false, "md5_digest": "eb3e0bd7d69edec4f23b8b96616ebd99", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 64167, "upload_time": "2015-11-19T20:29:42", "url": "https://files.pythonhosted.org/packages/56/69/73f10f1ba5e978e40d73c0ddff3fde0400663e5a56e201dbc885a5b9061b/django-two-factor-auth-1.2.2.tar.gz" } ], "1.3.0": [ { "comment_text": "", "digests": { "md5": "c7aacfea9ae68389863eb76295e88bd6", "sha256": "e57912ba32f2834cfa99a957eab13e0db6d6d84f7b8ba20c71e86b349bca34d3" }, "downloads": -1, "filename": "django_two_factor_auth-1.3.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "c7aacfea9ae68389863eb76295e88bd6", "packagetype": "bdist_wheel", "python_version": "3.5", "requires_python": null, "size": 139805, "upload_time": "2016-01-05T21:32:27", "url": "https://files.pythonhosted.org/packages/be/00/68c14e68c86474a313621024770e3a87f31cfcd45ca40240c96a6fb62ed8/django_two_factor_auth-1.3.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "17292b41b3a2f5ee64acadbd858ae21e", "sha256": "42d407ff677e6d7e5f90f562fb10f538138a8b83fc01298d386cd1fb827fe259" }, "downloads": -1, "filename": "django-two-factor-auth-1.3.0.tar.gz", "has_sig": false, "md5_digest": "17292b41b3a2f5ee64acadbd858ae21e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 60880, "upload_time": "2016-01-05T21:32:05", "url": "https://files.pythonhosted.org/packages/1f/ec/0e95b445009520498ca6c48ecb45f54e0e0fc96c82cbd9d0c32c3ad8170c/django-two-factor-auth-1.3.0.tar.gz" } ], "1.3.1": [ { "comment_text": "", "digests": { "md5": "9d8da369b2c43a7b6ddd838f9f84c2ff", "sha256": "e4766c85c6241a685f7632cea6d2d31859e616539d634d6de402dfd108db1c01" }, "downloads": -1, "filename": "django_two_factor_auth-1.3.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "9d8da369b2c43a7b6ddd838f9f84c2ff", "packagetype": "bdist_wheel", "python_version": "3.5", "requires_python": null, "size": 141503, "upload_time": "2016-02-24T11:35:43", "url": "https://files.pythonhosted.org/packages/e5/0c/ba9f3d6c77daaf691f9757477a23af000407e9ae3aa838dbcb0e2371d33e/django_two_factor_auth-1.3.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "87137f445f45fbaa75b9b9df91587308", "sha256": "82f47fca26f0886ca94a54fc872766a0d6f6f5ecb755ac1218590ee15dff841d" }, "downloads": -1, "filename": "django-two-factor-auth-1.3.1.tar.gz", "has_sig": false, "md5_digest": "87137f445f45fbaa75b9b9df91587308", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 61430, "upload_time": "2016-02-24T11:35:35", "url": "https://files.pythonhosted.org/packages/25/c2/31810da8d608d4b3538909f0b62a31d3796c0c3c1f42bfc8a72e4c763c55/django-two-factor-auth-1.3.1.tar.gz" } ], "1.4.0": [ { "comment_text": "", "digests": { "md5": "79aa60ec5313a47ecbb2db7c28583dec", "sha256": "f9f98848a0c51f27e48986724569fe5a7e2cfc3a611a380b03799243bb200ba0" }, "downloads": -1, "filename": "django_two_factor_auth-1.4.0-py2.py3-none-any.whl", "has_sig": true, "md5_digest": "79aa60ec5313a47ecbb2db7c28583dec", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 131561, "upload_time": "2016-07-26T17:08:46", "url": "https://files.pythonhosted.org/packages/61/3a/b7bb10dd9813a19680965d2b8fdb0c1bf7162fa322dfb5db9a342a77df12/django_two_factor_auth-1.4.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "e87e9e48362effc8cf4da3e991bd9efd", "sha256": "0d490c314abcf66f67869f16f643dc2a8da59dc76634fbbc744d74ae2d4cf7c0" }, "downloads": -1, "filename": "django-two-factor-auth-1.4.0.tar.gz", "has_sig": true, "md5_digest": "e87e9e48362effc8cf4da3e991bd9efd", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 64362, "upload_time": "2016-07-26T17:08:50", "url": "https://files.pythonhosted.org/packages/23/e2/c2178180bb1a5e1df46dc46a7d5d0591fae694d3d422b7c539122c7f391a/django-two-factor-auth-1.4.0.tar.gz" } ], "1.5.0": [ { "comment_text": "", "digests": { "md5": "85982549cbf1cb5c52bc886c9c71e871", "sha256": "91e730cb0984508b97d93e7d7547f7a1676651908982b6c00fa2d10b34cda2f2" }, "downloads": -1, "filename": "django_two_factor_auth-1.5.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "85982549cbf1cb5c52bc886c9c71e871", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 215174, "upload_time": "2017-01-04T11:23:12", "url": "https://files.pythonhosted.org/packages/ab/d3/a3900013553338331b384d412af1135512d875eff904a866e7aeb9eed3bb/django_two_factor_auth-1.5.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "31015012486583446615bf18415b2d44", "sha256": "596ca6a8d6f71b1acc2b1aa5cd1d8e13f2ada8bfa5808f2b5aa07922eb2b55c9" }, "downloads": -1, "filename": "django-two-factor-auth-1.5.0.tar.gz", "has_sig": false, "md5_digest": "31015012486583446615bf18415b2d44", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 82977, "upload_time": "2017-01-04T11:23:15", "url": "https://files.pythonhosted.org/packages/b0/15/189a595635f54d78bb23fefbc762d572ba5e87a9bc1676200c23420ba9f7/django-two-factor-auth-1.5.0.tar.gz" } ], "1.6.0": [ { "comment_text": "", "digests": { "md5": "e211b113d3c791627046da2d26951115", "sha256": "b3f3008181025c24f9c6a2c6def8b56137817a28d01dc1f1b57b7c3f0bf84f96" }, "downloads": -1, "filename": "django_two_factor_auth-1.6.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "e211b113d3c791627046da2d26951115", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 215385, "upload_time": "2017-04-08T05:52:43", "url": "https://files.pythonhosted.org/packages/08/84/bc453ef18d98f3375e7c9c6bda517357a6af625d69ad7d2b56da91e3d73d/django_two_factor_auth-1.6.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "44d32e80633c23329a4e9c74331866ca", "sha256": "b6c8bf0bd040aae5f130be216d517282a7bbca4950d60401903aaca69bdfcb35" }, "downloads": -1, "filename": "django-two-factor-auth-1.6.0.tar.gz", "has_sig": false, "md5_digest": "44d32e80633c23329a4e9c74331866ca", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 83143, "upload_time": "2017-04-08T05:52:45", "url": "https://files.pythonhosted.org/packages/49/da/d9baed7b7c1f2fe980e68453621b227af23444148f0f942864ac99173d5d/django-two-factor-auth-1.6.0.tar.gz" } ], "1.6.1": [ { "comment_text": "", "digests": { "md5": "c81abfa94834aef9feb772bfb32e319e", "sha256": "6ad40e70574a2f53459896903a85bd3ed5bda0215754e34bd0e13c03f9b7c72d" }, "downloads": -1, "filename": "django_two_factor_auth-1.6.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "c81abfa94834aef9feb772bfb32e319e", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 220538, "upload_time": "2017-05-11T18:44:44", "url": "https://files.pythonhosted.org/packages/15/4f/0af2f0d9897af34c2d3539efb6c250cf4323bc226ed5bca006e46079ca5f/django_two_factor_auth-1.6.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "63fb22cf51694bf1b5d1496970e9aba6", "sha256": "773985b42b2e55cb42903e081fcfdfe9fc549970f3e2d8de65e4a7e0e7e6972b" }, "downloads": -1, "filename": "django-two-factor-auth-1.6.1.tar.gz", "has_sig": false, "md5_digest": "63fb22cf51694bf1b5d1496970e9aba6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 86129, "upload_time": "2017-05-11T18:44:47", "url": "https://files.pythonhosted.org/packages/8f/c8/b02dcb9ede797bbfb91cec0cccab8a2a0cb706b8da51a2abc00e23c3fb8d/django-two-factor-auth-1.6.1.tar.gz" } ], "1.6.2": [ { "comment_text": "", "digests": { "md5": "174ee196b7ffb8d861f4389539aeb9d3", "sha256": "1f27660e14db370f4bb2b666180f47f32b40234eaf82e05f2c9ace6160f4b4b6" }, "downloads": -1, "filename": "django_two_factor_auth-1.6.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "174ee196b7ffb8d861f4389539aeb9d3", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 222913, "upload_time": "2017-07-29T07:35:37", "url": "https://files.pythonhosted.org/packages/0a/29/c6da5794def9d3647d94cde1a5fd41459a62836a2318e1c3dd914b760e19/django_two_factor_auth-1.6.2-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "2c2de5f6a08250ce869a7e5b8a1c0d90", "sha256": "2319cea6b1e1415471c9b9fd5efd1b2ff29c97a06418045c6e7df5d22cb6e373" }, "downloads": -1, "filename": "django-two-factor-auth-1.6.2.tar.gz", "has_sig": false, "md5_digest": "2c2de5f6a08250ce869a7e5b8a1c0d90", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 87297, "upload_time": "2017-07-29T07:35:38", "url": "https://files.pythonhosted.org/packages/6d/b7/286ac4ae4696451b256458adacacc66e41fffc1bf8655d023eef14940e82/django-two-factor-auth-1.6.2.tar.gz" } ], "1.7.0": [ { "comment_text": "", "digests": { "md5": "91f7a1a78e5655f9185c048ecb57b9cd", "sha256": "ae60423decd63aad85dff68d47784d9bf64cf45d7d6cd37e0664d9e6d5d5b37e" }, "downloads": -1, "filename": "django_two_factor_auth-1.7.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "91f7a1a78e5655f9185c048ecb57b9cd", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 211787, "upload_time": "2017-12-19T06:01:56", "url": "https://files.pythonhosted.org/packages/bc/bd/60e6fde81c576554d80b65f4f70f2f131fa7fd02a24cdb31eb6b833ef46e/django_two_factor_auth-1.7.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "a97c86b4d8e0812d01f597b73c19281b", "sha256": "21ee5a97a2e354973680a4d21f48fdc59d4660f01b4c645e9e19269813733543" }, "downloads": -1, "filename": "django-two-factor-auth-1.7.0.tar.gz", "has_sig": false, "md5_digest": "a97c86b4d8e0812d01f597b73c19281b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 86323, "upload_time": "2017-12-19T06:01:58", "url": "https://files.pythonhosted.org/packages/3e/7a/be93b115e25c680e8cd328a3fd39c488734cac071af1830744d7043aaaec/django-two-factor-auth-1.7.0.tar.gz" } ], "1.8.0": [ { "comment_text": "", "digests": { "md5": "82b66aba79be041ea7bfb2a8b2ce0765", "sha256": "5968daad24fcb756d95394c6bd5161e918f6a2f07a6e4c3e8a4b4aaceb650516" }, "downloads": -1, "filename": "django_two_factor_auth-1.8.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "82b66aba79be041ea7bfb2a8b2ce0765", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 229802, "upload_time": "2018-08-03T13:59:00", "url": "https://files.pythonhosted.org/packages/11/fb/f20ed84a86039caf7553384fb1e19bfc3921618accd09e697fa5c33f3ec0/django_two_factor_auth-1.8.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "382343edb2be6706193b5c632489cf4b", "sha256": "b013bf14fa78921bde135ec8794a4ee0125676ab47c232bebcdff211ad7e767e" }, "downloads": -1, "filename": "django-two-factor-auth-1.8.0.tar.gz", "has_sig": false, "md5_digest": "382343edb2be6706193b5c632489cf4b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 89650, "upload_time": "2018-08-03T13:59:03", "url": "https://files.pythonhosted.org/packages/33/db/29beb0891f71f1d575220f700d19ecdf2d8eb044bedc1b9df86d8e239daf/django-two-factor-auth-1.8.0.tar.gz" } ], "1.9.1": [ { "comment_text": "", "digests": { "md5": "0aff7c2aa5d524ab608db348aa94716f", "sha256": "464c33bcbd2f43470adc5f9b1c1957c8afad7bbada08a92c95031d26e7a8dd73" }, "downloads": -1, "filename": "django_two_factor_auth-1.9.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "0aff7c2aa5d524ab608db348aa94716f", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 233748, "upload_time": "2019-07-07T07:02:00", "url": "https://files.pythonhosted.org/packages/0d/45/d21ed0485162ed90c635c9fd2d1fd8d5598e66dbe7d65910cf4062613394/django_two_factor_auth-1.9.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "3006f2e00c446bb8da100ca2f18dd998", "sha256": "df45c2aafce5174c2c0ccc15740f6bb3bb78402b6bd27223d87cb3ba3ee52626" }, "downloads": -1, "filename": "django-two-factor-auth-1.9.1.tar.gz", "has_sig": false, "md5_digest": "3006f2e00c446bb8da100ca2f18dd998", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 97180, "upload_time": "2019-07-07T07:02:04", "url": "https://files.pythonhosted.org/packages/a0/d2/230c82136aea3a46fd05ec4e7f34b8ba0f55b4692c83506d6aa6cc867589/django-two-factor-auth-1.9.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "0aff7c2aa5d524ab608db348aa94716f", "sha256": "464c33bcbd2f43470adc5f9b1c1957c8afad7bbada08a92c95031d26e7a8dd73" }, "downloads": -1, "filename": "django_two_factor_auth-1.9.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "0aff7c2aa5d524ab608db348aa94716f", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 233748, "upload_time": "2019-07-07T07:02:00", "url": "https://files.pythonhosted.org/packages/0d/45/d21ed0485162ed90c635c9fd2d1fd8d5598e66dbe7d65910cf4062613394/django_two_factor_auth-1.9.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "3006f2e00c446bb8da100ca2f18dd998", "sha256": "df45c2aafce5174c2c0ccc15740f6bb3bb78402b6bd27223d87cb3ba3ee52626" }, "downloads": -1, "filename": "django-two-factor-auth-1.9.1.tar.gz", "has_sig": false, "md5_digest": "3006f2e00c446bb8da100ca2f18dd998", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 97180, "upload_time": "2019-07-07T07:02:04", "url": "https://files.pythonhosted.org/packages/a0/d2/230c82136aea3a46fd05ec4e7f34b8ba0f55b4692c83506d6aa6cc867589/django-two-factor-auth-1.9.1.tar.gz" } ] }