<?xml version="1.0" encoding="us-ascii"?>
  <?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
  <!-- generated by https://github.com/cabo/kramdown-rfc2629 version 1.2.13 -->

<!DOCTYPE rfc SYSTEM "rfc2629.dtd" [
]>

<?rfc toc="yes"?>
<?rfc sortrefs="yes"?>
<?rfc symrefs="yes"?>

<rfc ipr="trust200902" docName="draft-ietf-lamps-rfc7030est-clarify-01" category="std">

  <front>
    <title abbrev="rfc7030est">Clarification of Enrollment over Secure Transport (EST): transfer encodings and ASN.1</title>

    <author initials="M." surname="Richardson" fullname="Michael Richardson">
      <organization>Sandelman Software Works</organization>
      <address>
        <email>mcr+ietf@sandelman.ca</email>
      </address>
    </author>
    <author initials="T." surname="Werner" fullname="Thomas Werner">
      <organization>Siemens</organization>
      <address>
        <email>thomas-werner@siemens.com</email>
      </address>
    </author>
    <author initials="W." surname="Pan" fullname="Wei Pan">
      <organization>Huawei Technologies</organization>
      <address>
        <email>william.panwei@huawei.com</email>
      </address>
    </author>

    <date year="2020" month="March" day="05"/>

    <area>Internet</area>
    <workgroup>LAMPS Working Group</workgroup>
    <keyword>Internet-Draft</keyword>

    <abstract>


<t>This document updates RFC7030: Enrollment over Secure Transport (EST) to resolve
some errata that was reported, and which has proven to have interoperability
when RFC7030 has been extended.</t>

<t>This document deprecates the specification of "Content-Transfer-Encoding"
headers for EST endpoints, providing a way to do this in an upward compatible
way.  This document fixes some syntactical errors in ASN.1 that was
presented.</t>



    </abstract>


  </front>

  <middle>


<section anchor="introduction" title="Introduction">

<t><xref target="RFC7030"/> defines the Enrollment over Secure Transport, or EST protocol.</t>

<t>This specification defines a number of HTTP end points for certificate enrollment and management.
The details of the transaction were defined in terms of MIME headers as defined in <xref target="RFC2045"/>,
rather than in terms of the HTTP protocol as defined in <xref target="RFC2616"/> and <xref target="RFC7230"/>.</t>

<t><xref target="RFC2616"/> and later <xref target="RFC7231"/> Appendix A.5 has text specifically
deprecating Content-Transfer-Encoding.</t>

<t><xref target="RFC7030"/> calls it out this header incorrectly.</t>

<t><xref target="I-D.ietf-anima-bootstrapping-keyinfra"/> extends <xref target="RFC7030"/>, adding new
functionality, and interop testing of the protocol has revealed that unusual processing
called out in <xref target="RFC7030"/> causes confusion.</t>

<t>EST is currently specified as part of IEC 62351, and is widely used in Government,
Utilities and Financial markets today.</t>

<t>Changes to <xref target="RFC7030"/> to bring it inline with typical HTTP processing would change
the on-wire protocol in a way that is not backwards compatible. Reports from the field
suggest that many implementations do not send the Content-Transfer-Encoding, and many
of them ignore it.</t>

<t>This document therefore revises <xref target="RFC7030"/> to reflect the field reality, deprecating
the extranous field.</t>

<t>This document deals with errata numbers <xref target="errata4384"/>, <xref target="errata5107"/>, and <xref target="errata5108"/>.</t>

</section>
<section anchor="terminology" title="Terminology">

<t>The abbreviation "CTE" is used to denote the Content-Transfer-Encoding header, and the abbreviation
"CTE-base64" is used to denote a request or response whose Content-Transfer-Encoding header contains
the value "base64".</t>

</section>
<section anchor="rfc2119" title="Requirements Language">

<t>In this document, the key words "MUST", "MUST NOT", "REQUIRED",
"SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY",
and "OPTIONAL" are to be interpreted as described in BCP 14, RFC 2119
<xref target="RFC2119"/> and indicate requirement levels for compliant STuPiD
implementations.</t>

