Skip to main content

Low-level CFFI bindings for Argon2

Project description

Low-level Python CFFI Bindings for Argon2

License: MIT PyPI version PyPI - Python Version

argon2-cffi-bindings provides low-level CFFI bindings to the official implementation of the Argon2 password hashing algorithm.

The currently vendored Argon2 commit ID is f57e61e.

[!NOTE] If you want to hash passwords in an application, this package is not for you. Have a look at argon2-cffi with its high-level abstractions!

These bindings have been extracted from argon2-cffi and it remains its main consumer. However, they may be used by other packages that want to use the Argon2 library without dealing with C-related complexities.

Usage

argon2-cffi-bindings is available from PyPI. The provided CFFI bindings are compiled in API mode.

Best effort is given to provide binary wheels for as many platforms as possible.

Disabling Vendored Code

A copy of Argon2 is vendored and used by default, but can be disabled if argon2-cffi-bindings is installed using:

$ env ARGON2_CFFI_USE_SYSTEM=1 \
  python -Im pip install --no-binary=argon2-cffi-bindings argon2-cffi-bindings

Overriding Automatic SSE2 Detection

Usually the build process tries to guess whether or not it should use SSE2-optimized code (see _ffi_build.py for details). This can go wrong and is problematic for cross-compiling.

Therefore you can use the ARGON2_CFFI_USE_SSE2 environment variable to control the process:

  • If you set it to 1, argon2-cffi-bindings will build with SSE2 support.
  • If you set it to 0, argon2-cffi-bindings will build without SSE2 support.
  • If you set it to anything else, it will be ignored and argon2-cffi-bindings will try to guess.

However, if our heuristics fail you, we would welcome a bug report.

Python API

Since this package is intended to be an implementation detail, it uses a private module name to prevent your users from using it by accident.

Therefore you have to import the symbols from _argon2_cffi_bindings:

from _argon2_cffi_bindings import ffi, lib

Please refer to cffi documentation on how to use the ffi and lib objects.

The list of symbols that are provided can be found in the _ffi_build.py file.

Project Information

Credits & License

argon2-cffi-bindings is written and maintained by Hynek Schlawack. It is released under the MIT license.

The development is kindly supported by Variomedia AG and all my amazing GitHub Sponsors.

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

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

Vendored Code

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.

argon2-cffi-bindings for Enterprise

Available as part of the Tidelift Subscription.

The maintainers of argon2-cffi-bindings and thousands of other packages are working with Tidelift to deliver commercial support and maintenance for the open-source packages you use to build your applications. Save time, reduce risk, and improve code health, while paying the maintainers of the exact packages you use.

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

