2

I understand the key management and security benefits of using subkeys. However, I'm not sure whether subkeys are partial keys with limitations or full-fledged keys (just as the master key). Both the master key and the subkey look like a pair of numbers to me so that I'm wondering whether the word sub really comes from their usage but not their capability.

2

Yes, they're fully fledged keys.

The difference is that you have a master key, which you probably don't want to revoke or let expire often, and subkeys, which you actually use for crypto.

The subkey can be revoked, expire etc, but it's also proof that you're the owner of the master key. In essence, people trust you (i.e. you master key), but you just use the subkey. So, when the life time of one of the subkeys ends, you just use a new one – and don't have to rebuild your web of trust.

  • Thank you for a confirmative answer. I understand the subkey usage scenario, but the gnupg implementation makes me feel like subkeys are second-class citizens there: --list-keys doesn't print their IDs, they have their special names such as sub and ssb which really mean pub and sec, and users can only add/delete subkeys from their master key, etc. Why doesn't gnupg simply list them as normal keys and let users decide the relationship among keys? In that way users may have sub-sub-keys as well and that's quite some flexibility. – Cyker Nov 29 '16 at 10:32
  • 1
    Experience shows that users don't even understand the current gpg relationship model. Making it even more complicated won't help. – Josef Nov 29 '16 at 12:34
  • @Josef By putting all keys at the same level things are simplified rather than complicated. The stories I hear from people are that they often got confused by the different key names at first use. You will frequently see people ask in forum: What are sub and ssb keys? Instead, if you tell them they have a bunch of keys and show them some basic usage scenarios, they are likely to understand better. After all, most people simply expect a key pair at their very beginning, which means 2 instead of 4 keys. In contrast, if they know how to use subkeys, subsubkeys are almost the same. – Cyker Nov 30 '16 at 2:48
  • 1
    @cyker but that's exactly what Josef meant: You don't need to know the ID of the subkey. You trust the master key. The reason you've got subkeys is that they're worth "less" than your master key and can be replaced. If you start signing subkeys with subkeys, you assign as much importance to the signing subkey as to the master. And that makes the system intransparent. – Marcus Müller Nov 30 '16 at 10:24
  • 1
    @Cyker this discussion here is moot, a) because that's not how it is done, so arguing it'd be better is kind of in vain, b) because this is not the GnuPG mailing list, c) your assumption "the less often you use the master key, the more secure" breaks down, because by signing a key with a subkey, you make a subkey a master key, in effect, and d) you're right, the subkeys have the same capabilities, but not the same relations as the master key. The difference is that you do not use sub keys to express that other keys are yours. Really. – Marcus Müller Nov 30 '16 at 10:41

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.