{ "info": { "author": "Felipe Dau", "author_email": "dau.felipe@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Environment :: Console", "Intended Audience :: Developers", "Intended Audience :: End Users/Desktop", "License :: OSI Approved :: MIT License", "Operating System :: POSIX :: Linux", "Programming Language :: Python :: 2.7", "Topic :: Security :: Cryptography" ], "description": "=======\nstretch\n=======\nstretch is a command line tool that uses `PBKDF2`_ from Python's `passlib`_ to\nderive a key, given a secret and a salt.\n\nInstallation\n------------\nYou can, of course, clone the repo or download the ``stretch.py`` script and\ncall it from its directory, but I'd rather have it \"installed\" so it can be\ncalled from anywhere. The easiest way to install it::\n\n [sudo] pip install stretch\n\nInstead, you could just copy the script to a convenient location::\n\n [sudo] curl https://raw.githubusercontent.com/felipedau/stretch/master/stretch/stretch.py -o /usr/local/bin/stretch\n\nFinally, stretch the secret ``foo`` with the salt ``bar`` using the defaults\n``hmac-sha512`` and ``10000`` rounds::\n\n $ stretch foo bar\n FUMV4GHTdgpdEbseRSkUNiTd6CYktCUr3XPqy+pp7cPk7R7Ho0L1JJDXMbcYQkA/gkWQ7BoSOtRcMnvnD8qqhg==\n\n+---------------------------------------+-------------------------------------+\n| Optional Arguments | Description |\n+=======================================+=====================================+\n| ``-h``, ``--help`` | show this help message and exit |\n+---------------------------------------+-------------------------------------+\n| ``-b BEGIN``, ``--begin BEGIN`` | define where to start slicing the |\n| | result (equivalent to |\n| | ``result[b:]``) |\n+---------------------------------------+-------------------------------------+\n| ``-e END``, ``--end END`` | define where to stop slicing the |\n| | result (equivalent to |\n| | ``result[:e]``) |\n+---------------------------------------+-------------------------------------+\n| ``-f {md5,sha1,sha256,sha512}``, | choose a pseudo-random family. |\n| ``--family {md5,sha1,sha256,sha512}`` | |\n+---------------------------------------+-------------------------------------+\n| ``-r ROUNDS``, | define the number of rounds to use |\n| ``--rounds ROUNDS`` | on the generation (an integer |\n| | greater than zero). (Default: |\n| | ``10000``) |\n+---------------------------------------+-------------------------------------+\n| ``-c``, ``--copy`` | copy the output to the clipboard by |\n| | piping it to xclip instead of |\n| | printing |\n+---------------------------------------+-------------------------------------+\n\n.. _`passlib`: https://pythonhosted.org/passlib\n.. _`pbkdf2`: https://pythonhosted.org/passlib/lib/passlib.utils.pbkdf2.html\n", "description_content_type": null, "docs_url": null, "download_url": null, "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/felipedau/stretch", "keywords": "PBKDF2 key derivation function password stretching", "license": "MIT", "maintainer": null, "maintainer_email": null, "name": "stretch", "package_url": "https://pypi.org/project/stretch/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/stretch/", "project_urls": { "Homepage": "https://github.com/felipedau/stretch" }, "release_url": "https://pypi.org/project/stretch/1.4/", "requires_dist": null, "requires_python": null, "summary": "PBKDF2 on the command line", "version": "1.4" }, "last_serial": 1812477, "releases": { "1.0": [ { "comment_text": "", "digests": { "md5": "9e7a913f2bd23c4213f799f4f23afe1d", "sha256": "2ca4112139e706d01c100c8dc96e7bcfcc4014d60c3026d38196ce4b2549bd07" }, "downloads": -1, "filename": "stretch-1.0.tar.gz", "has_sig": false, "md5_digest": "9e7a913f2bd23c4213f799f4f23afe1d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3042, "upload_time": "2015-07-21T22:38:01", "url": "https://files.pythonhosted.org/packages/75/ac/b789092ce658c4cfb612172b19e1d4ae0acd1c32f25322824338e91a2270/stretch-1.0.tar.gz" } ], "1.1": [ { "comment_text": "", "digests": { "md5": "576dc7fe8d6145a5a32c940ac6601617", "sha256": "705c50f4ee01d389a52ec6ff3d73bd3b3d3daee2ce795b236566b2c532d8bfb7" }, "downloads": -1, "filename": "stretch-1.1.tar.gz", "has_sig": false, "md5_digest": "576dc7fe8d6145a5a32c940ac6601617", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3009, "upload_time": "2015-07-21T23:23:25", "url": "https://files.pythonhosted.org/packages/b7/dc/458d034d9e443829f1152439d9b1151f1c6281e90716d550ac43740d0015/stretch-1.1.tar.gz" } ], "1.4": [ { "comment_text": "", "digests": { "md5": "d4f7872f8a769a5cd803fcab1d9e20d8", "sha256": "2586b6a5db1a9d84d2cb82978acb80c0701c519ea576f13c05d9d65ccdf629ca" }, "downloads": -1, "filename": "stretch-1.4.tar.gz", "has_sig": false, "md5_digest": "d4f7872f8a769a5cd803fcab1d9e20d8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 18482, "upload_time": "2015-11-12T02:37:17", "url": "https://files.pythonhosted.org/packages/45/85/53fbc0ba9d8aa2d60f43c17c02ab38cd946ad68addf576a316fdca51f70f/stretch-1.4.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "d4f7872f8a769a5cd803fcab1d9e20d8", "sha256": "2586b6a5db1a9d84d2cb82978acb80c0701c519ea576f13c05d9d65ccdf629ca" }, "downloads": -1, "filename": "stretch-1.4.tar.gz", "has_sig": false, "md5_digest": "d4f7872f8a769a5cd803fcab1d9e20d8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 18482, "upload_time": "2015-11-12T02:37:17", "url": "https://files.pythonhosted.org/packages/45/85/53fbc0ba9d8aa2d60f43c17c02ab38cd946ad68addf576a316fdca51f70f/stretch-1.4.tar.gz" } ] }