</section>
<section anchor="changes-to-est-endpoint-processing" title="Changes to EST endpoint processing">

<t>The <xref target="RFC7030"/> sections 4.1.3 (CA Certificates Response, /cacerts),
4.3.1/4.3.2 (Full CMC, /fullcmc), 4.4.2 (Server-Side Key Generation, /serverkeygen),
and 4.5.2 (CSR Attributes, /csrattrs) specify the use of base64 encoding with a
Content-Transfer-Encoding for requests and response.</t>

<t>This document updates <xref target="RFC7030"/> to require the POST request and payload response of all
endpoints in to be <xref target="RFC4648"/> section 4 Base64 encoded DER.  This format is to be used
regardless of whether there is any Content-Transfer-Encoding header, and any value in that
header is to be ignored.</t>

</section>
<section anchor="clarification-of-asn1-for-certificate-attribute-set" title="Clarification of ASN.1 for Certificate Attribute set.">

<t>Section 4.5.2 of <xref target="RFC7030"/> is to be replaced with the following text:</t>

<section anchor="csr-attributes-response" title="CSR Attributes Response">

<t>If locally configured policy for an authenticated EST client indicates
a CSR Attributes Response is to be provided, the server response MUST
include an HTTP 200 response code.  An HTTP response code of 204 or 404
indicates that a CSR Attributes Response is not available.  Regardless
of the response code, the EST server and CA MAY reject any subsequent
enrollment requests for any reason, e.g., incomplete CSR attributes in
the request.</t>

<t>Responses to attribute request messages MUST be encoded as the
content-type of "application/csrattrs", and are to be "base64" <xref target="RFC2045"/>
encoded.  The syntax for application/csrattrs body is as follows:</t>

<figure><artwork><![CDATA[
CsrAttrs ::= SEQUENCE SIZE (0..MAX) OF AttrOrOID

AttrOrOID ::= CHOICE {
  oid        OBJECT IDENTIFIER,
  attribute  Attribute {{AttrSet}} }

AttrSet ATTRIBUTE ::= { AttributesDefinedInRFC7030, ... }
]]></artwork></figure>

<t>An EST server includes zero or more OIDs or attributes <xref target="RFC2986"/> that
it requests the client to use in the certification request.  The client
MUST ignore any OID or attribute it does not recognize.  When the
server encodes CSR Attributes as an empty SEQUENCE, it means that the
server has no specific additional information it desires in a client
certification request (this is functionally equivalent to an HTTP
response code of 204 or 404).</t>

<t>If the CA requires a particular crypto system or use of a particular
signature scheme (e.g., certification of a public key based on a
certain elliptic curve, or signing using a certain hash algorithm) it
MUST provide that information in the CSR Attribute Response.  If an
EST server requires the linking of identity and POP information (see
Section 3.5), it MUST include the challengePassword OID in the CSR
Attributes Response.</t>

<t>The structure of the CSR Attributes Response SHOULD, to the greatest
extent possible, reflect the structure of the CSR it is requesting.
Requests to use a particular signature scheme (e.g. using a
particular hash function) are represented as an OID to be reflected
in the SignatureAlgorithm of the CSR.  Requests to use a particular
crypto system (e.g., certification of a public key based on a certain
elliptic curve) are represented as an attribute, to be reflected as
the AlgorithmIdentifier of the SubjectPublicKeyInfo, with a type
indicating the algorithm and the values indicating the particular
parameters specific to the algorithm.  Requests for descriptive
information from the client are made by an attribute, to be
represented as Attributes of the CSR, with a type indicating the
<xref target="RFC2985"/> extensionRequest and the values indicating the particular
attributes desired to be included in the resulting certificate's
extensions.</t>

<t>The sequence is Distinguished Encoding Rules (DER) encoded <xref target="X690"/>
and then base64 encoded (Section 4 of <xref target="RFC4648"/>).  The resulting text
forms the application/csrattr body, without headers.</t>

