{ "info": { "author": "Sam Messina", "author_email": "samuel.messina@gmail.com", "bugtrack_url": null, "classifiers": [], "description": "Passman\n=======\n\nPassman is a password management application that allows for password\ngeneration, storage, retrieval, updates, and removal from the comfort of\nthe command line.\n\nPassman was written by:\n\n`Sam Messina `__\n\n`Dan Jensen `__\n\nInstalling\n----------\n\nPassman is pip-installable, using\n\n::\n\n pip install passman\n\nAfter installing, simply run:\n\n::\n\n passman\n\nIf you encounter errors, first check the following dependencies:\n\n- Python 3. Passman will not work with Python 2\n- A copy/paste mechanism for the system (e.g.\n `xsel `__)\n- If on Windows, you will need Visual C++ Build Tools to enable\n pycrypto. `See Microsoft's site for more\n info. `__\n\nIntroduction\n------------\n\nWhile there are a plethora of existing password managers, few can be\nintuitively used from the command line. Passman aims to fix that by\nsupporting a terminal-based user interface along side a full API of\ncommand line arguments. Passman is written for people who may not have\naccess to a graphical user environment, people who need quick access to\npasswords over SSH, or people who simply prefer to work from the\nterminal instead of using graphical alternatives. Additionally,\nPassman\u2019s full support of command line arguments allows users to define\ntheir own aliases, catering to their specific needs in as efficient a\nmanner as possible.\n\nFeatures\n--------\n\nPassman logs users\u2019 accounts for different online services/ Each service\ncan contain the name, username, URL, and password associated with the\nservice. Passman supports all create, read, update, and delete options\non all data associated with services. Data is most easily retrieved via\nthe clipboard. When getting data for a service, it is automatically\ncopied to the user\u2019s clipboard. If the data still remains on the\nclipboard after 20 seconds, it will be cleared.\n\nBy running Passman without any command line arguments, users invoke a\nterminal-based menu. The menu is complete with sanitized inputs,\nensuring that wanton crashes do not occur during runtime. After logging\nin or signing up, users have access to all of Passman.s features.\n\nPassman can also run with command line arguments, supporting all the\ncreate, read, update, and delete operations. Additionally, users can\nsupply a username to avoid entering it manually. The only data that is\nunable to be supplied via command line arguments is the master password,\nwhich will be prompted before any data is returned.\n\nSecurity\n--------\n\nNearly every piece of data that Passman processes is either encrypted or\nhashed. The only plaintext that is stored by Passman is the master\nusername. The master password is hashed using SHA 512. An additional\nhash using SHA 256 is also created, which acts as the key to service\ndata encryption. All services\u2019 usernames, URLs, passwords, and names are\nencrypted using the key generated from the master password. All service\nencryption uses AES encryption with standard block size.\n\nData Storage\n------------\n\nOnline\n~~~~~~\n\nBy default, Passman uses MongoDB on a publicly-hosted server to store\nall user data. Users are allocated a single Mongo \u201cdocument\u201d in which\nall service data is stored. All encryption and decryption occurs\nlocally, only sending encrypted or hashed data across the network.\n\nOffline\n~~~~~~~\n\nPassman keeps a cache of user data locally as well. On login or signup,\nas well as on quit, the online database will be pulled down to local\nJSON file located in the ~/.passman directory. Every user\u2019s cache is\nallocated a single JSON file. Only the currently-logged-in user\u2019s data\nwill be downloaded.\n\nThis serves a number of purposes, but mainly addresses the issue of a\ndown server. If our MongoDB server goes down, users are able to run\nPassman in offline mode. Offline mode only supports read operations, and\nwill not allow for users to create, update, or delete their service\ndata. Both menu and command line argument usage supports offline mode.\n\nCommand Line API\n----------------\n\n::\n\n usage: passman.py [-h] [-u username] [-l] [-p service_name] [-w service_name]\n [-n service_name] [-a service_name] [-e service_name]\n [-r service_name]\n\n optional arguments:\n -h, --help show this help message and exit\n -u username, --user username\n Your username for passman\n -l, --list List existing services\n -p service_name, --pass service_name\n Get password for a service\n -w service_name, --www service_name\n Get URL for a service\n -n service_name, --name service_name\n Get the username for a service\n -a service_name, --add service_name\n Add a new service to your account\n -e service_name, --edit service_name\n Edit an existing service\n -r service_name, --remove service_name\n Remove and existing service\n\nSpecial Thanks\n--------------\n\nAyush Kohli: https://github.com/akohli96\n\nGreg Brinkman: https://github.com/GregoryBrinkman\n", "description_content_type": null, "docs_url": null, "download_url": "https://github.com/regexpressyourself/passman/archive/1.2.3.tar.gz", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/regexpressyourself/passman", "keywords": "password", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "passman", "package_url": "https://pypi.org/project/passman/", "platform": "", "project_url": "https://pypi.org/project/passman/", "project_urls": { "Download": "https://github.com/regexpressyourself/passman/archive/1.2.3.tar.gz", "Homepage": "https://github.com/regexpressyourself/passman" }, "release_url": "https://pypi.org/project/passman/1.2.3/", "requires_dist": null, "requires_python": "", "summary": "A terminal-based password manager", "version": "1.2.3" }, "last_serial": 2846827, "releases": { "1.1.6": [ { "comment_text": "", "digests": { "md5": "1137aedb6f645961844333ae3864e1ca", "sha256": "b1a0c50e660a6ed7677fb9f5c5c20c382267b4117c56762927277d77f8b4d06c" }, "downloads": -1, "filename": "passman-1.1.6.tar.gz", "has_sig": false, "md5_digest": "1137aedb6f645961844333ae3864e1ca", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15078, "upload_time": "2017-05-01T20:18:11", "url": "https://files.pythonhosted.org/packages/3e/02/ff1df0056e0fe09a5ec2847bf5ad452bddd66f570e24a2a529458e437262/passman-1.1.6.tar.gz" } ], "1.1.7": [ { "comment_text": "", "digests": { "md5": "32d23b72174aa5517395800ff5c8c0ea", "sha256": "3df505e22e4afe3bec8abe20d76baabe466a12477aac0ab6911973ab039be986" }, "downloads": -1, "filename": "passman-1.1.7.tar.gz", "has_sig": false, "md5_digest": "32d23b72174aa5517395800ff5c8c0ea", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14626, "upload_time": "2017-05-02T00:22:36", "url": "https://files.pythonhosted.org/packages/29/5a/708b930032332b1433cd21f37ec08feb3b1d01bc372b979118eeae2438b7/passman-1.1.7.tar.gz" } ], "1.1.8": [ { "comment_text": "", "digests": { "md5": "bfc29c4b0d500f058073e329b80ae5ed", "sha256": "25e7c32102a0b103bb68bd21233d1446031555e6bda47ea39fce974f4f82c163" }, "downloads": -1, "filename": "passman-1.1.8.tar.gz", "has_sig": false, "md5_digest": "bfc29c4b0d500f058073e329b80ae5ed", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14579, "upload_time": "2017-05-02T05:11:10", "url": "https://files.pythonhosted.org/packages/14/18/e34fba63efa36ed6169b86dc0145c4eaa929ed3c38f4d2cb4b30ebd553fe/passman-1.1.8.tar.gz" } ], "1.1.9": [ { "comment_text": "", "digests": { "md5": "8874798d97b42011a4ce77d0654d7dfe", "sha256": "c07f42eadd2d3919b29fb7f8041860c0017007ea6624774965c1b965c51f6a71" }, "downloads": -1, "filename": "passman-1.1.9.tar.gz", "has_sig": false, "md5_digest": "8874798d97b42011a4ce77d0654d7dfe", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14506, "upload_time": "2017-05-02T05:27:50", "url": "https://files.pythonhosted.org/packages/be/33/26255e3667a71dc9f43a07141b1ea3bdc9a3d05d7562ec3eb6e4840a1d84/passman-1.1.9.tar.gz" } ], "1.2.0": [ { "comment_text": "", "digests": { "md5": "debe5f676b9078caa48df64594b817d2", "sha256": "7cd2bad02ef78e090e108972029d36f067b94dc59ef328778e5a2b53634713d1" }, "downloads": -1, "filename": "passman-1.2.0.tar.gz", "has_sig": false, "md5_digest": "debe5f676b9078caa48df64594b817d2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14469, "upload_time": "2017-05-02T05:58:24", "url": "https://files.pythonhosted.org/packages/d3/78/d139f9d54c393dc2154405e68b65caa372fa2c2dcc659edd44798b6fb229/passman-1.2.0.tar.gz" } ], "1.2.1": [ { "comment_text": "", "digests": { "md5": "334364dc5fb7e0a9db7efe5d51d4d001", "sha256": "83a585bde9c2fc81a9d5871a2c84124f6312f940fde9988cf6ec0dd6e76fc315" }, "downloads": -1, "filename": "passman-1.2.1.tar.gz", "has_sig": false, "md5_digest": "334364dc5fb7e0a9db7efe5d51d4d001", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14494, "upload_time": "2017-05-02T15:21:48", "url": "https://files.pythonhosted.org/packages/34/be/1fd89b5869ffbe2bac54d8d49af45cb76648ef6b8b286fea14f8036a32ea/passman-1.2.1.tar.gz" } ], "1.2.2": [ { "comment_text": "", "digests": { "md5": "5d5d0b604e0d51eb0d5a274727330614", "sha256": "db3ffacc5cded5a8a233c2e235f2e9422b3587d84287c249856824b737271556" }, "downloads": -1, "filename": "passman-1.2.2.tar.gz", "has_sig": false, "md5_digest": "5d5d0b604e0d51eb0d5a274727330614", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14493, "upload_time": "2017-05-02T15:29:58", "url": "https://files.pythonhosted.org/packages/8e/24/6b65e97a58d6bf4d2c420dc6e87368c8810fc6304f03cc222f6bb010a3db/passman-1.2.2.tar.gz" } ], "1.2.3": [ { "comment_text": "", "digests": { "md5": "e33ad669456a581a174d1c61924fdab4", "sha256": "eab85bda52cbe64362c115a7580e54f6bd72b94f5dace78ec5591c796748f7bd" }, "downloads": -1, "filename": "passman-1.2.3.tar.gz", "has_sig": false, "md5_digest": "e33ad669456a581a174d1c61924fdab4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14521, "upload_time": "2017-05-02T16:07:25", "url": "https://files.pythonhosted.org/packages/7a/e2/7b2905577225a4355db5612bdb66ef41bb0478016b638408d083308ec51e/passman-1.2.3.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "e33ad669456a581a174d1c61924fdab4", "sha256": "eab85bda52cbe64362c115a7580e54f6bd72b94f5dace78ec5591c796748f7bd" }, "downloads": -1, "filename": "passman-1.2.3.tar.gz", "has_sig": false, "md5_digest": "e33ad669456a581a174d1c61924fdab4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14521, "upload_time": "2017-05-02T16:07:25", "url": "https://files.pythonhosted.org/packages/7a/e2/7b2905577225a4355db5612bdb66ef41bb0478016b638408d083308ec51e/passman-1.2.3.tar.gz" } ] }