Skip to main content
PyPI Documentation Status Travis CI status AppVeyor CI Status Test Coverage IRC Code style: black

Argon2 won the Password Hashing Competition and argon2_cffi is the simplest way to use it in Python and PyPy:

>>> from argon2 import PasswordHasher
>>> ph = PasswordHasher()
>>> hash = ph.hash("s3kr3tp4ssw0rd")
>>> hash  # doctest: +SKIP
'$argon2id$v=19$m=102400,t=2,p=8$tSm+JOWigOgPZx/g44K5fQ$WDyus6py50bVFIPkjA28lQ'
>>> ph.verify(hash, "s3kr3tp4ssw0rd")
True
>>> ph.check_needs_rehash(hash)
False
>>> ph.verify(hash, "t0t411ywr0ng")
Traceback (most recent call last):
  ...
argon2.exceptions.VerifyMismatchError: The password does not match the supplied hash

argon2_cffi’s documentation lives at Read the Docs, the code on GitHub. It’s rigorously tested on Python 2.7, 3.4+, and PyPy.

Release Information

18.3.0 (2018-08-19)

Vendoring Argon2 @ 670229c (20171227)

Backward-incompatible changes:

none

Deprecations:

none

Changes:

  • argon2.PasswordHasher’s hash type is configurable now.

Full changelog.

Credits & License

argon2_cffi is maintained by Hynek Schlawack and released under the MIT license.

The development is kindly supported by Variomedia AG.

A full list of contributors can be found in GitHub’s overview.

Vendored Code

Argon2

The original Argon2 repo can be found at https://github.com/P-H-C/phc-winner-argon2/.

Except for the components listed below, the Argon2 code in this repository is copyright (c) 2015 Daniel Dinu, Dmitry Khovratovich (main authors), Jean-Philippe Aumasson and Samuel Neves, and under CC0 license.

The string encoding routines in src/encoding.c are copyright (c) 2015 Thomas Pornin, and under CC0 license.

The BLAKE2 code in src/blake2/ is copyright (c) Samuel Neves, 2013-2015, and under CC0 license.

The authors of Argon2 also were very helpful to get the library to compile on ancient versions of Visual Studio for ancient versions of Python.

The documentation also quotes frequently from the Argon2 paper to avoid mistakes by rephrasing.

msinttypes

In order to be able to compile on Visual Studio 2008 and Visual Studio 2010 which are required for Python 2.7 and 3.4 respectively, we also ship two C headers with integer types. They are from the msinttypes project (auto-import on GitHub) and licensed under New BSD:

Copyright (c) 2006-2013 Alexander Chemeris

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

  1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.

  2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.

  3. Neither the name of the product nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE AUTHOR ‘’AS IS’’ AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

Metadata

Release files for argon2-cffi 18.3.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for argon2-cffi 18.3.0
File Size Uploaded
argon2_cffi-18.3.0.tar.gz 1.8 MB Details

Built distributions (wheels)

Table of built distributions (wheels) for argon2-cffi 18.3.0
File
argon2_cffi-18.3.0-cp37-cp37m-win_amd64.whl CPython 3.7 CPython 3.7 pymalloc Windows x86-64 Details
argon2_cffi-18.3.0-cp37-cp37m-win32.whl CPython 3.7 CPython 3.7 pymalloc Windows x86-32 Details
argon2_cffi-18.3.0-cp36-cp36m-win_amd64.whl CPython 3.6 CPython 3.6 pymalloc Windows x86-64 Details
argon2_cffi-18.3.0-cp36-cp36m-win32.whl CPython 3.6 CPython 3.6 pymalloc Windows x86-32 Details
argon2_cffi-18.3.0-cp35-cp35m-win_amd64.whl CPython 3.5 CPython 3.5 pymalloc Windows x86-64 Details
argon2_cffi-18.3.0-cp35-cp35m-win32.whl CPython 3.5 CPython 3.5 pymalloc Windows x86-32 Details
argon2_cffi-18.3.0-cp34-cp34m-win_amd64.whl CPython 3.4 CPython 3.4 pymalloc Windows x86-64 Details
argon2_cffi-18.3.0-cp34-cp34m-win32.whl CPython 3.4 CPython 3.4 pymalloc Windows x86-32 Details
argon2_cffi-18.3.0-cp34-abi3-manylinux1_x86_64.whl CPython 3.4 abi3 Linux glibc 2.5+ x86-64 Details
argon2_cffi-18.3.0-cp34-abi3-manylinux1_i686.whl CPython 3.4 abi3 Linux glibc 2.5+ x86-32 Details
argon2_cffi-18.3.0-cp34-abi3-macosx_10_6_intel.whl CPython 3.4 abi3 macOS 10.6+ Intel (x86-64, i386) Details
argon2_cffi-18.3.0-cp27-cp27mu-manylinux1_x86_64.whl CPython 2.7 CPython 2.7 pymalloc wide-unicode Linux glibc 2.5+ x86-64 Details
argon2_cffi-18.3.0-cp27-cp27mu-manylinux1_i686.whl CPython 2.7 CPython 2.7 pymalloc wide-unicode Linux glibc 2.5+ x86-32 Details
argon2_cffi-18.3.0-cp27-cp27m-win_amd64.whl CPython 2.7 CPython 2.7 pymalloc Windows x86-64 Details
argon2_cffi-18.3.0-cp27-cp27m-win32.whl CPython 2.7 CPython 2.7 pymalloc Windows x86-32 Details
argon2_cffi-18.3.0-cp27-cp27m-manylinux1_i686.whl CPython 2.7 CPython 2.7 pymalloc Linux glibc 2.5+ x86-32 Details

