argon2-cffi-bindings


Nameargon2-cffi-bindings JSON
Version 21.2.0 PyPI version JSON
download
home_pagehttps://github.com/hynek/argon2-cffi-bindings
SummaryLow-level CFFI bindings for Argon2
upload_time2021-12-01 08:52:55
maintainerHynek Schlawack
docs_urlNone
authorHynek Schlawack
requires_python>=3.6
licenseMIT
keywords password hash hashing security bindings cffi
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # Low-level Python CFFI Bindings for Argon2

*argon2-cffi-bindings* provides low-level [*CFFI*](https://cffi.readthedocs.io/) bindings to the [*Argon2*] password hashing algorithm including a vendored version of them.

<!-- [[[cog
# Extract commit ID; refresh using `tox -e cog`
import subprocess
out = subprocess.check_output(["git", "submodule"], text=True)
id = out.strip().split(" ", 1)[0]
link = f'[**`{id[:7]}`**](https://github.com/P-H-C/phc-winner-argon2/commit/{id})'
print(f"The currently vendored *Argon2* commit ID is {link}.")
]]] -->
The currently vendored *Argon2* commit ID is [**`f57e61e`**](https://github.com/P-H-C/phc-winner-argon2/commit/f57e61e19229e23c4445b85494dbf7c07de721cb).
<!-- [[[end]]] -->

> 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](https://pypi.org/project/argon2-cffi-bindings/).
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:

```console
$ env ARGON2_CFFI_USE_SYSTEM=1 \
  python -m 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*](https://en.wikipedia.org/wiki/SSE2)-optimized code (see [`_ffi_build.py`](https://github.com/hynek/argon2-cffi-bindings/blob/main/src/_argon2_cffi_bindings/_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`:

```python
from _argon2_cffi_bindings import ffi, lib
```

Please refer to [*cffi* documentation](https://cffi.readthedocs.io/en/latest/using.html) 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](https://github.com/hynek/argon2-cffi-bindings/blob/main/src/_argon2_cffi_bindings/_ffi_build.py).

[*Argon2*]: https://github.com/p-h-c/phc-winner-argon2
[*argon2-cffi*]: https://argon2-cffi.readthedocs.io/


## Project Information

*argon2-cffi-bindings* is available under the MIT license, available from [PyPI](https://pypi.org/project/argon2-cffi-bindings/), the source code and documentation can be found on [GitHub](https://github.com/hynek/argon2-cffi-bindings).

*argon2-cffi-bindings* targets Python 3.6 and later, including PyPy3.


### Credits & License

*argon2-cffi-bindings* is written and maintained by [Hynek Schlawack](https://hynek.me/about/).
It is released under the [MIT license](https://github.com/hynek/argon2-cffi/blob/main/LICENSE>).

The development is kindly supported by [Variomedia AG](https://www.variomedia.de/).

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](https://www.password-hashing.net/argon2-specs.pdf) 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*](https://www.blake2.net) code in ``src/blake2/`` is copyright (c) Samuel Neves, 2013-2015, and under [CC0] license.

[CC0]: https://creativecommons.org/publicdomain/zero/1.0/



            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/hynek/argon2-cffi-bindings",
    "name": "argon2-cffi-bindings",
    "maintainer": "Hynek Schlawack",
    "docs_url": null,
    "requires_python": ">=3.6",
    "maintainer_email": "hs@ox.cx",
    "keywords": "password,hash,hashing,security,bindings,cffi",
    "author": "Hynek Schlawack",
    "author_email": "hs@ox.cx",
    "download_url": "https://files.pythonhosted.org/packages/b9/e9/184b8ccce6683b0aa2fbb7ba5683ea4b9c5763f1356347f1312c32e3c66e/argon2-cffi-bindings-21.2.0.tar.gz",
    "platform": "",
    "description": "# Low-level Python CFFI Bindings for Argon2\n\n*argon2-cffi-bindings* provides low-level [*CFFI*](https://cffi.readthedocs.io/) bindings to the [*Argon2*] password hashing algorithm including a vendored version of them.\n\n<!-- [[[cog\n# Extract commit ID; refresh using `tox -e cog`\nimport subprocess\nout = subprocess.check_output([\"git\", \"submodule\"], text=True)\nid = out.strip().split(\" \", 1)[0]\nlink = f'[**`{id[:7]}`**](https://github.com/P-H-C/phc-winner-argon2/commit/{id})'\nprint(f\"The currently vendored *Argon2* commit ID is {link}.\")\n]]] -->\nThe currently vendored *Argon2* commit ID is [**`f57e61e`**](https://github.com/P-H-C/phc-winner-argon2/commit/f57e61e19229e23c4445b85494dbf7c07de721cb).\n<!-- [[[end]]] -->\n\n> If you want to hash passwords in an application, this package is **not** for you.\n> Have a look at [*argon2-cffi*] with its high-level abstractions!\n\nThese bindings have been extracted from [*argon2-cffi*] and it remains its main consumer.\nHowever, they may be used by other packages that want to use the *Argon2* library without dealing with C-related complexities.\n\n\n## Usage\n\n*argon2-cffi-bindings* is available from [PyPI](https://pypi.org/project/argon2-cffi-bindings/).\nThe provided *CFFI* bindings are compiled in API mode.\n\nBest effort is given to provide binary wheels for as many platforms as possible.\n\n\n### Disabling Vendored Code\n\nA copy of [*Argon2*] is vendored and used by default, but can be disabled if *argon2-cffi-bindings* is installed using:\n\n```console\n$ env ARGON2_CFFI_USE_SYSTEM=1 \\\n  python -m pip install --no-binary=argon2-cffi-bindings argon2-cffi-bindings\n```\n\n\n### Overriding Automatic *SSE2* Detection\n\nUsually the build process tries to guess whether or not it should use [*SSE2*](https://en.wikipedia.org/wiki/SSE2)-optimized code (see [`_ffi_build.py`](https://github.com/hynek/argon2-cffi-bindings/blob/main/src/_argon2_cffi_bindings/_ffi_build.py) for details).\nThis can go wrong and is problematic for cross-compiling.\n\nTherefore you can use the `ARGON2_CFFI_USE_SSE2` environment variable to control the process:\n\n- If you set it to ``1``, *argon2-cffi-bindings* will build **with** SSE2 support.\n- If you set it to ``0``, *argon2-cffi-bindings* will build **without** SSE2 support.\n- If you set it to anything else, it will be ignored and *argon2-cffi-bindings* will try to guess.\n\nHowever, if our heuristics fail you, we would welcome a bug report.\n\n\n### Python API\n\nSince this package is intended to be an implementation detail, it uses a private module name to prevent your users from using it by accident.\n\nTherefore you have to import the symbols from `_argon2_cffi_bindings`:\n\n```python\nfrom _argon2_cffi_bindings import ffi, lib\n```\n\nPlease refer to [*cffi* documentation](https://cffi.readthedocs.io/en/latest/using.html) on how to use the `ffi` and `lib` objects.\n\nThe list of symbols that are provided can be found in the [`_ffi_build.py` file](https://github.com/hynek/argon2-cffi-bindings/blob/main/src/_argon2_cffi_bindings/_ffi_build.py).\n\n[*Argon2*]: https://github.com/p-h-c/phc-winner-argon2\n[*argon2-cffi*]: https://argon2-cffi.readthedocs.io/\n\n\n## Project Information\n\n*argon2-cffi-bindings* is available under the MIT license, available from [PyPI](https://pypi.org/project/argon2-cffi-bindings/), the source code and documentation can be found on [GitHub](https://github.com/hynek/argon2-cffi-bindings).\n\n*argon2-cffi-bindings* targets Python 3.6 and later, including PyPy3.\n\n\n### Credits & License\n\n*argon2-cffi-bindings* is written and maintained by [Hynek Schlawack](https://hynek.me/about/).\nIt is released under the [MIT license](https://github.com/hynek/argon2-cffi/blob/main/LICENSE>).\n\nThe development is kindly supported by [Variomedia AG](https://www.variomedia.de/).\n\nThe authors of *Argon2* were very helpful to get the library to compile on ancient versions of Visual Studio for ancient versions of Python.\n\nThe documentation quotes frequently in verbatim from the *Argon2* [paper](https://www.password-hashing.net/argon2-specs.pdf) to avoid mistakes by rephrasing.\n\n\n#### Vendored Code\n\nThe original *Argon2* repo can be found at <https://github.com/P-H-C/phc-winner-argon2/>.\n\nExcept 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.\n\nThe string encoding routines in src/encoding.c are copyright (c) 2015 Thomas Pornin, and under [CC0] license.\n\nThe [*BLAKE2*](https://www.blake2.net) code in ``src/blake2/`` is copyright (c) Samuel Neves, 2013-2015, and under [CC0] license.\n\n[CC0]: https://creativecommons.org/publicdomain/zero/1.0/\n\n\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "Low-level CFFI bindings for Argon2",
    "version": "21.2.0",
    "split_keywords": [
        "password",
        "hash",
        "hashing",
        "security",
        "bindings",
        "cffi"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "md5": "e7fd298380e2137ec1c784c3442f944e",
                "sha256": "ccb949252cb2ab3a08c02024acb77cfb179492d5701c7cbdbfd776124d4d2367"
            },
            "downloads": -1,
            "filename": "argon2_cffi_bindings-21.2.0-cp36-abi3-macosx_10_9_x86_64.whl",
            "has_sig": true,
            "md5_digest": "e7fd298380e2137ec1c784c3442f944e",
            "packagetype": "bdist_wheel",
            "python_version": "cp36",
            "requires_python": ">=3.6",
            "size": 29658,
            "upload_time": "2021-12-01T09:09:17",
            "upload_time_iso_8601": "2021-12-01T09:09:17.016306Z",
            "url": "https://files.pythonhosted.org/packages/d4/13/838ce2620025e9666aa8f686431f67a29052241692a3dd1ae9d3692a89d3/argon2_cffi_bindings-21.2.0-cp36-abi3-macosx_10_9_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "md5": "4808f190bdf5203aa3a3e89489ba1767",
                "sha256": "9524464572e12979364b7d600abf96181d3541da11e23ddf565a32e70bd4dc0d"
            },
            "downloads": -1,
            "filename": "argon2_cffi_bindings-21.2.0-cp36-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
            "has_sig": true,
            "md5_digest": "4808f190bdf5203aa3a3e89489ba1767",
            "packagetype": "bdist_wheel",
            "python_version": "cp36",
            "requires_python": ">=3.6",
            "size": 80583,
            "upload_time": "2021-12-01T09:09:19",
            "upload_time_iso_8601": "2021-12-01T09:09:19.546387Z",
            "url": "https://files.pythonhosted.org/packages/b3/02/f7f7bb6b6af6031edb11037639c697b912e1dea2db94d436e681aea2f495/argon2_cffi_bindings-21.2.0-cp36-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "md5": "2f5d2bf4bfea6feb7ebf9f0cd07cdfc9",
                "sha256": "b746dba803a79238e925d9046a63aa26bf86ab2a2fe74ce6b009a1c3f5c8f2ae"
            },
            "downloads": -1,
            "filename": "argon2_cffi_bindings-21.2.0-cp36-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "has_sig": true,
            "md5_digest": "2f5d2bf4bfea6feb7ebf9f0cd07cdfc9",
            "packagetype": "bdist_wheel",
            "python_version": "cp36",
            "requires_python": ">=3.6",
            "size": 86168,
            "upload_time": "2021-12-01T09:09:21",
            "upload_time_iso_8601": "2021-12-01T09:09:21.445717Z",
            "url": "https://files.pythonhosted.org/packages/ec/f7/378254e6dd7ae6f31fe40c8649eea7d4832a42243acaf0f1fff9083b2bed/argon2_cffi_bindings-21.2.0-cp36-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "md5": "f3224ed4e8e0cbbbbd5a46e6b9128ca0",
                "sha256": "58ed19212051f49a523abb1dbe954337dc82d947fb6e5a0da60f7c8471a8476c"
            },
            "downloads": -1,
            "filename": "argon2_cffi_bindings-21.2.0-cp36-abi3-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl",
            "has_sig": true,
            "md5_digest": "f3224ed4e8e0cbbbbd5a46e6b9128ca0",
            "packagetype": "bdist_wheel",
            "python_version": "cp36",
            "requires_python": ">=3.6",
            "size": 82709,
            "upload_time": "2021-12-01T09:09:18",
            "upload_time_iso_8601": "2021-12-01T09:09:18.182303Z",
            "url": "https://files.pythonhosted.org/packages/74/f6/4a34a37a98311ed73bb80efe422fed95f2ac25a4cacc5ae1d7ae6a144505/argon2_cffi_bindings-21.2.0-cp36-abi3-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "md5": "de7ad5772185d9382603f09715c687a5",
                "sha256": "bd46088725ef7f58b5a1ef7ca06647ebaf0eb4baff7d1d0d177c6cc8744abd86"
            },
            "downloads": -1,
            "filename": "argon2_cffi_bindings-21.2.0-cp36-abi3-musllinux_1_1_aarch64.whl",
            "has_sig": true,
            "md5_digest": "de7ad5772185d9382603f09715c687a5",
            "packagetype": "bdist_wheel",
            "python_version": "cp36",
            "requires_python": ">=3.6",
            "size": 83613,
            "upload_time": "2021-12-01T09:09:22",
            "upload_time_iso_8601": "2021-12-01T09:09:22.741964Z",
            "url": "https://files.pythonhosted.org/packages/74/2b/73d767bfdaab25484f7e7901379d5f8793cccbb86c6e0cbc4c1b96f63896/argon2_cffi_bindings-21.2.0-cp36-abi3-musllinux_1_1_aarch64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "md5": "4a6446399407b8e45b0b6cc3bbf0cf94",
                "sha256": "8cd69c07dd875537a824deec19f978e0f2078fdda07fd5c42ac29668dda5f40f"
            },
            "downloads": -1,
            "filename": "argon2_cffi_bindings-21.2.0-cp36-abi3-musllinux_1_1_i686.whl",
            "has_sig": true,
            "md5_digest": "4a6446399407b8e45b0b6cc3bbf0cf94",
            "packagetype": "bdist_wheel",
            "python_version": "cp36",
            "requires_python": ">=3.6",
            "size": 84583,
            "upload_time": "2021-12-01T09:09:24",
            "upload_time_iso_8601": "2021-12-01T09:09:24.177960Z",
            "url": "https://files.pythonhosted.org/packages/4f/fd/37f86deef67ff57c76f137a67181949c2d408077e2e3dd70c6c42912c9bf/argon2_cffi_bindings-21.2.0-cp36-abi3-musllinux_1_1_i686.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "md5": "dbaf1dab1ce69083c8438cc3705af343",
                "sha256": "f1152ac548bd5b8bcecfb0b0371f082037e47128653df2e8ba6e914d384f3c3e"
            },
            "downloads": -1,
            "filename": "argon2_cffi_bindings-21.2.0-cp36-abi3-musllinux_1_1_x86_64.whl",
            "has_sig": true,
            "md5_digest": "dbaf1dab1ce69083c8438cc3705af343",
            "packagetype": "bdist_wheel",
            "python_version": "cp36",
            "requires_python": ">=3.6",
            "size": 88475,
            "upload_time": "2021-12-01T09:09:26",
            "upload_time_iso_8601": "2021-12-01T09:09:26.673575Z",
            "url": "https://files.pythonhosted.org/packages/6f/52/5a60085a3dae8fded8327a4f564223029f5f54b0cb0455a31131b5363a01/argon2_cffi_bindings-21.2.0-cp36-abi3-musllinux_1_1_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "md5": "f9e6904d5bdd6db747be753bed8d0318",
                "sha256": "603ca0aba86b1349b147cab91ae970c63118a0f30444d4bc80355937c950c082"
            },
            "downloads": -1,
            "filename": "argon2_cffi_bindings-21.2.0-cp36-abi3-win32.whl",
            "has_sig": true,
            "md5_digest": "f9e6904d5bdd6db747be753bed8d0318",
            "packagetype": "bdist_wheel",
            "python_version": "cp36",
            "requires_python": ">=3.6",
            "size": 27698,
            "upload_time": "2021-12-01T09:09:27",
            "upload_time_iso_8601": "2021-12-01T09:09:27.870433Z",
            "url": "https://files.pythonhosted.org/packages/8b/95/143cd64feb24a15fa4b189a3e1e7efbaeeb00f39a51e99b26fc62fbacabd/argon2_cffi_bindings-21.2.0-cp36-abi3-win32.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "md5": "55c97e6bcb58446851b1e2c92fdb8bee",
                "sha256": "b2ef1c30440dbbcba7a5dc3e319408b59676e2e039e2ae11a8775ecf482b192f"
            },
            "downloads": -1,
            "filename": "argon2_cffi_bindings-21.2.0-cp36-abi3-win_amd64.whl",
            "has_sig": true,
            "md5_digest": "55c97e6bcb58446851b1e2c92fdb8bee",
            "packagetype": "bdist_wheel",
            "python_version": "cp36",
            "requires_python": ">=3.6",
            "size": 30817,
            "upload_time": "2021-12-01T09:09:30",
            "upload_time_iso_8601": "2021-12-01T09:09:30.267539Z",
            "url": "https://files.pythonhosted.org/packages/37/2c/e34e47c7dee97ba6f01a6203e0383e15b60fb85d78ac9a15cd066f6fe28b/argon2_cffi_bindings-21.2.0-cp36-abi3-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "md5": "365d6b5da8d149e2dfc8cd695c0745bc",
                "sha256": "e415e3f62c8d124ee16018e491a009937f8cf7ebf5eb430ffc5de21b900dad93"
            },
            "downloads": -1,
            "filename": "argon2_cffi_bindings-21.2.0-cp38-abi3-macosx_10_9_universal2.whl",
            "has_sig": true,
            "md5_digest": "365d6b5da8d149e2dfc8cd695c0745bc",
            "packagetype": "bdist_wheel",
            "python_version": "cp38",
            "requires_python": ">=3.6",
            "size": 53104,
            "upload_time": "2021-12-01T09:09:31",
            "upload_time_iso_8601": "2021-12-01T09:09:31.335648Z",
            "url": "https://files.pythonhosted.org/packages/5a/e4/bf8034d25edaa495da3c8a3405627d2e35758e44ff6eaa7948092646fdcc/argon2_cffi_bindings-21.2.0-cp38-abi3-macosx_10_9_universal2.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "md5": "4cd340161de69febb7a3f0e039303f0a",
                "sha256": "3e385d1c39c520c08b53d63300c3ecc28622f076f4c2b0e6d7e796e9f6502194"
            },
            "downloads": -1,
            "filename": "argon2_cffi_bindings-21.2.0-pp37-pypy37_pp73-macosx_10_9_x86_64.whl",
            "has_sig": true,
            "md5_digest": "4cd340161de69febb7a3f0e039303f0a",
            "packagetype": "bdist_wheel",
            "python_version": "pp37",
            "requires_python": ">=3.6",
            "size": 23692,
            "upload_time": "2021-12-01T09:09:32",
            "upload_time_iso_8601": "2021-12-01T09:09:32.574797Z",
            "url": "https://files.pythonhosted.org/packages/f2/c6/e1ea7fc615ac7f9aaa4397e4ace245557d5bb25b4a594b06dccb2d90e05d/argon2_cffi_bindings-21.2.0-pp37-pypy37_pp73-macosx_10_9_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "md5": "0bd8d0129e8908a95a5db771060c578a",
                "sha256": "2c3e3cc67fdb7d82c4718f19b4e7a87123caf8a93fde7e23cf66ac0337d3cb3f"
            },
            "downloads": -1,
            "filename": "argon2_cffi_bindings-21.2.0-pp37-pypy37_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
            "has_sig": true,
            "md5_digest": "0bd8d0129e8908a95a5db771060c578a",
            "packagetype": "bdist_wheel",
            "python_version": "pp37",
            "requires_python": ">=3.6",
            "size": 28100,
            "upload_time": "2021-12-01T09:09:35",
            "upload_time_iso_8601": "2021-12-01T09:09:35.087280Z",
            "url": "https://files.pythonhosted.org/packages/dc/46/610263c404f33127878515819217aafd150906814624c31a6ad18a0a40fb/argon2_cffi_bindings-21.2.0-pp37-pypy37_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "md5": "4f7ccff544e0d33b4ffcb3755ed779dd",
                "sha256": "6a22ad9800121b71099d0fb0a65323810a15f2e292f2ba450810a7316e128ee5"
            },
            "downloads": -1,
            "filename": "argon2_cffi_bindings-21.2.0-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "has_sig": true,
            "md5_digest": "4f7ccff544e0d33b4ffcb3755ed779dd",
            "packagetype": "bdist_wheel",
            "python_version": "pp37",
            "requires_python": ">=3.6",
            "size": 27882,
            "upload_time": "2021-12-01T09:09:37",
            "upload_time_iso_8601": "2021-12-01T09:09:37.647875Z",
            "url": "https://files.pythonhosted.org/packages/8c/1b/b2abebe25743daf80db3ee3ea37e4d446c8fbcc5abb7c06baf7261f5678d/argon2_cffi_bindings-21.2.0-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "md5": "5971b4e2b96ed10fe0849a307099c84b",
                "sha256": "f9f8b450ed0547e3d473fdc8612083fd08dd2120d6ac8f73828df9b7d45bb351"
            },
            "downloads": -1,
            "filename": "argon2_cffi_bindings-21.2.0-pp37-pypy37_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl",
            "has_sig": true,
            "md5_digest": "5971b4e2b96ed10fe0849a307099c84b",
            "packagetype": "bdist_wheel",
            "python_version": "pp37",
            "requires_python": ">=3.6",
            "size": 30748,
            "upload_time": "2021-12-01T09:09:33",
            "upload_time_iso_8601": "2021-12-01T09:09:33.944911Z",
            "url": "https://files.pythonhosted.org/packages/c5/98/6cdb23d0aeb8612175e2d0fcffe776eb18d22d73e1efe4322f6a9d2bab12/argon2_cffi_bindings-21.2.0-pp37-pypy37_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "md5": "8bc7aba976d1b05c25774d0e93fd5801",
                "sha256": "93f9bf70084f97245ba10ee36575f0c3f1e7d7724d67d8e5b08e61787c320ed7"
            },
            "downloads": -1,
            "filename": "argon2_cffi_bindings-21.2.0-pp37-pypy37_pp73-win_amd64.whl",
            "has_sig": true,
            "md5_digest": "8bc7aba976d1b05c25774d0e93fd5801",
            "packagetype": "bdist_wheel",
            "python_version": "pp37",
            "requires_python": ">=3.6",
            "size": 28587,
            "upload_time": "2021-12-01T09:09:39",
            "upload_time_iso_8601": "2021-12-01T09:09:39.378154Z",
            "url": "https://files.pythonhosted.org/packages/f4/64/bef937102280c7c92dd47dd9a67b6c76ef6a276f736c419ea538fa86adf8/argon2_cffi_bindings-21.2.0-pp37-pypy37_pp73-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "md5": "98bd7d18e4b0f107437c45dad58e6840",
                "sha256": "3b9ef65804859d335dc6b31582cad2c5166f0c3e7975f324d9ffaa34ee7e6583"
            },
            "downloads": -1,
            "filename": "argon2_cffi_bindings-21.2.0-pp38-pypy38_pp73-macosx_10_9_x86_64.whl",
            "has_sig": true,
            "md5_digest": "98bd7d18e4b0f107437c45dad58e6840",
            "packagetype": "bdist_wheel",
            "python_version": "pp38",
            "requires_python": ">=3.6",
            "size": 23689,
            "upload_time": "2021-12-01T09:09:40",
            "upload_time_iso_8601": "2021-12-01T09:09:40.511883Z",
            "url": "https://files.pythonhosted.org/packages/34/da/d105a3235ae86c1c1a80c1e9c46953e6e53cc8c4c61fb3c5ac8a39bbca48/argon2_cffi_bindings-21.2.0-pp38-pypy38_pp73-macosx_10_9_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "md5": "19daf339d7f8cb7bebd10c0adc043e04",
                "sha256": "d4966ef5848d820776f5f562a7d45fdd70c2f330c961d0d745b784034bd9f48d"
            },
            "downloads": -1,
            "filename": "argon2_cffi_bindings-21.2.0-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
            "has_sig": true,
            "md5_digest": "19daf339d7f8cb7bebd10c0adc043e04",
            "packagetype": "bdist_wheel",
            "python_version": "pp38",
            "requires_python": ">=3.6",
            "size": 28122,
            "upload_time": "2021-12-01T09:09:42",
            "upload_time_iso_8601": "2021-12-01T09:09:42.818981Z",
            "url": "https://files.pythonhosted.org/packages/43/f3/20bc53a6e50471dfea16a63dc9b69d2a9ec78fd2b9532cc25f8317e121d9/argon2_cffi_bindings-21.2.0-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "md5": "e79ecae27c6ef91f8a79373ea0bee2cf",
                "sha256": "20ef543a89dee4db46a1a6e206cd015360e5a75822f76df533845c3cbaf72670"
            },
            "downloads": -1,
            "filename": "argon2_cffi_bindings-21.2.0-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "has_sig": true,
            "md5_digest": "e79ecae27c6ef91f8a79373ea0bee2cf",
            "packagetype": "bdist_wheel",
            "python_version": "pp38",
            "requires_python": ">=3.6",
            "size": 27882,
            "upload_time": "2021-12-01T09:09:43",
            "upload_time_iso_8601": "2021-12-01T09:09:43.930061Z",
            "url": "https://files.pythonhosted.org/packages/2e/f1/48888db30b6a4a0c78ab7bc7444058a1135b223b6a2a5f2ac7d6780e7443/argon2_cffi_bindings-21.2.0-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "md5": "eea408c8fc12ce0d66c2e59de6a88305",
                "sha256": "ed2937d286e2ad0cc79a7087d3c272832865f779430e0cc2b4f3718d3159b0cb"
            },
            "downloads": -1,
            "filename": "argon2_cffi_bindings-21.2.0-pp38-pypy38_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl",
            "has_sig": true,
            "md5_digest": "eea408c8fc12ce0d66c2e59de6a88305",
            "packagetype": "bdist_wheel",
            "python_version": "pp38",
            "requires_python": ">=3.6",
            "size": 30745,
            "upload_time": "2021-12-01T09:09:41",
            "upload_time_iso_8601": "2021-12-01T09:09:41.730922Z",
            "url": "https://files.pythonhosted.org/packages/ee/0f/a2260a207f21ce2ff4cad00a417c31597f08eafb547e00615bcbf403d8ea/argon2_cffi_bindings-21.2.0-pp38-pypy38_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "md5": "d68ab5ffa03d9d14a1e0ad8a407b19ef",
                "sha256": "5e00316dabdaea0b2dd82d141cc66889ced0cdcbfa599e8b471cf22c620c329a"
            },
            "downloads": -1,
            "filename": "argon2_cffi_bindings-21.2.0-pp38-pypy38_pp73-win_amd64.whl",
            "has_sig": true,
            "md5_digest": "d68ab5ffa03d9d14a1e0ad8a407b19ef",
            "packagetype": "bdist_wheel",
            "python_version": "pp38",
            "requires_python": ">=3.6",
            "size": 28587,
            "upload_time": "2021-12-01T09:09:45",
            "upload_time_iso_8601": "2021-12-01T09:09:45.508254Z",
            "url": "https://files.pythonhosted.org/packages/ed/55/f8ba268bc9005d0ca57a862e8f1b55bf1775e97a36bd30b0a8fb568c265c/argon2_cffi_bindings-21.2.0-pp38-pypy38_pp73-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "md5": "f1591e1af7dea9ef3e5b982e2c196c1d",
                "sha256": "bb89ceffa6c791807d1305ceb77dbfacc5aa499891d2c55661c6459651fc39e3"
            },
            "downloads": -1,
            "filename": "argon2-cffi-bindings-21.2.0.tar.gz",
            "has_sig": true,
            "md5_digest": "f1591e1af7dea9ef3e5b982e2c196c1d",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.6",
            "size": 1779911,
            "upload_time": "2021-12-01T08:52:55",
            "upload_time_iso_8601": "2021-12-01T08:52:55.680202Z",
            "url": "https://files.pythonhosted.org/packages/b9/e9/184b8ccce6683b0aa2fbb7ba5683ea4b9c5763f1356347f1312c32e3c66e/argon2-cffi-bindings-21.2.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2021-12-01 08:52:55",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "github_user": "hynek",
    "github_project": "argon2-cffi-bindings",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "tox": true,
    "lcname": "argon2-cffi-bindings"
}
        
Elapsed time: 0.02473s