<t>For example, if a CA requests a client to submit a certification
request containing the challengePassword (indicating that linking of
identity and POP information is requested; see Section 3.5), an
extensionRequest with the Media Access Control (MAC) address
(<xref target="RFC2307"/>) of the client, and to use the secp384r1 elliptic curve
and to sign with the SHA384 hash function.  Then, it takes the
following:</t>

<figure><artwork><![CDATA[
      OID:        challengePassword (1.2.840.113549.1.9.7)

      Attribute:  type = extensionRequest (1.2.840.113549.1.9.14)
                  value = macAddress (1.3.6.1.1.1.1.22)

      Attribute:  type = id-ecPublicKey (1.2.840.10045.2.1)
                  value = secp384r1 (1.3.132.0.34)

      OID:        ecdsaWithSHA384 (1.2.840.10045.4.3.3)
]]></artwork></figure>

<t>and encodes them into an ASN.1 SEQUENCE to produce:
~~~
    30 41 06 09 2a 86 48 86 f7 0d 01 09 07 30 12 06 07 2a 86 48 ce 3d
    02 01 31 07 06 05 2b 81 04 00 22 30 16 06 09 2a 86 48 86 f7 0d 01
    09 0e 31 09 06 07 2b 06 01 01 01 01 16 06 08 2a 86 48 ce 3d 04 03
    03
~~~</t>

<t>and then base64 encodes the resulting ASN.1 SEQUENCE to produce:</t>

<figure><artwork><![CDATA[
    MEEGCSqGSIb3DQEJBzASBgcqhkjOPQIBMQcGBSuBBAAiMBYGCSqGSIb3DQEJDjEJ
    BgcrBgEBAQEWBggqhkjOPQQDAw==
]]></artwork></figure>

</section>
</section>
<section anchor="clarification-of-error-messages-for-certificate-enrollment-operations" title="Clarification of error messages for certificate enrollment operations">

<t><xref target="errata5108"/> clarifies what format the error messages are to be in.
Previously a client might be confused into believing that an error returned
with type text/plain was not intended to be an error.</t>

<section anchor="updating-section-423-simple-enroll-and-re-enroll-response" title="Updating section 4.2.3: Simple Enroll and Re-enroll Response">

<t>Replace:</t>

<figure><artwork><![CDATA[
    If the content-type is not set, the response data MUST be a
    plaintext human-readable error message containing explanatory
    information describing why the request was rejected (for
    example, indicating that CSR attributes are incomplete).
]]></artwork></figure>

<t>with:</t>

<figure><artwork><![CDATA[
    If the content-type is not set, the response data must be a
    plaintext human-readable error message containing explanatory
    information describing why the request was rejected (for
    example, indicating that CSR attributes are incomplete).
    Servers MAY use the "text/plain" content-type [RFC2046]
    for human-readable errors.
]]></artwork></figure>

</section>
<section anchor="updating-section-442-server-side-key-generation-response" title="Updating section 4.4.2: Server-Side Key Generation Response">

<t>Replace:</t>

<figure><artwork><![CDATA[
    If the content-type is not set, the response data MUST be a
    plaintext human-readable error message.
]]></artwork></figure>

<t>with:</t>

<figure><artwork><![CDATA[
    If the content-type is not set, the response data must be a
    plaintext human-readable error message.
    Servers MAY use the "text/plain" content-type [RFC2046]
    for human-readable errors.
]]></artwork></figure>

</section>
</section>
<section anchor="privacy-considerations" title="Privacy Considerations">

<t>This document does not disclose any additional identifies to either active or
passive observer would see with <xref target="RFC7030"/>.</t>

</section>
<section anchor="security-considerations" title="Security Considerations">

<t>This document clarifies an existing security mechanism.
# IANA Considerations</t>

<t>The ASN.1 module in Appendix A of this doucment makes use of object
identifiers (OIDs).  This document requests that IANA register an
OID in the SMI Security for PKIX Arc in the Module identifiers
subarc (1.3.6.1.5.5.7.0) for the ASN.1 module.  The OID for the
Asymmetric Decryption Key Identifier (1.2.840.113549.1.9.16.2.54)
was previously defined in <xref target="RFC7030"/>.</t>

