<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE rfc PUBLIC "-//IETF//DTD RFC 2629//EN" "rfc2629.dtd" [
	  <!ENTITY rfc1510 PUBLIC '' 'http://xml.resource.org/public/rfc/bibxml/reference.RFC.1510.xml'>
	  <!ENTITY rfc3961 PUBLIC '' 'http://xml.resource.org/public/rfc/bibxml/reference.RFC.3961.xml'>
	  <!ENTITY rfc4120 PUBLIC '' 'http://xml.resource.org/public/rfc/bibxml/reference.RFC.4120.xml'>
	  <!ENTITY rfc5226 PUBLIC '' 'http://xml.resource.org/public/rfc/bibxml/reference.RFC.5226.xml'>
	  ]>
<rfc category="std"
     ipr="trust200902"
     docName="draft-ietf-kitten-kerberos-iana-registries-00"
     updates="rfc4120">

  <?xml-stylesheet type='text/xsl' href='rfc2629.xslt' ?>

  <?rfc toc="no" ?>
  <?rfc compact="yes" ?>
  <?rfc symrefs="yes" ?>
  <?rfc sortrefs="yes"?>
  <?rfc iprnotified="no" ?>
  <?rfc strict="yes" ?>

  <front>
    <title abbrev="Kerberos IANA registries">
      Move Kerberos protocol parameter registries to IANA
    </title>

    <author fullname="Tom Yu" initials="T." surname="Yu">
      <organization>MIT Kerberos Consortium</organization>
      <address>
	<postal>
	  <street>77 Massachusetts Ave</street>
	  <city>Cambridge</city>
	  <region>Massachusetts</region>
	  <country>USA</country>
	</postal>
        <email>tlyu@mit.edu</email>
      </address>
    </author>

    <date month="October" year="2012"/>
    <abstract>
      <t>
	The Keberos 5 network authentication protocol has several
	numeric protocol parameters.  Most of these parameters are not
	currently under IANA maintenance.  This document requests that
	IANA take over the maintenance of the remainder of these
	Kerberos parameters.
      </t>
    </abstract>
  </front>

  <middle>
    <section title="Introduction">
      <t>
	The Keberos 5 network authentication protocol has several
	numeric protocol parameters. This document requests that IANA
	take over the maintenance of the Kerberos protocol parameters
	that are not currently under IANA maintenance. Several
	instances of number conflicts in Kerberos implementations
	could have been prevented by having IANA registries for those
	numbers.
      </t>
    </section>

    <section title="General registry format">
      <t>
	Unless otherwise specified, each Kerberos protocol number
	registry will have the following fields: "number", "name",
	"reference", and "comments".
      </t>
      <t>
	The name must begin with a lowercase letter, and must consist
	of ASCII letters, digits, and hyphens. Two or more hyphens
	must not appear directly adjacent to each other. A hyphen must
	not appear at the end of a name. It is preferred that words in
	a name be separated by hyphens, and that all of the letters be
	lowercase.
      </t>
      <t>
	(These rules are consistent with the lexical rules for an
	ASN.1 valuereference or identifier. Where the constraints are
	stricter than the ASN.1 lexical rules, they make it easier to
	systematically translate the names for use in implementation
	languages.)
      </t>
      <t>
	Names for numeric parameter values have no inherent meaning in
	the Kerberos protocol, but they can guide choices for internal
	implementation symbol names and for user-visible non-numeric
	representations. When written in English prose in
	specifications, or when used as symbolic constants in
	implementation languages (e.g., C preprocessor macros), it is
	common to transform the name into all uppercase letters, and
	possibly to replace hyphens with underscores.
      </t>
    </section>

    <section title="General registration procedure">
      <t>
	This document requests that the IESG establish a pool of
	Kerberos experts who will manage the Kerberos registries using
	these guidelines. The IESG may wish to consider including the
	set of designated IANA experts for existing Kerberos IANA
	registries as candidates for this pool.
      </t>
      <t>
	IANA will select an expert from this pool for each
	registration request. The expert will review the registration
	request and may approve the registration, decline the
	registration with comments, or recommend that the registration
	request should follow a specific alternative process. The
	alternative processes that the expert may recommend are the
	IETF review process and the standards action process.
      </t>
      <t>
	Initially, the experts reviewers will use a permissive
	process, generally approving registrations that are
	architecturally consistent with Kerberos and the protocol
	parameter in question. Over time, with input from the
	community, the experts may refine the requirements that
	registrations are expected to meet. The experts will maintain
	a current version of these guidelines in a manner that is
	generally accessible to the entire community. As the
	guidelines evolve, experts may consider the technical quality
	of specifications, security impacts of the registrations,
	architectural consistency, and interoperability
	impact. Experts may require a publicly available specification
	in order to make certain registrations.
      </t>
      <t>
	[ For the individual registries, include "Registrations in
	this registry are managed by the expert review process <xref
	target="RFC5226"></xref> or in exceptional cases by IESG
	approval. See section x for guidelines for the experts to be
	used with this registry." ]
      </t>
    </section>

    <section title="Integer assignments">
      <t>
	Names for integer assignments must be unique across all
	Kerberos integer parameter registries. This is normally
	accomplished by including a name prefix that identifies the
	registry.
      </t>
      <t>
	Assignments for integers parameters will follow the general
	registration procedure outlined above, except as otherwise
	noted in the section that contains the description of the
	parameter.  Kerberos integer parameters take on signed 32-bit
	values (-2147483648 to 2147483647). Negative values are for
	private or local use.
      </t>

      <section title="Address types">
	<t>
	  Address types historically align with numeric constants used
	  in the Berkeley sockets API. Future address type assignments
	  should conform to this historical practice when
	  possible. The name prefix for address types is "addrtype-".
	</t>
      </section>

      <section title="Authorization data types">
	<t>
	  The name prefix for authorization data types is "ad-".
	</t>
      </section>

      <section title="Error codes">
	<t>
	  Assignments for error codes require standards action due to
	  their scarcity: assigning error codes greater than 127 could
	  require significant changes to certain implementations. The
	  name prefixes for error codes are "kdc-err-", "krb-err", or
	  "krb-ap-err".
	</t>
      </section>

      <section title="Key usages">
	<t>
	  Key usages are unsigned 32-bit integers (0 to
	  4294967295). Zero is reserved and may not be assigned.
	</t>
	<t>
	  The name prefix for key usages is "ku-".
	</t>
      </section>

      <section title="Name types">
	<t>
	  The name prefix for name types is "nt-".
	</t>
	<texttable>
	  <ttcol>number</ttcol>
	  <ttcol>name</ttcol>
	  <ttcol>reference</ttcol>
	  <ttcol>comment</ttcol>

	  <c>0</c>
	  <c>nt-unknown</c>
	  <c>RFC4120</c>
	  <c>Name type not known</c>

	  <c>1</c>
	  <c>nt-principal</c>
	  <c>RFC4120</c>
	  <c>Just the name of the principal as in DCE, or for
	    users</c>

	  <c>2</c>
	  <c>nt-srv-inst</c>
	  <c>RFC4120</c>
	  <c>Service and other unique instance (krbtgt)</c>

	  <c>3</c>
	  <c>nt-srv-hst</c>
	  <c>RFC4120</c>
	  <c>Service with host name as instance (telnet,
	    rcommands)</c>

	  <c>4</c>
	  <c>nt-srv-xhst</c>
	  <c>RFC4120</c>
	  <c>Service with host as remaining components</c>

	  <c>5</c>
	  <c>nt-uid</c>
	  <c>RFC4120</c>
	  <c>Unique ID</c>

	  <c>6</c>
	  <c>nt-x500-principal</c>
	  <c>RFC4120</c>
	  <c>Encoded X.509 Distinguished name [RFC2253]</c>

	  <c>7</c>
	  <c>nt-smtp-name</c>
	  <c>RFC4120</c>
	  <c>Name in form of SMTP email name (e.g.,
	    user@example.com)</c>

	  <c>10</c>
	  <c>nt-enterprise</c>
	  <c>RFC4120</c>
	  <c>Enterprise name - may be mapped to principal name</c>

	  <c>11</c>
	  <c>nt-wellknown</c>
	  <c>RFC6111</c>
	  <c>Well-known principal name</c>

	  <c>12</c>
	  <c>nt-srv-hst-domain</c>
	  <c>RFC5179</c>
	  <c>Domain-based names</c>
	</texttable>
      </section>

      <section title="Pre-authentication and typed data">
	<t>
	  The name prefix for pre-authentication type numbers is
	  "pa-". The name prefix for typed data numbers is "td-".
	  Pre-authentication and typed data numbers are in the same
	  registry, but a pre-authentication number may be also be
	  assigned to a related typed data number.
	</t>
      </section>

    </section>

    <section title="Named bit assignments">
      <t>
	Assignments for named bits require standards action, due to
	their scarcity: assigning bit numbers greater than 31 could
	require significant changes to implementations. Names for
	named bit assignments must be unique within a given named bit
	registry, and typically do not have name prefixes that
	identify which registry they belong to.
      </t>

      <section title="AP-REQ options">
      </section>

      <section title="KDC-REQ options">
      </section>

      <section title="Ticket flags">
      </section>

    </section>

    <section title="Contributors">
      <t>
	Sam Hartman proposed the text of the expert review guidelines.
	Love Hornquist Astrand wrote a previous document
	(draft-lha-krb-wg-some-numbers-to-iana-00) with the same goals
	as this document.
      </t>
    </section>

    <section title="Security Considerations">
      <t>
	Assignments of new Keberos protocol parameter values can have
	security implications. In cases where the assignment policy
	calls for expert review, the reviewer is responsible for
	evaluating whether adequate documentation exists concerning
	the security considerations for the requested assignment. For
	assignments that require IETF review or standards action, the
	normal IETF processes ensure adequate treatment of security
	considerations.
      </t>
    </section>

    <section title="IANA Considerations">
      <t>
	This document requests that IANA create several registries for
	Kebreros protocol parameters. This document also requests that
	IANA modify several existing registries of Kerberos protocol
	parameters.
      </t>
      <t>
	This document requests that IANA modify the existing
	"Pre-authentication data and typed data" registry to contain
	an additional reference to this document, and to transform
	existing names in that registry to the lowercase-and-hyphens
	style.
      </t>
    </section>
  </middle>

  <back>
    <references title="Normative References">
      &rfc3961;
      &rfc4120;
      &rfc5226;
    </references>
    <references title="Informative References">
      &rfc1510;
    </references>
  </back>
</rfc>
