ietf-corpus

rfc-4537

Kerberos Cryptosystem Negotiation Extension

L. Zhu, P. Leach, K. Jaganathan
date2006-06 streamIETF areasec wgkrb-wg statusPROPOSED STANDARD pages6 canonicalhttps://www.rfc-editor.org/rfc/rfc4537 doi10.17487/RFC4537
This document specifies an extension to the Kerberos protocol as defined in RFC 4120, in which the client can send a list of supported encryption types in decreasing preference order, and the server then selects an encryption type that is supported by both the client and the server. [STANDARDS-TRACK]

updates

Extracted elements (18)

design-rationale §3

The KDC has a strong PRNG, so clients can benefit from its randomness by reusing KDC key data as entropy when generating the negotiated subkey, rather than relying solely on local entropy sources.

crypto, security

design-rationale §1

Under RFC 4120, the KDC must limit the ticket session key enctype to one it believes both client and server support, so if both sides understand a stronger enctype the KDC did not select, they cannot negotiate it. This extension allows the client and server to negotiate a stronger cryptosystem in subsequent communication, independent of the KDC's choice.

crypto, security

interoperability-note §3

The AD-ETYPE-NEGOTIATION element is placed in the AD-IF-RELEVANT container so that servers not implementing this extension will safely ignore it and fall back to the enctype of the service ticket session key, preserving backward compatibility with RFC 4120.

crypto, security

normative-requirement §3 MUST

If EtypeList is present and the server prefers an enctype from the list over the AP-REQ authenticator subkey (if present) or the service ticket session key, the server MUST create a subkey using that enctype and send it in the subkey field of the AP-REP message.

crypto, security

normative-requirement §3 SHOULD

If the client prefers an enctype over the service ticket session key enctype, it SHOULD send the EtypeList to the server via AD-ETYPE-NEGOTIATION in the AP-REQ authenticator.

crypto, security

normative-requirement §3 MUST NOT

If the ticket session key enctype is included in the client's EtypeList, it SHOULD be the last entry; otherwise (if not included), that enctype MUST NOT be negotiated.

crypto, security

normative-requirement §3 SHOULD

Implementations SHOULD use the service ticket session key value as a source of additional entropy when generating the negotiated subkey, to take advantage of the KDC's strong PRNG.

crypto, security

normative-requirement §3 MAY

The AP-REQ authenticator subkey, if present, MAY also be used as a source of entropy when generating the negotiated subkey.

crypto, security

normative-requirement §3 SHOULD NOT

The client SHOULD NOT include enctypes that are less preferable than the ticket session key enctype in its EtypeList.

crypto, security

normative-requirement §3 SHOULD NOT

The client SHOULD NOT include negative (local-use) enctype numbers in the EtypeList unless it knows a priori that the server uses the same negative enctype numbers for the same enctypes.

crypto, security

normative-requirement §3 MAY

The server MAY ignore the preference order indicated by the client's EtypeList; the policy for choosing an enctype is a local matter for both client and server.

crypto, security

normative-requirement §3 SHOULD NOT

This negotiation extension SHOULD NOT be used when the client does not expect a subkey in the AP-REP message from the server.

crypto, security

protocol-element §3

A new authorization data element AD-ETYPE-NEGOTIATION (type 129) is defined. It is carried in the authorization-data of the AP-REQ authenticator and contains the client's ordered list of supported enctypes.

crypto, security

protocol-element §3

The AD-ETYPE-NEGOTIATION element is enclosed in the AD-IF-RELEVANT container, so a correctly implemented server that does not understand this element will ignore it per RFC 4120 semantics.

crypto, security

protocol-element §3

The negotiated subkey (using the server-selected enctype from the EtypeList) is sent in the subkey field of the AP-REP message and is then used as the protocol key or base key per RFC 3961 for subsequent communication.

crypto, security

security-consideration §4

If a stronger enctype key is negotiated beneath a weaker enctype key, an attacker able to break the weaker enctype can also recover the stronger enctype key. The extension's benefit is minimizing the amount of ciphertext encrypted under a weak enctype that is exposed to an attacker.

crypto, security

security-consideration §4

The client's enctype list and the server's reply enctype are carried within encrypted data, so their security properties are the same as those of Kerberos encrypted data generally.

crypto, security

wire-format §3

The EtypeList is encoded as DER (per X.680/X.690) of the ASN.1 type `EtypeList ::= SEQUENCE OF Int32`, representing enctypes in decreasing preference order (most preferred first). Int32 is as defined in RFC 4120.

crypto, security