12

I feel like this is a question that should have plenty of coverage, yet I found nothing that explained this to me in a way that I understood.

It may be (and feels like it) that I misunderstood something very basic and thus can't make sense of information that I got, so in that case: Please explain my mistake.

I have an OpenPGP key for my primary e-mail Address. It works fine, I can crypt, sign, encrypt messages.

Now, I also have a bunch of other addresses (one for business purposes, one from a political party, etc.) that I want to use the key as well. As far as I understood it, I can use one key for one Address and thats it. I can (somehow?) add subkeys for other addresses that use the primary key internally somehow.

So, when I send mail from my second account and sign it, I would not want it to show my primary email, but rather my second one. The goal would be that my business contacts get proper signed mail but do not obviously see my personal primary email. If they would need to lookup the key on a keyserver to see my personal address that would be fine, I just don't want to confuse people (got email from af@business. but signed from af@personal.)

Do I need to have multiple master keys for that or can I use one and add subkeys to it that have their own email addresses attached?

2 Answers 2

12

OpenPGP has a primary key to glue "everything" together, namely subkeys and user IDs, which are two totally different concepts. For further reference in addition to this answer, you might want to have a look at a related, but not duplicate question I answered "How many GPG keys should I make" on the Information Security Stack Exchange, where I discussed reasons for and against having multiple primary keys.

Subkeys are used to limit possible breaches of the private key; they're not linked at all to mail addresses (although in some scenarios this would be something favorable). While the primary key is the entity that manages all the subkeys and user IDs (and certifications/signatures on other keys), consider subkeys the entity used in day to day work (like signing and encrypting messages and documents).

Each primary key can also have multiple user IDs. So one primary key can have different mail addresses attached, like your personal address, your work contact, the one you have at the political party. Consider a primary key an identity in the web of trust; if you want to split those roles, you'll have to use different key pairs. One example to do so might be a legislation enforcing you to hand over the "business" private keys to your employer if leaving the company (you wouldn't want to hand over your "private" private keys), or when having a pseudonymous OpenPGP key (which you don't want to have linked to your real identity).

So, when I send mail from my second account and sign it, I would not want it to show my primary email, but rather my second one. [...] Do I need to have multiple master keys for that or can I use one and add subkeys to it that have their own email addresses attached?

Due to technical limitations you cannot enforce a given user ID being displayed, nor can you bind user IDs to subkeys. If this is important, create multiple primary keys.

1
  • @AngeloFuchs Your edit was indeed helpful and shouldn't have been rejected, I adopted the changes.
    – Jens Erat
    Dec 25, 2015 at 21:49
0

What you want to do has nothing to do with subkeys, but with uids. All uids on a key are visible, always. Any reasonable mail software would find the right uid to display, though.

If you absolutely do not want your private address visible in signed business mail, your only option is a second key. But if you don't mind it to be seen, except for some confusion it might cause, then probably just add a uid and rely on people who actually use GnuPG to find out why it lists some other address ;).

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .