Package: loz
lozCommand line password manager.Why?You may ask why is there a need for another open source password manager. Here are some features that most currently available password managers lack and that loz is focusing on:Designed for command line.Loz allows you to perform all tasks directly on the command line.You can pipe the secrets out of it directly to files.Bash completion is available for all commands and even domains/usernames.Commands are entered directly without loading any custom loz console.Asymmetric encryption.Need to quickly add new entry or generate a password? No problem. With asymmetric encryption, you don't need to type your master password each time you add new entry. It even makes no sense to have to do that, right? You already know what you are entering.Single file storage.Lozfilecontains all entries, secrets and encryption keys in a simple json format. You can just copy it over to another machine and continue where you left off.RequirementsPython >= 3.10installpip install lozsetup bash completionAdd the following to your .bashrc or .profile:eval "$(loz bash-completion)"Alternatively generate bash completion file in a directory specific for your system,
e.g. for Debian, Ubuntu and Fedora:loz bash-completion > sudo tee /etc/bash_completion.d/lozusageInitialize lozfileloz init- This is required first step that will generate storage file at default location~/.loz. If you want to use different location or separate storage file, you can specify that withloz -f path/to/lozfile [COMMAND] [OPTIONS], but then you always need to include that switch when using other commands.You will be asked to enter the master password which will be required for decrypting your secrets. Read more about the lozfile, what it contains, what is being encrypting and what it's always revealing in thelozfile sectionof this doc.Add secretloz add mydomain.com username@email.com- After this you will be prompted to enter your secret in a multi-line prompt. PressAlt-Returnto save.If you want loz to generate secret for you, just useloz make mydomain.com username@email.cominstead. It will generate and save new secret and print it out for you.Read secretloz get mydomain.com username@email.com- After this you will be prompted for the master password. Note that you can autocomplete name of domains and usernames by pressingTab.loz show mydomain.comwill print all secrets for all usernames under selected domain.List entriesloz lswill list domains andloz ls mydomain.comwill list usernames under selected domain.loz find searchwordwill list all domains and/or usernames that contain a wordsearchword.Delete an entryloz rm mydomain.com username@email.comwill delete selected username. If that's the only username under selected domain, the whole domain will be removed. If you want to delete a domain with all usernames under it, just typeloz rm mydomain.com.Export/Importloz export > backup.csvwill export all secrets in a plain text csv file. You can import backed up file withloz import backup.csv. It will ask you if you want to overwrite existing entries.Change passwordloz passwdwill prompt you for old and new password. It will then generate new keys and re-encrypt all secrets.Lozfile and encryptionLozfile is the json storage of all secrets. It contains plaintext RSA public key and Fernet (password) encrypted private key as well. Public key is used in the background when you are entering or generating new secrets. Private key is useless without your master password, but weak password means weak encryption.All secrets are encrypted with a very secure RSA 4096. This is slow for encryption and decryption, but allows the asymmetric appraoch and doesn't have a big performance impact on short secrets.CompatibilityBackwards compatibility will be guaranteed for all lozfiles created with loz versions 0.1.0 and above. If there is a change in lozfile format, you may be prompted to update your lozfile.WARNINGLozfile is revealing domains and usernames. This is by design to enable autocomplete. Future versions of loz may offer full encryption option, but for not it's not available and it's not a focus. If you are concerned about privacy of your usernames, then loz is not for you!