{ "info": { "author": "Peter Sagerson", "author_email": "psagersDjwublJf@ignorare.net", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "License :: OSI Approved :: BSD License", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.2", "Programming Language :: Python :: 3.3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Topic :: Security" ], "description": "Salvage distributes sensitive data to multiple people such that it can only be\nrecovered by several people working together. This is useful for storing\ninformation with both a low risk of losing access to it and a low risk of\naccidental disclosure. A classic application is to create a \"recovery kit\" for a\nserver or infrastructure, which can be used in the event that conventionally\nstored keys and credentials become lost or unavailable.\n\nSalvage works by encrypting a file or directory with a random master key and\nthen applying a simple key-splitting scheme to distribute the key across\nmultiple shares. You can create a kit for any number of participants with any\nthreshold required to recover the information. For example, you might create a\nkit for five people, any three of whom may combine their shares to recover the\ndata.\n\nSalvage runs under Python 2.7 or Python 3.2 and later. The only external\ndependency is `gpg`_, for the cryptography. For maximum utility, it is packaged\nas a single flat Python script that can be run with no installation. The\nalgorithms and file formats are simple and carefully documented to ensure that\nrecovery is always possible even if this software is unavailable for some\nreason.\n\n\nInstallation\n------------\n\n ``$ pip install salvage``\n\nThis package will only install the ``salvage`` executable. It does not depend on\nany Python packages.\n\n\nQuick Start\n-----------\n\nTo create a new salvage kit for five participants with a recovery threshold of\nthree:\n\n ``% salvage new 5 3 path/to/source/dir``\n\nThis will create five shares, each containing an encrypted archive and some\nmetadata. To decrypt and unpack the archive:\n\n ``% salvage recover path/to/share1 path/to/share2 path/to/share3``\n\nThe three paths must be three of the shares generated in the first step. The\nmaster key will be reconstructed and the data will be decrypted and unpacked.\n\nSee ``salvage -h`` for additional options.\n\n\n.. _gpg: https://www.gnupg.org/", "description_content_type": null, "docs_url": "https://pythonhosted.org/salvage/", "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://bitbucket.org/psagers/salvage", "keywords": "", "license": "BSD", "maintainer": "", "maintainer_email": "", "name": "salvage", "package_url": "https://pypi.org/project/salvage/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/salvage/", "project_urls": { "Homepage": "https://bitbucket.org/psagers/salvage" }, "release_url": "https://pypi.org/project/salvage/0.1.3/", "requires_dist": null, "requires_python": "", "summary": "Allows a group of people to hold sensitive information using a simple secret-splitting scheme.", "version": "0.1.3" }, "last_serial": 1774993, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "12af0c5d425488fdf5a5e8f5ea508d85", "sha256": "15562b86e3f78c4ff9616bf850613934d749512731221a449c895d2071f25fbd" }, "downloads": -1, "filename": "salvage-0.1.0.tar.gz", "has_sig": true, "md5_digest": "12af0c5d425488fdf5a5e8f5ea508d85", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 23646, "upload_time": "2015-01-23T07:26:05", "url": "https://files.pythonhosted.org/packages/f8/8d/8315941528cab3aefe1a23838846bf2f6e6005d34c719ae935d0ea014cbb/salvage-0.1.0.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "a0b01efbbfb5e696bb58e228136a3084", "sha256": "98f7b340c8e01416519697a1b02e00754c07be586b8c2ce0336bb11a11c4626b" }, "downloads": -1, "filename": "salvage-0.1.1.tar.gz", "has_sig": true, "md5_digest": "a0b01efbbfb5e696bb58e228136a3084", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 24753, "upload_time": "2015-02-01T00:19:17", "url": "https://files.pythonhosted.org/packages/3d/76/adaded03c6b023ff897d39d84cb0b24799463c2db6b9ed10c2955390b898/salvage-0.1.1.tar.gz" } ], "0.1.2": [], "0.1.3": [ { "comment_text": "", "digests": { "md5": "825e606998bfe6954688d0b0e55db6de", "sha256": "6b6fe96c7f304202a4eeaa10596117c930305554baa8f2b00dac882df4082b97" }, "downloads": -1, "filename": "salvage-0.1.3-py2.py3-none-any.whl", "has_sig": true, "md5_digest": "825e606998bfe6954688d0b0e55db6de", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 17315, "upload_time": "2015-10-18T18:41:03", "url": "https://files.pythonhosted.org/packages/ce/c4/594c647ec6a5128be226ee5509ef4445beb4426be73338f6789d2fc0b06e/salvage-0.1.3-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "294dbcee15de8229f1a059c67b5f5968", "sha256": "4728f50e39c7ce33a745277ef48bd1510864ea095ce331e952ccb39690d224aa" }, "downloads": -1, "filename": "salvage-0.1.3.tar.gz", "has_sig": true, "md5_digest": "294dbcee15de8229f1a059c67b5f5968", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 98767, "upload_time": "2015-10-18T18:39:41", "url": "https://files.pythonhosted.org/packages/6f/e6/c297848380d3997e019cf0a0dc3e4b15d3e92f5e8890c05a456ce186dde6/salvage-0.1.3.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "825e606998bfe6954688d0b0e55db6de", "sha256": "6b6fe96c7f304202a4eeaa10596117c930305554baa8f2b00dac882df4082b97" }, "downloads": -1, "filename": "salvage-0.1.3-py2.py3-none-any.whl", "has_sig": true, "md5_digest": "825e606998bfe6954688d0b0e55db6de", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 17315, "upload_time": "2015-10-18T18:41:03", "url": "https://files.pythonhosted.org/packages/ce/c4/594c647ec6a5128be226ee5509ef4445beb4426be73338f6789d2fc0b06e/salvage-0.1.3-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "294dbcee15de8229f1a059c67b5f5968", "sha256": "4728f50e39c7ce33a745277ef48bd1510864ea095ce331e952ccb39690d224aa" }, "downloads": -1, "filename": "salvage-0.1.3.tar.gz", "has_sig": true, "md5_digest": "294dbcee15de8229f1a059c67b5f5968", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 98767, "upload_time": "2015-10-18T18:39:41", "url": "https://files.pythonhosted.org/packages/6f/e6/c297848380d3997e019cf0a0dc3e4b15d3e92f5e8890c05a456ce186dde6/salvage-0.1.3.tar.gz" } ] }