{ "info": { "author": "Filippo Valsorda", "author_email": "filippo.valsorda@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Intended Audience :: Developers", "License :: OSI Approved :: BSD License", "Programming Language :: Python :: 2.6", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3.3", "Topic :: Security :: Cryptography", "Topic :: Software Development :: Libraries" ], "description": "python-salsa20\n==============\n\nBindings for the NaCL implementation of Salsa20 and XSalsa20 by D. J. Bernstein (taken from libsodium).\n\nCompatible with Python 2.6, 2.7 and 3.3.\n\nThe library performs a self-test at each import.\n\nInstallation\n------------\n\n::\n\n pip install salsa20\n\nUsage\n-----\n\n::\n\n def Salsa20_keystream(length, nonce, key)\n def Salsa20_xor(message, nonce, key)\n\n def XSalsa20_keystream(length, nonce, key)\n def XSalsa20_xor(message, nonce, key)\n\nUse ``[X]Salsa20_keystream`` to generate a keystream of the desired length, or pass ``[X]Salsa20_xor`` a plaintext or a ciphertext to have it XOR'd with the keystream.\n\nBeing a stream cipher, ``[X]Salsa20_xor`` does both encryption and decryption.\n\nAll values must be binary strings (``str`` on Python 2, ``bytes`` on Python 3)\n\nExample\n-------\n\n>>> from salsa20 import XSalsa20_xor\n>>> from os import urandom\n>>> IV = urandom(24)\n>>> KEY = b'*secret**secret**secret**secret*'\n>>> ciphertext = XSalsa20_xor(b\"IT'S A YELLOW SUBMARINE\", IV, KEY)\n>>> print(XSalsa20_xor(ciphertext, IV, KEY).decode())\nIT'S A YELLOW SUBMARINE", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://github.com/keybase/python-salsa20", "keywords": null, "license": "3-clause BSD", "maintainer": null, "maintainer_email": null, "name": "salsa20", "package_url": "https://pypi.org/project/salsa20/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/salsa20/", "project_urls": { "Download": "UNKNOWN", "Homepage": "http://github.com/keybase/python-salsa20" }, "release_url": "https://pypi.org/project/salsa20/0.3.0/", "requires_dist": null, "requires_python": null, "summary": "Bindings for the NaCL implementation of Salsa20 and XSalsa20 by D. J. Bernstein", "version": "0.3.0" }, "last_serial": 920653, "releases": { "0.3.0": [ { "comment_text": "", "digests": { "md5": "5f199f3d6c643f05904b9d4a0b5d7e00", "sha256": "a722e8b73088ead1d200f7d18f452d2c4df663a95b4462f69c4f130f17c60ed8" }, "downloads": -1, "filename": "salsa20-0.3.0.tar.gz", "has_sig": false, "md5_digest": "5f199f3d6c643f05904b9d4a0b5d7e00", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6069, "upload_time": "2013-11-15T20:37:43", "url": "https://files.pythonhosted.org/packages/79/b1/c3fd97c6ea566cdd47b8c216556a354cf68dae7bf170c9d64f2cd5ef2286/salsa20-0.3.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "5f199f3d6c643f05904b9d4a0b5d7e00", "sha256": "a722e8b73088ead1d200f7d18f452d2c4df663a95b4462f69c4f130f17c60ed8" }, "downloads": -1, "filename": "salsa20-0.3.0.tar.gz", "has_sig": false, "md5_digest": "5f199f3d6c643f05904b9d4a0b5d7e00", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6069, "upload_time": "2013-11-15T20:37:43", "url": "https://files.pythonhosted.org/packages/79/b1/c3fd97c6ea566cdd47b8c216556a354cf68dae7bf170c9d64f2cd5ef2286/salsa20-0.3.0.tar.gz" } ] }