Total release size: 2.7 MB

Release files / argon2_cffi-18.3.0.tar.gz

Download URL argon2_cffi-18.3.0.tar.gz
Size 1.8 MB
Tags Source
SHA-256 checksum
How to use checksums
003f588de43a817af6ecc1c06103fa0801de63849db3cb0f37576bb2da29043d
BLAKE2b-256 checksum
How to use checksums
319bd52a356fa5a58685868cb6bf812457314780967d9943ce44f07021588edd
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/40.1.0 requests-toolbelt/0.8.0 tqdm/4.24.0 CPython/3.7.0

Release files / argon2_cffi-18.3.0-cp37-cp37m-win_amd64.whl

Download URL argon2_cffi-18.3.0-cp37-cp37m-win_amd64.whl
Size 39.2 kB
Tags CPython 3.7 CPython 3.7 pymalloc Windows x86-64
SHA-256 checksum
How to use checksums
22a99f90da7176ee86fbdfb0a95411bc807b9d795b89495ee88c2e0468a496e8
BLAKE2b-256 checksum
How to use checksums
9608d703fd3fb39a54636e351e5256d4d744244957526be51670e354f70b71cb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/40.1.0 requests-toolbelt/0.8.0 tqdm/4.24.0 CPython/3.7.0

Release files / argon2_cffi-18.3.0-cp37-cp37m-win32.whl

Download URL argon2_cffi-18.3.0-cp37-cp37m-win32.whl
Size 35.7 kB
Tags CPython 3.7 CPython 3.7 pymalloc Windows x86-32
SHA-256 checksum
How to use checksums
0ecbd2346da3e5af84427fd8df3ece484c903a9dafd9470571def47df54f2780
BLAKE2b-256 checksum
How to use checksums
f6cc0320be27f7b3b21cf2fb48720b44627297ac6add82c61cf49e6766042071
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/40.1.0 requests-toolbelt/0.8.0 tqdm/4.24.0 CPython/3.7.0

Release files / argon2_cffi-18.3.0-cp36-cp36m-win_amd64.whl

Download URL argon2_cffi-18.3.0-cp36-cp36m-win_amd64.whl
Size 39.2 kB
Tags CPython 3.6 CPython 3.6 pymalloc Windows x86-64
SHA-256 checksum
How to use checksums
ec12248d4c1e045a736beebf55daf1430c45a29ab8d773d8540c224555784275
BLAKE2b-256 checksum
How to use checksums
3e5a5bd46cfb926eaa3918cfd2450aac2fff89e4155b83d7066b149b7ed7175d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/40.1.0 requests-toolbelt/0.8.0 tqdm/4.24.0 CPython/3.7.0

Release files / argon2_cffi-18.3.0-cp36-cp36m-win32.whl

Download URL argon2_cffi-18.3.0-cp36-cp36m-win32.whl
Size 35.7 kB
Tags CPython 3.6 CPython 3.6 pymalloc Windows x86-32
SHA-256 checksum
How to use checksums
04ead34244af38d79742cc46a212fec94daf99b49add66878f5d4b22da72d4aa
BLAKE2b-256 checksum
How to use checksums
2f38a9c28587c3afd34edb95d4d37c7ff9957e19de781391ffb9eb7e2f5c6021
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/40.1.0 requests-toolbelt/0.8.0 tqdm/4.24.0 CPython/3.7.0

