home *** CD-ROM | disk | FTP | other *** search
/ Handbook of Infosec Terms 2.0 / Handbook_of_Infosec_Terms_Version_2.0_ISSO.iso / text / rfcs / rfc1779.txt < prev    next >
Text File  |  1996-05-07  |  13KB  |  292 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7. Network Working Group                                           S. Kille Request for Comments: 1779                              ISODE Consortium Obsoletes: 1485                                               March 1995 Category: Standards Track 
  8.  
  9.               A String Representation of Distinguished Names 
  10.  
  11. Status of this Memo 
  12.  
  13.    This document specifies an Internet standards track protocol for the    Internet community, and requests discussion and suggestions for    improvements.  Please refer to the current edition of the "Internet    Official Protocol Standards" (STD 1) for the standardization state    and status of this protocol.  Distribution of this memo is unlimited. 
  14.  
  15. Abstract 
  16.  
  17.    The OSI Directory uses distinguished names as the primary keys to    entries in the directory.  Distinguished Names are encoded in ASN.1.    When a distinguished name is communicated between to users not using    a directory protocol (e.g., in a mail message), there is a need to    have a user-oriented string representation of distinguished name.    This specification defines a string format for representing names,    which is designed to give a clean representation of commonly used    names, whilst being able to represent any distinguished name. 
  18.  
  19. Table of Contents 
  20.  
  21.    1.   Why a notation is needed ...................................   2    2.   A notation for Distinguished Name ..........................   2        2.1    Goals ................................................   2        2.2    Informal definition ..................................   2        2.3    Formal definition ....................................   4    3.   Examples ...................................................   6    4.   Acknowledgements ...........................................   7    5.   References .................................................   7    6.   Security Considerations ....................................   8    7.   Author's Address ...........................................   8 
  22.  
  23.  
  24.  
  25.  
  26.  
  27.  
  28.  
  29.  
  30.  
  31.  
  32.  
  33.  Kille                                                           [Page 1] 
  34.  RFC 1779                   DN Representation                  March 1995 
  35.  
  36.  1.  Why a notation is needed 
  37.  
  38.    Many OSI Applications make use of Distinguished Names (DN) as defined    in the OSI Directory, commonly known as X.500 [1].  This    specification assumes familiarity with X.500, and the concept of    Distinguished Name.  It is important to have a common format to be    able to unambiguously represent a distinguished name.  This might be    done to represent a directory name on a business card or in an email    message.  There is a need for a format to support human to human    communication, which must be string based (not ASN.1) and user    oriented.  This notation is targeted towards a general user oriented    system, and in particular to represent the names of humans.  Other    syntaxes may be more appropriate for other uses of the directory.    For example, the OSF Syntax may be more appropriate for some system    oriented uses.  (The OSF Syntax uses "/" as a separator, and forms    names in a manner intended to resemble UNIX filenames). 
  39.  
  40. 2.  A notation for Distinguished Name 
  41.  
  42. 2.1  Goals 
  43.  
  44.    The following goals are laid out: 
  45.  
  46.     o  To provide an unambiguous representation of a distinguished name 
  47.  
  48.     o  To be an intuitive format for the majority of names 
  49.  
  50.     o  To be fully general, and able to represent any distinguished name 
  51.  
  52.     o  To be amenable to a number of different layouts to achieve an        attractive representation. 
  53.  
  54.     o  To give a clear representation of the contents of the        distinguished name 
  55.  
  56. 2.2  Informal definition 
  57.  
  58.    This notation is designed to be convenient for common forms of name.    Some examples are given.  The author's directory distinguished name    would be written: 
  59.  
  60.    CN=Steve Kille,    O=ISODE Consortium, C=GB 
  61.  
  62.  
  63.  
  64.  
  65.  
  66.  
  67.  
  68.  Kille                                                           [Page 2] 
  69.  RFC 1779                   DN Representation                  March 1995 
  70.  
  71.     This may be folded, perhaps to display in multi-column format.  For    example: 
  72.  
  73.    CN=Steve Kille,    O=ISODE Consortium,    C=GB 
  74.  
  75.    Another name might be: 
  76.  
  77.    CN=Christian Huitema, O=INRIA, C=FR 
  78.  
  79.    Semicolon (";") may be used as an alternate separator.  The    separators may be mixed, but this usage is discouraged. 
  80.  
  81.    CN=Christian Huitema; O=INRIA; C=FR 
  82.  
  83.    In running text, this would be written as <CN=Christian Huitema;    O=INRIA; C=FR>.  Another example, shows how different attribute types    are handled: 
  84.  
  85.    CN=James Hacker,    L=Basingstoke,    O=Widget Inc,    C=GB 
  86.  
  87.    Here is an example of a multi-valued Relative Distinguished Name,    where the namespace is flat within an organisation, and department is    used to disambiguate certain names: 
  88.  
  89.    OU=Sales + CN=J. Smith, O=Widget Inc., C=US 
  90.  
  91.    The final examples show both methods quoting of a comma in an    Organisation name: 
  92.  
  93.    CN=L. Eagle, O="Sue, Grabbit and Runn", C=GB 
  94.  
  95.    CN=L. Eagle, O=Sue\, Grabbit and Runn, C=GB 
  96.  
  97.  
  98.  
  99.  
  100.  
  101.  
  102.  
  103.  
  104.  
  105.  
  106.  
  107.  
  108.  
  109.  Kille                                                           [Page 3] 
  110.  RFC 1779                   DN Representation                  March 1995 
  111.  
  112.  2.3  Formal definition 
  113.  
  114.    A formal definition can now be given.  The structure is specified in    a BNF grammar in Figure 1.  This BNF uses the grammar defined in RFC    822, with the terminals enclosed in <> [2].  This definition is in an    abstract character set, and so may be written in any character set    supporting the explicitly defined special characters.  The quoting    mechanism is used for the following cases: 
  115.  
  116.     o  Strings containing ",", "+", "=" or """ , <CR>, "<",        ">", "#", or ";". 
  117.  
  118.     o  Strings with leading or trailing spaces 
  119.  
  120.     o  Strings containing consecutive spaces 
  121.  
  122.    There is an escape mechanism from the normal user oriented form, so    that this syntax may be used to print any valid distinguished name.    This is ugly.  It is expected to be used only in pathological cases.    There are two parts to this mechanism: 
  123.  
  124.    1.  Attributes types are represented in a (big-endian) dotted        notation.  (e.g., OID.2.6.53). 
  125.  
  126.    2.  Attribute values are represented in hexadecimal (e.g.  #0A56CF).        Each pair of hex digits defines an octet, which is the ASN.1 Basic        Encoding Rules value of the Attribute Value. 
  127.  
  128.    The keyword specification is optional in the BNF, but mandatory for    this specification.  This is so that the same BNF may be used for the    related specification on User Friendly Naming [5].  When this    specification is followed, the attribute type keywords must always be    present. 
  129.  
  130.    A list of valid keywords for well known attribute types used in    naming is given in Table 1.  Keywords may contain spaces, but shall    not have leading or trailing spaces.  This is a list of keywords    which must be supported.  These are chosen because they appear in    common forms of name, and can do so in a place which does not    correspond to the default schema used.  A register of valid keywords    is maintained by the IANA. 
  131.  
  132.  
  133.  
  134.  
  135.  
  136.  
  137.  
  138.  
  139.  
  140.  Kille                                                           [Page 4] 
  141.  RFC 1779                   DN Representation                  March 1995 
  142.  
  143.     <name> ::= <name-component> ( <spaced-separator> )           | <name-component> <spaced-separator> <name> 
  144.  
  145.    <spaced-separator> ::= <optional-space>                    <separator>                    <optional-space> 
  146.  
  147.    <separator> ::=  "," | ";" 
  148.  
  149.    <optional-space> ::= ( <CR> ) *( " " ) 
  150.  
  151.    <name-component> ::= <attribute>            | <attribute> <optional-space> "+"              <optional-space> <name-component> 
  152.  
  153.    <attribute> ::= <string>            | <key> <optional-space> "=" <optional-space> <string> 
  154.  
  155.    <key> ::= 1*( <keychar> ) | "OID." <oid> | "oid." <oid>    <keychar> ::= letters, numbers, and space 
  156.  
  157.    <oid> ::= <digitstring> | <digitstring> "." <oid>    <digitstring> ::= 1*<digit>    <digit> ::= digits 0-9 
  158.  
  159.    <string> ::= *( <stringchar> | <pair> )             | '"' *( <stringchar> | <special> | <pair> ) '"'             | "#" <hex> 
  160.  
  161.     <special> ::= "," | "=" | <CR> | "+" | "<" |  ">"             | "#" | ";" 
  162.  
  163.    <pair> ::= "\" ( <special> | "\" | '"')    <stringchar> ::= any character except <special> or "\" or '"' 
  164.  
  165.     <hex> ::= 2*<hexchar>    <hexchar> ::= 0-9, a-f, A-F 
  166.  
  167.  
  168.  
  169.                Figure 1:  BNF Grammar for Distinguished Name 
  170.  
  171.  
  172.  
  173.  
  174.  
  175.  
  176.  
  177.  Kille                                                           [Page 5] 
  178.  RFC 1779                   DN Representation                  March 1995 
  179.  
  180.                         Key     Attribute (X.520 keys)                        ------------------------------                        CN      CommonName                        L       LocalityName                        ST      StateOrProvinceName                        O       OrganizationName                        OU      OrganizationalUnitName                        C       CountryName                        STREET  StreetAddress 
  181.  
  182.                        Table 1:  Standardised Keywords 
  183.  
  184.     Only string type attributes are considered, but other attribute    syntaxes could be supported locally (e.g., by use of the syntexes    defined in [3].)  It is assumed that the interface will translate    from the supplied string into an appropriate Directory String    encoding.  The "+" notation is used to specify multi-component RDNs.    In this case, the types for attributes in the RDN must be explicit. 
  185.  
  186.    The name is presented/input in a little-endian order (most    significant component last).  When an address is written in a context    where there is a need to delimit the entire address (e.g., in free    text), it is recommended that the delimiters <> are used.  The    terminator > is a special in the notation to facilitate this    delimitation. 
  187.  
  188. 3.  Examples 
  189.  
  190.    This section gives a few examples of distinguished names written    using this notation: 
  191.  
  192.    CN=Marshall T. Rose, O=Dover Beach Consulting, L=Santa Clara,    ST=California, C=US 
  193.  
  194.    CN=FTAM Service, CN=Bells, OU=Computer Science,    O=University College London, C=GB 
  195.  
  196.    CN=Markus Kuhn, O=University of Erlangen, C=DE 
  197.  
  198.    CN=Steve Kille,    O=ISODE Consortium,    C=GB 
  199.  
  200.  
  201.  
  202.  
  203.  
  204.  
  205.  
  206. Kille                                                           [Page 6] 
  207.  RFC 1779                   DN Representation                  March 1995 
  208.  
  209.     CN=Steve Kille , 
  210.  
  211.    O =   ISODE Consortium,    C=GB 
  212.  
  213.    CN=Steve Kille, O=ISODE Consortium, C=GB 
  214.  
  215. 4.  Acknowledgements 
  216.  
  217.    This work was based on research work done at University College    London [4], and evolved by the IETF OSI-DS WG. 
  218.  
  219.    Input for this version of the document was received from:  Allan    Cargille (University of Wisconsin); John Dale (COS); Philip Gladstone    (Onsett); John Hawthorne (US Air Force); Roland Hedberg (University    of Umea); Kipp Hickman (Mosaic Communications Corp.)  Markus Kuhn    (University of Erlangen); Elisabeth Roudier (E3X); Mark Wahl (ISODE    Consortium). 
  220.  
  221. 5.  References 
  222.  
  223.    [1] The Directory --- overview of concepts, models and services,        1993. CCITT X.500 Series Recommendations. 
  224.  
  225.    [2] Crocker, D., "Standard of the Format of ARPA-Internet Text        Messages", STD 11, RFC 822, University of Delaware, August 1982. 
  226.  
  227.    [3] Yeong, W., Howes, T., and S. Kille, "Lightweight Directory Access        Protocol", RFC 1777, Performance Systems International,        University of Michigan, ISODE Consortium, March 1995. 
  228.  
  229.    [4] S.E. Kille. Using the OSI directory to achieve user friendly        naming. Research Note RN/20/29, Department of Computer Science,        University College London, February 1990. 
  230.  
  231.    [5] Kille, S., "Using the OSI Directory to Achieve User Friendly        Naming", RFC 1781, ISODE Consortium, March 1995. 
  232.  
  233.  
  234.  
  235.  
  236.  
  237.  
  238.  
  239.  
  240.  
  241.  
  242.  
  243.  
  244.  
  245.  Kille                                                           [Page 7] 
  246.  RFC 1779                   DN Representation                  March 1995 
  247.  
  248.  6.  Security Considerations 
  249.  
  250.    Security issues are not discussed in this memo. 
  251.  
  252. 7.  Author's Address 
  253.  
  254.    Steve Kille    ISODE Consortium    The Dome    The Square    Richmond, Surrey    TW9 1DT    England 
  255.  
  256.    Phone:  +44-181-332-9091    EMail:  S.Kille@ISODE.COM 
  257.  
  258.    DN: CN=Steve Kille,    O=ISODE Consortium, C=GB 
  259.  
  260.    UFN: S. Kille,    ISODE Consortium, GB 
  261.  
  262.  
  263.  
  264.  
  265.  
  266.  
  267.  
  268.  
  269.  
  270.  
  271.  
  272.  
  273.  
  274.  
  275.  
  276.  
  277.  
  278.  
  279.  
  280.  
  281.  
  282.  
  283.  
  284.  
  285.  
  286.  
  287.  
  288.  
  289.  
  290. Kille                                                           [Page 8] 
  291.  
  292.