{"id":26578209,"url":"https://github.com/binbash23/p","last_synced_at":"2025-03-23T04:28:10.953Z","repository":{"id":65221234,"uuid":"582431244","full_name":"binbash23/p","owner":"binbash23","description":"p - The password manager by  Jens Heine \u003cbinbash@gmx.net\u003e","archived":false,"fork":false,"pushed_at":"2025-01-23T21:04:07.000Z","size":610212,"stargazers_count":3,"open_issues_count":8,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-01-23T22:19:04.273Z","etag":null,"topics":["cloud","cryptography","dropbox","encryption","manager","password","password-manager","password-store","pbkdf2","python","secure"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/binbash23.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"github":["binbash23"],"custom":["https://www.paypal.me/bluemelvin"]}},"created_at":"2022-12-26T20:14:09.000Z","updated_at":"2025-01-23T21:04:10.000Z","dependencies_parsed_at":"2025-01-15T20:29:01.931Z","dependency_job_id":"3617e929-5b58-4a8d-b50a-4f5ea14b23ce","html_url":"https://github.com/binbash23/p","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/binbash23%2Fp","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/binbash23%2Fp/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/binbash23%2Fp/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/binbash23%2Fp/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/binbash23","download_url":"https://codeload.github.com/binbash23/p/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245056554,"owners_count":20553854,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cloud","cryptography","dropbox","encryption","manager","password","password-manager","password-store","pbkdf2","python","secure"],"created_at":"2025-03-23T04:28:10.363Z","updated_at":"2025-03-23T04:28:10.940Z","avatar_url":"https://github.com/binbash23.png","language":"Python","funding_links":["https://github.com/sponsors/binbash23","https://www.paypal.me/bluemelvin"],"categories":[],"sub_categories":[],"readme":"# [p]\n\n# The Password database\n\n__2022 written by Jens Heine \u003cbinbash@gmx.net\u003e__\n\nIf you are paranoid when it comes to passwords and privacy you may want\nto have a password safe for your accounts. Then you do not trust all the\npassword safes that exist and you write the password safe by yourself.\n\nThis is what I do here. The code is short, simple and I did NOT invent\na new proprietary encryption function. I use open source cryptography\nwhich has been tested and which is hopefully bugfree :)\nFor the people who want to know, I use then PBKDF2HMAC algorithm for the symetric encryption.\n\nBeware: This tool is close to the system and therefore a kind of a hackerz choice. I consciously wrote the program so that you have full control over the database and the system (i.e. the \"sql\" command).\n\nKeep coding,\nJens\n\n### Use the wiki\nUse the [wiki](https://github.com/binbash23/p/wiki) for more help. The wiki contains some best practices and HOWTO's for using the password tool. The [help command documentation](https://github.com/binbash23/p/wiki/Full-help-documentation) is very useful.\n\n### Binaries/executeable program:\nYou can use the [python code](https://github.com/binbash23/p/tree/master/source) or the binaries. For some more infos howto install, you can have a look here: [Install p on linux](https://github.com/binbash23/p/wiki/Install-p-on-a-linux-system-(best-practice)) and here: [Install p on windows](https://github.com/binbash23/p/wiki/Install-p-on-windows)\n\nFor Linux (x86), use the 'p' executeable:\n\n[p/dist/linux/p](https://github.com/binbash23/p/raw/master/dist/linux/p)\n\nFor Raspberry Pi's (arm), use the 'p' executeable:\n\n[p/dist/arm64/p](https://github.com/binbash23/p/raw/master/dist/arm64/p)\n\nand for Windows (x86), use the 'p.exe' executeable: \n\n[p/dist/windows/p.exe](https://github.com/binbash23/p/raw/master/dist/windows/p.exe)\n\n\n### How do I start?\n\nStart the windows binary (p.exe) and a cmd window will appear. Enter the password for your new [password database](https://github.com/binbash23/p/blob/master/docs/20240316_p_database_file.png) and thats all. You are ready to add new accounts into your encrypted database.\n\n```\nUsing Database: p.db\nDatabase does not exist.\nEnter password for new database    :\nConfirm password for new database  :\nCreating new p database: \"p.db\" ...\nCreating new UUID for database: 6ed88bba-a210-4150-8e10-76f57b347770\nShell mode enabled. Use 'quit' or strg-c to quit or help for more infos.\nDB: p.db\u003e add\nAdd account\nUUID      : 8d3a4c15-4780-459c-a3f5-ba1586c043df\nName      : New Account\nURL       : www.new.de\nLoginname : horst\nPassword  : meinpw\nType      : Webaccount\nCorrect ([y]/n) :\nNew account added.\n\nDB: p.db\u003e list\nSearching for ** in 1 accounts:\nID          : 8d3a4c15-4780-459c-a3f5-ba1586c043df\nName        : New Account\nURL         : www.new.de\nLoginname   : horst\nPassword    : meinpw\nType        : Webaccount\n\nFound 1 result(s).\nDB: p.db\u003e\n```\n\nYou should also take a look at the [wiki](https://github.com/binbash23/p/wiki)\n\n### Cloud integration\n\nWho wants to have a master database copy in the cloud can also do this by using my dropbox feature. First you have to enable your dropbox for an API connection. Then you can alway upload/sync your database with the copy in your personal dropbox account.\u003cbr\u003eThe procedure to enable dropbox is f\u0026%$%\u0026ing stupid complicated. So I wrote a help text for this [here](https://github.com/binbash23/p/blob/master/docs/howto_dropbox_configuration.txt).\u003cbr\u003eBy the way: [your master password for the p database NEVER leaves your computer nor will it be typed in a web form or something like that](https://github.com/binbash23/p/blob/master/docs/20221230_p_architecture.png). The \"cloud integration\" that I implemented is simply moving the full encrypted p database into your dropbox account. Dropbox will never see your p master password. \nAnyway I coded more targets to merge to. You can also use a WEBDAV or SSH target. Simply add an account with the credentials into the database and then you can use it as a merge target.\n\n### Merging different password databases\n\nUsually you have different copies of your p database. One on your desktop computer, another on the laptop... To synchronize them, there is a merge feature to do this for you. By now it is possible to merge to different targets like Dropbox, WEBDAV and SSH and for sure to an ordinary file on the same host that you are working on.\n\n### SQLite database\n\nI use the sqlite database to store the accounts (after I encrypt them). This is nice because you can use any [sqlite browser](https://sqlitebrowser.org/dl/) to open the database and do whatever you want: use sql, import export stuff, do bulk changes...\u003cbr\u003e\nJust decrypt all accounts before opening the database with the sqlite browser by setting an empty password and you then have a cleartext password database to browse through.\u003cbr\u003e\nJust make sure to encrypt the account after this by changing the password again to a non empty string.\n\n### Copy\u0026Paste with Ubuntu\n\nTo use the copy function in p (to copy passwords to the clipboard) you need to install python3-pyperclip and xclip.\n```\nsudo apt-get install python3-pyperclip xclip\n```\n\n### Help\n\nFor help just type [help](https://github.com/binbash23/p/wiki/Full-help-documentation#help) in the pshell or start p.exe like \n```\np.exe -h\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbinbash23%2Fp","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbinbash23%2Fp","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbinbash23%2Fp/lists"}