Enhancing TOFU
Thomas Frohwein tfrohwein at fastmail.com
Mon Mar 8 18:42:32 GMT 2021
I have written up how clients and servers can support out-of-band pubkey
verification to add a higher level of trust where needed. My opinion is
that for 99% of connections made by most clients, TOFU provides sufficient
security. For those situations where TOFU is judged by the user to be
insufficiently secure, clients can (sic) offer a variety of different
ways to support easy out-of-band verification.
I call this approach "Trust, but Verify (where appropriate)."
In a nutshell, 3 security levels would be offered and displayed by a
client following this, the first 2 of which are already part of TOFU:
- red: untrusted, mostly if certificate mismatch is encountered
- yellow: trusted, likely the large majority of all connections,
here the host cert matches the known host of the same name
- green: verified - cert matches known host, plus the client has
matched the cert with an out-of-band digest of the cert,
confirming the identity of the server. This would be useful
for connections involving sensitive information.
The details should be left to the client, with some technically simple
examples provided (entering/pasting pubkey hash, random art like
'ssh-keygen -lv'). A variety of technically more complicated ways to
confirm the pubkey like TLSA, DANE, TXT records could fall into this
approach, too, but I think it could be left up to the client and servers
what ways to offer to support the verification.
The full write-up is hosted here:
gemini://thfr.info/gemini/modified-trust-verify.gmi
thfr
Archive home | About this archive