[Help-gnutls] Re: OpenPGP certificate verification for TLS connections
Ludovic Courtès
ludovic.courtes at laas.fr
Wed Apr 18 09:34:29 CEST 2007
Hi,
Daniel Kahn Gillmor <dkg-debian.org at fifthhorseman.net> writes:
> Note that the OpenPGP web of trust infrastructure allows for clean,
> arbitrary authentication policy, configurable by existing tools. The
> authentication question OpenPGP asks is: "to whom does the presented
> key really belong?" The answer it gives is a list of authenticated
> User IDs: all User IDs that have been sufficiently validated by the
> web of trust.
>
> Given this list of User IDs, the system can now perform arbitrary
> *authorization* policy checks: Are any of the presented User IDs
> authorized to use the particular service?
>
> Note that the authorization layer is completely agnostic about the
> keys. This is a feature, not a bug! It means users can have multiple
> keys (if each key is signed by the appropriate trusted people), users
> can revoke old keys in the case of compromise, keys can expire, and so
> on, all without any changes to the server itself or any centralized
> control [0].
I think I'm only starting to get your point, sorry for the delay. ;-)
My understanding of what you're saying it this (where "I" is the
server):
1. When I receive a connection from someone, I check the list of
signers contained in their public key (or "OpenPGP certificate", or
"transferable public key").
2. If that key is signed by someone I trust, then I can trust the
key-user ID binding itself.
3. _Since_ I trust the key-user ID binding, I can now make
authorization decisions based only on the user ID.
And this is why the contents of user ID packets matters: URIs would
indeed make it easier to implement step (3). I think I got it. :-)
That's probably a useful usage pattern. The problem that I see is that
it would be non-standard, so (getting back to the original topic) it may
be beyond the scope of GnuTLS. What would be useful, though, is a set
of tools to traverse the signer graph (as is required by step (2)).
Thanks,
Ludovic.
More information about the Gnutls-help
mailing list