<t>IANA is requested to update the "Reference" column for the Asymmetric
Decryption Key Identifier
attribute to also include a reference to this doducment.</t>

</section>
<section anchor="acknowledgements" title="Acknowledgements">

<t>This work was supported by the Huawei Technologies.</t>

<t>The ASN.1 Module was assembled by Russ Housley and formatted by Sean Turner.</t>

</section>


  </middle>

  <back>

    <references title='Normative References'>





<reference  anchor="RFC2119" target='https://www.rfc-editor.org/info/rfc2119'>
<front>
<title>Key words for use in RFCs to Indicate Requirement Levels</title>
<author initials='S.' surname='Bradner' fullname='S. Bradner'><organization /></author>
<date year='1997' month='March' />
<abstract><t>In many standards track documents several words are used to signify the requirements in the specification.  These words are often capitalized. This document defines these words as they should be interpreted in IETF documents.  This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t></abstract>
</front>
<seriesInfo name='BCP' value='14'/>
<seriesInfo name='RFC' value='2119'/>
<seriesInfo name='DOI' value='10.17487/RFC2119'/>
</reference>



<reference  anchor="RFC2986" target='https://www.rfc-editor.org/info/rfc2986'>
<front>
<title>PKCS #10: Certification Request Syntax Specification Version 1.7</title>
<author initials='M.' surname='Nystrom' fullname='M. Nystrom'><organization /></author>
<author initials='B.' surname='Kaliski' fullname='B. Kaliski'><organization /></author>
<date year='2000' month='November' />
<abstract><t>This memo represents a republication of PKCS #10 v1.7 from RSA Laboratories' Public-Key Cryptography Standards (PKCS) series, and change control is retained within the PKCS process.  The body of this document, except for the security considerations section, is taken directly from the PKCS #9 v2.0 or the PKCS #10 v1.7 document.  This memo provides information for the Internet community.</t></abstract>
</front>
<seriesInfo name='RFC' value='2986'/>
<seriesInfo name='DOI' value='10.17487/RFC2986'/>
</reference>



<reference  anchor="RFC4648" target='https://www.rfc-editor.org/info/rfc4648'>
<front>
<title>The Base16, Base32, and Base64 Data Encodings</title>
<author initials='S.' surname='Josefsson' fullname='S. Josefsson'><organization /></author>
<date year='2006' month='October' />
<abstract><t>This document describes the commonly used base 64, base 32, and base 16 encoding schemes.  It also discusses the use of line-feeds in encoded data, use of padding in encoded data, use of non-alphabet characters in encoded data, use of different encoding alphabets, and canonical encodings.  [STANDARDS-TRACK]</t></abstract>
</front>
<seriesInfo name='RFC' value='4648'/>
<seriesInfo name='DOI' value='10.17487/RFC4648'/>
</reference>



<reference  anchor="RFC7030" target='https://www.rfc-editor.org/info/rfc7030'>
<front>
<title>Enrollment over Secure Transport</title>
<author initials='M.' surname='Pritikin' fullname='M. Pritikin' role='editor'><organization /></author>
<author initials='P.' surname='Yee' fullname='P. Yee' role='editor'><organization /></author>
<author initials='D.' surname='Harkins' fullname='D. Harkins' role='editor'><organization /></author>
<date year='2013' month='October' />
<abstract><t>This document profiles certificate enrollment for clients using Certificate Management over CMS (CMC) messages over a secure transport.  This profile, called Enrollment over Secure Transport (EST), describes a simple, yet functional, certificate management protocol targeting Public Key Infrastructure (PKI) clients that need to acquire client certificates and associated Certification Authority (CA) certificates.  It also supports client-generated public/private key pairs as well as key pairs generated by the CA.</t></abstract>
</front>
<seriesInfo name='RFC' value='7030'/>
<seriesInfo name='DOI' value='10.17487/RFC7030'/>
</reference>



<reference anchor="I-D.ietf-anima-bootstrapping-keyinfra">
<front>
<title>Bootstrapping Remote Secure Key Infrastructures (BRSKI)</title>

