{ "info": { "author": "https://www.updateframework.com", "author_email": "theupdateframework@googlegroups.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Intended Audience :: Developers", "License :: OSI Approved :: Apache Software License", "License :: OSI Approved :: MIT License", "Natural Language :: English", "Operating System :: MacOS :: MacOS X", "Operating System :: Microsoft :: Windows", "Operating System :: POSIX", "Operating System :: POSIX :: Linux", "Programming Language :: Python", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: Implementation :: CPython", "Topic :: Security", "Topic :: Software Development" ], "description": "# \"TUF\"/ A Framework for Securing Software Update Systems\n\n[![Travis-CI](https://travis-ci.org/theupdateframework/tuf.svg?branch=develop)](https://travis-ci.org/theupdateframework/tuf)\n[![Coveralls](https://coveralls.io/repos/theupdateframework/tuf/badge.svg?branch=develop)](https://coveralls.io/r/theupdateframework/tuf?branch=develop)\n[![PyUp](https://pyup.io/repos/github/theupdateframework/tuf/shield.svg)](https://pyup.io/repos/github/theupdateframework/tuf/)\n[![Python 3](https://pyup.io/repos/github/theupdateframework/tuf/python-3-shield.svg)](https://pyup.io/repos/github/theupdateframework/tuf/)\n[![FOSSA Status](https://app.fossa.com/api/projects/custom%2B162%2Fgithub.com%2Ftheupdateframework%2Ftuf.svg?type=shield)](https://app.fossa.com/projects/custom%2B162%2Fgithub.com%2Ftheupdateframework%2Ftuf?ref=badge_shield)\n[![CII](https://bestpractices.coreinfrastructure.org/projects/1351/badge)](https://bestpractices.coreinfrastructure.org/projects/1351)\n\n----------------------------\nThis repository is the **reference implementation** of\n[The Update Framework (TUF)](https://theupdateframework.github.io/).\nIt is written in Python and intended to conform to version 1.0 of the\n[TUF specification](https://github.com/theupdateframework/specification/blob/master/tuf-spec.md).\nThis implementation is in use in production systems, but is also intended to be\na readable guide and demonstration for those working on implementing TUF in\ntheir own languages, environments, or update systems.\n\n\nAbout The Update Framework\n--------------------------\nThe Update Framework (TUF) design helps developers maintain the security of a\nsoftware update system, even against attackers that compromise the repository\nor signing keys.\nTUF provides a flexible\n[specification](https://github.com/theupdateframework/specification/blob/master/tuf-spec.md)\ndefining functionality that developers can use in any software update system or\nre-implement to fit their needs.\n\nTUF is hosted by the [Linux Foundation](https://www.linuxfoundation.org/) as\npart of the [Cloud Native Computing Foundation](https://www.cncf.io/) (CNCF)\nand its design is [used in production](docs/ADOPTERS.md) by companies such as Cloudflare,\nDatadog, DigitalOcean, Docker, Flynn, IBM, Kolide, LEAP, Microsoft, RedHat,\nand VMware. A variant of TUF called [Uptane](https://uptane.github.io/) is\nwidely used to secure over-the-air updates in automobiles.\n\nPlease see the [TUF Introduction](docs/OVERVIEW.rst) and\n[TUF's website](https://theupdateframework.com/) for more information about TUF!\n\n\nDocumentation\n-------------\n* [Introduction to TUF's Design](docs/OVERVIEW.rst)\n* [The TUF Specification](https://github.com/theupdateframework/specification/blob/master/tuf-spec.md)\n* [Getting Started with the TUF Reference Implementation](docs/GETTING_STARTED.rst)\n* [Governance](docs/GOVERNANCE.md) and [Maintainers](docs/MAINTAINERS.txt)\nfor the reference implementation\n* [Miscellaneous Docs](docs/)\n\n\nContact\n-------\nPlease contact us via our [mailing\nlist](https://groups.google.com/forum/?fromgroups#!forum/theupdateframework).\nQuestions, feedback, and suggestions are welcomed on this low volume mailing\nlist.\n\nWe strive to make the specification easy to implement, so if you come across\nany inconsistencies or experience any difficulty, do let us know by sending an\nemail, or by reporting an issue in the GitHub [specification\nrepo](https://github.com/theupdateframework/specification/issues).\n\nSecurity Issues and Bugs\n------------------------\n\nSecurity issues can be reported by emailing jcappos@nyu.edu.\n\nAt a minimum, the report must contain the following:\n\n* Description of the vulnerability.\n* Steps to reproduce the issue.\n\nOptionally, reports that are emailed can be encrypted with PGP. You should use\nPGP key fingerprint **E9C0 59EC 0D32 64FA B35F 94AD 465B F9F6 F8EB 475A**.\n\nPlease do not use the GitHub issue tracker to submit vulnerability reports.\nThe issue tracker is intended for bug reports and to make feature requests.\nMajor feature requests, such as design changes to the specification, should\nbe proposed via a [TUF Augmentation Proposal](docs/TAP.rst) (TAP).\n\nLicense\n-------\n\nThis work is [dual-licensed](https://en.wikipedia.org/wiki/Multi-licensing) and\ndistributed under the (1) MIT License and (2) Apache License, Version 2.0.\nPlease see [LICENSE-MIT](LICENSE-MIT) and [LICENSE](LICENSE).\n\n\nAcknowledgements\n----------------\n\nThis project is managed by Prof. [Justin\nCappos](https://ssl.engineering.nyu.edu/personalpages/jcappos/) and other\nmembers of the [Secure Systems Lab](https://ssl.engineering.nyu.edu/) at [New\nYork University](https://engineering.nyu.edu/). We appreciate the efforts of\nKonstantin Andrianov, Geremy Condra, Vladimir Diaz, Yuyu Zheng, Sebastien Awwad,\nSantiago Torres-Arias, Trishank Kuppusamy, Zane Fisher, Pankhuri Goyal, Tian Tian,\nKonstantin Andrianov, and Justin Samuel who are among those who helped significantly \nwith TUF's reference implementation. [Contributors](https://github.com/theupdateframework/tuf/blob/develop/docs/AUTHORS.txt)\nand\n[maintainers](https://github.com/theupdateframework/tuf/blob/develop/docs/MAINTAINERS.txt)\nare governed by the [CNCF Community Code of\nConduct](https://github.com/cncf/foundation/blob/master/code-of-conduct.md).\n\nThis material is based upon work supported by the National Science Foundation\nunder Grant Nos. CNS-1345049 and CNS-0959138. Any opinions, findings, and\nconclusions or recommendations expressed in this material are those of the\nauthor(s) and do not necessarily reflect the views of the National Science\nFoundation.\n\n\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://www.updateframework.com", "keywords": "update updater secure authentication key compromise revocation", "license": "", "maintainer": "", "maintainer_email": "", "name": "tuf", "package_url": "https://pypi.org/project/tuf/", "platform": "", "project_url": "https://pypi.org/project/tuf/", "project_urls": { "Homepage": "https://www.updateframework.com" }, "release_url": "https://pypi.org/project/tuf/0.12.0/", "requires_dist": [ "iso8601 (>=0.1.12)", "requests (>=2.19.1)", "six (>=1.11.0)", "securesystemslib (>=0.12.0)" ], "requires_python": "", "summary": "A secure updater framework for Python", "version": "0.12.0" }, "last_serial": 5975595, "releases": { "0.10.0": [ { "comment_text": "", "digests": { "md5": "5cbca9666b28862599aefc60c9364e20", "sha256": "34042699053ded003c7029c4c450f7ba464cb3a154c4947002432471b392f73e" }, "downloads": -1, "filename": "tuf-0.10.0.tar.gz", "has_sig": false, "md5_digest": "5cbca9666b28862599aefc60c9364e20", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1719235, "upload_time": "2016-01-22T16:52:39", "url": "https://files.pythonhosted.org/packages/cb/bf/5f487c9f8a1ccdb709b1ce9763a8a53cff9452411e636c3419e190e16734/tuf-0.10.0.tar.gz" }, { "comment_text": "", "digests": { "md5": "d42a095e15be2cfcbda9f0f416f44ef0", "sha256": "17c35f7925b3e5b85c431623e4fe23aa2cbf615cbdbd93073b7c6c885794f6ff" }, "downloads": -1, "filename": "tuf-0.10.0.zip", "has_sig": false, "md5_digest": "d42a095e15be2cfcbda9f0f416f44ef0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1823902, "upload_time": "2016-01-22T16:52:49", "url": "https://files.pythonhosted.org/packages/0b/f8/5f04fc8d49db729602e0e99286f430764f99c9c346b4c994b0e775c980d8/tuf-0.10.0.zip" } ], "0.10.1": [ { "comment_text": "", "digests": { "md5": "e9c13b38b5de740296c9908a6b1163d8", "sha256": "fbbd0f061688932e8343d0b2619083bcde6159270b6c0cc229816ae53349af4d" }, "downloads": -1, "filename": "tuf-0.10.1-py2.py3-none-any.whl", "has_sig": true, "md5_digest": "e9c13b38b5de740296c9908a6b1163d8", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 151006, "upload_time": "2017-11-13T22:20:13", "url": "https://files.pythonhosted.org/packages/80/8b/33b2f4f52b5b04b8fdda54122102e13dfe5aa7058b4cd4e0cdcc87ebb0f0/tuf-0.10.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "c39ae632c14b328d48d98dd9199fbb83", "sha256": "6c6b7d570697046e2520cf17f9439294c71533a721c91675db04ff5e204d797d" }, "downloads": -1, "filename": "tuf-0.10.1.tar.gz", "has_sig": true, "md5_digest": "c39ae632c14b328d48d98dd9199fbb83", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2682615, "upload_time": "2017-11-13T22:20:17", "url": "https://files.pythonhosted.org/packages/bc/20/06fcba6c7a187041460836f68f8d30f18b2100cbe03312e2b7eaf56f5fa1/tuf-0.10.1.tar.gz" } ], "0.10.2": [ { "comment_text": "", "digests": { "md5": "46d10f4da6a8485ecb13f47c9bc9bd89", "sha256": "857f8278106020d1b3141ea68f8d82c86862057dd7887121ecc6ccf7e316d955" }, "downloads": -1, "filename": "tuf-0.10.2-py2.py3-none-any.whl", "has_sig": true, "md5_digest": "46d10f4da6a8485ecb13f47c9bc9bd89", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 132400, "upload_time": "2018-01-31T23:03:11", "url": "https://files.pythonhosted.org/packages/fb/bd/1c394469efa2515c87e814bb7e5b19d1620da81735324abfeccaf32c60d7/tuf-0.10.2-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "3e23942fff337eaa36809dd9d886c325", "sha256": "9930ef6ffc1853a37f975b84607ba8ab1a60a33cf43a9ff82b620a67a4184009" }, "downloads": -1, "filename": "tuf-0.10.2.tar.gz", "has_sig": true, "md5_digest": "3e23942fff337eaa36809dd9d886c325", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2716070, "upload_time": "2018-01-31T23:03:13", "url": "https://files.pythonhosted.org/packages/f5/7b/2a5b7ecc1f5c03433daac3740c9cb4dd9c07c6c272a85c4e5ecc118f99f3/tuf-0.10.2.tar.gz" } ], "0.11.0": [ { "comment_text": "", "digests": { "md5": "f73f0150fb1006d52e44d29467a37bf2", "sha256": "6c3294c1abec2ef1a632a90f36e289959f6bb7191ebc8c4ecfb160938e454245" }, "downloads": -1, "filename": "tuf-0.11.0-py2.py3-none-any.whl", "has_sig": true, "md5_digest": "f73f0150fb1006d52e44d29467a37bf2", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 148030, "upload_time": "2018-04-30T19:34:24", "url": "https://files.pythonhosted.org/packages/28/ea/420dd645d8d46dc5c7df073606417a246bcadc672b8d385ef07962c39ca7/tuf-0.11.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "0cad4f3524cd050728a2005f6caa5beb", "sha256": "0923316555802df799a8a26f2a192dc3b10818f72157d1e03c870f94dd156aa8" }, "downloads": -1, "filename": "tuf-0.11.0.tar.gz", "has_sig": true, "md5_digest": "0cad4f3524cd050728a2005f6caa5beb", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2723870, "upload_time": "2018-04-30T19:34:27", "url": "https://files.pythonhosted.org/packages/76/5f/8782656c171c28df0240fa706a3ef34013eb176aae7dd78426a8daabbb23/tuf-0.11.0.tar.gz" } ], "0.11.1": [ { "comment_text": "", "digests": { "md5": "99f2ff3b95491e1328c9d5efb87e9b9a", "sha256": "c6adc104dfb0b7796704be93473e806fc4122ee41ba16d1cf39a248536f30513" }, "downloads": -1, "filename": "tuf-0.11.1-py2.py3-none-any.whl", "has_sig": true, "md5_digest": "99f2ff3b95491e1328c9d5efb87e9b9a", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 149239, "upload_time": "2018-06-19T21:44:27", "url": "https://files.pythonhosted.org/packages/79/ca/181576ead044b54c8ca364840bbec0c8ebb453495033df4bce2fb152f97d/tuf-0.11.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "c26ef0f0bda6e2dbfa4ed0160e0625d4", "sha256": "65d5f87a41830494bf585f8a5082618ab26015d156a67f23e37552419e427cf1" }, "downloads": -1, "filename": "tuf-0.11.1.tar.gz", "has_sig": true, "md5_digest": "c26ef0f0bda6e2dbfa4ed0160e0625d4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2726141, "upload_time": "2018-06-19T21:44:28", "url": "https://files.pythonhosted.org/packages/32/d5/3d47ee1ea1253d3916fdd9ea6d98da985bdec4b2526bcac05969382be281/tuf-0.11.1.tar.gz" } ], "0.11.2.dev1": [ { "comment_text": "", "digests": { "md5": "2a8fce467db67c383a8b38affaddd61b", "sha256": "1d209c1b36812b6f0765c9ae1f4f215337d17222cf5d402a5fcd40d60fa4649c" }, "downloads": -1, "filename": "tuf-0.11.2.dev1-py2.py3-none-any.whl", "has_sig": true, "md5_digest": "2a8fce467db67c383a8b38affaddd61b", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 154804, "upload_time": "2018-10-03T16:13:55", "url": "https://files.pythonhosted.org/packages/b2/d8/2600772351d4da07fd4414cf6e6ea696265ac4124cc9003e21a54c75e2b3/tuf-0.11.2.dev1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "59a2166e777cd3a73af7f0f1d8d28830", "sha256": "78f5a2416cd5ae699e9f73966b9cf5a5c0158d00b08aa3de89ebeb7e33c167a7" }, "downloads": -1, "filename": "tuf-0.11.2.dev1.tar.gz", "has_sig": true, "md5_digest": "59a2166e777cd3a73af7f0f1d8d28830", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2738983, "upload_time": "2018-10-03T16:13:57", "url": "https://files.pythonhosted.org/packages/a6/a0/5eecb0a1bfbe040f14def9028ff3a87d99120d13060167a97997c9e7d939/tuf-0.11.2.dev1.tar.gz" } ], "0.11.2.dev2": [ { "comment_text": "", "digests": { "md5": "ffd1c1ae115570d6ff538954d5bab61b", "sha256": "8c3006a48e9316d8dc6635d9c02ed9b671c97ee7270beddc465af5a4c7b1822b" }, "downloads": -1, "filename": "tuf-0.11.2.dev2-py2.py3-none-any.whl", "has_sig": true, "md5_digest": "ffd1c1ae115570d6ff538954d5bab61b", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 154828, "upload_time": "2018-11-05T21:50:14", "url": "https://files.pythonhosted.org/packages/98/ed/3c84105d4f750be315532e53979ffb1b4b107a115e7edbfed0cd12d8a95b/tuf-0.11.2.dev2-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "2848711c0839ee9cc06b7e8b60e388b8", "sha256": "575d4d4a11fb939cb92ad08e47b3ebe3371df598f8a0e11df16aacf40e9fe66c" }, "downloads": -1, "filename": "tuf-0.11.2.dev2.tar.gz", "has_sig": true, "md5_digest": "2848711c0839ee9cc06b7e8b60e388b8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2748582, "upload_time": "2018-11-05T21:50:15", "url": "https://files.pythonhosted.org/packages/80/7d/1ad888f7e896a72f70d3dfc7581c27a0a587d10e9c78cbf2ba5337ec9c99/tuf-0.11.2.dev2.tar.gz" } ], "0.11.2.dev3": [ { "comment_text": "", "digests": { "md5": "053f890ed98756e73ef18c7052b0d9e4", "sha256": "a40b3acb0a65562bd7f416a32f6ced74caae9a64707be409db43232f98d90d20" }, "downloads": -1, "filename": "tuf-0.11.2.dev3-py2.py3-none-any.whl", "has_sig": true, "md5_digest": "053f890ed98756e73ef18c7052b0d9e4", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 156849, "upload_time": "2019-01-10T17:12:47", "url": "https://files.pythonhosted.org/packages/ec/85/d5fb2e0cd16450fb916efe6b7f0c7a517d76bf714b8832baf38e2a941a74/tuf-0.11.2.dev3-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "eb7dc6161c3f0248fda0db426c15b5cf", "sha256": "7c1e8169b29cbbe34b0817257a95101a9e003d4245d393827bfb90f4ada074a4" }, "downloads": -1, "filename": "tuf-0.11.2.dev3.tar.gz", "has_sig": true, "md5_digest": "eb7dc6161c3f0248fda0db426c15b5cf", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2750106, "upload_time": "2019-01-10T17:12:49", "url": "https://files.pythonhosted.org/packages/7f/f7/1f3ee4c56a9360cf1a9201465062f19cb238c13e65ba76d3b0d478b94938/tuf-0.11.2.dev3.tar.gz" } ], "0.11.dev0": [ { "comment_text": "", "digests": { "md5": "cffd5089471d7fec4b749080ad3e5bd1", "sha256": "fa22d03bbcd02271a5a381573f16a9a0e6d87cbb57052a6c8f60f95dc90a5c05" }, "downloads": -1, "filename": "tuf-0.11.dev0-py2.py3-none-any.whl", "has_sig": true, "md5_digest": "cffd5089471d7fec4b749080ad3e5bd1", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 137946, "upload_time": "2018-04-13T18:02:01", "url": "https://files.pythonhosted.org/packages/cd/16/21f0074ed1ca048af55c2fdd7335039742784a52d50ede3e6c91c318139a/tuf-0.11.dev0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "bf27dcc44b6010bb8c3900429a68d555", "sha256": "85211524d01fd96fae285e5299e44e0ffadaec3d880624954639e9a48f06ccca" }, "downloads": -1, "filename": "tuf-0.11.dev0.tar.gz", "has_sig": true, "md5_digest": "bf27dcc44b6010bb8c3900429a68d555", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2721314, "upload_time": "2018-04-13T18:02:03", "url": "https://files.pythonhosted.org/packages/71/b3/ba7fc214913780090d7035158a89c4dca162acc7ebfec2e8cb26b136113f/tuf-0.11.dev0.tar.gz" } ], "0.12.0": [ { "comment_text": "", "digests": { "md5": "da5be3c66398c02bb17730bb4f0b9d6c", "sha256": "c62297ffbbeec0f4dbffca80ff7468dd380d446f0a4ed466a23d0d71ff2f795b" }, "downloads": -1, "filename": "tuf-0.12.0-py2.py3-none-any.whl", "has_sig": true, "md5_digest": "da5be3c66398c02bb17730bb4f0b9d6c", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 156836, "upload_time": "2019-10-15T08:38:32", "url": "https://files.pythonhosted.org/packages/e2/0a/c2c7759ef465c4e38a4cea988250946efcaddd1745df370694a5b18f40d6/tuf-0.12.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "9cfc0ea8a930dc7b0c347c6acad37565", "sha256": "f555723cec03a559241acbb02af87dea3b67adb5f79e920f82f08321a926d34f" }, "downloads": -1, "filename": "tuf-0.12.0.tar.gz", "has_sig": true, "md5_digest": "9cfc0ea8a930dc7b0c347c6acad37565", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2744557, "upload_time": "2019-10-15T08:38:37", "url": "https://files.pythonhosted.org/packages/ad/f8/411083df921e49c6cc410fcae47c68995075ce4bddd90f2a38af5f1ca360/tuf-0.12.0.tar.gz" } ], "0.12.dev0": [ { "comment_text": "", "digests": { "md5": "3516e371937fd69f3fbc51e461a63d68", "sha256": "cce7181674b2781a26fdf7fe5bc5c92f64ad46b4eed67e1a85c89cefee0398c5" }, "downloads": -1, "filename": "tuf-0.12.dev0-py2.py3-none-any.whl", "has_sig": true, "md5_digest": "3516e371937fd69f3fbc51e461a63d68", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 151295, "upload_time": "2018-06-04T20:41:22", "url": "https://files.pythonhosted.org/packages/0b/d4/78ae8f6503231b303ad0ba092dfa1556f366031a8e1b73b27dddef3a94ec/tuf-0.12.dev0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "eab9b6867000503edcefda16bd1a13af", "sha256": "4844f9a02f35e79abff77fd45f5a36553704372b290e338fffb0e7fbdc095c74" }, "downloads": -1, "filename": "tuf-0.12.dev0.tar.gz", "has_sig": true, "md5_digest": "eab9b6867000503edcefda16bd1a13af", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2723746, "upload_time": "2018-06-04T20:41:25", "url": "https://files.pythonhosted.org/packages/33/1b/d4a53277c3678b2b6038b63ed3d31ae5ba38223b121f497c0b68368de42c/tuf-0.12.dev0.tar.gz" } ], "0.12.dev1": [ { "comment_text": "", "digests": { "md5": "f458e9ec748f6477f68777f05a115912", "sha256": "ec990b4300ba47e06c08bbbbceb26632061259dcae347b54ddae981f2c01cb31" }, "downloads": -1, "filename": "tuf-0.12.dev1-py2.py3-none-any.whl", "has_sig": true, "md5_digest": "f458e9ec748f6477f68777f05a115912", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 148821, "upload_time": "2018-06-13T21:14:45", "url": "https://files.pythonhosted.org/packages/89/d4/a4df3225134d6a92ea41d5141321e332cfeee47c86c00a638b41a2d0e4b8/tuf-0.12.dev1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "417c37bfe41e411927eed40a5216469a", "sha256": "d0903f99463da84a5ab7fc74124a5ecb47e2d0914221efdfa084a216fa911bc3" }, "downloads": -1, "filename": "tuf-0.12.dev1.tar.gz", "has_sig": true, "md5_digest": "417c37bfe41e411927eed40a5216469a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2724967, "upload_time": "2018-06-13T21:14:48", "url": "https://files.pythonhosted.org/packages/17/74/88347028270177b1ffc6603895e041a6dd6398f54a7a09eef71913751776/tuf-0.12.dev1.tar.gz" } ], "0.12.dev2": [ { "comment_text": "", "digests": { "md5": "7985d590d0aa611a12ebca50889cce51", "sha256": "323df14762c7547517c78e921f39c499724537328b4da18c47e5201e0dc04070" }, "downloads": -1, "filename": "tuf-0.12.dev2-py2.py3-none-any.whl", "has_sig": true, "md5_digest": "7985d590d0aa611a12ebca50889cce51", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 149287, "upload_time": "2018-06-18T17:16:43", "url": "https://files.pythonhosted.org/packages/ff/68/2553c9918fa41ae1d05df5b052f416e4044c487b1ad189cbc027da3cba6d/tuf-0.12.dev2-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "f44d0c389a45d4c3acb2406a7613f5af", "sha256": "0208adb6fd146599a262c5e30bffe007b6f63c7fe714e26b7519fa80ff370ae0" }, "downloads": -1, "filename": "tuf-0.12.dev2.tar.gz", "has_sig": true, "md5_digest": "f44d0c389a45d4c3acb2406a7613f5af", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2725823, "upload_time": "2018-06-18T17:16:45", "url": "https://files.pythonhosted.org/packages/c1/f4/b3aa6d830e1bb7ea16fc7091bf619dae62c021ecb978de3132e52d7bd21a/tuf-0.12.dev2.tar.gz" } ], "0.7.5": [ { "comment_text": "", "digests": { "md5": "ffd505371aa9615845170d97b921d11c", "sha256": "0ff8dd4ac8308e56058f1d06b9bdb77e9eb052103155f11b892bb6011bf668e7" }, "downloads": -1, "filename": "tuf-0.7.5.tar.gz", "has_sig": false, "md5_digest": "ffd505371aa9615845170d97b921d11c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 135174, "upload_time": "2013-09-27T01:38:49", "url": "https://files.pythonhosted.org/packages/a3/11/f61712012368503aeeb2a089625ed6b01fd9b6343d24505d45f6fff74b49/tuf-0.7.5.tar.gz" } ], "0.9.8": [ { "comment_text": "", "digests": { "md5": "b766bf9bc0ef781304d5173bf06f548e", "sha256": "abcf7cfd7e95bb39324f81eb4ce0b6bddc8fc73bcecc1da5b67875f2727f0d96" }, "downloads": -1, "filename": "tuf-0.9.8-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "b766bf9bc0ef781304d5173bf06f548e", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 196668, "upload_time": "2014-07-16T22:39:23", "url": "https://files.pythonhosted.org/packages/30/cf/f5f1c85b5436f16e68a8214a4999fd56479e49ae08051e7c55dac49d13e6/tuf-0.9.8-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "dc247ebc18b4e4d7b89327075f1f9c30", "sha256": "9127a9f6d7ef307624411cfb1976eba5e381925296fa33aabdeb2386c8f1d084" }, "downloads": -1, "filename": "tuf-0.9.8.tar.gz", "has_sig": false, "md5_digest": "dc247ebc18b4e4d7b89327075f1f9c30", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1689737, "upload_time": "2014-07-16T22:39:28", "url": "https://files.pythonhosted.org/packages/ca/d0/7ee06af8284fb34c28c476d5635f7977f5523d3938c079cc029e346fc1e3/tuf-0.9.8.tar.gz" } ], "0.9.9": [ { "comment_text": "", "digests": { "md5": "e3a7324bef1f075af4d94e9e73885d85", "sha256": "9a55de78634916a0912c86c90c70288df8aed569cb95bc4ada394439c2721c1f" }, "downloads": -1, "filename": "tuf-0.9.9-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "e3a7324bef1f075af4d94e9e73885d85", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 197248, "upload_time": "2014-07-23T15:40:42", "url": "https://files.pythonhosted.org/packages/a3/f2/70f74b3bf859fdd5af310240eb546294fb45cb698713f90593ee1c9628ee/tuf-0.9.9-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "775d7f32eb1d63a39a1adb55fe55dc0a", "sha256": "895975483d24bf35f62112ebd3e2cfcffa7966b08729c02217612f585a22cb3f" }, "downloads": -1, "filename": "tuf-0.9.9.tar.gz", "has_sig": false, "md5_digest": "775d7f32eb1d63a39a1adb55fe55dc0a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1693865, "upload_time": "2014-07-23T15:40:45", "url": "https://files.pythonhosted.org/packages/e3/1d/2f648e0ce7c307008437f0bcae3817d65e97f310a75b90b460db0104a859/tuf-0.9.9.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "da5be3c66398c02bb17730bb4f0b9d6c", "sha256": "c62297ffbbeec0f4dbffca80ff7468dd380d446f0a4ed466a23d0d71ff2f795b" }, "downloads": -1, "filename": "tuf-0.12.0-py2.py3-none-any.whl", "has_sig": true, "md5_digest": "da5be3c66398c02bb17730bb4f0b9d6c", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 156836, "upload_time": "2019-10-15T08:38:32", "url": "https://files.pythonhosted.org/packages/e2/0a/c2c7759ef465c4e38a4cea988250946efcaddd1745df370694a5b18f40d6/tuf-0.12.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "9cfc0ea8a930dc7b0c347c6acad37565", "sha256": "f555723cec03a559241acbb02af87dea3b67adb5f79e920f82f08321a926d34f" }, "downloads": -1, "filename": "tuf-0.12.0.tar.gz", "has_sig": true, "md5_digest": "9cfc0ea8a930dc7b0c347c6acad37565", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2744557, "upload_time": "2019-10-15T08:38:37", "url": "https://files.pythonhosted.org/packages/ad/f8/411083df921e49c6cc410fcae47c68995075ce4bddd90f2a38af5f1ca360/tuf-0.12.0.tar.gz" } ] }