[2545] in Kerberos

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

New message type for V5 spec

daemon@ATHENA.MIT.EDU (Clifford Neuman)
Wed Feb 3 19:07:06 1993

Date: Wed, 3 Feb 93 15:23:38 PST
From: Clifford Neuman <bcn@ISI.EDU>
To: kerberos@MIT.EDU

A few weeks ago I sent a proposed message format for a protocol
message to be used to forward Kerberos credentials for telnet and
rlogin.  In making the changes to the code, it because clear that the
message format did not support the transfer of information about the
ticket needed for the remote ticket file.  Here is a revised message
format, with all the meta information added as optional fields.

As I indicated in the previous message, it is worthwhile to define
this message in general so that applications needing to forward
credentials will do it right (that I forgot some necessary fields
demonstrates how easy it is to get it wrong).  Please provide feedback
on the proposed format:

KRB-CRED	::= [APPLICATION 22] SEQUENCE {
	pvno[0]		INTEGER,
	msg-type[1]	INTEGER, -- KRB_CRED
	ticket[2]	Ticket,
	enc-part[3]	EncryptedData
}

EncKrbCredPart	::= [APPLICATION 29] SEQUENCE {
	key[0]		EncryptionKey,
	nonce[1]	INTEGER OPTIONAL,
	timestamp[2]	KerberosTime,
	usec[3]		INTEGER,
	s-address[4]	HostAddress OPTIONAL,
	r-address[5]	HostAddress OPTIONAL
	prealm[6]	Realm OPTIONAL, 
	pname[7]	PrincipalName OPTIONAL, 
	flags[8]	TicketFlags OPTIONAL,
	authtime[9]	KerberosTime OPTIONAL,
	starttime[10]	KerberosTime OPTIONAL,
	endtime[11]	KerberosTime OPTIONAL
	renew-till[12]	KerberosTime OPTIONAL,
	srealm[13]	Realm OPTIONAL,
	sname[14]	PrincipalName OPTIONAL,
	caddr[15]	HostAddresses OPTIONAL
}

An application code in the encrypted part of a message provides an
additional check that the message was decrypted properly.

pvno and msg-type

  These fields are described above in section 5.4.1.
  msg-type is KRB_CRED.

ticket

   This is the ticket obtained from the KDC specifically forwarding
   to the intended recipient.

enc-part

    This field holds an encoding of the EncKrbCredPart sequence
    encrypted under the session key shared between the sender and the
    intended recipient. This encrypted encoding is used for the enc-part
    field of the KRB-CRED message.  See section 6 for the format of
    the ciphertext.

key

    This field exists in the ticket and is used to pass the session
    key from the sender to the intended recipient.  The fields
    encoding is described in section 6.1.

nonce

    If practical an application may require the inclusion of a nonce
    generated by the recipient.  If the same number is included in the
    message, it provides evidence that the response is fresh and has not
    been replayed by an attacker.  A nonce must never be re-used.  Ideally,
    it should be generated randomly

timestamp, usec, s-address and address

    These fields are described above in section 5.6.1

The following fields are optional.  If present, they can be associated
with the credentials in the remote ticket file.  If left out, then it
is assumed that the recipient of the credentials already knows how to
use them.

prealm, pnname

    The name and realm of the delegated principal identity.

flags, authtime, starttime, endtime, renew-till, srealm, sname, caddr

    These fields contain the values of the corresponding fields in the
    ticket found in the ticket field.  Descriptions of the fields are
    identical to the descriptions in the KDC-REP message.

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