<author initials='M' surname='Pritikin' fullname='Max Pritikin'>
    <organization />
</author>

<author initials='M' surname='Richardson' fullname='Michael Richardson'>
    <organization />
</author>

<author initials='T' surname='Eckert' fullname='Toerless Eckert'>
    <organization />
</author>

<author initials='M' surname='Behringer' fullname='Michael Behringer'>
    <organization />
</author>

<author initials='K' surname='Watsen' fullname='Kent Watsen'>
    <organization />
</author>

<date month='February' day='26' year='2020' />

<abstract><t>This document specifies automated bootstrapping of an Autonomic Control Plane.  To do this a Secure Key Infrastructure is bootstrapped.  This is done using manufacturer-installed X.509 certificates, in combination with a manufacturer's authorizing service, both online and offline.  We call this process the Bootstrapping Remote Secure Key Infrastructure (BRSKI) protocol. Bootstrapping a new device can occur using a routable address and a cloud service, or using only link-local connectivity, or on limited/ disconnected networks.  Support for deployment models with less stringent security requirements is included.  Bootstrapping is complete when the cryptographic identity of the new key infrastructure is successfully deployed to the device.  The established secure connection can be used to deploy a locally issued certificate to the device as well.</t></abstract>

</front>

<seriesInfo name='Internet-Draft' value='draft-ietf-anima-bootstrapping-keyinfra-37' />
<format type='TXT'
        target='http://www.ietf.org/internet-drafts/draft-ietf-anima-bootstrapping-keyinfra-37.txt' />
</reference>


<reference anchor="X680" >
  <front>
    <title>Information technology - Abstract Syntax Notation One.</title>
    <author >
      <organization>ITU-T</organization>
    </author>
    <date year="2002"/>
  </front>
  <seriesInfo name="ISO/IEC" value="8824-1:2002"/>
</reference>
<reference anchor="X681" >
  <front>
    <title>Information technology - Abstract Syntax Notation One: Information Object Specification.</title>
    <author >
      <organization>ITU-T</organization>
    </author>
    <date year="2002"/>
  </front>
  <seriesInfo name="ISO/IEC" value="8824-2:2002"/>
</reference>
<reference anchor="X682" >
  <front>
    <title>Information technology - Abstract Syntax Notation One: Constraint Specification.</title>
    <author >
      <organization>ITU-T</organization>
    </author>
    <date year="2002"/>
  </front>
  <seriesInfo name="ISO/IEC" value="8824-2:2002"/>
</reference>
<reference anchor="X683" >
  <front>
    <title>Information technology - Abstract Syntax Notation One: Parameterization of ASN.1 Specifications.</title>
    <author >
      <organization>ITU-T</organization>
    </author>
    <date year="2002"/>
  </front>
  <seriesInfo name="ISO/IEC" value="8824-2:2002"/>
</reference>
<reference anchor="X690" >
  <front>
    <title>Information technology - ASN.1 encoding Rules: Specification of Basic Encoding Rules (BER), Canonical Encoding Rules (CER) and Distinguished Encoding Rules (DER).</title>
    <author >
      <organization>ITU-T</organization>
    </author>
    <date year="2002"/>
  </front>
  <seriesInfo name="ISO/IEC" value="8825-1:2002"/>
</reference>




<reference  anchor="RFC2045" target='https://www.rfc-editor.org/info/rfc2045'>
<front>
<title>Multipurpose Internet Mail Extensions (MIME) Part One: Format of Internet Message Bodies</title>
<author initials='N.' surname='Freed' fullname='N. Freed'><organization /></author>
<author initials='N.' surname='Borenstein' fullname='N. Borenstein'><organization /></author>
<date year='1996' month='November' />
<abstract><t>This initial document specifies the various headers used to describe the structure of MIME messages.  [STANDARDS-TRACK]</t></abstract>
</front>
<seriesInfo name='RFC' value='2045'/>
<seriesInfo name='DOI' value='10.17487/RFC2045'/>
</reference>




    </references>

    <references title='Informative References'>





