[2144] in Kerberos_V5_Development

home help back first fref pref prev next nref lref last post

we need a standards-track password changing protocol

daemon@ATHENA.MIT.EDU (Marc Horowitz)
Tue Dec 24 15:08:19 1996

To: krbdev@MIT.EDU
From: Marc Horowitz <marc@cygnus.com>
Date: 24 Dec 1996 15:08:07 -0500

In order to support low-end clients, such as macos and windows 3.1,
and hardware platforms with limited code space, like terminal servers
and routers, I'd like to see a simple password changing protocol on
the standards track which involves as little overhead as possible.
Ted's old protocol is a good candidate, but with the ov admin server
in the tree, the likelyhood is small that even a small fraction of the
options in that protocol will ever be implemented.  Later in the
standards process, unimplemented options must be dropped, and this
leaves a lot of overhead in the protocol simply to change passwords.
I'd like to see something very simple, structured as follows:

 - a password change request packet, consisting of the concatenation of:
   - an AP-REQ for the password changing server, including a subkey
     in the authenticator and with the INITIAL flag set in the ticket.
   - encrypted and mac'd in the authenticator subkey:
     - the new password

The server must verify the ap-req, decrypt the request, do any policy
checks (password quality, history, authorization, etc.) required, then
set the password to the new value specified.  The principal whose
password is to be changed is the principal which authenticated.  This
protocol does not address admins who wants to change another user's
password,

 - a password change reply packet, consisting of the concatenation of:
   - an AP-REP
   - encrypted and mac'd in the authenticator subkey:
     - an ACK, or
     - a NAK, with some explanatory data as to why the change failed.
       This data must include a numeric code to be defined in the
       spec, and may, but is not required to, include an advisory
       error message.

A code isn't perfect, but if the user wants more detailed information,
a different, non-standards-track protocol can be used, including
perhaps POTS to an administrator :-)

This protocol may use UDP, for statelessness, or TCP, for
firewall access control. UDP is the required mode for
interoperability.

Comments?

		Marc

home help back first fref pref prev next nref lref last post