1 |
On Sat, Feb 23, 2019 at 12:08 PM Michał Górny <mgorny@g.o> wrote: |
2 |
> |
3 |
> The question is: how can you actually guarantee that users that don't |
4 |
> understand OpenPGP/GnuPG basics can actually comprehend the basic |
5 |
> necessities of keeping their key secure? |
6 |
|
7 |
I think you need to distinguish between people who don't understand |
8 |
gpg and people who simply don't agree with you. As you pointed out, |
9 |
in its default config gpg generates an encryption subkey. Though, I |
10 |
don't think the default config is actually Gentoo-compatible. |
11 |
|
12 |
> Next thing I learn is that |
13 |
> people are not protecting their keys with password because |
14 |
> the instructions didn't say they had to. And GnuPG *only warned*. |
15 |
|
16 |
While it is always a good idea to protect a key with a password, this |
17 |
really only protects the key while it is at rest. Chances are if an |
18 |
attacker can read the keyring from disk, they can probably also |
19 |
intercept the passphrase, either from the keyboard or from the gpg or |
20 |
agent process. |
21 |
|
22 |
If we really want to protect keys then it probably makes sense to |
23 |
generate them on hardware keys, and use a hardware key which makes it |
24 |
possible to distinguish keys that were generated on-hardware and are |
25 |
non-exportable from keys that were generated in software (probably by |
26 |
use of a remote attestation signing key in the hardware). I'm not |
27 |
sure if such hardware keys exist. I guess another option is to have a |
28 |
trusted person generate the keys on-hardware, load the key ID into |
29 |
LDAP, and not let devs change their LDAP settings. Of course that |
30 |
would give the person generating keys the ability to secretly generate |
31 |
some, keep a copy of the private key, and then load it on the |
32 |
hardware. Then again, with any hardware device you're also trusting |
33 |
the manufacturer to not have a backdoor either. |
34 |
|
35 |
Bottom line is that PKI is hard. You can encourage devs to follow |
36 |
better practices, just as you can encourage them to run repoman, but |
37 |
in the end they're going to have to be convinced that they really are |
38 |
the weakest link, otherwise they'll probably quietly ignore you. |
39 |
|
40 |
-- |
41 |
Rich |