{ "info": { "author": "David Gouldin and Cory Benfield", "author_email": "cory@lukasa.co.uk", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Intended Audience :: Developers", "Natural Language :: English", "Programming Language :: Python", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3.4" ], "description": "Entweet: Securing Twitter\n=========================\n\nEveryone likes Twitter, right? We all think it's awesome.\n\nHowever, Twitter suffers from one critical problem: it lacks GPG integration.\nIn this modern era, we believe it's vital to wed the two most important\ntechnologies of our generation: message integrity, and 140-character\nwitticisms.\n\nEnter Entweet.\n\nEntweet is a tool for taking Twitter and making it 100 times nerdier. No longer\nwill you have to be content with tweeting in plaintext, like your\nnon-tech-savvy uncle, Barry. Instead, you can take your Twitter conversations\nto the next level, by guaranteeing the integrity of everything you tweet, while\nmaking it *really inconvenient* for other people to read your messages.\n\nHow Do I Use It?\n----------------\n\nSimple. First, install Entweet from the Python Package Index. You can trust it,\nit's over TLS.\n\n pip install entweet\n\nMake sure you have GPG installed, or obviously nothing will work. If you don't\nhave GPG installed, then don't worry: GPG is `famously easy to use`_, so easy\nthat we won't explain it here.\n\nNext, populate some environment variables. For your security and convenience,\nEntweet does not link to a built-in Twitter application. You'll want to create\none for yourself, then generate yourself an application key.\n\nOnce you have your four Twitter IDs, put them in environment variables, called\n``ENTWEET_CLIENT_KEY``, ``ENTWEET_CLIENT_SECRET``,\n``ENTWEET_RESOURCE_OWNER_KEY``, and ``ENTWEET_RESOURCE_OWNER_SECRET``.\n\nNow you're ready to go, it's easy. To sign a tweet, just run\n\n entweet sign\n\nEnter your tweet at the prompt, and then enter your GPG passphrase.\n\nEntweet will sign the message, and then post a tweet containing your signed\nmessage. That's it!\n\nIf you've seen a tweet produced by Entweet and want to read it, it's also\nreally easy. Find the tweet ID (from the URL for the tweet, for example), and\nthen run\n\n entweet decrypt \n\nThe message will be printed to the screen, along with the ID of the person who\nsigned it. If the signature doesn't check out, Entweet will error out, and\nyou'll know the NSA is watching you and your friends. In this eventuality,\nplease contact your local governmental representative for next steps.\n\n.. _famously easy to use: http://secushare.org/PGP\n\nAuthors\n-------\n\nDavid Gouldin and Cory Benfield.\n\nThis **awesome** idea is the product of DjangoCon EU, with the core idea makers\nbeing Andrey Petrov, David Gouldin, Cory Benfield, Kristian Glass,\nPeter Inglesby, and George Hickman. Don't blame them, this isn't their fault.\nExcept Andrey, he came up with the image recognition stuff. Blame him.", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://lukasa.co.uk/", "keywords": null, "license": "MIT", "maintainer": null, "maintainer_email": null, "name": "entweet", "package_url": "https://pypi.org/project/entweet/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/entweet/", "project_urls": { "Download": "UNKNOWN", "Homepage": "http://lukasa.co.uk/" }, "release_url": "https://pypi.org/project/entweet/2.0.0/", "requires_dist": null, "requires_python": null, "summary": "Security and verification for Twitter", "version": "2.0.0" }, "last_serial": 1582254, "releases": { "2.0.0": [ { "comment_text": "", "digests": { "md5": "6a78a74ac0a2d16cf79046655eae7d68", "sha256": "58db57a41488d9c795cdcb2170ff8520ef6f09cb1ad21c1c0b6961889e169786" }, "downloads": -1, "filename": "entweet-2.0.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "6a78a74ac0a2d16cf79046655eae7d68", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 58397, "upload_time": "2015-06-07T19:33:43", "url": "https://files.pythonhosted.org/packages/f4/12/d44caf9c11bddd1c2f74c2c9a9d00378153a8f31f9de56f3e614a8f5e2d4/entweet-2.0.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "9280ac5c506e10bb424b0b4054b36ead", "sha256": "05bb38d5975b655763f569e0eea18ad4d98d7a23a62ce87efe94d0e0efbf50d0" }, "downloads": -1, "filename": "entweet-2.0.0.tar.gz", "has_sig": false, "md5_digest": "9280ac5c506e10bb424b0b4054b36ead", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4767, "upload_time": "2015-06-07T19:33:39", "url": "https://files.pythonhosted.org/packages/58/12/3125bc79d57d4036f058888dd0e055c5b8858b9bb97c44b072c9cb946208/entweet-2.0.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "6a78a74ac0a2d16cf79046655eae7d68", "sha256": "58db57a41488d9c795cdcb2170ff8520ef6f09cb1ad21c1c0b6961889e169786" }, "downloads": -1, "filename": "entweet-2.0.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "6a78a74ac0a2d16cf79046655eae7d68", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 58397, "upload_time": "2015-06-07T19:33:43", "url": "https://files.pythonhosted.org/packages/f4/12/d44caf9c11bddd1c2f74c2c9a9d00378153a8f31f9de56f3e614a8f5e2d4/entweet-2.0.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "9280ac5c506e10bb424b0b4054b36ead", "sha256": "05bb38d5975b655763f569e0eea18ad4d98d7a23a62ce87efe94d0e0efbf50d0" }, "downloads": -1, "filename": "entweet-2.0.0.tar.gz", "has_sig": false, "md5_digest": "9280ac5c506e10bb424b0b4054b36ead", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4767, "upload_time": "2015-06-07T19:33:39", "url": "https://files.pythonhosted.org/packages/58/12/3125bc79d57d4036f058888dd0e055c5b8858b9bb97c44b072c9cb946208/entweet-2.0.0.tar.gz" } ] }