MIT Krb5 + SELinux
Jeffrey Hutzelman
jhutz at cmu.edu
Tue Apr 13 15:01:44 EDT 2004
On Tuesday, April 13, 2004 03:00:40 +0200 Jerome Walter
<walter+kerberos at efrei.fr> wrote:
> By the way, a common constant on the programs is that most want access
> do urandom devices, but do not require it really. I guess, that to
> create tickets, kdc do need access to the device, otherwise the work
> could be altered.
The session keys used to protect communications between clients and servers
in Kerberos-authentication applications are generated by the KDC. In fact,
the acronym KDC stands for "Key Distribution Center", and these session
keys are the keys being distributed. The KDC generates a new session key
every time it issues a ticket, and in order to generate good keys, it must
have access to a decent source of entropy.
In addition, all parties involved in the Kerberos protocol -- clients,
application servers, and the KDC -- require a source of random data with
which to generate random confounders. In some cases there are additional
random strings required, depending on the application protocol.
Finally, one of the services offered by the admin server is the ability to
set a principal's long-term key(s) randomly. This is often used when
keying services, for which a strong key is desirable. Of course, this
capability also requires access to a good source of entropy.
Note that in general, Kerberos tools and libraries which expect to be able
to access /dev/urandom probably won't just "work differently" without it;
they may refuse to operate at all, generating errors instead.
It is worth noting that /dev/urandom is not a source of random data. It is
the output of a cryptographically-strong (we hope) pseudo-random number
generator, which in turn is _seeded_ by random data. As such, /dev/urandom
is not a limited resource; it can churn out pseudo-random bytes at more or
less any desired rate. So there is not generally any reason to prevent
access by any process that desires it.
-- Jeffrey T. Hutzelman (N3NHS) <jhutz+ at cmu.edu>
Sr. Research Systems Programmer
School of Computer Science - Research Computing Facility
Carnegie Mellon University - Pittsburgh, PA
More information about the Kerberos
mailing list