Pgen
passphrase2pgp
Pgen | passphrase2pgp | |
---|---|---|
13 | 13 | |
144 | 177 | |
- | - | |
8.1 | 2.2 | |
27 days ago | about 1 year ago | |
Roff | Go | |
ISC License | The Unlicense |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Pgen
- Insult Passphrase Generator
-
LastPass: ‘Horse Gone Barn Bolted’ Is Strong Password
Correct Battery Horse Staple :)
Speaking of which, if you want to generate long memorable passphrases, I have an open source cli tool I wrote for that, which I myself use.
https://github.com/ctsrc/Pgen
Give it a spin
- pgen(1) – Passphrase Generator
-
Milk Sad: Weak Entropy in libbitcoin (bc) seed generation
This xkcd comic has been instrumental to me.
I wrote a command-line utility a couple of years ago that I use myself regularly to generate secure and memorable passwords
https://github.com/ctsrc/Pgen
With this tool you can also see how many bits of entropy the passphrase generation settings you are using will result in.
For example, generating a 5 word password using the long wordlist
pgen -l -n 5
-
When was the last time you lost data?
Around 2011 I set up full disk encryption for the first time. The systems I did this on were some second hand computers that I had bought and installed FreeBSD on. The systems were very stable. Too stable! They were running for several weeks until one day when there was a power outage. I booted the machines and promptly realised that I was not entirely sure about what the convoluted password I had chosen for full disk encryption was exactly.
I lost quite a bit of data that day.
It taught me to stop with silly 5|_|1357:7|_|7:0|\|5 and to use long passphrases instead. This ensures high entropy without the possibility of forgetting symbols chosen, because there are no symbols to remember.
It also taught me to frequently reboot my computers, so that I remember the passphrases to decrypt the disks.
I have a tool that I wrote and which I actively use myself for generating passphrases, it’s called Pgen and it’s open source at https://github.com/ctsrc/Pgen
-
Names are not descriptions; descriptions are not names
Interesting points and I agree.
Makes me wonder if I should’ve picked a different name for my passphrase generator. I named it “Pgen” and I use it several times per month.
https://github.com/ctsrc/Pgen
Perhaps “passblazer” or something would have been a better name :thinking:
Unfortunately, it’s not really possible to rename it at this point :/
Oh well, maybe some other time I can come up with a creative name for a project instead of an overly descriptive name :)
-
Ask HN: What's your greatest achievement on GitHub?
My greatest accomplishments on GitHub are my projects that I actively use myself, and which other people are using as well.
https://github.com/ctsrc/Pgen
Pgen is a passphrase generator that uses the EFF wordlists for random passphrases.
A typical passphrase generated with Pgen looks like:
oxford antelope veteran thorn dastardly gem tripod upfront avocado femur moisture sacrifice
Pgen is written in Rust.
Browse my GitHub profile to see some other projects as well, including my “repotools” project which is very basic but super useful and I invoke the repotools commands many times every day.
I also have my zshrc on GitHub, the main selling-point of which is the way I have set up my PS1 prompt. It uses different emojis for different machines and adds some extra white space. The emojis are useful because for a long time I sometimes found it difficult to quickly identify which terminal is logged into which host when I have many terminals open some of which are connected to ssh. Having the host name in the print is nice and all but when you have a handful of terminals open or more it’s not very distinct. Coloured emojis take small space and make each host distinct. Vertical spacing between each command invocation makes it more comfortable to read scroll back and more quick to scan.
- pgen(1) – Passphrase Generator, version 1.1.4 released
passphrase2pgp
-
Mnemonikey | Determinstic PGP key recovery using phrases | v0.0.1 prerelease published
As far as I'm aware, Mnemonikey is the first of its kind, rhyming only with the related but conceptually different passphrase2pgp tool, from which I drew my original inspiration.
-
OpenPGP master key on Nitrokey Start
I think people should seriously consider using something like passphrase2pgp [0] in addition to a hardware key like this. That way you can have a brain key (hopefully generated with diceware or equivalent) to tie together day-to-day keys like this to a more permanent identity. I'm honestly surprised that strategy is not more widespread.
[0] https://github.com/skeeto/passphrase2pgp
-
Seeking feedback: mnemonikey - Determinstic backup and recovery of PGP keys using human-readable phrases.
Check out Chris Wellons' tool passphrase2pgp - it does exactly what you're describing by hashing an arbitrary input passphrase with Argon2.
-
pass: password manager for true geeks. Control everything yourself, sync among devices, enjoy your security. Cheat sheet for setting it up
So the easiest way to synchronize gpg keys I found is https://github.com/skeeto/passphrase2pgp - it generates a deterministic gpg key (also ssh keys, x509 certificates...) from a passphrase. Excellent tool
-
I've locked myself out of my digital life
One way to circumvent this is to use a strong passphrase to deterministically generate the PGP/SSH key [1] to unlock other passwords. The SSH key could grant access to a remote server with backups and the PGP key could decrypt passwords using pass [2].
1. https://github.com/skeeto/passphrase2pgp
2. https://www.passwordstore.org/
-
BIP 39 mnemonic phrase to GPG key?
I know there are tools that can generate GPG from arbitrary inputs, but what I'm really looking for is something with direct compatibility with BIP 39 or (BIP 44) phrases in particular.
-
A GPG key derived from mnemonic phrase?
What if https://github.com/skeeto/passphrase2pgp is not obviously the software to use, or doesn't exist at some later point?
-
charmbracelet/melt: Backup and restore Ed25519 SSH keys with seed words
My own tool, passphrase2pgp works this way. It generates both OpenPGP and SSH Ed25519 keys from a user-chosen passphrase, and it's designed to send the key straight into the ssh-agent on demand.
-
Why did they do it this way?
Derive my keypair entirely from a passphrase, with generous key stretching. I never need to worry about backing up my keys. I later extended this idea to OpenPGP and SSH, where I also exclusively use passphrase-derived keys: passphrase2pgp.
-
What tools / utilities have you written that you use regularly?
passphrase2pgp: for storing my PGP and SSH keys in my brain. Neither ever reside in permanent storage.
What are some alternatives?
Nim - Nim is a statically typed compiled systems programming language. It combines successful concepts from mature languages like Python, Ada and Modula. Its design focuses on efficiency, expressiveness, and elegance (in that order of priority).
file-arranger - Simple & capable Directory arranger/cleaner
psh-gui - GUI for `psh` password manager
ffupdate - A shellscript to automatically install and update firefox on linux.
cargo-raze - Generate Bazel BUILD from Cargo dependencies!
age - A simple, modern and secure encryption tool (and Go library) with small explicit keys, no config options, and UNIX-style composability.
libbitcoin-explorer - Bitcoin Command Line Tool
git-tidy - Tidy up stale git branches.
diceware - A tool for generating strong Diceware passwords, with entropy and crack time estimates.
kks - Handy Kakoune companion.
pmanager - Store and retrieve your passwords from a secure offline database. Check if your passwords has leaked previously to prevent targeted password reuse attacks.
nbrowser - 🔗 🌐 : an easy way to open links in browsers, mimic the "Open URL with..." dialog on Android, `nbrowser` help you open links in a browser