<reference  anchor="RFC2616" target='https://www.rfc-editor.org/info/rfc2616'>
<front>
<title>Hypertext Transfer Protocol -- HTTP/1.1</title>
<author initials='R.' surname='Fielding' fullname='R. Fielding'><organization /></author>
<author initials='J.' surname='Gettys' fullname='J. Gettys'><organization /></author>
<author initials='J.' surname='Mogul' fullname='J. Mogul'><organization /></author>
<author initials='H.' surname='Frystyk' fullname='H. Frystyk'><organization /></author>
<author initials='L.' surname='Masinter' fullname='L. Masinter'><organization /></author>
<author initials='P.' surname='Leach' fullname='P. Leach'><organization /></author>
<author initials='T.' surname='Berners-Lee' fullname='T. Berners-Lee'><organization /></author>
<date year='1999' month='June' />
<abstract><t>HTTP has been in use by the World-Wide Web global information initiative since 1990. This specification defines the protocol referred to as &quot;HTTP/1.1&quot;, and is an update to RFC 2068.  [STANDARDS-TRACK]</t></abstract>
</front>
<seriesInfo name='RFC' value='2616'/>
<seriesInfo name='DOI' value='10.17487/RFC2616'/>
</reference>



<reference  anchor="RFC7230" target='https://www.rfc-editor.org/info/rfc7230'>
<front>
<title>Hypertext Transfer Protocol (HTTP/1.1): Message Syntax and Routing</title>
<author initials='R.' surname='Fielding' fullname='R. Fielding' role='editor'><organization /></author>
<author initials='J.' surname='Reschke' fullname='J. Reschke' role='editor'><organization /></author>
<date year='2014' month='June' />
<abstract><t>The Hypertext Transfer Protocol (HTTP) is a stateless application-level protocol for distributed, collaborative, hypertext information systems.  This document provides an overview of HTTP architecture and its associated terminology, defines the &quot;http&quot; and &quot;https&quot; Uniform Resource Identifier (URI) schemes, defines the HTTP/1.1 message syntax and parsing requirements, and describes related security concerns for implementations.</t></abstract>
</front>
<seriesInfo name='RFC' value='7230'/>
<seriesInfo name='DOI' value='10.17487/RFC7230'/>
</reference>



<reference  anchor="RFC7231" target='https://www.rfc-editor.org/info/rfc7231'>
<front>
<title>Hypertext Transfer Protocol (HTTP/1.1): Semantics and Content</title>
<author initials='R.' surname='Fielding' fullname='R. Fielding' role='editor'><organization /></author>
<author initials='J.' surname='Reschke' fullname='J. Reschke' role='editor'><organization /></author>
<date year='2014' month='June' />
<abstract><t>The Hypertext Transfer Protocol (HTTP) is a stateless \%application- level protocol for distributed, collaborative, hypertext information systems.  This document defines the semantics of HTTP/1.1 messages, as expressed by request methods, request header fields, response status codes, and response header fields, along with the payload of messages (metadata and body content) and mechanisms for content negotiation.</t></abstract>
</front>
<seriesInfo name='RFC' value='7231'/>
<seriesInfo name='DOI' value='10.17487/RFC7231'/>
</reference>


<reference anchor="errata4384" target="https://www.rfc-editor.org/errata/eid4384">
  <front>
    <title>EST errata 4384: ASN.1 encoding error</title>
    <author >
      <organization></organization>
    </author>
    <date year="n.d."/>
  </front>
</reference>
<reference anchor="errata5107" target="https://www.rfc-editor.org/errata/eid5107">
  <front>
    <title>EST errata 5107: use Content-Transfer-Encoding</title>
    <author >
      <organization></organization>
    </author>
    <date year="n.d."/>
  </front>
</reference>
<reference anchor="errata5108" target="https://www.rfc-editor.org/errata/eid5108">
  <front>
    <title>EST errata 5108: use of Content-Type for error message</title>
    <author >
      <organization></organization>
    </author>
    <date year="n.d."/>
  </front>
</reference>