Release files / argon2_cffi-18.3.0-cp35-cp35m-win_amd64.whl

Download URL argon2_cffi-18.3.0-cp35-cp35m-win_amd64.whl
Size 39.2 kB
Tags CPython 3.5 CPython 3.5 pymalloc Windows x86-64
SHA-256 checksum
How to use checksums
0529aeb71b50e068d300c992f850387c2456f2d3d4083d17d18e75710d057682
BLAKE2b-256 checksum
How to use checksums
5399d5097fae1a8d11ec90d4f21e74d33f18d707016a3676a9d917a48c8e3bbd
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/40.1.0 requests-toolbelt/0.8.0 tqdm/4.24.0 CPython/3.7.0

Release files / argon2_cffi-18.3.0-cp35-cp35m-win32.whl

Download URL argon2_cffi-18.3.0-cp35-cp35m-win32.whl
Size 35.7 kB
Tags CPython 3.5 CPython 3.5 pymalloc Windows x86-32
SHA-256 checksum
How to use checksums
d371fcd42e01c78c76397120d07c67f6e16f5fef97d327ad372c8debe38f9f56
BLAKE2b-256 checksum
How to use checksums
05540eb96927f721ca5a72367c0161c9bb6664397aedef8b069da96b27ca27c2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/40.1.0 requests-toolbelt/0.8.0 tqdm/4.24.0 CPython/3.7.0

Release files / argon2_cffi-18.3.0-cp34-cp34m-win_amd64.whl

Download URL argon2_cffi-18.3.0-cp34-cp34m-win_amd64.whl
Size 35.0 kB
Tags CPython 3.4 CPython 3.4 pymalloc Windows x86-64
SHA-256 checksum
How to use checksums
3b61a4ef1eb785d41f190520db716aa598d15f147419cbbdc9061dc232126f09
BLAKE2b-256 checksum
How to use checksums
f26d468d06e9cc6114ca25911dc5b07cf5976861689c60d3a701e631d1b6493e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/40.1.0 requests-toolbelt/0.8.0 tqdm/4.24.0 CPython/3.7.0

Release files / argon2_cffi-18.3.0-cp34-cp34m-win32.whl

Download URL argon2_cffi-18.3.0-cp34-cp34m-win32.whl
Size 34.0 kB
Tags CPython 3.4 CPython 3.4 pymalloc Windows x86-32
SHA-256 checksum
How to use checksums
af0d3dbc8f32d95be480eedd5d77fe8714f5441a28b9abcfa687ecf5301a1abd
BLAKE2b-256 checksum
How to use checksums
8123f3346dcd0be404284da7a18cebce7a8d9541362840383ab62894967de47a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/40.1.0 requests-toolbelt/0.8.0 tqdm/4.24.0 CPython/3.7.0

Release files / argon2_cffi-18.3.0-cp34-abi3-manylinux1_x86_64.whl

Download URL argon2_cffi-18.3.0-cp34-abi3-manylinux1_x86_64.whl
Size 93.1 kB
Tags CPython 3.4 Linux glibc 2.5+ x86-64 abi3
SHA-256 checksum
How to use checksums
3ddcdde047cd4dba2bcce7d890dcefd6723548b849fa82ba87e04a468079b9b1
BLAKE2b-256 checksum
How to use checksums
5f9ce820b6cb66587f437629a8377c724594951289128ab3b0ea5b51f5888db0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/40.1.0 requests-toolbelt/0.8.0 tqdm/4.24.0 CPython/3.7.0

Release files / argon2_cffi-18.3.0-cp34-abi3-manylinux1_i686.whl

Download URL argon2_cffi-18.3.0-cp34-abi3-manylinux1_i686.whl
Size 92.3 kB
Tags CPython 3.4 Linux glibc 2.5+ x86-32 abi3
SHA-256 checksum
How to use checksums
193de795483b00d752d16ec5df11d119a3a2c43f5464edfaf919a2ca9cc5b991
BLAKE2b-256 checksum
How to use checksums
0c691efdb48e94eedae7d4cef63c4f7cf3859ca1c8e3ad5a7421b5d650eb8728
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/40.1.0 requests-toolbelt/0.8.0 tqdm/4.24.0 CPython/3.7.0

