{ "info": { "author": "Ahmed Hosny Ibrahim", "author_email": "me@ahmedhosnycs.com", "bugtrack_url": null, "classifiers": [ "Environment :: Web Environment", "Framework :: Django", "Framework :: Django :: 2.0", "Intended Audience :: Developers", "License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Topic :: Internet", "Topic :: Internet :: WWW/HTTP", "Topic :: Internet :: WWW/HTTP :: WSGI :: Application", "Topic :: Security" ], "description": "===============================================\nDRF Simple API Signing (SASigning) Introduction\n===============================================\n\nSTATUS\n^^^^^^\n\n* First Release (29 July 2018)\n\nAPI Signing Benefits\n--------------------\n\n1. Identity Verification: You are sure that the request is coming from who you are expecting.\n2. You are sure that the message is not altered in communication channels.\n3. You can prevent relay attack (optional).\n\nAPI Signing Workflow\n--------------------\n\nPseudo code explaining steps of API Signing Check in API::\n\n 1. Read a signature from header.\n 2. Construct the message. It may consist of \n * Secret Key\n * Request Method (PUT, GET, POST, ..)\n * URL Endpoint.\n * Request Body.\n * other arguments\n those parameters are concatenated and separated by **delimeter** symbol.\n 3. Hash it with SHA256 using the Secret Key.\n\n\nWhat SASigning Do?\n------------------\n\nSASigning provides an easy way to configure your API to accept, check and define signatures.\nIt allows you to review plugin the signature checking in your flow.\n\n\n========================\nSASIGNING DOCUMENTATION\n========================\n\n* Visit Docs_.\n\n.. _Docs: https://readthedocs.org/\n\n\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "", "keywords": "api_signing,simple_api_signing,django", "license": "GNU GENERAL PUBLIC LICENSE", "maintainer": "", "maintainer_email": "", "name": "drf-simple-api-signing", "package_url": "https://pypi.org/project/drf-simple-api-signing/", "platform": "", "project_url": "https://pypi.org/project/drf-simple-api-signing/", "project_urls": null, "release_url": "https://pypi.org/project/drf-simple-api-signing/1.0.2/", "requires_dist": [ "django (>=1.10.0)", "djangorestframework (>=3.0.0)" ], "requires_python": "", "summary": "A simple Django package to facilitate request signing.", "version": "1.0.2" }, "last_serial": 4162310, "releases": { "1.0.1": [ { "comment_text": "", "digests": { "md5": "fe43f9d4419c5c7a7c567667f11d0c6a", "sha256": "fa834fef9af2e8d84c8a7fa21dd7eef3c8eaccf8c0391a4d3bb3a6d7cc6d79aa" }, "downloads": -1, "filename": "drf_simple_api_signing-1.0.1-py3-none-any.whl", "has_sig": false, "md5_digest": "fe43f9d4419c5c7a7c567667f11d0c6a", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 8170, "upload_time": "2018-07-29T19:47:46", "url": "https://files.pythonhosted.org/packages/76/7b/22e6c645331753f1f02ebfbbb27064458ce850e77aed2cc61d2eeca439e9/drf_simple_api_signing-1.0.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "3dc498775bb58d0f808569c27d5ea6fa", "sha256": "cefd67bfd5b0fbf93c7bf838cb2043bf7cffbc4b08d0422f9df8e245bbcb4f68" }, "downloads": -1, "filename": "drf-simple-api-signing-1.0.1.tar.gz", "has_sig": false, "md5_digest": "3dc498775bb58d0f808569c27d5ea6fa", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19871, "upload_time": "2018-07-29T19:47:47", "url": "https://files.pythonhosted.org/packages/30/79/2b0a385d4a3aa7ecb079d2add35af1b87235afde88ca25d275aba4c67fbb/drf-simple-api-signing-1.0.1.tar.gz" } ], "1.0.2": [ { "comment_text": "", "digests": { "md5": "e151f59eda3adfacbb08bf29a95dac60", "sha256": "92abe690b3e4795334757815bbcf83e4cf7098f9230769638514a7a84f984269" }, "downloads": -1, "filename": "drf_simple_api_signing-1.0.2-py3-none-any.whl", "has_sig": false, "md5_digest": "e151f59eda3adfacbb08bf29a95dac60", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 6982, "upload_time": "2018-08-12T18:51:46", "url": "https://files.pythonhosted.org/packages/86/ef/710ceee1b3075a56a302cd9fb2e026848dacaf38160c0bde36941769dfa4/drf_simple_api_signing-1.0.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "f1dbd42c02ca40161f01ceefa3410544", "sha256": "43101eb378c87bc64e443fe0251455b842d0ad21326f4753ec280c41022cbbf7" }, "downloads": -1, "filename": "drf-simple-api-signing-1.0.2.tar.gz", "has_sig": false, "md5_digest": "f1dbd42c02ca40161f01ceefa3410544", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 207717, "upload_time": "2018-08-12T18:51:48", "url": "https://files.pythonhosted.org/packages/d2/ae/77c35e3bb1d916347dfc9a0d9ac4b31e3631418f9a7660d7238fed954b91/drf-simple-api-signing-1.0.2.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "e151f59eda3adfacbb08bf29a95dac60", "sha256": "92abe690b3e4795334757815bbcf83e4cf7098f9230769638514a7a84f984269" }, "downloads": -1, "filename": "drf_simple_api_signing-1.0.2-py3-none-any.whl", "has_sig": false, "md5_digest": "e151f59eda3adfacbb08bf29a95dac60", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 6982, "upload_time": "2018-08-12T18:51:46", "url": "https://files.pythonhosted.org/packages/86/ef/710ceee1b3075a56a302cd9fb2e026848dacaf38160c0bde36941769dfa4/drf_simple_api_signing-1.0.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "f1dbd42c02ca40161f01ceefa3410544", "sha256": "43101eb378c87bc64e443fe0251455b842d0ad21326f4753ec280c41022cbbf7" }, "downloads": -1, "filename": "drf-simple-api-signing-1.0.2.tar.gz", "has_sig": false, "md5_digest": "f1dbd42c02ca40161f01ceefa3410544", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 207717, "upload_time": "2018-08-12T18:51:48", "url": "https://files.pythonhosted.org/packages/d2/ae/77c35e3bb1d916347dfc9a0d9ac4b31e3631418f9a7660d7238fed954b91/drf-simple-api-signing-1.0.2.tar.gz" } ] }