<reference  anchor="RFC2985" target='https://www.rfc-editor.org/info/rfc2985'>
<front>
<title>PKCS #9: Selected Object Classes and Attribute Types Version 2.0</title>
<author initials='M.' surname='Nystrom' fullname='M. Nystrom'><organization /></author>
<author initials='B.' surname='Kaliski' fullname='B. Kaliski'><organization /></author>
<date year='2000' month='November' />
<abstract><t>This memo represents a republication of PKCS #9 v2.0 from RSA Laboratories' Public-Key Cryptography Standards (PKCS) series, and change control is retained within the PKCS process.  The body of this document, except for the security considerations section, is taken directly from that specification.  This memo provides information for the Internet community.</t></abstract>
</front>
<seriesInfo name='RFC' value='2985'/>
<seriesInfo name='DOI' value='10.17487/RFC2985'/>
</reference>



<reference  anchor="RFC2307" target='https://www.rfc-editor.org/info/rfc2307'>
<front>
<title>An Approach for Using LDAP as a Network Information Service</title>
<author initials='L.' surname='Howard' fullname='L. Howard'><organization /></author>
<date year='1998' month='March' />
<abstract><t>This document describes an experimental mechanism for mapping entities related to TCP/IP and the UNIX system into X.500 entries so that they may be resolved with the Lightweight Directory Access Protocol [RFC2251].  This memo defines an Experimental Protocol for the Internet community.  It does not specify an Internet standard of any kind. Discussion and suggestions for improvement are requested.</t></abstract>
</front>
<seriesInfo name='RFC' value='2307'/>
<seriesInfo name='DOI' value='10.17487/RFC2307'/>
</reference>




    </references>


<section anchor="asn1-module" title="ASN.1 Module">

<t>This annex provides the normative ASN.1 definitions for the structures
described in this specification using ASN.1 as defined in <xref target="X680"/>
through <xref target="X683"/>.</t>

<t>There is no ASN.1 Module in RFC 7030.  This module has been created
by combining the lines that are contained in the document body.</t>

<figure><artwork><![CDATA[
PKIXEST-2019
     { iso(1) identified-organization(3) dod(6)
       internet(1) security(5) mechanisms(5) pkix(7) id-mod(0)
       id-mod-est-2019(TBD) }

DEFINITIONS IMPLICIT TAGS ::=
BEGIN

-- EXPORTS ALL --

IMPORTS

Attribute
FROM CryptographicMessageSyntax-2010  -- [RFC6268]
      { iso(1) member-body(2) us(840) rsadsi(113549)
        pkcs(1) pkcs-9(9) smime(16) modules(0)
         id-mod-cms-2009(58) }

ATTRIBUTE
FROM PKIX-CommonTypes-2009
    { iso(1) identified-organization(3) dod(6) internet(1) security(5)
      mechanisms(5) pkix(7) id-mod(0) id-mod-pkixCommon-02(57) } ;


-- CSR Attributes

CsrAttrs ::= SEQUENCE SIZE (0..MAX) OF AttrOrOID

AttrOrOID ::= CHOICE {
   oid        OBJECT IDENTIFIER,
   attribute  Attribute {{AttrSet}} }

AttrSet ATTRIBUTE ::= { AttributesDefinedInRFC7030, ... }


-- Asymmetric Decrypt Key Identifier Attribute

AttributesDefinedInRFC7030 ATTRIBUTE ::= { aa-asymmDecryptKeyID, ... }

aa-asymmDecryptKeyID ATTRIBUTE ::=
    { TYPE AsymmetricDecryptKeyIdentifier
      IDENTIFIED BY id-aa-asymmDecryptKeyID }

id-aa-asymmDecryptKeyID OBJECT IDENTIFIER ::= { iso(1) member-body(2)
    us(840) rsadsi(113549) pkcs(1) pkcs9(9) smime(16) aa(2) 54 }

AsymmetricDecryptKeyIdentifier ::= OCTET STRING

END
]]></artwork></figure>

</section>


  </back>

<!-- ##markdown-source:
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
0YLPQS037xgb3Qwpxf03yRqQAyo0AAA=

-->

</rfc>

