I've been reading about the benefits of using OpenPGP subkeys for different machines. Obviously, it's a much safer practice than copying around the same master key between multiple machines (especially laptops).
I'm planning to migrate to the "one subkey per machine" way of managing OpenPGP keys as described here: https://wiki.debian.org/Subkeys
The instructions are pretty clear if you're setting up OpenPGP signing from scratch. However, I've been using a rsa2048 key (DB746BD8
) for several years, and ideally I would like to keep the trust and the identity associated with it. Are there any (recent) best-practice guides out there that explain a situation like this? For example, does it make sense (i.e. does it add security) to generate 4096-bit subkeys using a rsa2048 master key? Would it be better to generate a new rsa4096 primary key? Or something completely different?
EDIT
Some additional information about my particular key/situation:
- The key was used primarily for Git commit signing - I do not think it was ever used for encryption, nor uploaded to a keyserver.
- The only time it was "published" was when it was uploaded to the GitHub website, as described here.
- The key has not been certified/signed by anyone.
My goal is to figure out the PGP/GPG setup for the medium to long-term, and so far the plan looks like this:
- Decide on the primary key to use
- Keep the existing rsa2048 primary key
DB746BD8
- Generate a new primary key (e.g. rsa4096, ecdsa)
- Keep the existing rsa2048 primary key
- Generate and distribute new subkeys
- Upload key to keyservers
- Potentially use it for encryption, to sign other people's keys etc.
The main question is whether I should go with 1.1. or 1.2. - especially considering that after following 2. 3. and 4., it might become more difficult to later on switch to a new key (?).