argon2_cffi_bindings-25.1.0.tar.gz (1.8 MB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

argon2_cffi_bindings-25.1.0-pp310-pypy310_pp73-win_amd64.whl (29.2 kB view details)

Uploaded PyPyWindows x86-64

argon2_cffi_bindings-25.1.0-pp310-pypy310_pp73-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl (27.4 kB view details)

Uploaded PyPymanylinux: glibc 2.26+ x86-64manylinux: glibc 2.28+ x86-64

argon2_cffi_bindings-25.1.0-pp310-pypy310_pp73-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl (28.5 kB view details)

Uploaded PyPymanylinux: glibc 2.26+ ARM64manylinux: glibc 2.28+ ARM64

argon2_cffi_bindings-25.1.0-pp310-pypy310_pp73-macosx_11_0_arm64.whl (25.5 kB view details)

Uploaded PyPymacOS 11.0+ ARM64

argon2_cffi_bindings-25.1.0-pp310-pypy310_pp73-macosx_10_15_x86_64.whl (24.5 kB view details)

Uploaded PyPymacOS 10.15+ x86-64

argon2_cffi_bindings-25.1.0-cp314-cp314t-win_arm64.whl (28.2 kB view details)

Uploaded CPython 3.14tWindows ARM64

argon2_cffi_bindings-25.1.0-cp314-cp314t-win_amd64.whl (32.6 kB view details)

Uploaded CPython 3.14tWindows x86-64

argon2_cffi_bindings-25.1.0-cp314-cp314t-win32.whl (28.2 kB view details)

Uploaded CPython 3.14tWindows x86

argon2_cffi_bindings-25.1.0-cp314-cp314t-musllinux_1_2_x86_64.whl (91.9 kB view details)

Uploaded CPython 3.14tmusllinux: musl 1.2+ x86-64

argon2_cffi_bindings-25.1.0-cp314-cp314t-musllinux_1_2_aarch64.whl (85.6 kB view details)

Uploaded CPython 3.14tmusllinux: musl 1.2+ ARM64

argon2_cffi_bindings-25.1.0-cp314-cp314t-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl (92.4 kB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.26+ x86-64manylinux: glibc 2.28+ x86-64

argon2_cffi_bindings-25.1.0-cp314-cp314t-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl (86.6 kB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.26+ ARM64manylinux: glibc 2.28+ ARM64

argon2_cffi_bindings-25.1.0-cp314-cp314t-macosx_11_0_arm64.whl (31.3 kB view details)

Uploaded CPython 3.14tmacOS 11.0+ ARM64

argon2_cffi_bindings-25.1.0-cp314-cp314t-macosx_10_13_x86_64.whl (29.3 kB view details)

Uploaded CPython 3.14tmacOS 10.13+ x86-64

argon2_cffi_bindings-25.1.0-cp314-cp314t-macosx_10_13_universal2.whl (54.4 kB view details)

Uploaded CPython 3.14tmacOS 10.13+ universal2 (ARM64, x86-64)

argon2_cffi_bindings-25.1.0-cp39-abi3-win_arm64.whl (27.1 kB view details)

Uploaded CPython 3.9+Windows ARM64

argon2_cffi_bindings-25.1.0-cp39-abi3-win_amd64.whl (31.7 kB view details)

Uploaded CPython 3.9+Windows x86-64

argon2_cffi_bindings-25.1.0-cp39-abi3-win32.whl (27.2 kB view details)

Uploaded CPython 3.9+Windows x86

argon2_cffi_bindings-25.1.0-cp39-abi3-musllinux_1_2_x86_64.whl (86.8 kB view details)

Uploaded CPython 3.9+musllinux: musl 1.2+ x86-64

argon2_cffi_bindings-25.1.0-cp39-abi3-musllinux_1_2_aarch64.whl (80.3 kB view details)

Uploaded CPython 3.9+musllinux: musl 1.2+ ARM64

argon2_cffi_bindings-25.1.0-cp39-abi3-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl (87.1 kB view details)

Uploaded CPython 3.9+manylinux: glibc 2.26+ x86-64manylinux: glibc 2.28+ x86-64

argon2_cffi_bindings-25.1.0-cp39-abi3-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl (81.2 kB view details)

Uploaded CPython 3.9+manylinux: glibc 2.26+ ARM64manylinux: glibc 2.28+ ARM64

argon2_cffi_bindings-25.1.0-cp39-abi3-macosx_11_0_arm64.whl (31.1 kB view details)

Uploaded CPython 3.9+macOS 11.0+ ARM64

argon2_cffi_bindings-25.1.0-cp39-abi3-macosx_10_9_x86_64.whl (29.2 kB view details)

Uploaded CPython 3.9+macOS 10.9+ x86-64

argon2_cffi_bindings-25.1.0-cp39-abi3-macosx_10_9_universal2.whl (54.1 kB view details)

Uploaded CPython 3.9+macOS 10.9+ universal2 (ARM64, x86-64)

File details

Details for the file argon2_cffi_bindings-25.1.0.tar.gz.

File metadata

File hashes

Hashes for argon2_cffi_bindings-25.1.0.tar.gz
Algorithm Hash digest
SHA256 b957f3e6ea4d55d820e40ff76f450952807013d361a65d7f28acc0acbf29229d
MD5 135e9e3b3a166e602bc0512899254894
BLAKE2b-256 5c2ddb8af0df73c1cf454f71b2bbe5e356b8c1f8041c979f505b3d3186e520a9

See more details on using hashes here.

File details

Details for the file argon2_cffi_bindings-25.1.0-pp310-pypy310_pp73-win_amd64.whl.

File metadata

File hashes

Hashes for argon2_cffi_bindings-25.1.0-pp310-pypy310_pp73-win_amd64.whl
Algorithm Hash digest
SHA256 da0c79c23a63723aa5d782250fbf51b768abca630285262fb5144ba5ae01e520
MD5 f88cb9187a5b9d37d945cdbf74acbb0a
BLAKE2b-256 ee8282745642d3c46e7cea25e1885b014b033f4693346ce46b7f47483cf5d448

See more details on using hashes here.

File details

Details for the file argon2_cffi_bindings-25.1.0-pp310-pypy310_pp73-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for argon2_cffi_bindings-25.1.0-pp310-pypy310_pp73-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 5acb4e41090d53f17ca1110c3427f0a130f944b896fc8c83973219c97f57b690
MD5 2006000ded3169e94176933453e1d092
BLAKE2b-256 717a47c4509ea18d755f44e2b92b7178914f0c113946d11e16e626df8eaa2b0b

See more details on using hashes here.

File details

Details for the file argon2_cffi_bindings-25.1.0-pp310-pypy310_pp73-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for argon2_cffi_bindings-25.1.0-pp310-pypy310_pp73-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 5d588dec224e2a83edbdc785a5e6f3c6cd736f46bfd4b441bbb5aa1f5085e584
MD5 cc8c428c10a2e2edc87dbbac342fa18d
BLAKE2b-256 31db740de99a37aa727623730c90d92c22c9e12585b3c98c54b7960f7810289f

See more details on using hashes here.

File details

Details for the file argon2_cffi_bindings-25.1.0-pp310-pypy310_pp73-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for argon2_cffi_bindings-25.1.0-pp310-pypy310_pp73-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 21378b40e1b8d1655dd5310c84a40fc19a9aa5e6366e835ceb8576bf0fea716d
MD5 f46bba17d4c605e121bf6c203e4f4814
BLAKE2b-256 5c829b2386cc75ac0bd3210e12a44bfc7fd1632065ed8b80d573036eecb10442

See more details on using hashes here.

File details

Details for the file argon2_cffi_bindings-25.1.0-pp310-pypy310_pp73-macosx_10_15_x86_64.whl.

File metadata

File hashes

Hashes for argon2_cffi_bindings-25.1.0-pp310-pypy310_pp73-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 6dca33a9859abf613e22733131fc9194091c1fa7cb3e131c143056b4856aa47e
MD5 361832018fca87f3535e1d6c8f8ccfd6
BLAKE2b-256 112dba4e4ca8d149f8dcc0d952ac0967089e1d759c7e5fcf0865a317eb680fbb

See more details on using hashes here.

File details

Details for the file argon2_cffi_bindings-25.1.0-cp314-cp314t-win_arm64.whl.

File metadata

File hashes

Hashes for argon2_cffi_bindings-25.1.0-cp314-cp314t-win_arm64.whl
Algorithm Hash digest
SHA256 87c33a52407e4c41f3b70a9c2d3f6056d88b10dad7695be708c5021673f55623
MD5 79a541d2a3d8a939ae5fc1ae2d2e5339
BLAKE2b-256 05b8d663c9caea07e9180b2cb662772865230715cbd573ba3b5e81793d580316

See more details on using hashes here.

File details

Details for the file argon2_cffi_bindings-25.1.0-cp314-cp314t-win_amd64.whl.

File metadata

File hashes

Hashes for argon2_cffi_bindings-25.1.0-cp314-cp314t-win_amd64.whl
Algorithm Hash digest
SHA256 b55aec3565b65f56455eebc9b9f34130440404f27fe21c3b375bf1ea4d8fbae6
MD5 2503240902590631b2db4e60f28013a4
BLAKE2b-256 b3800106a7448abb24a2c467bf7d527fe5413b7fdfa4ad6d6a96a43a62ef3988

See more details on using hashes here.

File details

Details for the file argon2_cffi_bindings-25.1.0-cp314-cp314t-win32.whl.

File metadata

File hashes

Hashes for argon2_cffi_bindings-25.1.0-cp314-cp314t-win32.whl
Algorithm Hash digest
SHA256 84a461d4d84ae1295871329b346a97f68eade8c53b6ed9a7ca2d7467f3c8ff6f
MD5 a3c3207601b6d64e9e07c7409ba643f4
BLAKE2b-256 f0c7f36bd08ef9bd9f0a9cff9428406651f5937ce27b6c5b07b92d41f91ae541

See more details on using hashes here.

File details

Details for the file argon2_cffi_bindings-25.1.0-cp314-cp314t-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for argon2_cffi_bindings-25.1.0-cp314-cp314t-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 ba92837e4a9aa6a508c8d2d7883ed5a8f6c308c89a4790e1e447a220deb79a85
MD5 af47a31c9288c92f9f56b04912e80c2f
BLAKE2b-256 44b4678503f12aceb0262f84fa201f6027ed77d71c5019ae03b399b97caa2f19

See more details on using hashes here.

File details

Details for the file argon2_cffi_bindings-25.1.0-cp314-cp314t-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for argon2_cffi_bindings-25.1.0-cp314-cp314t-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 c4f9665de60b1b0e99bcd6be4f17d90339698ce954cfd8d9cf4f91c995165a92
MD5 17c794a01e73658ffc74feeec231a60d
BLAKE2b-256 c9c1a606ff83b3f1735f3759ad0f2cd9e038a0ad11a3de3b6c673aa41c24bb7b

See more details on using hashes here.

File details

Details for the file argon2_cffi_bindings-25.1.0-cp314-cp314t-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for argon2_cffi_bindings-25.1.0-cp314-cp314t-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 e2fd3bfbff3c5d74fef31a722f729bf93500910db650c925c2d6ef879a7e51cb
MD5 6e0669f7ffbdd160e7c754423a1668e8
BLAKE2b-256 0d82b484f702fec5536e71836fc2dbc8c5267b3f6e78d2d539b4eaa6f0db8bf8

See more details on using hashes here.

File details

Details for the file argon2_cffi_bindings-25.1.0-cp314-cp314t-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for argon2_cffi_bindings-25.1.0-cp314-cp314t-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 a1c70058c6ab1e352304ac7e3b52554daadacd8d453c1752e547c76e9c99ac44
MD5 cc431d40473c3fbe77c220cd067eea98
BLAKE2b-256 d4d3942aa10782b2697eee7af5e12eeff5ebb325ccfb86dd8abda54174e377e4

See more details on using hashes here.

File details

Details for the file argon2_cffi_bindings-25.1.0-cp314-cp314t-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for argon2_cffi_bindings-25.1.0-cp314-cp314t-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 3c6702abc36bf3ccba3f802b799505def420a1b7039862014a65db3205967f5a
MD5 e78d3393dcf7e2e94705a408ecdb1e8e
BLAKE2b-256 432490a01c0ef12ac91a6be05969f29944643bc1e5e461155ae6559befa8f00b

See more details on using hashes here.

File details

Details for the file argon2_cffi_bindings-25.1.0-cp314-cp314t-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for argon2_cffi_bindings-25.1.0-cp314-cp314t-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 8b8efee945193e667a396cbc7b4fb7d357297d6234d30a489905d96caabde56b
MD5 5d80d88d066f9bc38f09c3244dece028
BLAKE2b-256 9df498bbd6ee89febd4f212696f13c03ca302b8552e7dbf9c8efa11ea4a388c3

See more details on using hashes here.

File details

Details for the file argon2_cffi_bindings-25.1.0-cp314-cp314t-macosx_10_13_universal2.whl.

File metadata

File hashes

Hashes for argon2_cffi_bindings-25.1.0-cp314-cp314t-macosx_10_13_universal2.whl
Algorithm Hash digest
SHA256 3d3f05610594151994ca9ccb3c771115bdb4daef161976a266f0dd8aa9996b8f
MD5 508c011e88ecaa48a27d2bfff3d2d715
BLAKE2b-256 60973c0a35f46e52108d4707c44b95cfe2afcafc50800b5450c197454569b776

See more details on using hashes here.

File details

Details for the file argon2_cffi_bindings-25.1.0-cp39-abi3-win_arm64.whl.

File metadata

File hashes

Hashes for argon2_cffi_bindings-25.1.0-cp39-abi3-win_arm64.whl
Algorithm Hash digest
SHA256 b0fdbcf513833809c882823f98dc2f931cf659d9a1429616ac3adebb49f5db94
MD5 858ab8790d4e2a51cdebbba993f6a0e3
BLAKE2b-256 42b9f8d6fa329ab25128b7e98fd83a3cb34d9db5b059a9847eddb840a0af45dd

See more details on using hashes here.

File details

Details for the file argon2_cffi_bindings-25.1.0-cp39-abi3-win_amd64.whl.

File metadata

File hashes

Hashes for argon2_cffi_bindings-25.1.0-cp39-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 a98cd7d17e9f7ce244c0803cad3c23a7d379c301ba618a5fa76a67d116618b98
MD5 9cf79c0d5fd9d220bd8da4d8074b42cb
BLAKE2b-256 e2c6a759ece8f1829d1f162261226fbfd2c6832b3ff7657384045286d2afa384

See more details on using hashes here.

File details

Details for the file argon2_cffi_bindings-25.1.0-cp39-abi3-win32.whl.

File metadata

File hashes

Hashes for argon2_cffi_bindings-25.1.0-cp39-abi3-win32.whl
Algorithm Hash digest
SHA256 473bcb5f82924b1becbb637b63303ec8d10e84c8d241119419897a26116515d2
MD5 ada7580cc9213b29f9d7b5298e8212b0
BLAKE2b-256 74cd15777dfde1c29d96de7f18edf4cc94c385646852e7c7b0320aa91ccca583

See more details on using hashes here.

File details

Details for the file argon2_cffi_bindings-25.1.0-cp39-abi3-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for argon2_cffi_bindings-25.1.0-cp39-abi3-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 1db89609c06afa1a214a69a462ea741cf735b29a57530478c06eb81dd403de99
MD5 da795868fe85e9ae22be99e6da1b6fd3
BLAKE2b-256 789a4e5157d893ffc712b74dbd868c7f62365618266982b64accab26bab01edc

See more details on using hashes here.

File details

Details for the file argon2_cffi_bindings-25.1.0-cp39-abi3-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for argon2_cffi_bindings-25.1.0-cp39-abi3-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 c87b72589133f0346a1cb8d5ecca4b933e3c9b64656c9d175270a000e73b288d
MD5 183774297dac0c5b14f94a67ac5b317f
BLAKE2b-256 72707a2993a12b0ffa2a9271259b79cc616e2389ed1a4d93842fac5a1f923ffd

See more details on using hashes here.

File details

Details for the file argon2_cffi_bindings-25.1.0-cp39-abi3-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for argon2_cffi_bindings-25.1.0-cp39-abi3-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 d3e924cfc503018a714f94a49a149fdc0b644eaead5d1f089330399134fa028a
MD5 36b2d8bf98213bb1a4b08f1f95c2b4fb
BLAKE2b-256 095294108adfdd6e2ddf58be64f959a0b9c7d4ef2fa71086c38356d22dc501ea

See more details on using hashes here.

File details

Details for the file argon2_cffi_bindings-25.1.0-cp39-abi3-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for argon2_cffi_bindings-25.1.0-cp39-abi3-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 1e021e87faa76ae0d413b619fe2b65ab9a037f24c60a1e6cc43457ae20de6dc6
MD5 52275c5586b3588525ebb7b41005b7eb
BLAKE2b-256 c19344365f3d75053e53893ec6d733e4a5e3147502663554b4d864587c7828a7

See more details on using hashes here.

File details

Details for the file argon2_cffi_bindings-25.1.0-cp39-abi3-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for argon2_cffi_bindings-25.1.0-cp39-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 7aef0c91e2c0fbca6fc68e7555aa60ef7008a739cbe045541e438373bc54d2b0
MD5 1f36f7ff12e5af433140c36104302820
BLAKE2b-256 b602d297943bcacf05e4f2a94ab6f462831dc20158614e5d067c35d4e63b9acb

See more details on using hashes here.

File details

Details for the file argon2_cffi_bindings-25.1.0-cp39-abi3-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for argon2_cffi_bindings-25.1.0-cp39-abi3-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 2630b6240b495dfab90aebe159ff784d08ea999aa4b0d17efa734055a07d2f44
MD5 f603957819b2cff01930b37cd2df62ad
BLAKE2b-256 0a08a9bebdb2e0e602dde230bdde8021b29f71f7841bd54801bcfd514acb5dcf

See more details on using hashes here.

File details

Details for the file argon2_cffi_bindings-25.1.0-cp39-abi3-macosx_10_9_universal2.whl.

File metadata

File hashes

Hashes for argon2_cffi_bindings-25.1.0-cp39-abi3-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 aecba1723ae35330a008418a91ea6cfcedf6d31e5fbaa056a166462ff066d500
MD5 a084257586131b053e39a6b755537ff4
BLAKE2b-256 1d5796b8b9f93166147826da5f90376e784a10582dd39a393c99bb62cfcf52f0

See more details on using hashes here.

Supported by

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