{ "info": { "author": "Mozilla Services", "author_email": "services-dev@mozilla.com", "bugtrack_url": null, "classifiers": [ "License :: OSI Approved :: Apache Software License", "Programming Language :: Python", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: Implementation :: CPython", "Topic :: Internet :: WWW/HTTP", "Topic :: Internet :: WWW/HTTP :: WSGI :: Application" ], "description": "Kinto signer\n############\n\n|travis| |coveralls|\n\n.. |travis| image:: https://travis-ci.org/Kinto/kinto-signer.svg?branch=master\n :target: https://travis-ci.org/Kinto/kinto-signer\n\n.. |coveralls| image:: https://coveralls.io/repos/github/Kinto/kinto-signer/badge.svg?branch=master\n :target: https://coveralls.io/github/Kinto/kinto-signer?branch=master\n\n**Kinto signer** is a `Kinto `_ plugin\nthat signs records with a `content signature `_\nto guarantee their integrity and authenticity.\n\n\nHow does it work?\n=================\n\n**Kinto signer** uses two collections:\n\n* The *source*, where the authors create/update/delete records.\n* The *destination*, where the clients obtain the records and their signature.\n\nWhen the *source* collection metadata ``status`` is set to ``\"to-sign\"``, it will:\n\n#. grab the whole list of records in this *source* collection\n#. update the *destination* collection records with the recent changes\n#. serialize the result in a Canonical JSON form (*see below*)\n#. compute a signature using the configured backend\n#. update the *destination* collection metadata ``signature`` with the information\n obtain form the signature backend\n#. set the *source* metadata ``status`` to ``\"signed\"``.\n\nA publishing workflow can be enabled (see below).\n\n.. warning::\n\n The current implementation assumes the destination collection will be\n readable anonymously and won't be writable by anyone.\n (See `Kinto/kinto-signer#55 `_)\n\n\nContent-Signature protocol\n--------------------------\n\nKinto-signer produces signatures for the content of Kinto collections using\n`ECDSA `_\nwith the P-384 strength.\n\n* The content is prepended with ``Content-Signature:\\x00`` prior to signing.\n* The signature is produced with ECDSA on P-384 using SHA-384.\n* The signature is returned as encoded using URL-safe variant of base-64.\n\nSee `Content Signature `_\n\nThe content signature is validated in Firefox using the `Personal Security Manager `_.\n\n\nNotes on canonical JSON\n-----------------------\n\nThe ``canonical_json()`` can be used in projects with:\n\n.. code-block:: bash\n\n pip install --no-deps kinto-signer\n\n.. code-block:: python\n\n from kinto_signer.serializer import canonical_json\n\nSpecific to Kinto:\n\n* The payload to be signed has two attributes: ``last_modified`` with the\n current timestamp as a string, ``data`` with the array of records.\n* Records are sorted by ascending ``id``\n* Records with ``deleted: true`` are omitted\n\nStandard canonical JSON:\n\n* Object keys are sorted alphabetically\n* No extra spaces in serialized content\n* Double quotes are used\n* Hexadecimal character escape sequences are used\n* The alphabetical hexadecimal digits are lowercase\n* Duplicate or empty properties are omitted\n* ``NaN`` and ``Infinity`` are serialized as ``null``\n\nAbout numbers:\n\n* Scientific notation is used for numbers < 10e-6 and >= 10e21\n* Exponents use a lowercase ``e`` and have no leading zeros\n* Only significant numbers are kept (no fractional zeros)\n* Float are serialized with 8 significant numbers at most\n\n.. code-block:: python\n\n >>> canonical_json([{'id': '4', 'a': '\"quoted\"', 'b': 'Ich \u2665 B\u00fccher'},\n {'id': '1', 'deleted': true},\n {'id': '26', 'a': ''}])\n\n '[{\"a\":\"\",\"id\":\"26\"},{\"a\":\"\\\\\"quoted\\\\\"\",\"b\":\"Ich \\\\u2665 B\\\\u00fccher\",\"id\":\"4\"}]'\n\n\n* `Gecko client side code `_\n* `ES6 Number#toString() `_ to obtain similar output for floats\n* See `Internet-Draft Predictable Serialization for JSON Tools `_\n* See `jsesc `_ to obtain similar output\n for escape sequences in JavaScript.\n\n\nSetup\n=====\n\nTo install this plugin in a Kinto server, a few configuration variables need\nto be set.\n\nHere is an example of what a configuration could look like:\n\n.. code-block:: ini\n\n kinto.includes = kinto_signer\n\n kinto.signer.resources =\n /buckets/source -> /buckets/destination\n /buckets/source/collections/collection1 -> /buckets/destination/collections/collection2\n /buckets/bid/collections/cid -> /buckets/bid/collections/cid2\n\n+---------------------------------+--------------------------------------------------------------------------+\n| Setting name | What does it do? |\n+=================================+==========================================================================+\n| kinto.signer.resources | The source URIs (bucket or collection) on which signatures should be |\n| | triggered and the destination where the data and the signatures will |\n| | end-up. |\n| | |\n| | In the case buckets URIs are specified, every collection in the source |\n| | bucket will be reviewed/signed, review and destination will keep the |\n| | same id. |\n+---------------------------------+--------------------------------------------------------------------------+\n| kinto.signer.signer_backend | The python dotted location to the signer to use. By default, a local |\n| | ECDSA signer will be used. Choices are either |\n| | ``kinto.signer.signer.local_ecdsa`` or ``kinto.signer.signer.autograph`` |\n| | Have a look at the sections below for more information. |\n+---------------------------------+--------------------------------------------------------------------------+\n\nConfiguration for the (default) ECDSA local signer\n--------------------------------------------------\n\n+---------------------------------+--------------------------------------------------------------------------+\n| Setting name | What does it do? |\n+=================================+==========================================================================+\n| kinto.signer.ecdsa.private_key | Absolute path to the ECDSA private key to use to apply the signatures |\n+---------------------------------+--------------------------------------------------------------------------+\n| kinto.signer.ecdsa.public_key | Absolute path to the ECDSA private key to use to verify the signature |\n| | (useful if you just want to use the signer as a verifier) |\n+---------------------------------+--------------------------------------------------------------------------+\n\n\nConfiguration for the Autograph signer\n--------------------------------------\n\nKinto signer can integrate with the\n`Autograph `_ server version 2.\nTo do so, use the following settings:\n\n+------------------------------------+--------------------------------------------------------------------------+\n| Setting name | What does it do? |\n+====================================+==========================================================================+\n| kinto.signer.autograph.server_url | The autograph server URL |\n+------------------------------------+--------------------------------------------------------------------------+\n| kinto.signer.autograph.hawk_id | The hawk identifier used to issue the requests. |\n+------------------------------------+--------------------------------------------------------------------------+\n| kinto.signer.autograph.hawk_secret | The hawk secret used to issue the requests. |\n+------------------------------------+--------------------------------------------------------------------------+\n\n\nWorkflows\n---------\n\nA workflow can be enabled on the source collection ``status``.\n\nThe workflow is basically ``work-in-progress`` \u2192 ``to-review`` \u2192 ``to-sign`` \u2192 ``signed`` and\nmakes sure that:\n\n* the collection is reviewed before being signed\n* the user asking for review is the not the one approving the review\n* the user asking for review belongs to a group ``editors`` and\n the one approving the review belongs to ``reviewers``.\n\n+----------------------------------+---------------+--------------------------------------------------------------------------+\n| Setting name | Default | What does it do? |\n+==================================+===============+==========================================================================+\n| kinto.signer.to_review_enabled | ``false`` | If ``true``, the collection ``status`` must be set to ``to-review`` by a |\n| | | different user before being set to ``to-sign``. |\n+----------------------------------+---------------+--------------------------------------------------------------------------+\n| kinto.signer.group_check_enabled | ``false`` | If ``true``, the user setting to ``to-review`` must belong to the |\n| | | ``editors`` group in the source bucket, and the one setting to |\n| | | ``to-sign`` must belong to ``reviewers``. |\n+----------------------------------+---------------+--------------------------------------------------------------------------+\n| kinto.signer.editors_group | ``editors`` | The group id that is required for changing status to ``to-review`` |\n+----------------------------------+---------------+--------------------------------------------------------------------------+\n| kinto.signer.reviewers_group | ``reviewers`` | The group id that is required for changing status to ``to-sign`` |\n+----------------------------------+---------------+--------------------------------------------------------------------------+\n\n.. warning::\n\n The ``editors`` and ``reviewers`` groups are defined in the **source bucket**\n (e.g. ``/buckets/staging/groups/editors``).\n\n The ``editors`` and ``reviewers`` groups can have placeholders that are resolved\n with the source **source bucket/collection**\n (e.g. ``group:/buckets/{bucket_id}/groups/{collection_id}-reviewers``).\n\nSee `Kinto groups API `_ for more details about how to define groups.\n\nThe above settings can be set or overriden by bucket using the ``_`` prefix or by collection using the ``__`` prefix.\nFor example:\n\n.. code-block:: ini\n\n kinto.signer.staging.group_check_enabled = true\n kinto.signer.staging.to_review_enabled = true\n kinto.signer.staging.certificates.group_check_enabled = false\n kinto.signer.staging.certificates.to_review_enabled = false\n kinto.signer.staging.certificates.reviewers_group = certificates-reviewers\n\nIf the review process is enabled, it is possible to configure a *preview*\ncollection, that will be updated and signed when the status is set to ``to-review``.\nThis *preview* collection can be used by clients to test and validate the changes\nbefore approving them.\n\nIf a resources entry contains a semi-column separated **triplet**, then a preview\ncollection will be enabled.\n\n.. code-block:: ini\n\n kinto.signer.resources =\n /buckets/staging -> /buckets/preview -> /buckets/blog\n /buckets/bid/collections/c1 -> /buckets/bid/collections/c2 -> /buckets/bid/collections/c3\n\n\n.. image:: workflow.png\n\n\nThe editors and reviewers groups are automatically created when the source collection is created.\n\n\nMultiple certificates\n---------------------\n\nUsing above settings, every collections is signed with the same key.\nBut it is also possible to define multiple signers, per bucket or per collection.\n\nSettings can be prefixed with bucket id:\n\n.. code-block:: ini\n\n kinto.signer.signer_backend = kinto_signer.signer.autograph\n kinto.signer.autograph.server_url = http://172.11.20.1:8888\n\n kinto.signer..autograph.hawk_id = bob\n kinto.signer..autograph.hawk_secret = a-secret\n\n\nOr prefixed with bucket and collection:\n\n.. code-block:: ini\n\n kinto.signer...signer_backend = kinto_signer.signer.local_ecdsa\n kinto.signer...ecdsa.private_key = /path/to/private.pem\n kinto.signer...ecdsa.public_key = /path/to/public.pem\n\n\nCloudfront CDN invalidation\n---------------------------\n\nWhen a request for review or approval is done, the changes are pushed to the preview\nor destination collection.\n\nFor the setups where those public collections are served behind a Cloudfront CDN,\n*kinto-signer* can take care of invalidating some paths.\n\n.. code-block:: ini\n\n kinto.signer.distribution_id = E155JIFUEHFGY\n\nBy default, it invalidates the whole CDN (``/v1/*``). But paths can be configured:\n\n.. code-block:: ini\n\n kinto.signer.invalidation_paths = /v1/buckets/{bucket_id}/collections/{collection_id}*\n /v1/buckets/monitor/collections/changes*\n /v1/blocklist/*\n\nUsage\n=====\n\nSuppose we defined the following resources in the configuration:\n\n.. code-block:: ini\n\n kinto.signer.resources = /buckets/source -> /buckets/destination\n\nFirst, if necessary, we create the appropriate Kinto objects, for example, with ``httpie``:\n\n.. code-block:: bash\n\n $ http PUT http://0.0.0.0:8888/v1/buckets/source --auth user:pass\n $ http PUT http://0.0.0.0:8888/v1/buckets/source/collections/collection1 --auth user:pass\n $ http PUT http://0.0.0.0:8888/v1/buckets/destination --auth user:pass\n $ http PUT http://0.0.0.0:8888/v1/buckets/destination/collections/collection1 --auth user:pass\n\nCreate some records in the *source* collection.\n\n.. code-block:: bash\n\n $ echo '{\"data\": {\"article\": \"title 1\"}}' | http POST http://0.0.0.0:8888/v1/buckets/source/collections/collection1/records --auth user:pass\n $ echo '{\"data\": {\"article\": \"title 2\"}}' | http POST http://0.0.0.0:8888/v1/buckets/source/collections/collection1/records --auth user:pass\n\n\nTrigger a signature operation, set the ``status`` field on the *source* collection metadata to ``\"to-sign\"``.\n\n.. code-block:: bash\n\n echo '{\"data\": {\"status\": \"to-sign\"}}' | http PATCH http://0.0.0.0:8888/v1/buckets/source/collections/collection1 --auth user:pass\n\nThe *destination* collection should now contain the new records:\n\n.. code-block:: bash\n\n $ http GET http://0.0.0.0:8888/v1/buckets/destination/collections/collection1/records --auth user:pass\n\n.. code-block:: javascript\n\n {\n \"data\": [\n {\n \"article\": \"title 2\",\n \"id\": \"a45c74a4-18c9-4bc2-bf0c-29d96badb9e6\",\n \"last_modified\": 1460558489816\n },\n {\n \"article\": \"title 1\",\n \"id\": \"f056f42b-3792-49f3-841d-0f637c7c6683\",\n \"last_modified\": 1460558483981\n }\n ]\n }\n\nThe *destination* collection metadata now contains the signature:\n\n.. code-block:: bash\n\n $ http GET http://0.0.0.0:8888/v1/buckets/destination/collections/collection1 --auth user:pass\n\n.. code-block:: javascript\n\n {\n \"data\": {\n \"id\": \"collection1\",\n \"last_modified\": 1460558496510,\n \"signature\": {\n \"mode\": \"p384ecdsa\",\n \"x5u\": \"https://bucket.example.net/appkey1.pem\",\n \"signature\": \"Nv-EJ1D0fanElBGP4ZZmV6zu_b4DuCP3H7xawlLrcR7to3aKzqfZknVXOi94G_w8-wdKlysVWmhuDMqJqPcJV7ZudbhypJpj7kllWdPvMRZkoWXSfYLaoLMc8VQEqZcb\"\n }\n },\n \"permissions\": {\n \"read\": [\n \"system.Everyone\"\n ]\n }\n }\n\nTracking fields\n---------------\n\nDuring the review process, the *source* collection metadata will receive the following read-only fields:\n\n- ``last_edit_by``: last user to perform change on records in the source collection\n- ``last_edit_date``: date of the last records change\n- ``last_review_request_by``: last user to request a review\n- ``last_review_request_date``: date of the last review request\n- ``last_review_by``: last user to approve a review\n- ``last_review_date``: date of the last review approval\n- ``last_signature_by``: last user to trigger a signature\n- ``last_signature_date``: date of the last signature\n\n.. note:\n\n ``last_signed_by`` can be different from ``last_review_by`` when the signature is refreshed\n (ie. status changed directly from ``signed`` to ``to-sign``).\n\n\nRollback changes\n----------------\n\nIn order to reset the source (and preview) collection with the content of the destination collection (ie. last approved content), set the source to ``to-rollback``.\n\n.. code-block:: bash\n\n echo '{\"data\": {\"status\": \"to-rollback\"}}' | http PATCH http://0.0.0.0:8888/v1/buckets/source/collections/collection1 --auth user:pass\n\n\nRefresh signature\n-----------------\n\nIn order to refresh the signature, set the source to ``to-resign``, the content signature\nmetadata will be recomputed and updated and the status restore to its previous value\n(eg. ``signed`` or ``to-review``...).\n\nThis is useful when the signer certificates are rotated etc.\n\n.. code-block:: bash\n\n echo '{\"data\": {\"status\": \"to-resign\"}}' | http PATCH http://0.0.0.0:8888/v1/buckets/source/collections/collection1 --auth user:pass\n\n\nEvents\n======\n\nPyramid events are sent for each review step of the validation workflow.\n\nEvents have the following attributes:\n\n* ``request``: current Pyramid request object\n* ``payload``: same as ``kinto.core.events.ResourceChanged``\n* ``impacted_records``: same as ``kinto.core.events.ResourceChanged``\n* ``resource``: dict with details about source, preview and destination collection\n (as in capability).\n* ``original_event``: original ``ResourceChanged`` event that was caught to\n detect step change in review workflow.\n\nThe following events are thrown:\n\n* ``kinto_signer.events.ReviewRequested``\n* ``kinto_signer.events.ReviewRejected``\n* ``kinto_signer.events.ReviewApproved``\n* ``kinto_signer.events.ReviewCanceled`` (when source is rolledback)\n\n.. important::\n\n The events are sent within the request's transaction. In other words, any\n database change that occurs in subscribers will be committed or rolledback\n depending of the overall response status.\n\n\nValidating the signature\n========================\n\nWith `kinto.js `_, it is possible to define\nincoming hooks that are executed when the data is retrieved from the server.\n\n.. code-block:: javascript\n\n const kinto = new Kinto({\n remote: \"https://mykinto.com/v1\",\n bucket: \"a-bucket\"\n });\n const collection = kinto.collection(\"a-collection\", {\n hooks: {\n \"incoming-changes\": [validateCollectionSignature]\n }});\n\n.. code-block:: javascript\n\n function validateCollectionSignature(payload, collection) {\n // 1 - Fetch signature from collection endpoint\n // 2 - Fetch public key certificate\n // 3 - Merge incoming changes with local records\n // 4 - Serialize as canonical JSON\n // 5 - Verify the signature against the content with the public key\n // 6 - Return `payload` if valid, throw error otherwise.\n }\n\nThe content of the ``demo/`` folder implements the signature verification with\nkinto.js and the WebCrypto API. It is `published online `_\nbut relies on a semi-public server instance.\n\nSee also `the complete integration within Firefox `_\nusing the `Network Security Services `_.\n\n\nGenerating a keypair\n====================\n\nTo generate a new keypair, you can use the following command::\n\n $ python -m kinto_signer.generate_keypair private.pem public.pem\n\n\nRunning the tests\n=================\n\nIn order to contribute and run the full functional test suite locally you need\nto have the Go language executables (e.g. `sudo apt-get install golang`)\nand a ``testdb`` PostgreSQL database like for the Kinto server.\n\nThe rest of installation and setup process is taken care of automatically.\n\nTo run the unit tests::\n\n $ make tests\n\nFor the functional tests, run these two services in separate terminals:\n\n::\n\n $ make run-kinto\n\n::\n\n $ make run-autograph\n\nAnd start the test suite::\n\n $ make functional\n\n\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "", "keywords": "web services", "license": "Apache License (2.0)", "maintainer": "", "maintainer_email": "", "name": "kinto-signer", "package_url": "https://pypi.org/project/kinto-signer/", "platform": "", "project_url": "https://pypi.org/project/kinto-signer/", "project_urls": null, "release_url": "https://pypi.org/project/kinto-signer/5.2.1/", "requires_dist": [ "boto3", "ecdsa", "kinto (>=12.0.1)", "requests-hawk" ], "requires_python": "", "summary": "Kinto signer", "version": "5.2.1" }, "last_serial": 5923621, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "4aaee75ef23722a4bf422ad8060db593", "sha256": "dd148d526c6bfb7556ea2e3f552693e471fcb71522c8066def44e48f5872a230" }, "downloads": -1, "filename": "kinto-signer-0.1.0.tar.gz", "has_sig": false, "md5_digest": "4aaee75ef23722a4bf422ad8060db593", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12230, "upload_time": "2016-03-07T17:11:19", "url": "https://files.pythonhosted.org/packages/08/a4/b8c08694fc055363605adff37d93be90bd28be61aeb7124ce59c635c23a5/kinto-signer-0.1.0.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "1159c0d94e8219273ba986771485e191", "sha256": "b6d091d7b35b2a8788b06051d4bd05799c962d5ba0843e8d458844d1c4eb1b9c" }, "downloads": -1, "filename": "kinto-signer-0.2.0.tar.gz", "has_sig": false, "md5_digest": "1159c0d94e8219273ba986771485e191", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12581, "upload_time": "2016-03-22T13:53:42", "url": "https://files.pythonhosted.org/packages/52/a7/2ae21460be0bbeb0b6b07e44f7fc8a328dee0874ab723c5f38a3c1340eb9/kinto-signer-0.2.0.tar.gz" } ], "0.3.0": [ { "comment_text": "", "digests": { "md5": "729d67b7056d8246404bd090ef945b26", "sha256": "aa89e56fc43bbf84eed07c3081de3934750e2397443454a642098a0536a54287" }, "downloads": -1, "filename": "kinto-signer-0.3.0.zip", "has_sig": false, "md5_digest": "729d67b7056d8246404bd090ef945b26", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 79236, "upload_time": "2016-04-26T13:03:27", "url": "https://files.pythonhosted.org/packages/7a/0d/4c50a9df3f246b979e8a8955d8ede48148302a13de16e32dbe15fc4d7a79/kinto-signer-0.3.0.zip" } ], "0.4.0": [ { "comment_text": "", "digests": { "md5": "6302138bf09a74c76b94ed5b0539798c", "sha256": "bcc9110e640c56f3de998475b1071f1805fd2d924cdc0a56c071e1813bd8d2c8" }, "downloads": -1, "filename": "kinto-signer-0.4.0.zip", "has_sig": false, "md5_digest": "6302138bf09a74c76b94ed5b0539798c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 41411, "upload_time": "2016-05-10T11:33:40", "url": "https://files.pythonhosted.org/packages/6e/54/50d15e86c4f7ab6d6262fdf49980836c12029f0677d8f6ddd07777cd79f0/kinto-signer-0.4.0.zip" } ], "0.5.0": [ { "comment_text": "", "digests": { "md5": "9e4d1aa7803f94928b3cf253f1cbe8c8", "sha256": "369c2cce06b044cd49fd66a614f88f9d5d473906c9f41b325c68710f96d10553" }, "downloads": -1, "filename": "kinto_signer-0.5.0-py2-none-any.whl", "has_sig": false, "md5_digest": "9e4d1aa7803f94928b3cf253f1cbe8c8", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 32074, "upload_time": "2016-05-17T10:37:08", "url": "https://files.pythonhosted.org/packages/96/f5/980d934a2cf1bdd3a4ce23e6a100ebd1ce2b1c274d648474517d5b12b2da/kinto_signer-0.5.0-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "29464040570fc22ecc71477fb1c59f83", "sha256": "40f5d70db5a41bbf7fbd58fe48b19cd3d4fc61d49346c982f17328af025ebaa3" }, "downloads": -1, "filename": "kinto-signer-0.5.0.tar.gz", "has_sig": false, "md5_digest": "29464040570fc22ecc71477fb1c59f83", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 23616, "upload_time": "2016-05-17T10:37:13", "url": "https://files.pythonhosted.org/packages/e3/38/a35f54a10e027382a7b82d2e5a3ddef5a8f973337a96c185f5edf8f6359c/kinto-signer-0.5.0.tar.gz" } ], "0.6.0": [ { "comment_text": "", "digests": { "md5": "2b056f037cf29948386c769da74d505a", "sha256": "b784d02cc604667d13fcdc24fcfa9e927ed39f2344e48850ce2c435af3012344" }, "downloads": -1, "filename": "kinto-signer-0.6.0.zip", "has_sig": false, "md5_digest": "2b056f037cf29948386c769da74d505a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 44369, "upload_time": "2016-05-23T07:22:51", "url": "https://files.pythonhosted.org/packages/68/fb/5aea78c7553c1416ac3baafdbdd775221e4c7ae4cd0c1782e52994502ac3/kinto-signer-0.6.0.zip" } ], "0.7.0": [ { "comment_text": "", "digests": { "md5": "dda24cc8510e9e41891bf89e3c1e571f", "sha256": "8038d21778b0f73ebd855aecebfece82eca05fc12fb0650da6ff4e1a2d9fa07d" }, "downloads": -1, "filename": "kinto-signer-0.7.0.zip", "has_sig": false, "md5_digest": "dda24cc8510e9e41891bf89e3c1e571f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 45178, "upload_time": "2016-06-28T09:06:31", "url": "https://files.pythonhosted.org/packages/a3/6b/1143a26ec57f34722b607aa05a028f3c9ba1f9b5e7d8ae7b6220c3a8d9e4/kinto-signer-0.7.0.zip" } ], "0.7.1": [ { "comment_text": "", "digests": { "md5": "32634d94c770df876b6b13dc896f44cf", "sha256": "64d6fea3fddd7bb35577c093252923593c661f421693fac26f75dc3fc0804118" }, "downloads": -1, "filename": "kinto-signer-0.7.1.zip", "has_sig": false, "md5_digest": "32634d94c770df876b6b13dc896f44cf", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 47853, "upload_time": "2016-07-21T11:48:14", "url": "https://files.pythonhosted.org/packages/cc/53/e936075da7f9efb2470970f36a496e4a8857887016e12b8f8e5efa1e25d3/kinto-signer-0.7.1.zip" } ], "0.7.2": [ { "comment_text": "", "digests": { "md5": "6c4cb27ac91d2b1fb2bedea71a544b66", "sha256": "ad280a6b0483c69e00bf2919aebc404cd3d576608098e03c3edc14a2a60a89ac" }, "downloads": -1, "filename": "kinto-signer-0.7.2.zip", "has_sig": false, "md5_digest": "6c4cb27ac91d2b1fb2bedea71a544b66", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 48226, "upload_time": "2016-07-25T13:51:42", "url": "https://files.pythonhosted.org/packages/24/be/ead9990f4bf950596bc6b076b71bf842238d0a38b39aba1a604cd61d8b43/kinto-signer-0.7.2.zip" } ], "0.7.3": [ { "comment_text": "", "digests": { "md5": "6067e8e17c02be470ad3fecdadc614d2", "sha256": "e456bd63d6fcbe6bc8bbbf67fce3210681d5f90d9a3295b7e9ad0725aaf17c32" }, "downloads": -1, "filename": "kinto-signer-0.7.3.zip", "has_sig": false, "md5_digest": "6067e8e17c02be470ad3fecdadc614d2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 48899, "upload_time": "2016-07-27T21:09:07", "url": "https://files.pythonhosted.org/packages/95/86/abdcf42164e3b14e499761d1cad4eb02513557854749c9fd5fdaab70dbc0/kinto-signer-0.7.3.zip" } ], "0.8.0": [ { "comment_text": "", "digests": { "md5": "9acee5e323fcd7f0584e4d9a0677f456", "sha256": "238ecf83f6258468ff93e6f79a959305c1cb81fa8f934966f0a1d63647c3a209" }, "downloads": -1, "filename": "kinto-signer-0.8.0.zip", "has_sig": false, "md5_digest": "9acee5e323fcd7f0584e4d9a0677f456", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 115998, "upload_time": "2016-08-23T13:45:44", "url": "https://files.pythonhosted.org/packages/a1/ba/362a32d84ee3d7188cf7c70087bf38eec5a5e8333863c8b42c029f6a7025/kinto-signer-0.8.0.zip" } ], "0.8.1": [ { "comment_text": "", "digests": { "md5": "069410e50233b41911a62b63817a097b", "sha256": "d3685d492fc362e1337ffe31163a5168bab88816d552b4f977b9975b90fec92a" }, "downloads": -1, "filename": "kinto_signer-0.8.1-py2-none-any.whl", "has_sig": false, "md5_digest": "069410e50233b41911a62b63817a097b", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 39417, "upload_time": "2016-08-26T22:10:41", "url": "https://files.pythonhosted.org/packages/1b/cc/f6472076c4a2b3ed2458c3539807a41cb5503600122e0796c9e90fd4ba08/kinto_signer-0.8.1-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "fd2cf09fed506aadd6daa72c4fc7db21", "sha256": "669ae89ee670ff69ad4b5bcc0dc85758f475e58deccddf2a173b23ddf508aec5" }, "downloads": -1, "filename": "kinto-signer-0.8.1.tar.gz", "has_sig": false, "md5_digest": "fd2cf09fed506aadd6daa72c4fc7db21", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 101617, "upload_time": "2016-08-26T22:10:44", "url": "https://files.pythonhosted.org/packages/8f/6a/a41b4a2bae044e879e4f0c09ed2a7d5053d6272f063ea52b40077e654f42/kinto-signer-0.8.1.tar.gz" } ], "0.9.0": [ { "comment_text": "", "digests": { "md5": "83e22898bf47b59020ebf8321237bf19", "sha256": "1c88f4592f080bacba0afdfcd182be5293017943df6c207c465cf9ae88210dfc" }, "downloads": -1, "filename": "kinto-signer-0.9.0.zip", "has_sig": false, "md5_digest": "83e22898bf47b59020ebf8321237bf19", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 144073, "upload_time": "2016-09-30T09:20:25", "url": "https://files.pythonhosted.org/packages/1f/48/5a88e7a8c57ae86c236dbcfe00b794b9e6273cafc422a237bf4e14d59356/kinto-signer-0.9.0.zip" } ], "0.9.1": [ { "comment_text": "", "digests": { "md5": "18a34af8c87234e5975335ce0cd18b3e", "sha256": "b6cb46ac96edceb7075765804b87371276a82859eef04eda23707ec82ec01c5a" }, "downloads": -1, "filename": "kinto-signer-0.9.1.zip", "has_sig": false, "md5_digest": "18a34af8c87234e5975335ce0cd18b3e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 145047, "upload_time": "2016-10-03T11:20:10", "url": "https://files.pythonhosted.org/packages/7b/77/ab941003fdb6bd8f0f4221fb2e855be4f4dafa177787496e10a8b7098990/kinto-signer-0.9.1.zip" } ], "0.9.2": [ { "comment_text": "", "digests": { "md5": "a8ff3c98634ce4333cb5b3a42848237b", "sha256": "8023f52494b9d345e7eae302b9ed45141e5d217bf8a72a6e64e32b900879a727" }, "downloads": -1, "filename": "kinto-signer-0.9.2.zip", "has_sig": false, "md5_digest": "a8ff3c98634ce4333cb5b3a42848237b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 145784, "upload_time": "2016-10-06T08:56:13", "url": "https://files.pythonhosted.org/packages/af/85/fee814ffe3283d7e6f6579599c46c83d983d91ec05d9a26bc6d9039ef0ea/kinto-signer-0.9.2.zip" } ], "1.0.0": [ { "comment_text": "", "digests": { "md5": "0a64bb6db7550580cc88d64fe74f22ab", "sha256": "19be7986d4d96872193ad429292608c5aa88df243fac611f30599f32387a9982" }, "downloads": -1, "filename": "kinto-signer-1.0.0.zip", "has_sig": false, "md5_digest": "0a64bb6db7550580cc88d64fe74f22ab", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 146607, "upload_time": "2016-10-26T09:08:39", "url": "https://files.pythonhosted.org/packages/12/ee/9099a8ca2f70401e32db10c62c5a372c57b0dfcf99ddec6201eb3427b9ed/kinto-signer-1.0.0.zip" } ], "1.1.1": [ { "comment_text": "", "digests": { "md5": "0fac982ca41e3a868be11f8603d0ac07", "sha256": "59a9f18fdbe453f20b83f3069bc343c91d71342024ab42732406eaced1b280a5" }, "downloads": -1, "filename": "kinto-signer-1.1.1.tar.gz", "has_sig": false, "md5_digest": "0fac982ca41e3a868be11f8603d0ac07", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 131736, "upload_time": "2017-01-17T10:52:41", "url": "https://files.pythonhosted.org/packages/6f/42/f7e0a4de42c98f240314d6e4514d98f3a0683795b16e0a418981c924e7c4/kinto-signer-1.1.1.tar.gz" } ], "1.2.0": [ { "comment_text": "", "digests": { "md5": "01f239d312150161ccb3d175608e3cce", "sha256": "8178dfddc5b569a9bcb4ae192500d8920e023fe32fd84b6e25841fd6c06bd093" }, "downloads": -1, "filename": "kinto-signer-1.2.0.tar.gz", "has_sig": false, "md5_digest": "01f239d312150161ccb3d175608e3cce", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 133782, "upload_time": "2017-01-20T14:41:21", "url": "https://files.pythonhosted.org/packages/b6/ae/5f8446a0433f36982c527f6267c15afe8b694c8d896931626d4335cd5fb5/kinto-signer-1.2.0.tar.gz" } ], "1.3.0": [ { "comment_text": "", "digests": { "md5": "089e6842c0fd11713bee28ad64eeb0f5", "sha256": "ba87468f5a798df46a74dea5613847e163bb7f0749971d2a6b67ec8f4ef81977" }, "downloads": -1, "filename": "kinto-signer-1.3.0.tar.gz", "has_sig": false, "md5_digest": "089e6842c0fd11713bee28ad64eeb0f5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 137617, "upload_time": "2017-03-03T23:52:13", "url": "https://files.pythonhosted.org/packages/d0/d7/1e024045ab5315dfe8300407941c0998f08f3a81ebc3f4c5754deb557616/kinto-signer-1.3.0.tar.gz" } ], "1.3.1": [ { "comment_text": "", "digests": { "md5": "d85d8388af181275ee952458edf3c76d", "sha256": "e80f4e9c7c6d21401649d52876570c31dd91415e4a907e49ea611ca0024acaf3" }, "downloads": -1, "filename": "kinto-signer-1.3.1.tar.gz", "has_sig": false, "md5_digest": "d85d8388af181275ee952458edf3c76d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 138498, "upload_time": "2017-03-17T22:12:37", "url": "https://files.pythonhosted.org/packages/55/f8/b465d0fdac6b44a49045d62125e354b5b337eedac64f02849ecfd67e33c4/kinto-signer-1.3.1.tar.gz" } ], "1.3.2": [ { "comment_text": "", "digests": { "md5": "1e4dba16991db101ad8e0632bd574816", "sha256": "4359a4f6853261b92bf9afe5b6c6ba90628ddcb824a3399142203a2b9164b50b" }, "downloads": -1, "filename": "kinto-signer-1.3.2.tar.gz", "has_sig": false, "md5_digest": "1e4dba16991db101ad8e0632bd574816", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 139578, "upload_time": "2017-03-21T16:19:41", "url": "https://files.pythonhosted.org/packages/77/30/b5fb9eb4756f89de7bb8862fed75447325f88aa175f781327e76fff13ed7/kinto-signer-1.3.2.tar.gz" } ], "1.3.3": [ { "comment_text": "", "digests": { "md5": "2819475905c529cccc9d807382ed9ce7", "sha256": "5157574ebd2490592009fb9f565127582931d10803a86bc30cd4e73beaf67809" }, "downloads": -1, "filename": "kinto-signer-1.3.3.tar.gz", "has_sig": false, "md5_digest": "2819475905c529cccc9d807382ed9ce7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 139613, "upload_time": "2017-04-18T13:36:13", "url": "https://files.pythonhosted.org/packages/15/53/6bd0e2ed24d59799792e14437a534c061beeb513538e11e447ba2d63ad07/kinto-signer-1.3.3.tar.gz" } ], "1.4.0": [ { "comment_text": "", "digests": { "md5": "0f4bddfdf122f0d8f406ccb4b4d50a58", "sha256": "cb5d8cb451f989c761e963d20b5c29b598896bd809b73d0ccba15febaf45853d" }, "downloads": -1, "filename": "kinto_signer-1.4.0-py3-none-any.whl", "has_sig": false, "md5_digest": "0f4bddfdf122f0d8f406ccb4b4d50a58", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 45903, "upload_time": "2017-06-07T15:18:35", "url": "https://files.pythonhosted.org/packages/9e/b1/9b4869f78913747a18f732b58b0b0405ea05c80a0c9c92eae50e4b7d3370/kinto_signer-1.4.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "8a1a83c8b9bb7ff65665b68476f4ef2d", "sha256": "b31140c6e738e0d7b09b287c1bdaa9a2d792d78640efd224423f13bb55c5a15a" }, "downloads": -1, "filename": "kinto-signer-1.4.0.tar.gz", "has_sig": false, "md5_digest": "8a1a83c8b9bb7ff65665b68476f4ef2d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 131139, "upload_time": "2017-06-07T15:18:33", "url": "https://files.pythonhosted.org/packages/cf/eb/3493614af3eeba1c8f328399ae156db2104c7403fad2a192f4ccddccfae2/kinto-signer-1.4.0.tar.gz" } ], "1.5.0": [ { "comment_text": "", "digests": { "md5": "48e8e66d61a3c5b7ed38825f1a18870c", "sha256": "6d904be2f4e552c651b86cb32cad50c1bfdc9ca3b2a2949ab144b27f0e1948df" }, "downloads": -1, "filename": "kinto_signer-1.5.0-py3-none-any.whl", "has_sig": false, "md5_digest": "48e8e66d61a3c5b7ed38825f1a18870c", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 46372, "upload_time": "2017-06-19T14:03:39", "url": "https://files.pythonhosted.org/packages/b6/11/a3518dfd166c9387ebdc9cf4d498b60758034aba417e69be42d91a479b92/kinto_signer-1.5.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "e8652b93f1a301605b40d6cf62db506f", "sha256": "02c3fa41617d98702d2968b497ba9e6be6b87b88b62c7fb405ec84611c2c10fb" }, "downloads": -1, "filename": "kinto-signer-1.5.0.tar.gz", "has_sig": false, "md5_digest": "e8652b93f1a301605b40d6cf62db506f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 131769, "upload_time": "2017-06-19T14:03:37", "url": "https://files.pythonhosted.org/packages/93/44/f5bd6c92dba433591127ef2f82e6abed2ca845c8b051fde0c5b12b0dd8a0/kinto-signer-1.5.0.tar.gz" } ], "1.5.1": [ { "comment_text": "", "digests": { "md5": "1418f459448b7f69f748db01fd1dc557", "sha256": "f0bb477a5f48699fb6e2063bda372c4f7a1338de43a8b726db8824df2db77d50" }, "downloads": -1, "filename": "kinto_signer-1.5.1-py3-none-any.whl", "has_sig": false, "md5_digest": "1418f459448b7f69f748db01fd1dc557", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 46365, "upload_time": "2017-06-28T17:52:18", "url": "https://files.pythonhosted.org/packages/e4/43/4c19b49b0a618546888d3d50a37296a0b0f650376a7b2ed08343adea628d/kinto_signer-1.5.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "f23e941c9ccdb3be320f928bdcfbec79", "sha256": "adfa4312ac1e4d992c6472daadaf79d3d6aeba6bd093e9435a4ddb8ee1d3aaf5" }, "downloads": -1, "filename": "kinto-signer-1.5.1.tar.gz", "has_sig": false, "md5_digest": "f23e941c9ccdb3be320f928bdcfbec79", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 131785, "upload_time": "2017-06-28T17:52:21", "url": "https://files.pythonhosted.org/packages/f4/ae/b45bb75c478a9862dda4714bd82bebef4808d8582645a12e40808e359743/kinto-signer-1.5.1.tar.gz" } ], "1.5.2": [ { "comment_text": "", "digests": { "md5": "884c7acd04a6de351e026584d691931b", "sha256": "15ae976c87f8f98893bc8d1a33cc993c0b3c0d85d25ab832dd1433d7ebfc4935" }, "downloads": -1, "filename": "kinto_signer-1.5.2-py3-none-any.whl", "has_sig": false, "md5_digest": "884c7acd04a6de351e026584d691931b", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 46490, "upload_time": "2017-06-28T21:35:29", "url": "https://files.pythonhosted.org/packages/74/f2/7c092233ff559a95d9663e655fb444481376952b076b85967e1efe20e71f/kinto_signer-1.5.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "20f70686da9829d730bb7467b2af6597", "sha256": "44fbfc71dbe4d03f62b61c0b8a9bb8aeb01349f26fdd146799aecea56fbccb29" }, "downloads": -1, "filename": "kinto-signer-1.5.2.tar.gz", "has_sig": false, "md5_digest": "20f70686da9829d730bb7467b2af6597", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 131919, "upload_time": "2017-06-28T21:35:33", "url": "https://files.pythonhosted.org/packages/34/ca/b3753c4459e8c5fe4062b2fb3412d7c1da7c0cd6bba40587e197a691bab4/kinto-signer-1.5.2.tar.gz" } ], "1.5.3": [ { "comment_text": "", "digests": { "md5": "1cf91edd8da23232c0017fb6e8090a01", "sha256": "152b0c28eea4835674b85b9474a47fd35a7e5ae3f7be7c5cc00653c3792b22bc" }, "downloads": -1, "filename": "kinto_signer-1.5.3-py3-none-any.whl", "has_sig": false, "md5_digest": "1cf91edd8da23232c0017fb6e8090a01", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 46609, "upload_time": "2017-07-20T15:09:02", "url": "https://files.pythonhosted.org/packages/03/55/0e5e9226cae96c6d1ad7945302ea7d4533376dfcf93bc3e1410db1d61d79/kinto_signer-1.5.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "9b1e61c0548cdb3312b1e4a98764708b", "sha256": "f75d51e2176b048a749958dd32b724162e4fa9fa6c1fb0c77984b4ee9547bb74" }, "downloads": -1, "filename": "kinto-signer-1.5.3.tar.gz", "has_sig": false, "md5_digest": "9b1e61c0548cdb3312b1e4a98764708b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 132049, "upload_time": "2017-07-20T15:08:59", "url": "https://files.pythonhosted.org/packages/e0/a1/726ab1a42c91d96bfb241f8e2e3f216ede63f25a273fb84dc625d7facb5a/kinto-signer-1.5.3.tar.gz" } ], "1.5.4": [ { "comment_text": "", "digests": { "md5": "7b77809630478da22ced6f40eddd701a", "sha256": "599c7f7290a9423241fa8fd84b87edb7a38ccf3df4791de2312ecc331a2c106c" }, "downloads": -1, "filename": "kinto_signer-1.5.4-py3-none-any.whl", "has_sig": false, "md5_digest": "7b77809630478da22ced6f40eddd701a", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 46636, "upload_time": "2017-07-20T22:33:08", "url": "https://files.pythonhosted.org/packages/e9/19/41f327ec9a5e13e9775021b46cfc6c38794e84d5b2e67c9708a52250daf8/kinto_signer-1.5.4-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "c6313104c566a3463fc84346b54d48ec", "sha256": "5314d709f10358c67752a4e33cffcb7d1317fa74b666eb1498cbe0c6290618ec" }, "downloads": -1, "filename": "kinto-signer-1.5.4.tar.gz", "has_sig": false, "md5_digest": "c6313104c566a3463fc84346b54d48ec", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 132095, "upload_time": "2017-07-20T22:33:07", "url": "https://files.pythonhosted.org/packages/de/0d/6e53cbc7dd34174dbd32cedf895031c4d834efcbcb7e9b8816efe4d8bce9/kinto-signer-1.5.4.tar.gz" } ], "2.0.0": [ { "comment_text": "", "digests": { "md5": "8364af2de70d8897932e7c94491fd6a4", "sha256": "8d83fe6659f11d7ff3ac9542fd20a1f80acdaeb7bc0e16336c2a6b25ac992be8" }, "downloads": -1, "filename": "kinto_signer-2.0.0-py3-none-any.whl", "has_sig": false, "md5_digest": "8364af2de70d8897932e7c94491fd6a4", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 45347, "upload_time": "2017-07-05T09:08:45", "url": "https://files.pythonhosted.org/packages/0e/bd/cf8cd65e6daa72b48b7b79f3533c5596461c8e9d27d426fb94a666c4b09f/kinto_signer-2.0.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "9a66637cc814fd7d7f1c59e62fffd91d", "sha256": "222a14d9fb50cb4db628c1d7ba1655c014e27972ae8448a5fcbfe96089da2ae7" }, "downloads": -1, "filename": "kinto-signer-2.0.0.tar.gz", "has_sig": false, "md5_digest": "9a66637cc814fd7d7f1c59e62fffd91d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 131816, "upload_time": "2017-07-05T09:08:47", "url": "https://files.pythonhosted.org/packages/e9/57/62535f2b7841a4b3e9a9d272a4516bfb199efad84c619d31576e319399dd/kinto-signer-2.0.0.tar.gz" } ], "2.1.0": [ { "comment_text": "", "digests": { "md5": "d3fb99baf1e8f053179f0a742757f041", "sha256": "c9d0dbc4116d2955da4a6798fbf25424f85d76a92697febc0a952d423465a112" }, "downloads": -1, "filename": "kinto_signer-2.1.0-py3-none-any.whl", "has_sig": false, "md5_digest": "d3fb99baf1e8f053179f0a742757f041", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 45522, "upload_time": "2017-08-07T17:00:06", "url": "https://files.pythonhosted.org/packages/33/16/a4e570f440370b1e7836218efafcea585c2ee7824e1ef3207fc330dbcf87/kinto_signer-2.1.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "81fbc700a2f3f946a3daff30011a3425", "sha256": "04b4ad4ab68b5c4362811f1576e9999ab6faeac87dd39604b02006925ceae8f9" }, "downloads": -1, "filename": "kinto-signer-2.1.0.tar.gz", "has_sig": false, "md5_digest": "81fbc700a2f3f946a3daff30011a3425", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 132070, "upload_time": "2017-08-07T17:00:04", "url": "https://files.pythonhosted.org/packages/78/17/1869e8039e34a10a5e99d380acfc5c36e43122eb47a843ab287dae71383f/kinto-signer-2.1.0.tar.gz" } ], "2.1.1": [ { "comment_text": "", "digests": { "md5": "db4eeca1d40ea011b7c545b64853fa56", "sha256": "d0482e6df61afaf8ff67108f66500035274f9d50f02cd141201601c48494cce3" }, "downloads": -1, "filename": "kinto_signer-2.1.1-py3-none-any.whl", "has_sig": false, "md5_digest": "db4eeca1d40ea011b7c545b64853fa56", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 45464, "upload_time": "2017-10-30T09:32:14", "url": "https://files.pythonhosted.org/packages/c4/a7/aba7167f380db5c1e48a92ea79b838d416fba4b1effc60c2d9f3045ce6c7/kinto_signer-2.1.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "8e6df125f1ffd763185719d703b0487a", "sha256": "65e4bc577c2b523a9ad24c9ce84547ed1378b628ac0f0b1240014d951ff0f8fa" }, "downloads": -1, "filename": "kinto-signer-2.1.1.tar.gz", "has_sig": false, "md5_digest": "8e6df125f1ffd763185719d703b0487a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 132023, "upload_time": "2017-10-30T09:32:16", "url": "https://files.pythonhosted.org/packages/9e/13/8d9b2ee3c2fa207f6a8cf187d37401ecf35d9854bdc812fe5d73e22b83f5/kinto-signer-2.1.1.tar.gz" } ], "2.2.0": [ { "comment_text": "", "digests": { "md5": "551706eb3737a8696e1519096bf4c715", "sha256": "32b1d4aa4cbfba7e6331abdeabe8e1116e08f0960843f7e5a8c7537c9623e7d8" }, "downloads": -1, "filename": "kinto_signer-2.2.0-py3-none-any.whl", "has_sig": false, "md5_digest": "551706eb3737a8696e1519096bf4c715", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 46043, "upload_time": "2017-12-06T13:40:35", "url": "https://files.pythonhosted.org/packages/ed/c5/1c2dd79330f4d5011bd1d1d3dbe2067ab15f626ea9ac17ccdf91d52dc801/kinto_signer-2.2.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "62cd67232148bca021639068cd439a64", "sha256": "ca4f198b58b87e845f3d2990204b7b38b9070c513cb4421390471e6c7dcc48be" }, "downloads": -1, "filename": "kinto-signer-2.2.0.tar.gz", "has_sig": false, "md5_digest": "62cd67232148bca021639068cd439a64", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 132450, "upload_time": "2017-12-06T13:40:32", "url": "https://files.pythonhosted.org/packages/03/e8/7586b5b0eec1cb5426d7c290fc461d2593b59ce0720cebbd777497bccc18/kinto-signer-2.2.0.tar.gz" } ], "3.0.0": [ { "comment_text": "", "digests": { "md5": "f5ca2d5d197fec05fb6710bfe4721ee4", "sha256": "98f7e8fa5930e0f03e754d288c262a1a400b97117c1f96aeb0922c3341e495af" }, "downloads": -1, "filename": "kinto-signer-3.0.0.tar.gz", "has_sig": false, "md5_digest": "f5ca2d5d197fec05fb6710bfe4721ee4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 144788, "upload_time": "2018-03-08T18:02:41", "url": "https://files.pythonhosted.org/packages/74/43/a0d49a85536cc46c4903d2ba2e483e4868a3defdf63e3567486202dfd851/kinto-signer-3.0.0.tar.gz" } ], "3.1.0": [ { "comment_text": "", "digests": { "md5": "54866b3df020a36daceed76e14ee66e1", "sha256": "d1a643a07d0cb9d8c9497b7bee9aabf633f63ccaa4aed7d7a460d248ab959363" }, "downloads": -1, "filename": "kinto-signer-3.1.0.tar.gz", "has_sig": false, "md5_digest": "54866b3df020a36daceed76e14ee66e1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 145852, "upload_time": "2018-03-16T17:02:23", "url": "https://files.pythonhosted.org/packages/77/f9/d2590c4f9399d5d0e0afdae20f366dcb6e2c5efd6ff5219c705223e0d333/kinto-signer-3.1.0.tar.gz" } ], "3.2.0": [ { "comment_text": "", "digests": { "md5": "bf27091b796789ed5eef676a9885f1f6", "sha256": "eb576de76568e02d8373f7043679befef37449afa8f3ff84893b00c02481b6f2" }, "downloads": -1, "filename": "kinto-signer-3.2.0.tar.gz", "has_sig": false, "md5_digest": "bf27091b796789ed5eef676a9885f1f6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 148251, "upload_time": "2018-04-11T17:26:14", "url": "https://files.pythonhosted.org/packages/75/dc/b846a95ec31094b84196b3a8ac3f120caabe6ad61d10b82eba0cd5ac77a6/kinto-signer-3.2.0.tar.gz" } ], "3.2.1": [ { "comment_text": "", "digests": { "md5": "927be0866342abbd023d33dd21f40ca9", "sha256": "472a2eeb99e082c01939b65856411e5f011e219862761050920e6b338b49e066" }, "downloads": -1, "filename": "kinto-signer-3.2.1.tar.gz", "has_sig": false, "md5_digest": "927be0866342abbd023d33dd21f40ca9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 148338, "upload_time": "2018-04-25T14:07:40", "url": "https://files.pythonhosted.org/packages/66/49/c236a17517345e25de6446e7b33e569304b801af65f7801b2ded62edd28e/kinto-signer-3.2.1.tar.gz" } ], "3.2.2": [ { "comment_text": "", "digests": { "md5": "79e5299843af000fa2dd6992de9fe10c", "sha256": "e8a1da34e561b51e8fa0f38fe4ba1e0b23373cdd3d1bc9a0876a198cf8ef89cb" }, "downloads": -1, "filename": "kinto-signer-3.2.2.tar.gz", "has_sig": false, "md5_digest": "79e5299843af000fa2dd6992de9fe10c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 148986, "upload_time": "2018-05-02T15:25:22", "url": "https://files.pythonhosted.org/packages/8d/0b/7687474c8c2cc2d3a4117689acf62da679d1485c49a1795980c3908d2b58/kinto-signer-3.2.2.tar.gz" } ], "3.2.3": [ { "comment_text": "", "digests": { "md5": "75d84c7ac162d64a77ec9c63ba11e913", "sha256": "5c4f3fb3e825b0d6eec95b0030236dbbe7249eec05510d29a91d1136715e99ee" }, "downloads": -1, "filename": "kinto-signer-3.2.3.tar.gz", "has_sig": false, "md5_digest": "75d84c7ac162d64a77ec9c63ba11e913", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 149831, "upload_time": "2018-05-07T13:16:21", "url": "https://files.pythonhosted.org/packages/27/4a/6f597270db59fc62a91721b1ac98e2c3e371888fa68d95b706cbc10fa4ad/kinto-signer-3.2.3.tar.gz" } ], "3.2.4": [ { "comment_text": "", "digests": { "md5": "0245fd2782217e6c6cb9d566fae5d4ad", "sha256": "a2ca06f544be3ebee335355f90b6d2a3fa1708e13ce04adb678fdcce5ecc0818" }, "downloads": -1, "filename": "kinto-signer-3.2.4.tar.gz", "has_sig": false, "md5_digest": "0245fd2782217e6c6cb9d566fae5d4ad", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 149861, "upload_time": "2018-05-30T07:47:31", "url": "https://files.pythonhosted.org/packages/08/96/818ebee8ebabaf45bf1455ed689f65d9315a1d3e6ed19da518134213ec86/kinto-signer-3.2.4.tar.gz" } ], "3.2.5": [ { "comment_text": "", "digests": { "md5": "3d0fe88db454e442f9aec3dde098ba73", "sha256": "3f3f739e0f12c9b18b8df06002d70664de14a174395e14b6871e7af13834fa85" }, "downloads": -1, "filename": "kinto-signer-3.2.5.tar.gz", "has_sig": false, "md5_digest": "3d0fe88db454e442f9aec3dde098ba73", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 150556, "upload_time": "2018-07-05T09:13:22", "url": "https://files.pythonhosted.org/packages/aa/4e/1dd8faf285b297fb7a410f5dce29414904e688ad26ec0577d4ecfc27a4f9/kinto-signer-3.2.5.tar.gz" } ], "3.3.0": [ { "comment_text": "", "digests": { "md5": "54d51495af3feb45e9b19ce690e7d935", "sha256": "b794a646104461173d54e8fa819a4a4d8eff9613de428472a233f383cbd0d2a0" }, "downloads": -1, "filename": "kinto-signer-3.3.0.tar.gz", "has_sig": false, "md5_digest": "54d51495af3feb45e9b19ce690e7d935", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 151672, "upload_time": "2018-07-24T16:21:56", "url": "https://files.pythonhosted.org/packages/e4/3a/6c7370cc10fb8cb82bc82aee2bfc25a6bd04173071710009e7475be62932/kinto-signer-3.3.0.tar.gz" } ], "3.3.2": [ { "comment_text": "", "digests": { "md5": "5af0c4328bd6feb3453202b64f9fd44d", "sha256": "e67f9eea0f4433c2c861c2caf279c3d35c4e9a9aed2f0e64d6dad516b7c7baeb" }, "downloads": -1, "filename": "kinto-signer-3.3.2.tar.gz", "has_sig": false, "md5_digest": "5af0c4328bd6feb3453202b64f9fd44d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 159484, "upload_time": "2018-08-20T18:00:01", "url": "https://files.pythonhosted.org/packages/85/1e/2184c45c16bfa16e315691de25832b908e6974fcf78174775a33a6703433/kinto-signer-3.3.2.tar.gz" } ], "3.3.3": [ { "comment_text": "", "digests": { "md5": "6e845827a6a142c7ae37c351332294ae", "sha256": "8bb766a20e8f386dfcc81d9e7d4c40c5972a94e93e4f18728767b6c16850c336" }, "downloads": -1, "filename": "kinto-signer-3.3.3.tar.gz", "has_sig": false, "md5_digest": "6e845827a6a142c7ae37c351332294ae", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 151727, "upload_time": "2018-10-10T16:21:15", "url": "https://files.pythonhosted.org/packages/87/25/77c9e5caedc2d809f011473f736a0c34dafbdb4b51cb056c8f6420696e61/kinto-signer-3.3.3.tar.gz" } ], "3.3.4": [ { "comment_text": "", "digests": { "md5": "54c33fb48f0c34762f4099eb2249aa17", "sha256": "579ec2fc7c0136c7d23ec0381d26a2319532a0df0db55c0719ae6cef2d8673df" }, "downloads": -1, "filename": "kinto_signer-3.3.4-py2-none-any.whl", "has_sig": false, "md5_digest": "54c33fb48f0c34762f4099eb2249aa17", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 56903, "upload_time": "2018-10-25T15:37:33", "url": "https://files.pythonhosted.org/packages/d3/24/90c9e5735b80f0f421bee7d3bd03ac836b284e325891a8aac2ca946b0281/kinto_signer-3.3.4-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d6f21fbc71c2de59a9e30e9aa9993467", "sha256": "c7f2575def9e61d6ad016b8da102f508d6d2b4557b75632f6584436dda7e8bdf" }, "downloads": -1, "filename": "kinto-signer-3.3.4.tar.gz", "has_sig": false, "md5_digest": "d6f21fbc71c2de59a9e30e9aa9993467", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 151802, "upload_time": "2018-10-25T15:37:31", "url": "https://files.pythonhosted.org/packages/59/a1/7bc07e0c64a5f6898aa7b59506b4e81a4ead3e3fa419edb4ae11b41f7613/kinto-signer-3.3.4.tar.gz" } ], "3.3.5": [ { "comment_text": "", "digests": { "md5": "ea31942e0c3577117a645adc4c7eb2ef", "sha256": "9f591310a2d8f90a8af4f27c50e39e966abf64f4ae4d6e1306b6fa60ddbd46cf" }, "downloads": -1, "filename": "kinto_signer-3.3.5-py2-none-any.whl", "has_sig": false, "md5_digest": "ea31942e0c3577117a645adc4c7eb2ef", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 58889, "upload_time": "2018-11-06T14:59:58", "url": "https://files.pythonhosted.org/packages/03/c2/0d7ef8eb1412ba4fb437c5b1daabaaec9c12b32edd9d5c235760ae33ede3/kinto_signer-3.3.5-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "0813aca58eedbe146a4a29f44eb77a7c", "sha256": "da2bb1b3ec7bb160bb435729028b1bfc3ee3ed9af9e29d472d693249a91424ee" }, "downloads": -1, "filename": "kinto-signer-3.3.5.tar.gz", "has_sig": false, "md5_digest": "0813aca58eedbe146a4a29f44eb77a7c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 153669, "upload_time": "2018-11-06T15:00:00", "url": "https://files.pythonhosted.org/packages/ac/f2/2b37a6469dc127c43491e61a38bb1bbca816ea3ab7f6bd2cf30eb5aa2eb5/kinto-signer-3.3.5.tar.gz" } ], "3.3.6": [ { "comment_text": "", "digests": { "md5": "467411fafa8d36626dbe181a6d61244d", "sha256": "7b37a0640567034a42426f39555e29e6314b09972ba515ac10ddbd655dc635d4" }, "downloads": -1, "filename": "kinto_signer-3.3.6-py2-none-any.whl", "has_sig": false, "md5_digest": "467411fafa8d36626dbe181a6d61244d", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 59075, "upload_time": "2018-11-08T11:02:18", "url": "https://files.pythonhosted.org/packages/d6/b2/66272e751d88ed4c134b614eb86b719dce7078687319b944da03da0e9e8b/kinto_signer-3.3.6-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "9520a1948f574f86f21a2e81f471ee3d", "sha256": "6b7516b817f58a1051955d78c5ba895bf4545c2f8d7df243723053508d9e08cb" }, "downloads": -1, "filename": "kinto-signer-3.3.6.tar.gz", "has_sig": false, "md5_digest": "9520a1948f574f86f21a2e81f471ee3d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 153975, "upload_time": "2018-11-08T11:02:15", "url": "https://files.pythonhosted.org/packages/8f/47/dae3e1dd655fda1eaa3b41ef8362025eb5970a5edc2c626a7e28120b3c04/kinto-signer-3.3.6.tar.gz" } ], "3.3.7": [ { "comment_text": "", "digests": { "md5": "a0acab0154c61a21359a4a882e564443", "sha256": "62dbbb6fe01c35b02dec8dbd1b9d119e3fe94ac99f7f864fa4896b18875e52ac" }, "downloads": -1, "filename": "kinto_signer-3.3.7-py2-none-any.whl", "has_sig": false, "md5_digest": "a0acab0154c61a21359a4a882e564443", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 59545, "upload_time": "2018-11-20T20:38:34", "url": "https://files.pythonhosted.org/packages/a7/aa/e8946d0aa77d04eeb83c85b56cccfe3dba2efbe7453e15f4e98c805a382b/kinto_signer-3.3.7-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "b60ddf4865ccd88ef7ae9ffdf150aa9d", "sha256": "32643091efe3d733389b44e2e20e8f38fe7a37813c88ccc355794aa9a2394f8d" }, "downloads": -1, "filename": "kinto-signer-3.3.7.tar.gz", "has_sig": false, "md5_digest": "b60ddf4865ccd88ef7ae9ffdf150aa9d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 154483, "upload_time": "2018-11-20T20:38:44", "url": "https://files.pythonhosted.org/packages/2c/59/7a3f5c79a45bb60688e301b1a49bfee5644cb350a0924f60804b842b603b/kinto-signer-3.3.7.tar.gz" } ], "3.3.8": [ { "comment_text": "", "digests": { "md5": "d04a79b1f59d0c8e75cc9a31334199e9", "sha256": "5e0af9a1439f0757eab96f35c29cfd51623fa3bf843990db1ed46921bde3a76a" }, "downloads": -1, "filename": "kinto-signer-3.3.8.tar.gz", "has_sig": false, "md5_digest": "d04a79b1f59d0c8e75cc9a31334199e9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 156974, "upload_time": "2018-11-27T22:40:43", "url": "https://files.pythonhosted.org/packages/97/b3/d9801ba5a131c605c6def44188d6eb33f0b23d88b223d5efaeda9c00775d/kinto-signer-3.3.8.tar.gz" } ], "3.3.9": [ { "comment_text": "", "digests": { "md5": "9ae87773b0acff3846dbd93f42e08bab", "sha256": "6a829d73818541bac20248b502d3b29329b51912d47a2fdf10879041984000e6" }, "downloads": -1, "filename": "kinto_signer-3.3.9-py2-none-any.whl", "has_sig": false, "md5_digest": "9ae87773b0acff3846dbd93f42e08bab", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 59627, "upload_time": "2018-12-10T10:58:40", "url": "https://files.pythonhosted.org/packages/07/77/216e087a2268dbfecd5398960789312b5e8dbcc1054f8204b6ac3def08e8/kinto_signer-3.3.9-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "ab9cf4753f498eb206774c06d7e1df21", "sha256": "f55241d50ab015ed7d7dee4d4804a5b2fb70094caf0c29a15c761582dacd08e8" }, "downloads": -1, "filename": "kinto-signer-3.3.9.tar.gz", "has_sig": false, "md5_digest": "ab9cf4753f498eb206774c06d7e1df21", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 154663, "upload_time": "2018-12-10T10:58:37", "url": "https://files.pythonhosted.org/packages/b7/64/1fde9427827b4b32b3cc801d0ad97781c4b1029e95ff46dbf384c68a9bb6/kinto-signer-3.3.9.tar.gz" } ], "4.0.0": [ { "comment_text": "", "digests": { "md5": "0dce02575e0db23b21dc66f22b4c3db2", "sha256": "faba566976fbb2b72c8ac70b10eee409ddd5fddfff268b4dc229ca6ddb409979" }, "downloads": -1, "filename": "kinto_signer-4.0.0-py2-none-any.whl", "has_sig": false, "md5_digest": "0dce02575e0db23b21dc66f22b4c3db2", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 59936, "upload_time": "2019-01-22T22:11:19", "url": "https://files.pythonhosted.org/packages/f2/2a/7d4e39bcddd17ec86a8472d70bb8b704a3e8019dabe13c87cc2a774a6130/kinto_signer-4.0.0-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "2c36cff501b7ff701425ad56aabcb2bf", "sha256": "77d2d3b438bbb5446c4a1cf14b51dfb36d85353e24657cfad5e2cebc92590f82" }, "downloads": -1, "filename": "kinto-signer-4.0.0.tar.gz", "has_sig": false, "md5_digest": "2c36cff501b7ff701425ad56aabcb2bf", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 155013, "upload_time": "2019-01-22T22:11:16", "url": "https://files.pythonhosted.org/packages/4d/45/419357c4d984ed777863ddb647c211923426f4a0772b13c70d23c4eaea28/kinto-signer-4.0.0.tar.gz" } ], "4.0.1": [ { "comment_text": "", "digests": { "md5": "ea84782ea8a03609455857fe56838717", "sha256": "59d3e5d78e98f4c061f5035798163fb4ed249312bb9dbceaf7c5eba64b50d5a9" }, "downloads": -1, "filename": "kinto-signer-4.0.1.tar.gz", "has_sig": false, "md5_digest": "ea84782ea8a03609455857fe56838717", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 157649, "upload_time": "2019-01-30T20:40:24", "url": "https://files.pythonhosted.org/packages/4a/88/cfec899a89cd30353af03073db44495f326cabeb2002781fa76e6c8e4ad8/kinto-signer-4.0.1.tar.gz" } ], "5.0.0": [ { "comment_text": "", "digests": { "md5": "b3713a0ce4046b1cda1749af7e488342", "sha256": "d6df05cf2f63c286e736188502f6735e351c21d7c6d787ef5dfdd775fa984692" }, "downloads": -1, "filename": "kinto_signer-5.0.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "b3713a0ce4046b1cda1749af7e488342", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 60267, "upload_time": "2019-04-04T16:23:44", "url": "https://files.pythonhosted.org/packages/0e/55/28e03f27aea45374ba5498ffca08b53e9324ed04496c4e720bd988e01336/kinto_signer-5.0.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "f86b361405830dbe009c9d9eb57dc733", "sha256": "753e21e4196b0c5f4472f1e29ae04951f42e4241153f057b73d7d0d62ecd0fc1" }, "downloads": -1, "filename": "kinto-signer-5.0.0.tar.gz", "has_sig": false, "md5_digest": "f86b361405830dbe009c9d9eb57dc733", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 155465, "upload_time": "2019-04-04T16:23:41", "url": "https://files.pythonhosted.org/packages/63/92/271287c5e4cbe08a2965ec01b3ef90eb994e07e261a242c06051cfc047cb/kinto-signer-5.0.0.tar.gz" } ], "5.0.1": [ { "comment_text": "", "digests": { "md5": "baa8562857c3960cd76fb2c48c38bd77", "sha256": "df3e51fe82149aa83b3ce3d110a63f2eba125951bcca3229897a12c1ffdcf560" }, "downloads": -1, "filename": "kinto_signer-5.0.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "baa8562857c3960cd76fb2c48c38bd77", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 60164, "upload_time": "2019-07-26T10:28:22", "url": "https://files.pythonhosted.org/packages/ad/f6/9264cfc075734395593f1367467fe06f6a3c7f23a97f98e531435e186738/kinto_signer-5.0.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "52ce907546252d5396282e2079df7e11", "sha256": "12729c2b9857a6a7ad8320438168faa2f9c6c44e68967e7d5016a79825de9c7c" }, "downloads": -1, "filename": "kinto-signer-5.0.1.tar.gz", "has_sig": false, "md5_digest": "52ce907546252d5396282e2079df7e11", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 155431, "upload_time": "2019-07-26T10:28:25", "url": "https://files.pythonhosted.org/packages/e0/33/a9b6425661485a34a0ff01c3aaa6fa925d5ed9ae6f3d1507d0afbae373b8/kinto-signer-5.0.1.tar.gz" } ], "5.1.0": [ { "comment_text": "", "digests": { "md5": "23cc2c23d85603baa1e40b5580ee3107", "sha256": "aa2cbc01acc6831228ce9aff7ff6a222b58714804d05129296c29f54e302c357" }, "downloads": -1, "filename": "kinto_signer-5.1.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "23cc2c23d85603baa1e40b5580ee3107", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 61912, "upload_time": "2019-08-27T13:40:35", "url": "https://files.pythonhosted.org/packages/f8/2d/16730cfa74405cd4c47028f69537eef9ca60cb2d3a500dfb4e4d1056413a/kinto_signer-5.1.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "39a30147618c0fc5f30d6b2d831e4839", "sha256": "76c3c7b4324b28c8299a6eb6c55fabaee2ca9ac4ce4583e423248cca789ab3c9" }, "downloads": -1, "filename": "kinto-signer-5.1.0.tar.gz", "has_sig": false, "md5_digest": "39a30147618c0fc5f30d6b2d831e4839", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 157378, "upload_time": "2019-08-27T13:40:49", "url": "https://files.pythonhosted.org/packages/5b/69/a90ecbb8718c19fa10dc29d8597867a701fd64e3be4460587883c09ab21b/kinto-signer-5.1.0.tar.gz" } ], "5.2.0": [ { "comment_text": "", "digests": { "md5": "c1ba2314d866c8a0e97eb0b2a2c7b72e", "sha256": "40678f3a88e9c6dd9022f4f3a61c3bf887f042e3eb6f4468bc42f800fa80dfd0" }, "downloads": -1, "filename": "kinto_signer-5.2.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "c1ba2314d866c8a0e97eb0b2a2c7b72e", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 63117, "upload_time": "2019-09-26T14:18:31", "url": "https://files.pythonhosted.org/packages/a9/b7/398ce327eed557482ae1c07e36bb7450e9458b73b6dfdc5d2566bfed8a08/kinto_signer-5.2.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "c981655f8c73fd35228168c242297dba", "sha256": "96503bd62b410cf1b3df17dc5c1e88a30ec9ab11172547e6944fc88ebd91696e" }, "downloads": -1, "filename": "kinto-signer-5.2.0.tar.gz", "has_sig": false, "md5_digest": "c981655f8c73fd35228168c242297dba", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 158541, "upload_time": "2019-09-26T14:18:26", "url": "https://files.pythonhosted.org/packages/59/ef/2d299214ce6c04636bcfc667ca064d2690200245368d7ee703fd65e13315/kinto-signer-5.2.0.tar.gz" } ], "5.2.1": [ { "comment_text": "", "digests": { "md5": "0f943ab6dae1122ee702e9e9021d30ff", "sha256": "6f2f65158bb038f9bdac73e8a4bdc4f4086a014d5b78478c641cd11720a335d3" }, "downloads": -1, "filename": "kinto_signer-5.2.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "0f943ab6dae1122ee702e9e9021d30ff", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 63157, "upload_time": "2019-10-03T13:59:12", "url": "https://files.pythonhosted.org/packages/4c/01/16bca9f0c07caba09d662e7706d5afba857448b126f0d854a1aae247965d/kinto_signer-5.2.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "8ab5d99e744f30fedf4ec0e4674ea96b", "sha256": "a4eb035c1d2b0ce2fdc0edaf8b334f840beeeb5a566514d89606e5505d192c59" }, "downloads": -1, "filename": "kinto-signer-5.2.1.tar.gz", "has_sig": false, "md5_digest": "8ab5d99e744f30fedf4ec0e4674ea96b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 158596, "upload_time": "2019-10-03T13:59:15", "url": "https://files.pythonhosted.org/packages/ec/87/076534974e3187e021f1611f04abed5be95d6fdfd3fae2da8d9a21ddc8d5/kinto-signer-5.2.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "0f943ab6dae1122ee702e9e9021d30ff", "sha256": "6f2f65158bb038f9bdac73e8a4bdc4f4086a014d5b78478c641cd11720a335d3" }, "downloads": -1, "filename": "kinto_signer-5.2.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "0f943ab6dae1122ee702e9e9021d30ff", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 63157, "upload_time": "2019-10-03T13:59:12", "url": "https://files.pythonhosted.org/packages/4c/01/16bca9f0c07caba09d662e7706d5afba857448b126f0d854a1aae247965d/kinto_signer-5.2.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "8ab5d99e744f30fedf4ec0e4674ea96b", "sha256": "a4eb035c1d2b0ce2fdc0edaf8b334f840beeeb5a566514d89606e5505d192c59" }, "downloads": -1, "filename": "kinto-signer-5.2.1.tar.gz", "has_sig": false, "md5_digest": "8ab5d99e744f30fedf4ec0e4674ea96b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 158596, "upload_time": "2019-10-03T13:59:15", "url": "https://files.pythonhosted.org/packages/ec/87/076534974e3187e021f1611f04abed5be95d6fdfd3fae2da8d9a21ddc8d5/kinto-signer-5.2.1.tar.gz" } ] }