Release files / argon2_cffi-18.3.0-cp34-abi3-macosx_10_6_intel.whl

Download URL argon2_cffi-18.3.0-cp34-abi3-macosx_10_6_intel.whl
Size 59.8 kB
Tags CPython 3.4 abi3 macOS 10.6+ Intel (x86-64, i386)
SHA-256 checksum
How to use checksums
0d18a3dcb4ca7f3717155994a4f131a43072e47b708e57c4be16f60253337dfd
BLAKE2b-256 checksum
How to use checksums
f66a6db97108f3b9bde6a54db97d6d7925299df69689ffc43f18b71844f95455
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/40.1.0 requests-toolbelt/0.8.0 tqdm/4.24.0 CPython/3.7.0

Release files / argon2_cffi-18.3.0-cp27-cp27mu-manylinux1_x86_64.whl

Download URL argon2_cffi-18.3.0-cp27-cp27mu-manylinux1_x86_64.whl
Size 96.5 kB
Tags CPython 2.7 CPython 2.7 pymalloc wide-unicode Linux glibc 2.5+ x86-64
SHA-256 checksum
How to use checksums
51d78eedbba1f9e45a1c3fb1470ad6d1faafc6ec42eabb969df29c2aa848b645
BLAKE2b-256 checksum
How to use checksums
728a2b000276e77d7fe93d7985cf1ba89868a5c1d77531033a26f3b63e2bcc69
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/40.1.0 requests-toolbelt/0.8.0 tqdm/4.24.0 CPython/3.7.0

Release files / argon2_cffi-18.3.0-cp27-cp27mu-manylinux1_i686.whl

Download URL argon2_cffi-18.3.0-cp27-cp27mu-manylinux1_i686.whl
Size 95.5 kB
Tags CPython 2.7 CPython 2.7 pymalloc wide-unicode Linux glibc 2.5+ x86-32
SHA-256 checksum
How to use checksums
ca65f736d2129687008178e3d9956264fd2be2f69429edf0d755c2f97cd003f1
BLAKE2b-256 checksum
How to use checksums
c455e3a00f0914d1b96cdd7945547f3087d5447970ebc96569a9d9fe995175ad
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/40.1.0 requests-toolbelt/0.8.0 tqdm/4.24.0 CPython/3.7.0

Release files / argon2_cffi-18.3.0-cp27-cp27m-win_amd64.whl

Download URL argon2_cffi-18.3.0-cp27-cp27m-win_amd64.whl
Size 35.3 kB
Tags CPython 2.7 CPython 2.7 pymalloc Windows x86-64
SHA-256 checksum
How to use checksums
04528ebbcc5d77eb49e7c2560fcf9d489cdc3b14f89fdd975c72c0a12934025a
BLAKE2b-256 checksum
How to use checksums
0b8713f29946e6e40452939ab45396eb52a742b81f3e33b16335f1e4b7ead84f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/40.1.0 requests-toolbelt/0.8.0 tqdm/4.24.0 CPython/3.7.0

Release files / argon2_cffi-18.3.0-cp27-cp27m-win32.whl

Download URL argon2_cffi-18.3.0-cp27-cp27m-win32.whl
Size 33.7 kB
Tags CPython 2.7 CPython 2.7 pymalloc Windows x86-32
SHA-256 checksum
How to use checksums
2829d648dfa4d42ce33ec0f36e863d1068fd729b38ef6f830262b43e04f9ba1c
BLAKE2b-256 checksum
How to use checksums
6025098c78d1e30dd1ab8b26c5f797fcaab230962f679e39d5b656ad82019bcb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/40.1.0 requests-toolbelt/0.8.0 tqdm/4.24.0 CPython/3.7.0

Release files / argon2_cffi-18.3.0-cp27-cp27m-manylinux1_i686.whl

Download URL argon2_cffi-18.3.0-cp27-cp27m-manylinux1_i686.whl
Size 95.5 kB
Tags CPython 2.7 CPython 2.7 pymalloc Linux glibc 2.5+ x86-32
SHA-256 checksum
How to use checksums
457c5db9bb99f2ffb7ce9ebf923b523898e75464dd019fbebdd1c6096ddcf044
BLAKE2b-256 checksum
How to use checksums
28e20ada12fb8e8066da452b956a8dd6eb9e34c2a18c9a606767d8d17ca5a6d3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/40.1.0 requests-toolbelt/0.8.0 tqdm/4.24.0 CPython/3.7.0
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page