<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE rfc [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">
]>
<?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
<!-- generated by https://github.com/cabo/kramdown-rfc version 1.7.39 (Ruby 3.4.9) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-ietf-ediint-rfc4130bis-02" category="std" consensus="true" submissionType="IETF" obsoletes="4130" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.34.0 -->
  <front>
    <title>AS2 Specification Modernization</title>
    <seriesInfo name="Internet-Draft" value="draft-ietf-ediint-rfc4130bis-02"/>
    <author fullname="Debra Petta">
      <organization>Drummond Group, LLC</organization>
      <address>
        <email>debrap@drummondgroup.com</email>
      </address>
    </author>
    <date year="2026" month="July" day="29"/>
    <keyword>AS2</keyword>
    <keyword>EDIINT</keyword>
    <keyword>B2B</keyword>
    <abstract>
      <?line 70?>

<t>This document provides an applicability statement (RFC 2026, Section 3.2)
describing how to securely exchange structured business data over HTTP.
Structured business data may be XML; Electronic Data Interchange (EDI)
in either the American National Standards Committee (ANSI) X12 format or
the UN Electronic Data Interchange for Administration, Commerce, and
Transport (UN/EDIFACT) format; or other structured data formats. The data
is packaged using standard MIME structures. Authentication and data
confidentiality are obtained by using Cryptographic Message Syntax with
S/MIME security body parts (see <xref target="https-tls-reqs"/>).
Authenticated acknowledgements make use of multipart/signed
Message Disposition Notification (MDN) responses to the original HTTP message.
This applicability statement is informally referred to as "AS2" because
it is the second applicability statement, produced after "AS1" (RFC 3335).
This document obsoletes RFC 4130 and stands on its own without reference to AS1
or SMTP, except where required for IANA registry updates.</t>
      <t>This document also updates IANA registries originally created by RFC
3335 and RFC 4130.</t>
    </abstract>
    <note removeInRFC="true">
      <name>About This Document</name>
      <t>
        The latest revision of this draft can be found at <eref target="https://DrummondGroup.github.io/draft-ietf-ediint-rfc4130bis/draft-ietf-ediint-rfc4130bis.html"/>.
        Status information for this document may be found at <eref target="https://datatracker.ietf.org/doc/draft-ietf-ediint-rfc4130bis/"/>.
      </t>
      <t>Source for this draft and an issue tracker can be found at
        <eref target="https://github.com/DrummondGroup/draft-ietf-ediint-rfc4130bis"/>.</t>
    </note>
  </front>
  <middle>
    <?line 91?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>This document is a revision ("bis") of RFC 4130, which defined the
Applicability Statement 2 (AS2) protocol for secure and reliable
transport of business data over HTTP. It obsoletes RFC 4130. The purpose
of this revision is to modernize the specification, clarify ambiguities,
and incorporate implementation experience gathered since the publication
of RFC 4130. Subsequent versions of this draft will refine these updates
based on discussion and consensus in the IETF community. This revision
also adheres to the principle of backward compatibility. Implementations
conformant with RFC 4130 remain valid under this specification, and no
breaking changes are introduced. In addition, this document updates
existing IANA registrations from RFC 3335 and RFC 4130. The specific
IANA actions are described in <xref target="iana-considerations"/>.</t>
      <t>Note to readers: Some contributors have suggested that this work could
eventually be split into two documents: a minimal RFC4130bis for errata and
clarifications, and a separate AS2 v2 specification with a clean
modern baseline. This document currently attempts to balance both
objectives within a single text, but further discussion may refine
the scope.</t>
      <section anchor="applicable-rfcs">
        <name>Applicable RFCs</name>
        <t>Previous work on Internet EDI focused on specifying MIME content types
for EDI data. <xref target="RFC1767"/> expands on this to specify a comprehensive set
of data security features, specifically data confidentiality, data
integrity/authenticity, non-repudiation of origin, and non-repudiation
of receipt over HTTP. This document recognizes contemporary RFCs and
avoids re-inventing mechanisms wherever possible. Although this
document focuses on EDI data, any other data types describable in a
MIME format are also supported.</t>
        <t>Internet MIME-based EDI can be accomplished by using and complying with
the following RFCs:</t>
        <artwork><![CDATA[
  o  RFC 2616 Hyper Text Transfer Protocol (baseline: HTTP/1.1)
  o  RFC 1767 EDI Content Type
  o  RFC 3023 XML Media Types
  o  RFC 1847 Security Multiparts for MIME
  o  RFC 3462 Multipart/Report
  o  RFC 2045 to 2049 MIME RFCs
  o  RFC 8098 Message Disposition Notification (updates RFC 3798)
  o  RFC 5751 S/MIME v3.2 Specification (obsoletes RFC 3851)
  o  RFC 8551 S/MIME v4.0 (obsoletes RFC 5751)
  o  RFC 5652 Cryptographic Message Syntax (CMS) (obsoletes RFC 3852)
]]></artwork>
        <t>This specification references S/MIME Version 4.0 <xref target="RFC8551"/> as the
baseline for algorithm requirements and security message formats.
S/MIME 4.0 introduces AuthEnvelopedData, which provides authenticated
encryption for algorithms such as AES-GCM and AES-CCM. For backward
compatibility with implementations that have not yet migrated to
S/MIME 4.0, this specification also permits the use of EnvelopedData
from S/MIME 3.2 <xref target="RFC5751"/> when using algorithms such as AES-CBC that
require separate integrity protection. The choice between
AuthEnvelopedData and EnvelopedData is determined by the content
encryption algorithm selected (see <xref target="encryption-algorithms"/>
for details).</t>
        <t>Our intent here is to define clearly and precisely how these are used
together, and what is required by user agents to be compliant with this
document. Implementers should note that HTTP/2 and HTTP/3 MAY be used
as transports, but are not required for interoperability.</t>
        <t>The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and
"OPTIONAL" in this document are to be interpreted as described in
BCP 14 <xref target="RFC2119"/> and <xref target="RFC8174"/> when, and only when, they appear in all
capitals, as shown here.</t>
      </section>
      <section anchor="backward-compatibility-and-interoperability">
        <name>Backward Compatibility and Interoperability</name>
        <t>A central design principle of this specification is "backward
compatibility" with RFC 4130 and with the underlying RFCs it references.
This specification does not redefine or override backward-compatibility
rules established in those RFCs. Implementations MUST rely on the
mechanisms provided in underlying standards.</t>
        <t>Consistent with the Robustness Principle ("be conservative in what you send and liberal in what you receive"),
this document clarifies requirements and aligns terminology but does not introduce breaking changes.
Implementations that conformed to RFC 4130 remain conformant to this specification. Any deviations
are limited to clarifications intended to improve interoperability.</t>
        <t>This specification establishes S/MIME Version 4.0 <xref target="RFC8551"/> as the
baseline for conformant implementations. Implementations MUST support
S/MIME 4.0 message formats (including AuthEnvelopedData) and the
algorithm requirements specified in <xref target="algorithm-requirements"/>.
Implementations SHOULD also support S/MIME Version 3.2 <xref target="RFC5751"/> for
backward compatibility with legacy trading partners that have not yet
migrated to S/MIME 4.0. When both partners support S/MIME 4.0,
implementations SHOULD use AuthEnvelopedData with authenticated
encryption algorithms (AES-GCM, AES-CCM) for improved security.
When interoperating with S/MIME 3.2 systems, implementations SHOULD use
EnvelopedData with algorithms such as AES-CBC that require separate
integrity protection via digital signatures.</t>
        <t>This specification defines requirements for modern AS2 deployments
using contemporary cryptographic algorithms. It does not redefine or
extend the use of weak algorithms used by <xref target="RFC4130"/> implementations.
When both partners support this version of AS2, only modern algorithms
are in scope.</t>
        <t>When interoperability with RFC 4130 systems is required, implementers
SHOULD apply the clarifications provided in <xref target="legacy-interoperability-non-normative"/>
(Legacy Interoperability). <xref target="legacy-interoperability-non-normative"/> is non-normative and does not alter the
algorithm requirements defined in <xref target="algorithm-requirements"/>, but records expected
behavior when communicating with legacy systems.</t>
        <section anchor="legacy-interoperability-non-normative">
          <name>Legacy Interoperability (Non-Normative)</name>
          <t>This section provides the conditions for interoperability with
   legacy AS2 implementations conforming to <xref target="RFC4130"/>. These provisions
   apply only when a modern AS2 implementation communicates with a
   partner that has not migrated to this specification. In such cases,
   both parties are effectively operating under <xref target="RFC4130"/>, not this
   document.</t>
          <t>These notes are provided to reduce ambiguity and ensure consistent
   behavior across implementations. They do not alter the algorithm
   requirements specified in <xref target="algorithm-requirements"/>, nor do they extend the use of
   deprecated algorithms.</t>
          <t>Examples of legacy considerations include:</t>
          <artwork><![CDATA[
     o  **Message Integrity Checks (MICs):** Implementations requiring
        support of weaker hash algorithms to maintain backward compatibility
        should refer to [RFC4130] .

     o  **Encryption Algorithms:** Implementations MAY accept inbound
        messages encrypted with weaker algorithms from legacy partners.
        However, they SHOULD NOT be generated by conformant implementations.
        AES (128-bit or stronger) remains the normative requirement in Section 7.2.

     o  **Multiple-Recipient Encryption:** RFC 4130 did not clearly
        specify expected behavior for multiple-recipient support. Modern
        implementations SHOULD support recoverable encryption by including
        a copy of the content-encryption key (CEK) for each recipient,
        and SHOULD include one for the originator when feasible. Legacy
        implementations may omit this; modern systems should tolerate it.

     o  **Error Handling:** When encountering unsupported algorithms or
        malformed cryptographic structures in legacy exchanges,
        implementations SHOULD generate a clear error condition (e.g.,
        an unsigned MDN reporting "unsupported-mic-algorithm"). Silent
        fallback to weaker algorithms is NOT RECOMMENDED.

     o  **Profile Selection:** Implementations may provide administrators
        the ability to select profiles (e.g., "AS2-1.2 legacy mode" versus
        "AS2-1.3 modern mode") for specific trading partner agreements,
        ensuring predictable behavior without runtime handshakes.
]]></artwork>
          <t>These clarifications are provided for reference and consistency
   across vendors. They are non-normative and are not intended to
   redefine <xref target="RFC4130"/> or to weaken the algorithm requirements of this
   specification. Refer to <xref target="backward-compatibility-and-interoperability"/>
   for discussion of backward compatibility principles, and Section 7
   for normative algorithm requirements.</t>
        </section>
      </section>
      <section anchor="rationale">
        <name>Rationale</name>
        <t>The updates in this specification reflect community consensus to:</t>
        <artwork><![CDATA[
     o  Preserve backward compatibility with RFC 4130 and the underlying
        RFCs it references.
     o  Provide explicit guidance on which protocol versions form the
        interoperability baseline for certification and testing.
     o  Incorporate de facto updates already widely deployed (e.g., RFC 8098
        for MDNs, migration to SHA-2 wherever possible).
     o  Document stronger security requirements while allowing
        backward-compatible fallback to enable phased adoption.
     o  Avoid unnecessary disruption by permitting, but not requiring,
        newer transport features such as HTTP/2, and by clarifying rather
        than redefining MDN behavior.
]]></artwork>
        <t>This approach reduces ambiguity, simplifies testing, and ensures interoperability
across implementations.</t>
      </section>
      <section anchor="terms">
        <name>Terms</name>
        <sourcecode type="text"><![CDATA[
   AS2:     Applicability Statement 2 (this document) and [RFC4130]; see RFC 2026
            [RFC2026], Section 3.2

   EDI:     Electronic Data Interchange

   EC:      Electronic Commerce (often referred to as Business to Business, B2B).

   B2B:     Business to Business

   Receipt: The functional message that is sent from a receiver to a
            sender to acknowledge that an EDI/EC interchange has been
            received. This message may be either synchronous or asynchronous
            in nature.

   Signed Receipt: A receipt with a digital signature.

   Synchronous Receipt: A receipt returned to the sender over the same
            HTTP connection as the sender's original message.

   Asynchronous Receipt: A receipt returned to the sender over a different
            HTTP connection than the sender's original message.

   Message Disposition Notification (MDN): The Internet messaging format
            used to convey a receipt. This term is used interchangeably
            with receipt. An MDN is a receipt.

   Non-repudiation of receipt (NRR): A "legal event" that occurs when
            the original sender of an signed EDI/EC interchange has
            verified the signed receipt coming back from the receiver.
            The receipt contains data identifying the original message
            for which it is a receipt, including the message-ID and a
            cryptographic hash (MIC). The original sender must retain
            suitable records providing evidence concerning the message
            content, its message-ID, and its hash value. The original
            sender verifies that the retained hash value is the same as
            the digest of the original message, as reported in the
            signed receipt. NRR is not considered a technical message,
            but instead is thought of as an outcome of possessing
            relevant evidence.

   S/MIME:  A format and protocol for adding cryptographic signature
            and/or encryption services to Internet MIME messages. See
            [RFC8551] for the current S/MIME specification.

   Cryptographic Message Syntax (CMS): An encapsulation syntax used to
            digitally sign, digest, authenticate, or encrypt arbitrary
            messages.

   MIC:     The Message Integrity Check (MIC) is a cryptographic method used
            to verify that a message has not been altered or tampered with during
            transmission or storage, ensuring the data is trustworthy and complete.
            It works by generating a unique hash value from the message's contents,
            which is then transmitted with the message. The recipient recalculates
            the hash on the received message and compares it to the provided MIC;
            if they don't match, the message is discarded, indicating it was modified.

   User Agent (UA): The application that handles and processes the AS2 request.
]]></sourcecode>
      </section>
    </section>
    <section anchor="overview">
      <name>Overview</name>
      <section anchor="overall-operation">
        <name>Overall Operation</name>
        <t>An HTTP POST operation <xref target="RFC2616"/> is used to send appropriately packaged EDI,
   XML, or other business data. The Request-URI (<xref target="RFC2616"/>, Section 10.5)
   identifies a process for unpacking and handling the message data and
   for generating a reply for the client that contains a message
   disposition acknowledgement (MDN), either signed or unsigned. The
   MDN is either returned in the HTTP response message body or by a new
   HTTP POST operation to a URL for the original sender.</t>
        <t>This request/reply transactional interchange can provide secure,
   reliable, and authenticated transport for EDI or other business data
   using HTTP as a transfer protocol. HTTPS is REQUIRED as the default
   transport for modern implementations (see <xref target="https-tls-reqs"/>).</t>
        <t>The security protocols and structures used also support auditable
   records of these document data transmissions, acknowledgements, and
   authentication.</t>
        <t>The message formats and processing requirements described below maintain
   strict backward compatibility (see <xref target="backward-compatibility-and-interoperability"/>).</t>
      </section>
      <section anchor="purpose-of-a-security-guideline-for-mime-edi">
        <name>Purpose of a Security Guideline for MIME EDI</name>
        <t>The purpose of these specifications is to ensure interoperability
   between B2B EC user agents, invoking some or all of the commonly
   expected security features.  This document is not limited to
   strict EDI use; it applies to any electronic commerce application for
   which business data needs to be exchanged securely over the Internet.</t>
      </section>
      <section anchor="definitions">
        <name>Definitions</name>
        <section anchor="the-secure-transmission-loop">
          <name>The Secure Transmission Loop</name>
          <t>This document's focus is on the formats and protocols for exchanging
   EDI/EC content securely over HTTP.</t>
          <t>In the "secure transmission loop" for EDI/EC, one organization sends
   a signed, encrypted and compressed EDI/EC interchange to another organization
   and requests a signed receipt, and later the receiving organization sends
   this signed receipt back to the sending organization. In other words, the
   following transpires:</t>
          <artwork><![CDATA[
     o  The organization sending EDI/EC data signs, encrypts and compresses
        the data using S/MIME. In addition, the message will request that
        a signed receipt be returned to the sender. To support NRR,
        the original sender retains records of the message, message-ID,
        and digest (MIC) value.

     o  The receiving organization decompresses and decrypts the message and
        verifies the signature, resulting in verified integrity of the data and
        authenticity of the sender.

     o  The receiving organization then returns a signed receipt using
        the HTTP reply body or a separate HTTP POST operation to the
        sending organization in the form of a signed message
        disposition notification.  This signed receipt will contain the
        hash of the received message, allowing the original sender to
        have evidence that the received message was authenticated
        and/or decrypted properly by the receiver.
]]></artwork>
          <t>The above describes functionality that, if implemented, will satisfy
   all security requirements and implement non-repudiation of receipt
   for the exchange.  This specification, however, leaves full
   flexibility for users to decide the degree to which they want to
   deploy those security features with their trading partners.</t>
        </section>
        <section anchor="definition-of-receipts">
          <name>Definition of Receipts</name>
          <t>The term used for both the functional activity and the message for
   acknowledging delivery of an EDI/EC interchange is "receipt" or
   "signed receipt". The first term is used if the acknowledgment is
   for an interchange resulting in a receipt that is NOT signed. The
   second term is used if the acknowledgement is for an interchange
   resulting in a receipt that IS signed.</t>
          <t>The term non-repudiation of receipt (NRR) is often used in
   combination with receipts. NRR refers to a legal event that occurs
   only when the original sender of an interchange has verified the
   signed receipt coming back from the recipient of the message, and has
   verified that the returned MIC value inside the MDN matches the
   previously recorded value for the original message.</t>
          <t>NRR is best established when both the original message and the
   receipt make use of digital signatures. See the Security
   Considerations section for some cautions regarding NRR.
   For information on how to format and process receipts in AS2, refer
   to refer to Section 8.</t>
        </section>
      </section>
      <section anchor="assumptions">
        <name>Assumptions</name>
        <section anchor="ediec-process-assumptions">
          <name>EDI/EC Process Assumptions</name>
          <artwork><![CDATA[
  o  Encrypted object is an EDI/EC Interchange.

     This specification assumes that a typical EDI/EC interchange (i.e., the payload)
     is the lowest-level object that will be subject to security services.

     Specifically, in EDI ANSI X12, this means that anything between and
     including, segments ISA and IEA is secured. In EDIFACT, this means
     that anything between, and including, segments UNA/UNB and UNZ is
     secured. In other words, the EDI/EC interchanges including envelope
     segments remain intact and unreadable during fully secured transport.

  o  EDI envelope headers are encrypted.

     Congruent with the above statement, EDI envelope headers are NOT
     visible in the MIME package.

     In order to optimize routing from existing commercial EDI networks
    (called Value Added Networks or VANs) to the Internet, it was previously
    useful to make some envelope information visible. Since the EDI/EC message exchanges
    are routed over the public Internet and not over VANs, this
    specification provides no support for this optimization.

  o  X12.58 and UN/EDIFACT Security Considerations

    The most common EDI standards bodies, ANSI X12 and EDIFACT, have
    defined internal provisions for security. X12.58 is the security
    mechanism for ANSI X12, and AUTACK provides security for EDIFACT.
    This specification does NOT dictate use or non-use of these security
    standards. They are both fully compatible, though possibly
    redundant, with this specification.
]]></artwork>
        </section>
        <section anchor="flexibility-assumptions">
          <name>Flexibility Assumptions</name>
          <artwork><![CDATA[
  o  Encrypted or Unencrypted Data

    This specification allows for EDI/EC message exchange in which the
    EDI/EC data can be either unprotected or protected by means of
    encryption.

  o  Signed or Unsigned Data

    This specification allows for EDI/EC message exchange with or without
    digital signature of the original EDI transmission.

  o  Compressed or Uncompressed Data

    This specification allows for optional compression and MAY be applied alone
    or in combination with signing and/or encryption, as defined in [RFC3274].
    It is supported by AS2-Version: 1.1 and higher.

  o  Optional Use of Receipt

    This specification allows for EDI/EC message transmission with or
    without a request for receipt notification.  A signed receipt
    notification is requested; however, a MIC value is REQUIRED as part
    of the returned receipt, except when a severe error condition
    prevents computation of the digest value. In the exceptional case, a
    signed receipt should be returned with an error message that
    effectively explains why the required MIC value is absent.

  o  Use of Synchronous or Asynchronous Receipts

    In addition to a receipt request, this specification allows for the
    designation of the type of receipt that should be returned. It
    supports synchronous or asynchronous receipts in the MDN format.

  o  Security Formatting

    This specification relies on the guidelines set forth in RFC
    5751/5652  [RFC5751] / [RFC5652] "S/MIME Version 3.2 Message Specification;
    Cryptographic Message Syntax" as well as RFC 8551 [RFC8551] "Secure/Multipurpose Internet
    Mail Extensions (S/MIME) Version 4.0" for modern implementations.

  o  Hash Function, Message Digest Choices

    When a signature is used, implementations MUST support SHA-256 and SHOULD
    support SHA-384 or stronger. Weaker hash algorithms MUST NOT be generated
    by conformant implementations. If support is required for backward compatibility,
    refer to [RFC4130].

  o  Encryption Algorithms

    For content encryption, implementations MUST support AES-128-CBC and
    AES-256-CBC. Implementations are RECOMMENDED to support authenticated
    encryption modes such as AES-GCM and AES-CCM, which use AuthEnvelopedData
    (S/MIME 4.0). When using AES-GCM or AES-CCM, implementations MUST use
    AuthEnvelopedData. When using AES-CBC or other non-authenticated modes,
    implementations MUST use EnvelopedData with separate integrity protection
    via digital signatures. A single content encryption algorithm MUST be used
    for all recipients of a given message; it is not permitted to encrypt the same
    message with AES-CBC for some recipients and AES-GCM for others.

  o  Key Management Algorithms

    For key transport, implementations MUST support RSA with a minimum key
    length of 2048 bits. Implementations MAY support key agreement algorithms such
    as Diffie-Hellman or Elliptic Curve Diffie-Hellman (ECDH) as specified
    in [RFC5753]. When using elliptic curves, implementations SHOULD support
    NIST P-256 (secp256r1) or stronger curves.

  o  Permutation Summary

    The optional use of compression, as defined in [RFC3274] was introduced in AS2-Version 1.1.
    Compression can be applied to the message payload before encryption and either before or
    after signing, reducing transmission size and improving efficiency. Most modern AS2 implementations
    support compression, and it can be used by itself or in combination with signing and encryption.

    AS2 supports flexible combinations of encryption, signature, compression, and receipt
    options. These combinations are determined by partner agreements and are not mandated
    by this specification. The protocol supports:

        o  Encrypted or unencrypted message transmission
        o  Signed or unsigned message content
        o  Compressed or uncompressed payload
        o  Synchronous or asynchronous MDN delivery
        o  Signed or unsigned MDN responses (when requested)
]]></artwork>
          <t>The specific security posture for any given trading relationship is determined by
   business requirements and partner agreements. For detailed implementation guidance
   on secure configurations, see <xref target="security-considerations"/>.</t>
          <t><strong>Key Notes</strong></t>
          <artwork><![CDATA[
     o  Compression MAY be applied alone or in combination with signing and/or encryption, as defined in [RFC3274] and is supported
        by AS2-Version 1.1 and higher.

     o  Compression is always applied before encryption. However, implementations MAY apply compression
        either before or after signing - that is, an implementation may sign-then-compress or
        compress-then-sign. Conformant implementations MUST be able to decompress messages regardless
        of whether compression was applied before or after signing.

     o  The MIC (Message Integrity Check) computation is always applied to the signed portion of the
        message and includes the inner MIME headers in the signature calculation.

     o  The most secure configuration combines compression, signing, encryption,
        and a signed receipt, offering the full suite of security and efficiency features described in
        Section 2.3.1.

     o  The receipts may be either synchronous or asynchronous, and the choice does not change the nature of
        the secure transmission loop in support of NRR.
]]></artwork>
        </section>
      </section>
    </section>
    <section anchor="referenced-rfcs-and-their-contributions">
      <name>Referenced RFCs and Their Contributions</name>
      <section anchor="rfc-2616-http-v11">
        <name>RFC 2616 HTTP v1.1</name>
        <t><xref target="RFC2616"/> specifies how data is transferred using HTTP.</t>
      </section>
      <section anchor="rfc-1847-mime-security-multiparts">
        <name>RFC 1847 MIME Security Multiparts</name>
        <t><xref target="RFC1847"/> defines security multipart for MIME:
   multipart/encrypted and multipart/signed.</t>
      </section>
      <section anchor="rfc-3462-multipartreport">
        <name>RFC 3462 Multipart/Report</name>
        <t><xref target="RFC3462"/> defines the use of the multipart/report content type,
   something that the MDN RFC 3798 builds upon.</t>
      </section>
      <section anchor="rfc-1767-edi-content">
        <name>RFC 1767 EDI Content</name>
        <t><xref target="RFC1767"/> defines the use of content type "application" for ANSI X12
   (application/EDI-X12), EDIFACT (application/EDIFACT), and mutually
   defined EDI (application/EDI-Consent).</t>
      </section>
      <section anchor="rfc-2045-2046-and-2049-mime">
        <name>RFC 2045, 2046, and 2049 MIME</name>
        <t><xref target="RFC2045"/>, <xref target="RFC2046"/>, and <xref target="RFC2049"/> are the basic MIME standards, upon
   which all MIME related RFCs build, including this one. Key contributions
   include definitions of "content type", "sub-type", and "multipart", as
   well as encoding guidelines, which establish 7-bit US-ASCII as the
   canonical character set to be used in Internet messaging.</t>
      </section>
      <section anchor="rfc-3798-message-disposition-notification">
        <name>RFC 3798 Message Disposition Notification</name>
        <t><xref target="RFC3798"/> defines how an MDN is requested, and the format and
   syntax of the MDN. The MDN is the basis upon which receipts and
   signed receipts are defined in this specification.</t>
      </section>
      <section anchor="rfc-5751-and-5652-smime-version-32-message-specifications-and-cryptographic-message-syntax-cms">
        <name>RFC 5751 and 5652 S/MIME Version 3.2 Message Specifications and Cryptographic Message Syntax (CMS)</name>
        <t><xref target="RFC5751"/> and <xref target="RFC5652"/> describe how S/MIME carries CMS Objects.</t>
      </section>
      <section anchor="rfc-3023-xml-media-types">
        <name>RFC 3023 XML Media Types</name>
        <t><xref target="RFC3023"/> defines the use of content type "application" for XML
   (application/xml).</t>
      </section>
      <section anchor="rfc-3274-compressed-data-content-type-for-cryptographic-message-syntax-cms">
        <name>RFC 3274 Compressed Data Content Type for Cryptographic Message Syntax (CMS)</name>
        <t><xref target="RFC3274"/> defines a mechanism for compressing data within the Cryptographic Message Syntax (CMS),
   which is the foundation for Secure/Multipurpose Internet Mail Extensions (S/MIME).
   It specifies a CompressedData content type that allows data to be compressed prior to being
   signed or encrypted. This reduces the size of transmitted messages and improves efficiency without
   altering the security services provided by signing or encryption.
   AS2-Version 1.1 incorporated the compression capability described in RFC 3274, enabling trading partners
   to optionally apply compression to message payloads before signing and/or encrypting.
   Most modern AS2 implementations support this feature to reduce bandwidth usage and improve transmission
   performance, particularly for large payloads.</t>
      </section>
    </section>
    <section anchor="structure-of-an-as2-message">
      <name>Structure of an AS2 Message</name>
      <section anchor="introduction-1">
        <name>Introduction</name>
        <t>The basic structure of an AS2 message consists of MIME format inside
   an HTTP message with a few additional specific AS2 headers. The
   structures below are described hierarchically in terms of which RFCs
   are applied to form the specific structure. For details on how to
   code in compliance with all RFCs involved, refer to the specific RFCs.
   Any difference between AS2 implementations and RFCs are mentioned
   specifically in the sections below.</t>
      </section>
      <section anchor="structure-of-an-internet-edi-mime-message">
        <name>Structure of an Internet EDI MIME Message</name>
        <sourcecode type="text"><![CDATA[
   No encryption, no signature, no compression
      - RFC2616/2045
        - RFC1767/RFC3023 (application/EDIxxxx or /xml)

   No encryption, signature, no compression
      - RFC2616/2045
        - RFC1847 (multipart/signed)
          - RFC1767/RFC3023 (application/EDIxxxx or /xml)
          - RFC5751 (application/pkcs7-signature)

   Encryption, no signature, no compression
      - RFC2616/2045
        - RFC5751 (application/pkcs7-mime)
          - RFC1767/RFC3023  (application/EDIxxxx or /xml) (encrypted)

   Encryption, signature, no compression
      - RFC2616/2045
        - RFC5751 (application/pkcs7-mime)
          - RFC1847 (multipart/signed)(encrypted)
            - RFC1767/RFC3023  (application/EDIxxxx or /xml) (encrypted)
            - RFC5751 (application/pkcs7-signature)(encrypted)

   No encryption, no signature (with optional compression)
      - RFC2616/2045
        - RFC3274 (application/pkcs7-mime; CompressedData) [optional]
          - RFC1767/RFC3023 (application/EDIxxxx or /xml)

   No encryption, signature (compression may occur before or after signing)
      - RFC2616/2045
        - [optional RFC3274 (CompressedData) if compress-before-sign]
          - RFC1847 (multipart/signed)
            - [optional RFC3274 (CompressedData) if compress-after-sign]
              - RFC1767/RFC3023 (application/EDIxxxx or /xml)
              - RFC5751 (application/pkcs7-signature)

   Encryption, no signature (with optional compression)
       - RFC2616/2045
         - RFC5751 (application/pkcs7-mime)
           - [optional RFC3274 (CompressedData)]
             - RFC1767/RFC3023 (application/EDIxxxx or /xml) (encrypted)

   Encryption, signature (compression may occur before or after signing)
      - RFC2616/2045
        - RFC5751 (application/pkcs7-mime)
          - [optional RFC3274 (CompressedData) if compress-before-sign]
            - RFC1847 (multipart/signed) (encrypted)
              - [optional RFC3274 (CompressedData) if compress-after-sign]
              - RFC1767/RFC3023 (application/EDIxxxx or /xml) (encrypted)
              - RFC5751 (application/pkcs7-signature) (encrypted)

   MDN over HTTP, no signature
      - RFC2616/2045
        - RFC3798 (message/disposition-notification)

   MDN over HTTP, signature
      - RFC2616/2045
        - RFC1847 (multipart/signed)
         - RFC3798 (message/disposition-notification)
         - RFC5751 (application/pkcs7-signature)
]]></sourcecode>
        <t><strong>Key Notes</strong></t>
        <artwork><![CDATA[
     o  RFC 3274 (CompressedData) is the normative reference for compression.

     o  Compression MAY be combined with signing and/or encryption in either order,
        but the choice affects what the digital signature covers.

     o  Many implementations compress before signing and encrypting to maximize size
        reduction, but compression after signing and before encrypting MUST also be supported.

     o  Although all MIME content types SHOULD be supported, the following
        MIME content types MUST be supported:

            Content-type: multipart/signed
            Content-Type: multipart/report
            Content-type: message/disposition-notification
            Content-Type: application/PKCS7-signature
            Content-Type: application/PKCS7-mime

     o  Implementations SHOULD support the following content types based on
        intended use:

            Content-Type: application/EDI-X12 (for ANSI X12 EDI)
            Content-Type: application/EDIFACT (for UN/EDIFACT EDI)
            Content-Type: application/edi-consent
            Content-Type: application/XML (for XML-based structured data)
]]></artwork>
      </section>
    </section>
    <section anchor="http-considerations">
      <name>HTTP Considerations</name>
      <t>This specification is based on HTTP/1.1 <xref target="RFC2616"/>. Implementations MAY use
HTTP/2 or HTTP/3 as the transport protocol when supported by both trading
partners.</t>
      <section anchor="sending-edi-in-http-post-requests">
        <name>Sending EDI in HTTP POST Requests</name>
        <t>The request line will have the form: "POST Request-URI HTTP/1.1",
   with spaces and followed by a CRLF. The Request URI is typically
   exchanged out of band, as part of setting up a bilateral trading
   partner agreement. Applications SHOULD be prepared to deal with an
   initial reply containing a status indicating a need for
   authentication of the usual types used for authorizing access to the
   Request-URI (<xref target="RFC2616"/>, Section 10.4.2 and elsewhere).</t>
        <t>The request line is followed by entity headers specifying content
   length (<xref target="RFC2616"/>, Section 14.14) and content type (<xref target="RFC2616"/>, Section 14.18).
   The Host request header (<xref target="RFC2616"/>, Sections 9 and 14.23) is also included.</t>
        <t>When using Transport Layer Security (TLS), the request-URI MUST
   indicate the appropriate scheme value, HTTPS. Implementations MUST
   support TLS 1.3 or higher. TLS 1.3 <xref target="RFC8446"/> is the current IETF
   standard and MUST be supported by all implementations. TLS 1.2
   <xref target="RFC5246"/> MAY be used when interoperating with systems that have not
   yet migrated to TLS 1.3. Further guidance on TLS usage is provided
   in <xref target="https-tls-reqs"/>. Encrypted message bodies MAY be used in addition
   to TLS when required by business policy.</t>
        <t>The receiving AS2 system MAY disconnect from the sending AS2 system
   before completing the reception of the entire entity if it determines
   that the entity being sent is too large to process.</t>
        <t>For HTTP version 1.1, TCP persistent connections are the default,
   (<xref target="RFC2616"/> Sections 8.1.2, 8.2, and 19.7.1). A number of other differences
   exist because HTTP does not conform to MIME <xref target="RFC2616"/> as used in SMTP
   transport.  Relevant differences are summarized below.</t>
      </section>
      <section anchor="unused-mime-headers-and-operations">
        <name>Unused MIME Headers and Operations</name>
        <section anchor="content-transfer-encoding-not-used-in-http-transport">
          <name>Content-Transfer-Encoding Not Used in HTTP Transport</name>
          <t>HTTP can handle binary data and so there is no need to use the
   content transfer encodings of MIME <xref target="RFC2616"/>. This difference is discussed
   in <xref target="RFC2616"/>, Section 19.4.5. However, a content transfer encoding value
   of binary or 8-bit is permissible but not required. The absence of
   this header MUST NOT result in transaction failure. Content transfer
   encoding of MIME bodyparts within the AS2 message body is also
   allowed.</t>
        </section>
        <section anchor="message-bodies">
          <name>Message Bodies</name>
          <t>In <xref target="RFC2616"/>, Section 3.7.2, it is explicitly noted that multiparts MUST
   have null epilogues.</t>
          <t>For HTTP transport, large files SHOULD be handled correctly by the TCP layer.
   In addition, <xref target="RFC2616"/>, Sections 3.5 and 3.6 describe options for compressing or
   chunking entities to be transferred, and Section 8.1.2.2 describes a pipelining
   option that is useful for segmenting large amounts of data.
   These clarifications are consistent with existing AS2 practice and maintain full
   backward compatibility (see <xref target="backward-compatibility-and-interoperability"/>).</t>
        </section>
      </section>
      <section anchor="modification-of-mime-or-other-headers-or-parameters-used">
        <name>Modification of MIME or Other Headers or Parameters Used</name>
        <section anchor="content-length">
          <name>Content-Length</name>
          <t>The use of the content-length header MUST follow the guidelines of
   <xref target="RFC2616"/>, specifically Sections 4.4 and 14.13.</t>
        </section>
        <section anchor="final-recipient-and-original-recipient">
          <name>Final Recipient and Original Recipient</name>
          <t>The final and original recipient values SHOULD be the same value.
   These values MUST NOT be aliases or mailing lists.</t>
        </section>
        <section anchor="message-id-and-original-message-id">
          <name>Message-Id and Original-Message-Id</name>
          <t>The <tt>Message-Id</tt> and <tt>Original-Message-Id</tt> headers identify a message
   uniquely and are formatted as defined in <xref target="RFC5322"/>, Section 3.6.4:</t>
          <artwork><![CDATA[
      "<" id-left "@" id-right ">"
]]></artwork>
          <t>The length of a <tt>Message-Id</tt> value MUST NOT exceed 998 characters.
   For maximum interoperability, the length SHOULD be 255 characters or less.</t>
          <t>The <tt>Message-Id</tt> value MUST be globally unique, and the <tt>id-right</tt>
   portion SHOULD be something unique to the sending host environment
   (for example, a fully qualified domain name).</t>
          <t>Implementations that generate <tt>Message-Id</tt> values MUST NOT include
   spaces or control characters. Implementations SHOULD remove spaces
   rather than substitute another character when constructing identifiers
   from other message attributes such as <tt>AS2-From</tt> or <tt>AS2-To</tt>.</t>
          <t>Receivers are not required to accept malformed identifiers. If a
   message is received with a <tt>Message-Id</tt> that contains spaces or
   control characters, the implementation SHOULD treat it as
   syntactically invalid and SHOULD return an MDN with a disposition of
   <tt>processed/error</tt> and a human-readable explanation such as
   "invalid-message-id" (see <xref target="RFC8098"/>). If an implementation chooses
   to proceed despite the malformed identifier, it MUST NOT propagate or
   generate a new message using that malformed value.</t>
          <t>When sending a message, the <tt>Message-Id</tt> field value MUST be enclosed
   in angle brackets (“&lt;” and “&gt;”). The brackets are not part of the
   actual identifier value. For backward compatibility, receiving
   implementations SHOULD NOT reject a message that omits angle brackets.</t>
          <t>When creating the <tt>Original-Message-Id</tt> header in an MDN, always use
   the exact syntax as received on the original message; do not strip or
   add angle brackets.</t>
          <t>See <xref target="RFC5322"/>, Section 3.6.4.</t>
        </section>
        <section anchor="host-header">
          <name>Host Header</name>
          <t>The host request header field MUST be included in the POST request
   made when sending business data. This field is intended to allow one
   server IP address to service multiple hostnames, and potentially to
   conserve IP addresses. See <xref target="RFC2616"/>, Sections 14.23 and 19.5.1.</t>
        </section>
      </section>
      <section anchor="http-response-status-codes">
        <name>HTTP Response Status Codes</name>
        <t>Implementations MUST use standard HTTP response codes to signal the
   outcome of the message transfer.  The meaning of the HTTP status code is
   limited to the success or failure of the transport operation itself,
   not the semantic processing of the AS2 message content. For
   example, the status code 401, together with the WWW-Authenticate
   header, is used to challenge the client to repeat the request with an
   Authorization header. Other explicit status codes are documented in
   <xref target="RFC2616"/>, Section 6.1.1 and throughout Section 10.</t>
        <t>Receiving implementations MAY send an interim 102 (Processing)
   response <xref target="RFC4918"/> under HTTP/1.1 to indicate that the inbound
   message has been fully received and that processing is underway. The
   102 response can help prevent sender-side network timeouts for large
   synchronous transfers by signaling progress while decryption,
   signature verification, or storage continues.</t>
        <t>Use of 102 (Processing) is OPTIONAL.  It has been deprecated in later
   HTTP specifications and <strong>MUST NOT</strong> be used with HTTP/2 or HTTP/3,
   where interim responses have different semantics.  Implementations
   that do not receive a 102 response MUST NOT assume that a failure has
   occurred solely because no interim status was returned. They SHOULD
   continue waiting for the final status response for at least the duration
   of their configured HTTP read timeout or any timeout agreed upon between
   trading partners.</t>
        <t>To minimize the risk of network timeouts during lengthy message
   processing, receivers SHOULD return an appropriate transfer-layer
   response as quickly as possible after receiving the full message
   content. For asynchronous message exchanges, the preferred response is
   <tt>204 No Content</tt>, which indicates that the message has been received
   successfully and that an asynchronous MDN will follow once processing has
   completed. This convention is maintained for interoperability with
   existing AS2 products and certification profiles.</t>
        <t>Some implementations MAY instead use <tt>202 Accepted</tt> to indicate
   successful receipt and deferred processing; however, <tt>204 No Content</tt>
   remains the recommended and most widely deployed response for asynchronous workflows.</t>
        <t>Implementations MAY close the connection immediately after sending this
   response if persistent connections are not required by configuration.</t>
        <t>After processing completes, the receiver MUST return a final HTTP
   status code indicating the success or failure of the message transfer.
   The sender MUST use this final response to determine whether retry is appropriate.</t>
        <t>Retry <strong>MUST NOT</strong> be attempted when:</t>
        <artwork><![CDATA[
     o  the final HTTP response indicates successful receipt (e.g., `200 OK` or
        `204 No Content` for asynchronous transfers, or `202 Accepted` for
        implementations that use deferred processing semantics) **and** a
        valid MDN has been received confirming the message disposition; or
     o  a permanent-failure status code is returned (4xx other than 408), or
]]></artwork>
        <t>Retry <strong>MAY</strong> be attempted when:</t>
        <artwork><![CDATA[
     o  the HTTP connection fails before the final status is received,
     o  a transient error such as 408 (Request Timeout) or 5xx (Server Error)
        occurs, or
     o  no response is received within the configured timeout.
]]></artwork>
        <t>Implementations SHOULD refer to Section 5.5 for additional guidance on
   retry logic, back-off behavior, and use of partial-transfer recovery.
   The 102 (Processing) status code, if used, MUST NOT be treated as a
   trigger for retry.</t>
      </section>
      <section anchor="http-error-recovery-and-reliability">
        <name>HTTP Error Recovery and Reliability</name>
        <t>When an AS2 message transfer fails due to a transient transport-layer
   condition (for example, an HTTP 408 Request Timeout, 425 Too Early,
   500 Internal Server Error, 503 Service Unavailable or network interruption
   before the final response), the sending system SHOULD attempt an automatic retry.</t>
        <t>Each retry attempt MUST reuse the same Message-ID value so that the
   receiving system can identify duplicate transmissions and prevent
   double-processing.  A receiving system detecting a duplicate
   Message-ID MUST NOT treat the message as new and SHOULD return the
   previously generated MDN, if available.</t>
        <t>Implementations SHOULD permit configuration of retry behavior rather
   than enforcing fixed intervals or limits.  The following guidelines
   are RECOMMENDED but not required:</t>
        <artwork><![CDATA[
     o  **Retry intervals** SHOULD increase exponentially (e.g., 5 min,
        10 min, 20 min, 40 min, …) to reduce congestion.
     o  **Retry duration** SHOULD be configurable based on business
        requirements; some environments may continue for several days, while
        others may terminate after one or two attempts.
     o  **Maximum attempts** SHOULD be limited to prevent indefinite
        retries when persistent errors occur.
]]></artwork>
        <t>Implementations SHOULD NOT retry when:</t>
        <artwork><![CDATA[
     o  A final 2xx response and/or valid MDN has been received;
     o  The HTTP response indicates a permanent failure (e.g., 400, 401,
        403, 404);
     o  The partner has explicitly rejected the message by sending a signed
        MDN with a "failed" disposition.
]]></artwork>
        <t>The HTTP 102 (Processing) interim status MAY be used under
   HTTP/1.1 to indicate progress on long-running synchronous operations.
   It MUST NOT be used as a signal to initiate or suppress retries.
   Implementations MUST ignore 102 responses when determining whether a
   retry is required.  The 102 response MUST NOT be used with HTTP/2 or
   HTTP/3.</t>
        <t>Implementations MAY also support <strong>AS2 Restart</strong>, which allows a
   partially uploaded message to resume from the point of interruption
   rather than retransmitting the entire payload.  This optional feature
   is defined in <xref target="I-D.draft-harding-as2-restart-02"/>.  Implementations supporting
   Restart MUST ensure message integrity through signature or checksum
   validation of all resumed segments.</t>
        <t>Additional guidance for retry management, error classification, and
   duplicate detection is described in <xref target="I-D.draft-duker-as2-reliability-16"/>.
   While both of these drafts are expired, they remain widely referenced
   in AS2 interoperability testing and provide a useful operational baseline
   for error-recovery behavior.</t>
        <t>The objective of error recovery is reliability, not speed.  Systems
   SHOULD favor successful delivery over strict timing, provided that
   duplicate protection and security requirements are preserved.</t>
      </section>
      <section anchor="connection-management">
        <name>Connection Management</name>
        <t>HTTP/1.1 persistent connections are the default behavior. Connections remain
   open for subsequent requests unless explicitly closed with the "Connection: close"
   header. Implementations SHOULD use persistent connections when beneficial, particularly
   for HTTPS connections where persistent connections avoid the overhead of repeated
   TLS handshakes.</t>
        <t>The "Connection: close" header is not required and SHOULD NOT be included unless
   the implementation specifically needs to close the connection after the current
   request/response cycle. Earlier versions of this specification included
   "Connection: close" in message examples to reflect HTTP/1.0 behavior, where
   connections closed by default after each transaction. Modern implementations
   using HTTP/1.1 or later benefit from the default persistent connection behavior.</t>
        <t>Connection management practices are governed by the HTTP version in use and
   do not impact AS2's core message security, compression, or receipt features.
   Implementations MAY choose connection management strategies appropriate to their
   deployment scenarios (e.g., closing connections after single messages vs. keeping
   connections open for multiple messages to the same trading partner).</t>
        <t>Note: Persistent connections are particularly beneficial when an implementation
   sends multiple AS2 messages to the same trading partner in succession. However,
   AS2 implementations that use multiple-attachment messages (batch messages) for
   sending multiple business documents in a single AS2 message MAY achieve similar
   or better efficiency even without persistent connections.</t>
      </section>
    </section>
    <section anchor="additional-as2-specific-http-headers">
      <name>Additional AS2-Specific HTTP Headers</name>
      <t>The following headers are to be included in all AS2 messages and all
AS2 MDNs. <xref target="RFC3335"/>.</t>
      <section anchor="as2-version-header">
        <name>AS2 Version Header</name>
        <t>To promote backward compatibility, AS2 includes a version header. The
   major version digit indicates wire-level compatibility; minor version
   digits designate feature sets, clarifications, or extensions that
   remain compatible within the same major version. Thus, all values in
   the "1.x" range are compatible with AS2-Version 1.0, while a potential
   future "2.0" version would indicate a non-backward-compatible revision.</t>
        <t>Receiving systems MUST NOT fail due to the absence of the AS2-Version
   header. Its absence MUST be assumed to be equivalent to the default
   AS2-Version value of 1.0.</t>
        <sourcecode type="text"><![CDATA[
   AS2-Version: 1.0  - All implementations of this specification MUST
                       support and advertise "AS2-Version: 1.0".
                       Versions in the range "1.0" through "1.9" MAY be
                       used. All implementations MUST interpret any value
                       in that range as conforming to this specification,
                       with no differences in baseline behavior. In other
                       words, only the major version digit ("1") defines
                       compatibility for implementations that do not
                       support additional, non-AS2-specified
                       functionality.

                       Implementations MAY use "1.1" through "1.9" to
                       signal extensions of this specification. Any such
                       extensions MUST be fully transparent to
                       implementations that recognize only
                       "AS2-Version: 1.0".

   AS2-Version: 1.1  - Designates those implementations that MUST support
                       compression as defined by RFC 3274.

   AS2-Version: 1.2  - Indicates those implementations that include an
                       EDIINT-Features header as defined in RFC 6017. The
                       values in an EDIINT-Features header specify the
                       features supported by the AS2 implementation.
                       Examples may include CEM, AS2-Reliability and
                       multiple-attachments, however others may also be
                       included. A receiving implementation MUST NOT fail
                       if it does not support or understand any of the
                       supported values contained within an
                       EDIINT-Features header.

   AS2-Version: 1.3  - Indicates those implementations that support the
                       modernization defined by this specification,
                       including updated algorithm requirements (e.g.,
                       SHA-256 for MIC/signatures; AES as the encryption
                       baseline per RFC 8551), alignment with MDN
                       handling as specified in RFC 8098, and support for
                       multiple-recipient encryption as described in
                       Section 7.2 of this specification.

                       When both partners are configured for AS2 version
                       1.3, weak algorithms used in RFC 4130 implementations
                       MUST NOT be generated by conformant implementations.
                       When interoperating with a legacy partner that operates
                       at AS2 version 1.2 or lower, implementations SHOULD
                       apply the legacy interoperability clarifications described
                       in Section 1.2.1 (non-normative).

                       Future minor versions (1.x) may designate
                       additional extensions or clarifications that remain
                       backward-compatible with AS2 version 1.0. A major
                       version update (2.0 or higher) would indicate a
                       non-backward-compatible revision and may come later.
]]></sourcecode>
      </section>
      <section anchor="as2-product-header">
        <name>AS2 Product header</name>
        <t>The <tt>AS2-Product</tt> header value identifies the AS2 product and version
   used by the sender.  This information enables interoperability testing,
   certification, and troubleshooting by allowing trading partners to
   detect known product-specific behaviors or version-related quirks.</t>
        <t>The <tt>AS2-Product</tt> header value is OPTIONAL for AS2-Version 1.x systems
   but MUST be included in messages generated by implementations
   declaring <strong>AS2-Version: 1.3</strong> (or later).</t>
        <t>The header field value MUST follow the format:</t>
        <sourcecode type="text"><![CDATA[
   AS2-Product: [PEN-<number>:]<product-name>:<version>

   Where:
     * PEN-<number>: (OPTIONAL but RECOMMENDED) The vendor's IANA Private
        Enterprise Number. Including the PEN provides unique vendor
        identification and prevents namespace collisions.
     * <product-name>: lowercase alphanumeric and hyphen characters (a–z,
        0–9, "-") without spaces.
     * <version>: version string consistent with the product's release
        version, with one or more numeric components separated by dots
        (semantic versioning format: major.minor[.patch]).

   Examples:

      AS2-Product: PEN-12345:as2gateway:2.1.0
      AS2-Product: biztalk:2025.1
      AS2-Product: PEN-54321:example-connect:4.2.3
]]></sourcecode>
        <t>Implementations <strong>MUST NOT</strong> use arbitrary identifiers or vendor aliases
   that do not reflect the actual product in use.  Implementations <strong>SHOULD</strong>
   include their Private Enterprise Number if registered with IANA.  The value
   is static and determined at build time.  If a product supports multiple AS2
   variants, the version portion MAY include an implementation-specific suffix
   (e.g., "1.2-drummond").</t>
        <t>Implementations MAY use the <tt>AS2-Product</tt> value for automated
   interoperability tuning or to apply compatibility workarounds for known
   product versions.  However, this field is not intended for
   feature-negotiation purposes; supported feature tokens belong in the
   <tt>EDIINT-Features</tt> header, as defined in RFC 6017.</t>
      </section>
      <section anchor="as2-system-identifiers">
        <name>AS2 System Identifiers</name>
        <t>To aid the receiving system in identifying the sending system,
   AS2-From and AS2-To headers are used.</t>
        <artwork><![CDATA[
      AS2-From: < AS2-name >
      AS2-To: < AS2-name >
]]></artwork>
        <t>These AS2 headers contain textual values, as described below,
   identifying the sender/receiver of a data exchange. Their values may
   be company specific, such as Data Universal Numbering System (DUNS)
   numbers, or they may be simply identification strings agreed upon
   between the trading partners.</t>
        <artwork><![CDATA[
  AS2-text = "!" /           ; printable ASCII characters
             %d35-91 /       ; except double-quote (%d34)
             %d93-126        ; or backslash (%d92)

  AS2-qtext = AS2-text / SP  ; allow space only in quoted text

  AS2-quoted-pair = "\" DQUOTE /  ; \" or
                    "\" "\"       ; \\

  AS2-quoted-name = DQUOTE 1*128( AS2-qtext /
                                  AS2-quoted-pair) DQUOTE

  AS2-atomic-name = 1*128AS2-text

  AS2-name = AS2-atomic-name / AS2-quoted-name
]]></artwork>
        <t>The AS2-From header value and the AS2-To header value:</t>
        <artwork><![CDATA[
     o  MUST each be an AS2-name,
     o  MUST each be comprised of from 1 to 128 printable ASCII characters, and
     o  MUST NOT be folded
     o  The value in each of these headers is **case-sensitive**.
]]></artwork>
        <t>The string definitions given above are in ABNF format <xref target="RFC2234"/>.</t>
        <t>The AS2-quoted-name SHOULD be used only if the AS2-name does not
   conform to AS2-atomic-name. This explicitly includes situations where
   embedded spaces are part of the AS2-name.</t>
        <t>The AS2-To and AS2-From header fields MUST be present in all AS2
   messages and AS2 MDNs whether they are synchronous or asynchronous in nature.</t>
        <t>The AS2-name for the AS2-To header in a response or MDN MUST match
   the AS2-name of the AS2-From header in the corresponding request
   message. Likewise, the AS2-name for the AS2-From header in a
   response or MDN MUST match the AS2-name of the AS2-To header in the
   corresponding AS2 request message.</t>
        <t>The sending system may choose to limit the possible AS2-To/AS2-From
   textual values but MUST not exceed them. The receiving system MUST
   make no restrictions on the textual values and SHOULD handle all
   possible implementations. However, implementers must be aware that
   older AS2 products may not adhere to this convention. Trading
   partner agreements should be made to ensure that older products can
   support the system identifiers that are used.</t>
        <t>There is no required response to a client request containing invalid
   or unknown AS2-From or AS2-To header values. The receiving AS2
   system MAY return an unsigned MDN with an explanation of the error,
   such as an MDN error disposition value of "unknown-trading-relationship" or
   "unknown-trading-partner", if the sending system requested an MDN.</t>
      </section>
    </section>
    <section anchor="algorithm-requirements">
      <name>Algorithm Requirements</name>
      <t>This section defines the normative requirements for cryptographic
   algorithms used in AS2. These requirements apply to all conformant
   implementations. Guidance on interoperability with legacy AS2 systems
   that continue to use older algorithms is provided separately in
   <xref target="legacy-interoperability-non-normative"/>.</t>
      <section anchor="lifecycle-management">
        <name>Algorithm Lifecycle Management</name>
        <t>As cryptographic algorithms evolve, implementers should monitor IETF
   security guidance and algorithm lifecycle announcements. Algorithms
   are categorized as:</t>
        <artwork><![CDATA[
     o  **MUST**: Required for conformant implementations
     o  **SHOULD**: Strongly recommended for new implementations
     o  **MAY**: Optional, for specific use cases
     o  **DEPRECATED**: Supported only for legacy interoperability (see Section 1.2.1)
     o  **MUST NOT**: Prohibited in conformant implementations
]]></artwork>
        <t>Algorithm requirements in this specification follow the S/MIME v4.0
   algorithm registry <xref target="RFC8551"/> and the CMS specification <xref target="RFC5652"/>.
   Updates to algorithm requirements may be published as separate RFCs
   that update this specification.</t>
        <t>For current algorithm security guidance, implementers should consult:</t>
        <artwork><![CDATA[
     o  NIST Special Publication 800-57 (Key Management)
     o  NIST Special Publication 800-131A (Transitions: Recommendation for
        Transitioning the Use of Cryptographic Algorithms and Key Lengths)
     o  IETF Security Area Directorate reviews and BCP documents
]]></artwork>
      </section>
      <section anchor="hash-algorithms">
        <name>Hash Algorithms</name>
        <t>Implementations MUST support SHA-256 for message integrity check (MIC)
   calculations and digital signatures. Implementations SHOULD support
   SHA-384 or stronger algorithms.</t>
        <t>See Section 1.2.1 for clarifications on handling legacy algorithms when
   interoperating with RFC 4130 systems.</t>
      </section>
      <section anchor="encryption-algorithms">
        <name>Encryption Algorithms</name>
        <t>Implementations MUST support AES encryption algorithms as defined in
   S/MIME Version 4.0 <xref target="RFC8551"/>. At a minimum, AES-128-CBC and AES-256-CBC
   MUST be supported. Implementations are also RECOMMENDED to support
   AES-128-GCM and AES-256-GCM. Support for AES-CCM is also RECOMMENDED
   for environments requiring authenticated encryption.</t>
        <section anchor="envelopeddata-vs-authenvelopeddata">
          <name>EnvelopedData vs AuthEnvelopedData</name>
          <t>The choice between EnvelopedData and AuthEnvelopedData depends on the
   content encryption algorithm selected:</t>
          <artwork><![CDATA[
     o  **AuthEnvelopedData** MUST be used when employing authenticated
        encryption algorithms such as AES-GCM or AES-CCM. These algorithms
        provide both confidentiality and integrity protection in a single
        cryptographic operation. AuthEnvelopedData was introduced in
        S/MIME 4.0 [RFC8551] specifically to support these modes.

     o  **EnvelopedData** MUST be used when employing non-authenticated
        encryption algorithms such as AES-CBC or when maintaining backward
        compatibility with S/MIME 3.2 implementations [RFC5751]. When using
        EnvelopedData, integrity protection MUST be provided separately
        through digital signatures (multipart/signed).
]]></artwork>
          <t>Implementations MUST NOT mix content encryption algorithms for different
   recipients of the same message. A single content encryption algorithm
   MUST be selected and used for all recipients. For example, if a message
   is encrypted with AES-128-GCM, all recipient information MUST use
   AES-128-GCM; it is not permitted to encrypt the content-encryption
   key with AES-CBC for some recipients and AES-GCM for others.</t>
        </section>
        <section anchor="multiple-recipient-encryption">
          <name>Multiple-Recipient Encryption</name>
          <t>To support recoverable decryption and regulatory requirements,
   implementations SHOULD support multiple-recipient encryption of the
   content-encryption key (CEK), consistent with <xref target="RFC8551"/> Section 3.3.
   A copy of the CEK encrypted for the originator SHOULD also be included in
   the EnvelopedData, and the same principle applies to AuthEnvelopedData
   when using AES-CCM or AES-GCM.</t>
          <t>See Section 1.2.1 for guidance on handling weak algorithms when interoperating
   with legacy AS2 systems.</t>
        </section>
      </section>
    </section>
    <section anchor="structure-and-processing-of-an-mdn-message">
      <name>Structure and Processing of an MDN Message</name>
      <t>This document aligns MDN behavior with RFC 8098, clarifying semantics
for interoperability. It does not redefine the MDN format.
Implementations MUST be able to parse historic MDN forms as described in
RFC 3798 for backward compatibility.</t>
      <section anchor="introduction-2">
        <name>Introduction</name>
        <t>In order to support non-repudiation of receipt, a signed receipt,
   based on digitally signing a message disposition notification, is to
   be implemented by a receiving trading partner's UA. The message
   disposition notification, specified by RFC 3798, is digitally signed
   by a receiving trading partner as part of a multipart/signed MIME
   message.</t>
        <t>The requirements in this section update but do not alter the compatibility
   of MDN formats with existing AS2 implementations (see <xref target="backward-compatibility-and-interoperability"/>).
   This ensures interoperability with both RFC 3798 and RFC 8098 implementations.</t>
        <t>The following support for signed receipts is REQUIRED:</t>
        <artwork><![CDATA[
  1. The ability to create a multipart/report; where the
     report-type = disposition-notification.

  2. The ability to calculate a message integrity check (MIC) on the
     received message. The calculated MIC value will be returned to
     the sender of the message inside the signed receipt.

  3. The ability to create a multipart/signed content with the
     message disposition notification as the first body part, and
     the signature as the second body part.

  4. The ability to return the signed receipt to the sending trading
     partner.

  5. The ability to return either a synchronous or an asynchronous
     receipt as the sending party requests.
]]></artwork>
        <t>The signed receipt is used to notify a sending trading partner that
   requested the signed receipt that:</t>
        <artwork><![CDATA[
  1. The receiving trading partner acknowledges receipt of the sent
     EC Interchange.

  2. If the sent message was signed, then the receiving trading
     partner has authenticated the sender of the EC Interchange.

  3. If the sent message was signed, then the receiving trading
     partner has verified the integrity of the sent EC Interchange.
]]></artwork>
        <t>Regardless of whether the EDI/EC Interchange was sent in S/MIME
   format, the receiving trading partner's UA MUST provide the following
   basic processing:</t>
        <artwork><![CDATA[
  1. If the sent EDI/EC Interchange is encrypted, then the encrypted
     symmetric key and initialization vector (if applicable) is
     decrypted using the receiver's private key.

  2. The decrypted symmetric encryption key is then used to decrypt
     the EDI/EC Interchange.

  3. The receiving trading partner authenticates signatures in a
     message using the sender's public key. The authentication
     algorithm performs the following:

     a. The message integrity check (MIC or Message Digest), is
        decrypted using the sender's public key.

     b. A MIC on the signed contents (the MIME header and encoded
        EDI object, as per RFC 1767) in the message received is
        calculated using the same one-way hash function that the
        sending trading partner used.

     c. The MIC extracted from the message that was sent and the MIC
        calculated using the same one-way hash function that the
        sending trading partner used are compared for equality.

  4. The receiving trading partner formats the MDN and sets the
     calculated MIC into the "Received-content-MIC" extension field.

  5. The receiving trading partner creates a multipart/signed MIME
     message according to RFC 1847.

  6. The MDN is the first part of the multipart/signed message, and
     the digital signature is created over this MDN, including its
     MIME headers.

  7. The second part of the multipart/signed message contains the
     digital signature. The "protocol" option specified in the
     second part of the multipart/signed is as follows:

           S/MIME: protocol = "application/pkcs7-signature"

  8. The signature information is formatted according to S/MIME
     specifications.
]]></artwork>
        <t>The EC Interchange and the RFC 1767 MIME EDI content header can
   actually be part of a multi-part MIME content-type. When the EDI
   Interchange is part of a multi-part MIME content-type, the MIC MUST
   be calculated across the entire multi-part content, including the
   MIME headers contained within the multi-part MIME content.</t>
        <t>The signed MDN, when received by the sender of the EDI Interchange,
   can be used by the sender as follows:</t>
        <artwork><![CDATA[
    o  As an acknowledgement that the EDI Interchange sent was
       delivered and acknowledged by the receiving trading partner.
       The receiver does this by returning the original-message-id
       of the sent message in the MDN portion of the signed receipt.

    o  As an acknowledgement that the integrity of the EDI
       Interchange was verified by the receiving trading partner.
       The receiver does this by returning the calculated MIC of the
       received EC Interchange (and 1767 MIME headers) in the
       "Received-content-MIC" field of the signed MDN.

    o  As an acknowledgement that the receiving trading partner has
       authenticated the sender of the EDI Interchange.

    o  As a non-repudiation of receipt when the signed MDN is
       successfully verified by the sender with the receiving
       trading partner's public key and the returned MIC value
       inside the MDN is the same as the digest of the original
       message.
]]></artwork>
      </section>
      <section anchor="synchronous-and-asynchronous-mdns">
        <name>Synchronous and Asynchronous MDNs</name>
        <t>The AS2-MDN exists in two varieties: synchronous and asynchronous.</t>
        <t>The synchronous AS2-MDN is sent as an HTTP response to an HTTP POST
   or as an HTTPS response to an HTTPS POST. This form of AS2-MDN is
   called synchronous because the AS2-MDN is returned to the originator
   of the POST on the same HTTP connection.</t>
        <t>The synchronous response MUST indicate transfer-layer success or
   failure, such as <tt>200 OK</tt> or <tt>202 Accepted</tt>.  The format of this
   response MAY be identical to that used when no AS2-MDN is requested.</t>
        <t>The asynchronous AS2-MDN is sent on a separate HTTP or HTTPS
   connection. Logically, the asynchronous AS2-MDN is a response
   to an AS2 message. However, at the transfer-protocol layer, assuming
   that no HTTP pipelining is utilized, the asynchronous AS2-MDN is
   delivered on a unique HTTP connection, distinct from that used to
   deliver the original AS2 message.</t>
        <t>When handling an asynchronous request, the receiving system <strong>SHOULD</strong>
   return a transfer-layer response (typically <tt>202 Accepted</tt> or <tt>204 No Content</tt>)
   as soon as the last byte of the inbound message has been received, without waiting
   for decryption, signature verification, or message persistence.  This
   minimizes the risk of network timeouts and ensures that the sender can
   begin awaiting the asynchronous MDN promptly. The asynchronous MDN MUST be
   transmitted as an independent HTTP message, separate from the original
   connection used to submit the AS2 message.</t>
        <t>Implementations <strong>MAY</strong> use persistent (keep-alive) HTTP connections.
   Closing the TCP connection immediately after sending the response is
   <strong>RECOMMENDED</strong> for simplicity, but not required.  Some application
   servers and frameworks manage connection lifecycles automatically and
   may keep the socket open.  The AS2 specification does not mandate that
   the AS2 layer explicitly close the connection (see <xref target="connection-management"/>).</t>
        <t>The following diagram illustrates the synchronous versus asynchronous
   varieties of AS2-MDN delivery using HTTP:</t>
        <sourcecode type="text"><![CDATA[
   Synchronous AS2-MDN

   {Peer1} ----( connect )----> {Peer2}
   {Peer1} -----( send )------> {Peer2}   HTTP Request {AS2-Message}
   {Peer1} <---( receive )----- {Peer2}   HTTP Response {AS2-MDN}

   Asynchronous AS2-MDN

   {Peer1} ----( connect )----> {Peer2}
   {Peer1} -----( send )------> {Peer2}   HTTP Request {AS2-Message}
   {Peer1} <---( receive )----- {Peer2}   HTTP Response (e.g., "200 OK" or "204 No Content")
   {Peer1}*<---( connect )----- {Peer2}
   {Peer1} <--- ( send )------- {Peer2}   HTTP Request {AS2-MDN}
   {Peer1} ----( receive )----> {Peer2}   HTTP Response
]]></sourcecode>
        <ul spacing="normal">
          <li>
            <t>Note: An AS2-MDN may be directed to a host different from that of
   the sender of the AS2 message. It may also utilize a transfer protocol
   different from that used to send the original AS2 message.</t>
          </li>
        </ul>
        <t>The advantage of the synchronous MDN is that it provides the
   sender of the AS2 message with a verifiable confirmation of
   delivery within a single synchronous logic flow. However, if the
   message is large, the time required to process it and return the
   AS2-MDN on the same connection may exceed the maximum configured
   time permitted for maintaining an open connection.</t>
        <t>The advantage of the asynchronous MDN is that it provides for the
   rapid return of a transfer-layer acknowledgment from the receiver,
   confirming receipt of data, while allowing full processing to occur
   later. This reduces connection duration and timeout risk.  However,
   the asynchronous AS2-MDN MUST include sufficient identifying
   information (for example, <tt>Original-Message-ID</tt> and <tt>Final-Recipient</tt>)
   so that the message originator can correlate the MDN with its original
   message and update the processing status accordingly.</t>
        <t>Synchronous and asynchronous HTTP or HTTPS MDNs are both valid under
   this specification.  Implementations MUST support receiving both
   types and SHOULD support sending both.</t>
      </section>
      <section anchor="requesting-a-signed-receipt">
        <name>Requesting a Signed Receipt</name>
        <t>Message disposition notifications are requested as per RFC 3798. A
   request that the receiving user agent issue a message disposition
   notification is made by placing the following header into the message
   to be sent:</t>
        <artwork><![CDATA[
    MDN-request-header = "Disposition-notification-to"
                        ":"  mail-address
]]></artwork>
        <t>The following example is for requesting an MDN:</t>
        <artwork><![CDATA[
    Disposition-notification-to: xxx@example.com
]]></artwork>
        <t>The "Disposition-notification-to" header field is retained for compatibility
   with the MDN specification <xref target="RFC3798"/>, but its value is not used by AS2 implementations
   to determine where to return the MDN. Its presence just indicates that an MDN receipt is
   to be returned to the originator. In AS2, the field value may be an email address, a URL,
   a fully qualified domain name, an AS2 identifier, or any other implementation-specific string.
   Implementations MUST NOT reject a message based on the syntax of this field. This document
   relaxes the original requirement from RFC 4130, which mandated an email address, in order to
   reflect current AS2 practice while maintaining backward compatibility (see <xref target="backward-compatibility-and-interoperability"/>).</t>
        <t>When requesting MDN-based receipts, the originator supplies
   additional extension headers that precede the message body.  These
   header "tags" are as follows:</t>
        <t>A Message-ID header is added to support message reconciliation, so
   that an Original-Message-Id value can be returned in the body part of
   MDN. Other headers, especially "Subject" and "Date", SHOULD be
   supplied; the values of these headers are often mentioned in the
   human-readable portion of a MDN to aid in identifying the original
   message.</t>
        <t>MDNs will be returned in the HTTP response when requested, unless an
   asynchronous MDN is requested.</t>
        <t>To request an asynchronous message disposition notification, the
   following header is placed into the message that is sent:</t>
        <artwork><![CDATA[
    Receipt-Delivery-Option: return-URL
]]></artwork>
        <t>This is an example requesting that the MDN be asynchronous:</t>
        <artwork><![CDATA[
    Receipt-Delivery-Option: http://www.example.com/Path
]]></artwork>
        <t>Receipt-delivery-option syntax allows the return-url to use some schemes
   other than HTTP using the POST method.</t>
        <t>The "receipt-delivery-option: return-url" string indicates the URL to
   use for an asynchronous MDN. This header is NOT present if the
   receipt is to be synchronous. The email value in Disposition-
   notification-to is not used in this specification because it was
   limited to RFC 2822 addresses (now replaced by <xref target="RFC5322"/>); the extension
   header "Receipt-delivery-option" has been introduced to provide a
   URL for the MDN return by several transfer options.</t>
        <t>The receipt-delivery-option's value MUST be a URL indicating the
   delivery transport destination for the receipt.</t>
        <t>An example request for an asynchronous MDN via an HTTP transport:</t>
        <artwork><![CDATA[
    Receipt-delivery-option: http://www.example.com
]]></artwork>
        <t>An example request for an asynchronous MDN via an HTTP/S transport:</t>
        <artwork><![CDATA[
    Receipt-delivery-option: https://www.example.com
]]></artwork>
        <t>Finally, the header, Disposition-notification-options, identifies
   characteristics of message disposition notification as in <xref target="RFC3798"/>. The
   most important of these options is for indicating the signing options
   for the MDN, as in the following example:</t>
        <artwork><![CDATA[
    Disposition-notification-options:
         signed-receipt-protocol=optional,pkcs7-signature;
         signed-receipt-micalg=optional,sha-256
]]></artwork>
        <t>For signing options, consider the disposition-notification-options
   syntax:</t>
        <artwork><![CDATA[
    Disposition-notification-options =
             "Disposition-Notification-Options" ":"
              disposition-notification-parameters
where
         disposition-notification-parameters =
                           parameter *(";" parameter)

where
         parameter = attribute "=" importance ", " 1#value"

where
         importance = "required" | "optional"
]]></artwork>
        <t>So the Disposition-notification-options string could be:</t>
        <artwork><![CDATA[
    signed-receipt-protocol=optional, <protocol symbol>;
    signed-receipt-micalg=optional, <micalg1>, <micalg2>,...;
]]></artwork>
        <t>The currently used value for &lt;protocol symbol&gt; is "pkcs7-signature"
   for the S/MIME detached signature format.</t>
        <t>The signed-receipt-micalg parameter specifies which message integrity
   check (MIC) algorithm should be used when generating the signed receipt.
   Values are defined by the S/MIME specification <xref target="RFC8551"/> and MUST use
   the algorithm identifiers registered in the SMI Security for S/MIME
   registries.</t>
        <sourcecode type="text"><![CDATA[
   Supported values:
      SHA-256      sha-256 (REQUIRED)
      SHA-384      sha-384 (RECOMMENDED)
      SHA-512      sha-512 (OPTIONAL)
]]></sourcecode>
        <t>See <xref target="lifecycle-management"/> for current algorithm requirements and lifecycle guidance.</t>
        <t>The semantics of the "signed-receipt-protocol" and the "signed-receipt-micalg"
   parameters are as follows:</t>
        <ol spacing="normal" type="1"><li>
            <t>The "signed-receipt-protocol" parameter is used to request a
signed receipt from the recipient trading partner. The "signed-receipt-protocol"
parameter also specifies the format in which the signed receipt SHOULD be returned
to the requester.  </t>
            <t>
The "signed-receipt-micalg" parameter identifies one or more message
integrity check (MIC) algorithms, in order of preference, that the
requester supports for signing the returned receipt. Although multiple
values MAY be listed to indicate fallback options, only a single MIC
algorithm is used in the returned MDN because the "Received-content-MIC"
field conveys exactly one digest value.  </t>
            <t>
Recipients MUST select the first algorithm in the list that they also
support and MUST compute the Received-content-MIC using that algorithm.
Senders SHOULD list the strongest algorithm first. Modern
implementations SHOULD include only a single value unless multiple
values are needed to support phased migration away from weaker
algorithms. Implementations MUST accept messages that contain multiple
values and MUST ignore unsupported values.  </t>
            <t>
When a sender lists multiple algorithms, recipients MUST NOT fall back
to an algorithm that is not explicitly listed by the sender.
Trading partners typically pre-configure acceptable MIC algorithms
through bilateral agreement, and runtime negotiation is not needed.
If none of the algorithms listed is supported, the recipient SHOULD
reject the message and MAY return an unsigned MDN indicating
"unsupported-mic-algorithm" rather than silently selecting a weaker
algorithm.  When the header is absent (e.g., unsigned messages), an
implementation MUST use a locally configured default algorithm; SHA-256
SHOULD be preferred.</t>
          </li>
        </ol>
        <t><strong>The following algorithm requirements apply to all implementations:</strong></t>
        <artwork><![CDATA[
     o  Implementations **MUST** support SHA-256.

     o  Implementations **SHOULD** support SHA-384 or stronger.

  See Section 10 for additional algorithm requirements
  and deprecation timelines.

  Both the "signed-receipt-protocol" and the "signed-receipt-micalg"
  option parameters are REQUIRED when requesting a signed receipt.

  The lack of the presence of the "Receipt-Delivery-Option"
  indicates that a receipt is synchronous in nature. The presence
  of the "Receipt-Delivery-Option: return-url" indicates that an
  asynchronous receipt is requested and SHOULD be sent to the
  "return-url".
]]></artwork>
        <ol spacing="normal" type="1"><li>
            <t>The "importance" attribute of "Optional" is defined in RFC 3798,
Section 2.2, and has the following meaning:  </t>
            <t>
Parameters with an importance of "Optional" permit a UA that does
not understand the particular options parameter to still generate
an MDN in response to a request for a MDN.  </t>
            <t>
A UA that does not understand the "signed-receipt-protocol"
parameter or the "signed-receipt-micalg" will obviously not return
a signed receipt.  </t>
            <t>
The importance of "Optional" is used for the signed receipt
parameters because it is RECOMMENDED that an MDN be returned to
the requesting trading partner even if the recipient could not
sign it.  </t>
            <t>
The returned MDN will contain information on the disposition of
the message and on why the MDN could not be signed. See the
Disposition field in <xref target="structure-and-processing-of-an-mdn-message"/>.5
for more information.  </t>
            <t>
Within an EDI trading relationship, if a signed receipt is
expected and is not returned, then the validity of the transaction
is up to the trading partners to resolve.  </t>
            <t>
In general, if a signed receipt is required in the trading
relationship and is not received, the transaction will likely
be considered invalid.</t>
          </li>
        </ol>
        <section anchor="signed-receipt-considerations">
          <name>Signed Receipt Considerations</name>
          <t>The method used to request a receipt or a signed receipt is defined
   in RFC 3798, "An Extensible Message Format for Message Disposition
   Notifications".</t>
          <t>The "rules" are as follows:</t>
          <ol spacing="normal" type="1"><li>
              <t>When a receipt is requested, explicitly specifying that the
receipt be signed, then the receipt MUST be returned with a
signature.</t>
            </li>
            <li>
              <t>When a receipt is requested, explicitly specifying that the
receipt be signed, but the recipient cannot support either the
requested protocol format or the requested MIC algorithms, then
either a signed or unsigned receipt SHOULD be returned.</t>
            </li>
            <li>
              <t>When a signature is not explicitly requested (indicated by the
absence of the Disposition-Notification-Options header), or if the
signed receipt request parameter is not recognized by the UA, then no
receipt, an unsigned receipt, or a signed receipt MAY be returned
by the recipient.</t>
            </li>
          </ol>
          <t>NOTE: It is RECOMMENDED that when a signature is not explicitly requested,
   or if parameters are not recognized, the UA send back, at a minimum,
   an unsigned receipt. If, however, a signed receipt was always returned
   as a policy, whether requested or not, then any false unsigned receipts
   can be repudiated.</t>
          <t>When a request for a signed receipt is made, but there is an error in
   processing the contents of the message, a signed receipt MUST still
   be returned. The request for a signed receipt SHALL still be
   honored, though the transaction itself may not be valid. The reason
   why the contents could not be processed MUST be set in the
   "disposition-field".</t>
          <t>When a signed receipt request is made, the "Received-content-MIC"
   MUST always be returned to the requester (except when corruption
   prevents computation of the digest in accordance with the following
   specification). The "Received-content-MIC" MUST be calculated as
   follows:</t>
          <artwork><![CDATA[
     o  For any signed messages, the MIC to be returned is calculated
        on the RFC1767/RFC3023 MIME header and content.
        Canonicalization on the MIME headers MUST be performed before
        the MIC is calculated, since the sender requesting the signed
        receipt was also REQUIRED to canonicalize.

     o  For encrypted, unsigned messages, the MIC to be returned is
        calculated on the decrypted RFC 1767/RFC3023 MIME header and
        content. The content after decryption MUST be canonicalized
        before the MIC is calculated.

     o  For unsigned, unencrypted messages, the MIC MUST be calculated
        over the message contents without the outer MIME or any other RFC
        5322 headers, since these may sometimes be altered or reordered by
        intermediary user agents or proxies.
]]></artwork>
        </section>
      </section>
      <section anchor="mdn-format-and-values">
        <name>MDN Format and Values</name>
        <t>This section defines the format of the AS2 Message Disposition
   Notification (AS2-MDN).</t>
        <section anchor="as2-mdn-general-formats">
          <name>AS2-MDN General Formats</name>
          <sourcecode type="abnf"><![CDATA[
AS2-MDN = AS2-sync-MDN | AS2-async-http-MDN

AS2-sync-MDN =
   Status-Line
   *(( general-header | response-header | entity-header )
     CRLF )
   CRLF
   AS2-MDN-body

Status-Line =
   HTTP-Version SP Status-Code SP Reason-Phrase CRLF

AS2-async-http-MDN =
   Request-Line
   *(( general-header | request-header | entity-header )
     CRLF )
   CRLF
   AS2-MDN-body

Request-Line =
   Method SP Request-URI SP HTTP-Version CRLF

AS2-MDN-body =
   AS2-signed-MDN-body | AS2-unsigned-MDN-body
]]></sourcecode>
        </section>
        <section anchor="as2-mdn-construction">
          <name>AS2-MDN Construction</name>
          <t>The AS2-MDN-body is formatted as a MIME multipart/report with a
   report-type of "disposition-notification". When the message is
   unsigned, the transfer-layer ("outermost") entity-headers of the
   AS2-MDN contain the content-type header that specifies a content-type
   of "multipart/report" and parameters indicating the report-type, and
   the value of the outermost multipart boundary.</t>
          <t>When the AS2-MDN is signed, the transfer-layer ("outermost") entity-
   headers of the AS2-MDN contain a content-type header that specifies a
   content-type of "multipart/signed" and parameters indicating the
   algorithm used to compute the message digest, the signature-
   formatting protocol (e.g., pkcs7-signature), and the value of the
   outermost multipart boundary. The first part of the MIME
   multipart/signed message is an embedded MIME multipart/report of type
   "disposition-notification". The second part of the multipart/signed
   message contains a MIME application/pkcs7-signature message.</t>
          <t>The first part of the MIME multipart/report is a "human-readable"
   portion containing a general description of the message
   disposition. The second part of the MIME multipart/report is a
   "machine-readable" portion that is defined as:</t>
          <sourcecode type="abnf"><![CDATA[
AS2-disposition-notification-content =
    reporting-ua-field CRLF
    mdn-gateway-field CRLF
    final-recipient-field CRLF
    original-message-id-field CRLF
    AS2-disposition-field CRLF
    *( failure-field CRLF )
    *( error-field CRLF )
    *( warning-field CRLF )
    *( extension-field CRLF )
    AS2-received-content-MIC-field CRLF
]]></sourcecode>
        </section>
        <section anchor="as2-mdn-fields">
          <name>AS2-MDN Fields</name>
          <t>The rules for constructing the AS2-disposition-notification content
   are identical to the disposition-notification-content rules provided
   in <xref target="algorithm-requirements"/> of RFC 3798 <xref target="RFC3798"/>, except that the RFC 3798 disposition-
   field has been replaced with the AS2-disposition-field and that the
   AS2-received-content-MIC field has been added. The differences
   between the RFC 3798 disposition-field and the AS2-disposition-field
   are described below. Where there are differences between this
   document and RFC 3798, those entity names have been changed by
   pre-pending "AS2-". Entities that do not differ from RFC 3798 are not
   necessarily further defined in this document; refer to RFC 3798,
   Section 7, "Collected Grammar", for the original grammar.</t>
          <sourcecode type="abnf"><![CDATA[
AS2-disposition-field =
    "Disposition" ":" disposition-mode ";"
    AS2-disposition-type "/" AS2-disposition-modifier

disposition-mode =
    action-mode "/" sending-mode

action-mode =
    "manual-action" | "automatic-action"

sending-mode =
    "MDN-sent-manually" | "MDN-sent-automatically"

AS2-disposition-type =
    "processed" | "failed"

AS2-disposition-modifier =
    ( "error" | "warning" ) | AS2-disposition-modifier-extension

AS2-disposition-modifier-extension =
    "error: authentication-failed" |
    "error: decompression-failed" |
    "error: decryption-failed" |
    "error: duplicate-filename" |
    "error: illegal-filename" |
    "error: insufficient-message-security" |
    "error: integrity-check-failed" |
    "error: invalid-message-id" |
    "error: unexpected-processing-error" |
    "error: unknown-trading-relationship" |
    "error: unknown-trading-partner" |
    "warning: " AS2-MDN-warning-description |
    "failure: " AS2-MDN-failure-description

AS2-MDN-warning-description = *( TEXT )

AS2-MDN-failure-description = *( TEXT )

AS2-received-content-MIC-field =
    "Received-content-MIC" ":" encoded-message-digest ","
    digest-alg-id CRLF

encoded-message-digest =
    1*( 'A'-'Z' | 'a'-'z' | '0'-'9' | '/' | '+' | '=' )
    ; i.e., base64(message-digest)

digest-alg-id = "sha-256" | "sha-384" | "sha-512"
]]></sourcecode>
          <t>To improve error reporting and interoperability, this specification
   introduces additional standardized disposition modifiers beyond those
   defined in <xref target="RFC4130"/> and <xref target="RFC8098"/>.</t>
          <t>These modifiers are used to indicate specific failure conditions that
   cannot be adequately represented by the existing error codes and may
   not be compatible with earlier implementations of AS2.
   Implementations MUST include a human-readable explanation in the MDN
   <tt>Explanation</tt> field when returning these modifiers.</t>
          <t>Future modifiers may be registered through the IANA registry for
   AS2 Disposition Values and Modifiers (see <xref target="iana-considerations"/>).</t>
          <t>The "Received-content-MIC" extension field is set when the integrity
   of the received message is verified. The MIC value is the base64-encoded
   message-digest computed over the received message using a hash
   function. This field is required for signed receipts but optional
   for unsigned receipts. For details defining the specific content
   over which the message digest is to be computed, see <xref target="structure-and-processing-of-an-mdn-message"/>.3.1
   of this document.</t>
          <t>For signed messages, the algorithm used to calculate the MIC MUST be
   the same as that used on the message that was signed. If the message
   is not signed, then the SHA-256 algorithm SHOULD be used. This field
   is set only when the content of the message is processed
   successfully. This field is used in conjunction with the recipient's
   signature on the MDN so that the sender can verify non-repudiation of
   receipt.</t>
          <t>AS2-MDN field names (e.g., "Disposition:", "Final-Recipient:") are
   case insensitive (cf. RFC 3798, Section 3.1.1). AS2-MDN action-
   modes, sending-modes, AS2-disposition-types, and AS2-disposition-
   modifier values, which are defined above, and user-supplied *( TEXT )
   values are also case-insensitive. AS2 implementations MUST NOT make
   assumptions regarding the values supplied for AS2-MDN-warning-
   description or AS2-MDN-failure-description, or for the values of any
   (optional) error, warning, or failure fields.</t>
        </section>
        <section anchor="as2-mdn-field-requirements">
          <name>AS2-MDN Field Requirements</name>
          <t>The following fields have clarified requirements for interoperability:</t>
          <artwork><![CDATA[
     o  **Final-Recipient** — This field **MUST** always be present in an MDN
         and MUST identify the AS2-To value of the original message.

     o  **Original-Message-ID** — This field is **REQUIRED** and MUST exactly
         match the `Message-ID` of the original message as transmitted.
        `Message-ID` in the MDN itself is optional.

     o  **Disposition-Notification-To** — Implementations **MAY** include this
         field using an email address, URL, hostname, or other identifier as
         appropriate to the system.  However, as specified in [RFC4130], receiving
         applications **MUST** ignore this field and **MUST NOT** reject a message
         due to syntax or address format violations. The field is retained for
         compatibility with prior implementations.
]]></artwork>
        </section>
        <section anchor="additional-as2-mdn-programming-notes">
          <name>Additional AS2-MDN Programming Notes</name>
          <artwork><![CDATA[
     o  For HTTP transactions, Original-Recipient and Final-Recipient
        SHOULD not be different.  The value in Original-Message-ID SHOULD
        match the original Message-ID header value.

     o  Refer to RFC 3798 for the formatting of the MDN, except for the
        specific deviations mentioned above.

     o  Refer to RFC 3462 and RFC 3798 for the formatting of the content-
        type entity-headers for the MDN.

     o  Use an action-mode of "automatic-action" when the disposition
        described by the disposition type was a result of an automatic
        action rather than that of an explicit instruction by the user for
        this message.

     o  Use an action-mode of "manual-action" when the disposition
        described by the disposition type was a result of an explicit
        instruction by the user rather than some sort of automatically
        performed action.

     o  Use a sending-mode of "MDN-sent-automatically" when the MDN is
        sent because the UA had previously been configured to do so.

     o  Use a sending-mode of "MDN-sent-manually" when the user explicitly
        gave permission for this particular MDN to be sent.

     o  The sending-mode "MDN-sent-manually" is meaningful ONLY with
        "manual-action", not with "automatic-action".

     o  The "failed" disposition type MUST NOT be used for the situation
        in which there is some problem in processing the message other
        than interpreting the request for an MDN. The "processed" or
        other disposition type with appropriate disposition modifiers is
        to be used in such situations.
]]></artwork>
        </section>
      </section>
      <section anchor="disposition-mode-type-and-modifier">
        <name>Disposition Mode, Type, and Modifier</name>
        <section anchor="disposition-mode-overview">
          <name>Disposition Mode Overview</name>
          <t>This section provides a brief overview of how "processed", "error",
   "failure", and "warning" are used.</t>
        </section>
        <section anchor="successful-processing-status-indication">
          <name>Successful Processing Status Indication</name>
          <t>When the request for a receipt or signed receipt, and the received
   message contents are successfully processed by the receiving EDI UA,
   a receipt or MDN SHOULD be returned with the disposition-type set to
   "processed". When the MDN is sent automatically by the EDI UA, and
   there is no explicit way for a user to control the sending of the
   MDN, then the first part of the "disposition-mode" SHOULD be set to
   "automatic-action". When the MDN is being sent under user-
   configurable control, then the first part of the "disposition-mode"
   SHOULD be set to "manual-action". Since a request for a signed
   receipt should always be honored, the user MUST not be allowed to
   configure the UA to disallow sending of a signed receipt when the sender
   requests one.</t>
          <t>The second part of the disposition-mode is set to "MDN-sent-manually"
   if the user gave explicit permission for the MDN to be sent. Again,
   the user MUST not be allowed to explicitly refuse to send a signed
   receipt when the sender requests one. The second part of the
   "disposition-mode" is set to "MDN-sent-automatically" whenever the
   EDI UA sends the MDN automatically, regardless of whether the sending
   was under the control of a user, administrator, or the software.</t>
          <t>Because EDI content is generally handled automatically by the EDI UA,
   a request for a receipt or signed receipt will generally return the
   following in the "disposition-field":</t>
          <artwork><![CDATA[
   Disposition: automatic-action/MDN-sent-automatically; processed
]]></artwork>
          <t>Note that this specification does not restrict the use of the
   "disposition-mode" just to automatic actions. Manual actions are
   valid as long as it is kept in mind that a request for a signed
   receipt MUST be honored.</t>
        </section>
        <section anchor="unsuccessful-processed-content">
          <name>Unsuccessful Processed Content</name>
          <t>The request for a signed receipt requires the use of two
   "disposition-notification-options", which specify the protocol format
   of the returned signed receipt, and the MIC algorithm used to
   calculate the MIC over the message content. The "disposition-field"
   values that should be used if the message content is being rejected
   or ignored (for instance, if the EDI UA determines that a signed
   receipt cannot be returned because it does not support the requested
   protocol format, the EDI UA chooses not to process the message
   contents itself) MUST be specified in the MDN "disposition-field" as
   follows:</t>
          <artwork><![CDATA[
   Disposition: "disposition-mode";  failed/Failure: unsupported format
]]></artwork>
          <t>The "failed" AS2-disposition-type MUST be used when a failure occurs
   that prevents the proper generation of an MDN. For example, this
   disposition-type would apply if the sender of the message requested
   the application of an unsupported message-integrity-check (MIC)
   algorithm.</t>
          <t>The "failure:" AS2-disposition-modifier-extension SHOULD be used with
   an implementation-defined description of the failure. Further
   information about the failure may be contained in a failure-field.</t>
          <t>The syntax of the "failed" disposition-type is general, allowing the
   sending of any textual information along with the "failed"
   disposition-type. Implementations MUST support any printable textual
   characters after the Failure disposition-type. For use in Internet
   EDI, the following "failed" values are pre-defined and MUST be
   supported:</t>
          <artwork><![CDATA[
   "Failure: unsupported format"
   "Failure: unsupported MIC-algorithms"
]]></artwork>
        </section>
        <section anchor="unsuccessful-non-content-processing">
          <name>Unsuccessful Non-Content Processing</name>
          <t>When errors occur in processing the received message (other than
   content), the "disposition-field" MUST be set to the "processed"
   value for disposition-type and the "error" value for disposition-
   modifier.</t>
          <t>The "error" AS2-disposition-modifier with the "processed"
   disposition-type MUST be used to indicate that an error of some sort
   occurred that prevented successful processing of the message.
   Further information may be contained in an error-field.</t>
          <t>An "error:" AS2-disposition-modifier-extension SHOULD be used to
   combine the indication of an error with a predefined description of a
   specific, well-known error. Further information about the error may
   be contained in an error field.</t>
          <t>For AS2 implementations, the following "error" AS2-disposition-modifier
   values are defined:</t>
          <sourcecode type="text"><![CDATA[
   o "Error: authentication-failed"         - the receiver could not
                                              authenticate the sender.

   o "Error: decompression-failed"          - the receiver could not
                                              decompress the message
                                              contents.

   o "Error: decryption-failed"             - the receiver could not
                                              decrypt the message
                                              contents.
   o "Error: duplicate-filename"            - the message payload contained
                                              a filename already received
                                              by the backend server.

   o "Error: illegal-filename"              - the message payload contained
                                              a filename that could nor be
                                              processed by the backend server.

   o "Error: insufficient-message-security" - the content of the message
                                              was not appropriately enveloped
                                              according to the agreed-upon
                                              message security.

   o "Error: integrity-check-failed"        - the receiver could not
                                              verify content integrity.

   o "Error: invalid-message-id"            - the receiver could not
                                              parse the value of the
                                              Message-ID header because it
                                              was not syntactically correct.

   o "Error: unexpected-processing-error"   - a catch-all for any
                                              additional processing
                                              errors.

   o "Error: unknown-trading-relationship"  - the receiver could not
      or "Error: unknown-trading-partner"     correlate the AS2-To/AS2-From
                                              header values to values known
                                              to the system.
]]></sourcecode>
          <t>An example of how the "disposition-field" would look when errors
   other than those in content processing are detected is as follows:</t>
          <artwork><![CDATA[
   Disposition: "disposition-mode"; processed/Error: decryption-failed
]]></artwork>
        </section>
        <section anchor="processing-warnings">
          <name>Processing Warnings</name>
          <t>Situations arise in EDI when, even if a trading partner cannot be
   authenticated correctly, the trading partners still agree to continue
   processing the EDI transactions. Transaction reconciliation is done
   between the trading partners at a later time. In the content
   processing warning situations as described above, the "disposition-
   field" MUST be set to the "processed" disposition-type value, and the
   "warning" to the "disposition-modifier" value.</t>
          <t>The "warning" AS2-disposition-modifier MUST be used with the
   "processed" disposition-type to indicate that the message was
   successfully processed but that an exceptional condition occurred.
   Further information may be contained in a warning-field.</t>
          <t>A "warning:" AS2-disposition-modifier-extension SHOULD be used to
   combine the indication of a warning with an implementation-defined
   description of the warning.  Further information about the warning
   may be contained in a warning-field.</t>
          <t>For use in Internet EDI, the following "warning"
   disposition-modifier-extension value is defined:</t>
          <artwork><![CDATA[
   "Warning: authentication-failed, processing continued"
]]></artwork>
          <t>An example of how the "disposition-field" would look when warning
   other than those for content processing are detected is as follows:</t>
          <t>Example:</t>
          <artwork><![CDATA[
   Disposition: "disposition-mode"; processed/warning:
     authentication-failed, processing continued
]]></artwork>
        </section>
        <section anchor="backward-compatibility-with-disposition-type-modifier-and-extension">
          <name>Backward Compatibility with Disposition Type, Modifier, and Extension</name>
          <t>The following set of examples represents typical constructions of the
   Disposition field that have been in use by AS2 implementations.  This
   is NOT an exhaustive list of possible constructions. However, AS2
   implementations MUST accept constructions of this type to be backward
   compatible with earlier AS2 versions.</t>
          <artwork><![CDATA[
  Disposition: automatic-action/MDN-sent-automatically; processed

  Disposition: automatic-action/MDN-sent-automatically;
    processed/error: authentication-failed

  Disposition: automatic-action/MDN-sent-automatically;
    processed/warning: duplicate-document

  Disposition: automatic-action/MDN-sent-automatically;
    failed/failure: sender-equals-receiver
]]></artwork>
          <t>The following set of examples represents allowable constructions of
   the Disposition field that combine the historic constructions above
   with optional RFC 3798 error, warning, and failure fields. AS2
   implementations MAY produce these constructions. However, AS2
   servers are not required to recognize or process optional error,
   warning, or failure fields at this time. Note that the use of the
   multiple error fields in the second example below provides for the
   indication of multiple error conditions.</t>
          <artwork><![CDATA[
     Disposition: automatic-action/MDN-sent-automatically; processed

     Disposition: automatic-action/MDN-sent-automatically;
       processed/error: decryption-failed
     Error: The signature did not decrypt into a valid PKCS#1 Type-2 block.
     Error: The length of the decrypted key does not equal the octet length of the modulus.

     Disposition: automatic-action/MDN-sent-automatically;
       processed/warning: duplicate-document
     Warning: An identical message already exists at the destination server.

     Disposition: automatic-action/MDN-sent-automatically;
          failed/failure: sender-equals-receiver
     Failure: The AS2-To name is identical to the AS2-From name.
]]></artwork>
          <t>The following set of examples represents allowable constructions of
   the Disposition field that employ pure RFC 3798 Disposition-modifiers
   with optional error, warning, and failure fields. These examples are
   provided as informational only. These constructions are not
   guaranteed to be backward compatible with AS2 implementations prior
   to version 1.1.</t>
          <artwork><![CDATA[
     Disposition: automatic-action/MDN-sent-automatically; processed

     Disposition: automatic-action/MDN-sent-automatically; processed/error
     Error: authentication-failed
     Error: The signature did not decrypt into a valid PKCS#1 Type-2 block.
     Error: The length of the decrypted key does not equal the octet length of the modulus.

     Disposition: automatic-action/MDN-sent-automatically; processed/warning
     Warning: duplicate-document

     Disposition: automatic-action/MDN-sent-automatically; failed
     Failure: sender-equals-receiver
]]></artwork>
        </section>
      </section>
      <section anchor="receipt-reply-considerations-in-an-http-post">
        <name>Receipt Reply Considerations in an HTTP POST</name>
        <t>The details of the response to the POST command vary depending upon
   whether a receipt has been requested.</t>
        <t>With no extended header requesting a receipt, and with no errors
   accessing the request-URI specified processing, the status line in
   the Response to the POST request SHOULD be in the 200 range. Status
   codes in the 200 range SHOULD also be used when an entity is returned
   (a signed receipt in a multipart/signed content type or an unsigned
   receipt in a multipart/report). Even when the disposition of the
   data was an error condition at the authentication, decryption or
   other higher level, the HTTP status code SHOULD indicate success at
   the HTTP level.</t>
        <t>The HTTP server application may respond with an unsolicited
   multipart/report as a message body that the HTTP client might not
   have solicited, but the client may discard this. Applications SHOULD
   avoid emitting unsolicited receipt replies because bandwidth or
   processing limitations might have led administrators to suspend
   asking for acknowledgements.</t>
        <t>Message Disposition Notifications, when used in the HTTP reply context,
   follow the same semantics as those defined in <xref target="RFC3798"/>. For example, the
   disposition field is a required element in the machine-readable second
   part of a multipart/report for a MDN. The final-recipient-field (<xref target="RFC3798"/>,
   Section 3.1) value SHOULD be derived from the entity headers of the request.</t>
        <t>In an MDN, the first part of the multipart/report (the human-readable
   portion) SHOULD include items such as the subject, the date, and other
   information when those fields are present in entity header fields
   following the POST request. An application MUST report the Message-ID
   of the request in the second part of the multipart/report (the
   machine-readable portion). Also, an MDN SHOULD have its own unique
   Message-ID HTTP header. The HTTP reply SHOULD normally omit the
   third optional part of the multipart/report (this was historically
   used to return the original message or its headers within the SMTP context).</t>
      </section>
    </section>
    <section anchor="public-key-certificate-handling">
      <name>Public Key Certificate Handling</name>
      <t>The initial exchange and certification of public keys are essential
   steps in establishing a secure trading partnership.  This process MAY
   occur manually during partner onboarding or automatically through
   supported mechanisms such as Well-Known URIs <xref target="RFC8615"/>
   (see <xref target="certificate-exchange-and-renewal"/>).
   Implementations MUST maintain a database of public keys used for encryption
   and signature verification, together with the mapping between the EDI
   trading partner identifier and its associated RFC 5322 <xref target="RFC5322"/> email
   address and HTTP URL/URI. The exact procedures for establishing and
   configuring secure AS2 messaging can vary among trading partners and
   software implementations.</t>
      <t>X.509 certificates are REQUIRED. It is RECOMMENDED that trading
   partners self-certify each other if an agreed-upon certification
   authority is not used. This applicability statement does NOT require
   the use of a certification authority (CA) and the use of a CA
   is therefore OPTIONAL. Certificates MAY be self-signed.</t>
      <t>It is RECOMMENDED that when trading partners are using S/MIME they
   also exchange public key certificates, considering the advice provided in
   <xref target="RFC3850"/>.</t>
      <t>The message formats useful for certificate exchange are found in <xref target="RFC5751"/>
   and <xref target="RFC5652"/>.</t>
      <section anchor="certificate-roles-and-requirements">
        <name>Certificate Roles and Requirements</name>
        <t>While TLS certificates and AS2 message-signing certificates both use the
   X.509 standard, they serve distinct purposes and MUST be managed
   separately:</t>
        <artwork><![CDATA[
     o  **TLS Certificates** are used solely to secure the HTTPS transport
        channel. They establish session-level confidentiality and integrity and
        SHOULD be issued by a trusted certification authority (CA) in production
        environments. For public-facing servers, TLS certificates SHOULD comply
        with the CA/Browser Forum Baseline Requirements
        (https://cabforum.org/baseline-requirements-documents/). Self-signed
        TLS certificates MAY be used for testing or by explicit agreement
        between trading partners, provided they include a **Subject Alternative
        Name (SAN)** extension containing the DNS name and/or IP address. The
        SAN extension MUST be marked as non-critical.

     o  **AS2 Certificates** are used for signing and encrypting AS2 messages
        and MUST NOT be the same as the TLS certificate. Separation ensures that
        a compromise of the transport layer does not affect message-level
        security, and vice versa. Using the same certificate for both purposes
        creates security dependencies and operational risks that MUST be avoided.
        AS2 certificates MAY be CA-issued or self-signed, depending on
        organizational policy and trading-partner agreements.

        AS2 certificates MUST use a key length of at least **2048 bits for RSA
        keys**.  For elliptic-curve certificates, the selected curve MUST provide
        equivalent or stronger security (e.g., P-256 or higher).
]]></artwork>
        <t>Although short certificate lifetimes are now common in the TLS ecosystem due to
   CA/Browser Forum requirements and industry regulations, AS2 certificates generally
   do not require the same frequency of renewal. AS2 systems handle far fewer encrypted
   transactions than high-volume web servers, and certificate rollover can be
   operationally complex.  Implementations SHOULD allow independent lifetime policies
   for AS2 and TLS certificates.</t>
      </section>
      <section anchor="certificate-exchange-and-renewal">
        <name>Certificate Exchange and Renewal</name>
        <t>Automated certificate management significantly reduces operational risk.
   Implementations SHOULD support <strong>Certificate Exchange Messaging (CEM)</strong>
          <xref target="I-D.draft-meadors-certificate-exchange-14"/> to enable secure, automated
   exchange of AS2 certificates between trading partners. When CEM is not
   available, manual exchange processes MUST ensure integrity and authentication
   of keys prior to activation.</t>
        <t>The Well-Known URI <xref target="RFC8615"/> MAY be used for initial retrieval of partner
   certificates. Implementations using this AS2 capability discovery mechanism
   MUST ensure that certificate retrieval is authenticated (to verify the requester's
   identity) and authorized (to ensure only legitimate trading partners can access
   certificates). While certificates themselves are digitally signed by their
   issuer and thus tamper-evident, authentication and authorization are
   required to prevent unauthorized parties from obtaining certificates and
   using them to identify legitimate trading partners or map relationships.
   For self-signed certificates, additional out-of-band verification (such as
   fingerprint confirmation via secure channel) is REQUIRED to establish
   initial trust before use in production.</t>
      </section>
      <section anchor="operational-guidance">
        <name>Operational Guidance</name>
        <artwork><![CDATA[
     o  TLS and AS2 certificates MUST be managed separately and MUST NOT be
        the same certificate.
     o  CEM SHOULD be supported to reduce manual errors and configuration drift.
     o  Self-signed certificates SHOULD include SAN extensions for clarity and
        validation consistency.
     o  Implementations SHOULD support configurable expiration and notification
        mechanisms for certificate renewal.
     o  Administrators MUST NOT reuse TLS certificates as AS2 certificates to
        maintain separation of security domains.
]]></artwork>
        <t>For security and algorithm lifecycle considerations, see <xref target="algorithm-requirements"/> and
   Section 10.</t>
      </section>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>This entire document is concerned with secure transport of business data,
   covering confidentiality, authentication, and non-repudiation.</t>
      <t>Cryptographic algorithms used for signatures, MIC calculations, and
   encryption are subject to modernization and deprecation guidance.
   The definitive algorithm requirements (for hash functions and
   encryption) are specified in <xref target="algorithm-requirements"/>.
   This section provides security rationale and additional guidance.</t>
      <t>Legacy algorithms SHOULD NOT be generated in modern implementations.
   However, legacy use cases may still be encountered when interoperating
   with older systems conforming to <xref target="RFC4130"/>. See Section 1.2.1 for
   clarifications on legacy interoperability.</t>
      <t>Modern implementations are expected to support strong algorithms such
   as SHA-256 or stronger for MIC calculations, and AES (128-bit or
   greater) for encryption. Implementations SHOULD also support advanced
   AES modes such as AES-GCM and AES-CCM for improved efficiency and
   authenticated encryption. See <xref target="RFC8551"/> for details.</t>
      <t>Implementations must ensure robust handling of all cryptographic
   failures. Administrators are encouraged to monitor IETF and NIST
   publications for algorithm lifecycle updates and to update deployed
   systems accordingly. These compatibility allowances are described in
   more detail in Section 1.2 and Section 1.2.1.</t>
      <t>When processing certificates, failures such as expired, revoked, or
   untrusted certificates MUST result in immediate and noticeable error
   reporting. See <xref target="RFC3280"/> and <xref target="RFC8551"/> for guidance on certificate
   path validation. For guidance on certificate management, key exchange,
   and renewal, including use of Certificate Exchange Messaging (CEM) and
   Well-Known URIs <xref target="RFC8615"/>, see <xref target="public-key-certificate-handling"/> and
   <xref target="certificate-exchange-and-renewal"/>.</t>
      <section anchor="https-tls-reqs">
        <name>HTTPS and TLS Requirements</name>
        <t><strong>Consensus Update:</strong>
   Implementations <strong>MUST</strong> support TLS 1.3 <xref target="RFC8446"/> or higher and <strong>MAY</strong> support TLS 1.2 <xref target="RFC5246"/>
   when interoperating with systems that have not yet migrated to TLS 1.3.
   Products SHOULD allow administrators to configure which TLS versions are enabled to allow support
   for older versions of TLS where needed for backward compatibility.</t>
        <t>Administrators SHOULD use only cipher suites listed as “Recommended (Y)” in the
   <eref target="https://www.iana.org/assignments/tls-parameters">IANA TLS Parameters</eref> registry.
   Implementations SHOULD provide configurable cipher selection rather than hardcoding cipher lists.</t>
        <t>New implementations of AS2 <strong>MUST</strong> use HTTPS as the default transport
   protocol to provide confidentiality and integrity in transit. Plain HTTP
   remains permitted to support message-level encryption and backward
   compatibility with existing deployments.</t>
        <t>This guidance promotes strong encryption, aligns with current best practices,
   and ensures that AS2 remains interoperable with existing deployments while
   allowing administrators to phase out weaker protocols and cipher suites over time.</t>
      </section>
      <section anchor="tls-server-certificates">
        <name>TLS Server Certificates</name>
        <t>The following certificate types MUST be supported for TLS server
   certificates:</t>
        <artwork><![CDATA[
  o  with URL in the Distinguished Name Common Name attribute

  o  without URL in the Distinguished Name Common Name attribute

  o  self-signed (self-issued)

  o  issued by a certification authority (CA)
]]></artwork>
        <t>The URL, which matches the source server identity, SHOULD be carried
   in the certificate. However, it is not required that DNS checks or
   reverse lookups to vouch for the accuracy of the URL or server value.</t>
        <t>The complete certification chain MUST be included in all
   certificates.  All certificate verifications MUST "chain to root" or
   to an accepted trust anchor. Additionally, the certificate hash
   SHOULD match the hash recomputed by the receiver.</t>
        <t>Because server certificates are exchanged, and also trust is
   established during the configuration of the trading partner
   relationship, runtime validation (including hostname matching and
   certificate path validation) SHOULD be performed unless an out-of-band
   trust model has been explicitly agreed upon by trading partners.
   If a self-signed TLS certificate is used, it SHOULD contain a Subject Alternative Name (SAN)
   extension that includes the DNS name and/or IP address of the sender.
   If included, this certificate extension MUST be marked as non-critical.</t>
        <t><strong>Note:</strong> Although not restricted by this specification, self-signed TLS certificates should
   be used with great care, especially in production environments.</t>
      </section>
      <section anchor="nrr-cautions">
        <name>NRR Cautions</name>
        <t>This specification seeks to provide multiple mechanisms that can be
   combined in accordance with local policies to achieve a wide range of
   security needs as determined by threat and risk analyses of the
   business peers. It is required that all these mechanisms be
   implemented by AS2 software so that the software has capabilities
   that promote strong interoperability, no matter what policies are
   adopted.</t>
        <t>One strong cluster of mechanisms (the secure transmission loop) can
   provide good support for meeting the evidentiary needs of non-
   repudiation of receipt by the original sender and by a third party
   supplied with all stated evidence. However, this specification does
   not itself define non-repudiation of receipt nor enumerate its
   essential properties because NRR is a business analysis and/or legal
   requirement, and not relevantly defined by a technical applicability
   statement.</t>
        <t>Some analyses observe that non-repudiation of receipt presupposes
   that non-repudiation of the sender of the original message is
   obtained, and further that non-repudiation should be implemented by
   means of digital signature on the original message. To satisfy
   strict NRR evidence, authentication and integrity MUST be provided by
   some mechanism, and the RECOMMENDED mechanism is digital signatures
   on both the original message and the receipt message.</t>
        <t>Given that this specification has selected several mechanisms that
   can be combined in several ways, it is important to realize that if a
   digital signature is omitted from the original message, in order to
   satisfy the preceding analysis of NRR requirements, some
   authentication mechanism MUST accompany the request for a signed
   receipt and its included Received-content-MIC value. This
   authentication might come from using client-side SSL, authentication
   via IPsec, or HTTP authentication (while using SSL). In any case,
   records of the message content, its security basis, and the digest
   value need to be retained for the NRR process.</t>
        <t>Therefore, if NRR is one of the goals of the policy that is adopted,
   by using the mechanisms of the secure transmission loop mentioned
   above and by retaining appropriate records of authentication at the
   original message sender site, strong evidentiary requirements
   proposed for NRR can be fulfilled.</t>
        <t>Other ways of proceeding may fall short of fulfilling the most
   stringent sets of evidence required for NRR to obtain, but may
   nevertheless be part of a commercial trading agreement and, as such,
   are good enough for the parties involved. However, if MDNs are
   returned unsigned, evidentiary requirements for NRR are weak; some
   authentication of the identity of the receiver is needed.</t>
        <t>If TLS is used for transport, the guidance in <xref target="https-tls-reqs"/> applies.</t>
      </section>
      <section anchor="replay-remark">
        <name>Replay Remark</name>
        <t>Because business data documents normally contain transaction ids,
   replays (such as resends of not-yet-acknowledged messages) are
   discarded as part of the normal process of duplicate detection.
   Detection of duplicates by Message-Id or by business transaction
   identifiers is recommended.</t>
      </section>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>IANA is requested to update the following registries:</t>
      <artwork><![CDATA[
     o  MDN Disposition Modifier Names
        https://www.iana.org/assignments/mdn/mdn.xhtml#disposition-modifier

     o  Message Disposition Notification Parameters
        https://www.iana.org/assignments/mdn/mdn.xhtml#parameters

     o  Hypertext Transfer Protocol (HTTP) Field Name Registry
        https://www.iana.org/assignments/http-fields/http-fields.xhtml
]]></artwork>
      <section anchor="http-field-name-registrations">
        <name>HTTP Field Name Registrations</name>
        <t>IANA is requested to register the following field names in the "Hypertext
   Transfer Protocol (HTTP) Field Name Registry" as defined in <xref target="RFC9110"/>:</t>
        <artwork><![CDATA[
 **Field Name:** AS2-Version
 **Status:**     permanent
 **Reference:**  [RFC-to-be], Section 6.1

 **Field Name:** AS2-Product
 **Status:**     permanent
 **Reference:**  [RFC-to-be], Section 6.2

 **Field Name:** AS2-From
 **Status:**     permanent
 **Reference:**  [RFC-to-be], Section 6.3

 **Field Name:** AS2-To
 **Status:**     permanent
 **Reference:**  [RFC-to-be], Section 6.3
]]></artwork>
        <t>The following AS2 headers were previously defined in RFC 4130 and are
   already registered or are standard HTTP/MIME headers:</t>
        <artwork><![CDATA[
     o  Subject (standard MIME header)
     o  Disposition-Notification-To (RFC 3798)
     o  Disposition-Notification-Options (RFC 3798)
     o  Receipt-Delivery-Option (RFC 4130)
]]></artwork>
      </section>
      <section anchor="as2-mdn-disposition-modifier-registry">
        <name>AS2 MDN Disposition Modifier Registry</name>
        <t>IANA is requested to create a new registry titled "AS2 MDN Disposition
   Modifiers" under the "Multipurpose Internet Mail Extensions (MIME) and
   Media Types" registry group.</t>
        <t><strong>Registration Procedure:</strong> Specification Required (per RFC 8126)</t>
        <t><strong>Initial Registry Contents:</strong></t>
        <table>
          <thead>
            <tr>
              <th align="left">Modifier Value</th>
              <th align="left">Reference</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left">error: authentication-failed</td>
              <td align="left">[RFC-to-be]</td>
            </tr>
            <tr>
              <td align="left">error: decompression-failed</td>
              <td align="left">[RFC-to-be]</td>
            </tr>
            <tr>
              <td align="left">error: decryption-failed</td>
              <td align="left">[RFC-to-be]</td>
            </tr>
            <tr>
              <td align="left">error: insufficient-message-security</td>
              <td align="left">[RFC-to-be]</td>
            </tr>
            <tr>
              <td align="left">error: integrity-check-failed</td>
              <td align="left">[RFC-to-be]</td>
            </tr>
            <tr>
              <td align="left">error: unexpected-processing-error</td>
              <td align="left">[RFC-to-be]</td>
            </tr>
            <tr>
              <td align="left">error:duplicate-filename</td>
              <td align="left">[RFC-to-be]</td>
            </tr>
            <tr>
              <td align="left">error:illegal-filename</td>
              <td align="left">[RFC-to-be]</td>
            </tr>
            <tr>
              <td align="left">error:invalid-message-id</td>
              <td align="left">[RFC-to-be]</td>
            </tr>
            <tr>
              <td align="left">error:unknown-trading-relationship</td>
              <td align="left">[RFC-to-be]</td>
            </tr>
            <tr>
              <td align="left">error:unknown-trading-partner</td>
              <td align="left">[RFC-to-be]</td>
            </tr>
          </tbody>
        </table>
        <t>Note: The base disposition types "processed" and "failed" are defined
   in RFC 8098 and are not part of this AS2-specific registry.</t>
      </section>
      <section anchor="registration">
        <name>Registration</name>
        <t>RFC 4130 originally defined an extension to the Message Disposition Notification (MDN)
   protocol for a disposition-modifier in the Disposition field of a body of
   content-type "message/disposition-notification".</t>
        <t>This document updates that definition, and IANA is requested to replace RFC 4130 with this
   document as the reference for the MDN Disposition Modifier Names registry.</t>
        <section anchor="disposition-modifier-warning">
          <name>Disposition Modifier 'warning'</name>
          <artwork><![CDATA[
  Parameter-name:  warning
  Semantics: See section 8.4.3 and
             section 8.5.5 in this document.
]]></artwork>
        </section>
      </section>
    </section>
    <section anchor="acknowledgments">
      <name>Acknowledgments</name>
      <t>Carl Hage, Karen Rosenfeld, Chuck Fenton, Russ Housley, Marc Blanchet,
   Erik Wrammer, and many others provided valuable suggestions during both
   the initial review of RFC 4130 that improved that applicability statement
   and this bis specification. The authors would also like to thank the past
   and current vendors who have participated in the Drummond AS2 interoperability
   testing. Their contributions have ultimately led to great improvement in the
   clarity of this document.</t>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="RFC4130">
          <front>
            <title>MIME-Based Secure Peer-to-Peer Business Data Interchange Using HTTP, Applicability Statement 2 (AS2)</title>
            <author fullname="D. Moberg" initials="D." surname="Moberg"/>
            <author fullname="R. Drummond" initials="R." surname="Drummond"/>
            <date month="July" year="2005"/>
            <abstract>
              <t>This document provides an applicability statement (RFC 2026, Section 3.2) that describes how to exchange structured business data securely using the HTTP transfer protocol, instead of SMTP; the applicability statement for SMTP is found in RFC 3335. Structured business data may be XML; Electronic Data Interchange (EDI) in either the American National Standards Committee (ANSI) X12 format or the UN Electronic Data Interchange for Administration, Commerce, and Transport (UN/EDIFACT) format; or other structured data formats. The data is packaged using standard MIME structures. Authentication and data confidentiality are obtained by using Cryptographic Message Syntax with S/MIME security body parts. Authenticated acknowledgements make use of multipart/signed Message Disposition Notification (MDN) responses to the original HTTP message. This applicability statement is informally referred to as "AS2" because it is the second applicability statement, produced after "AS1", RFC 3335. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="4130"/>
          <seriesInfo name="DOI" value="10.17487/RFC4130"/>
        </reference>
        <reference anchor="RFC2045">
          <front>
            <title>Multipurpose Internet Mail Extensions (MIME) Part One: Format of Internet Message Bodies</title>
            <author fullname="N. Freed" initials="N." surname="Freed"/>
            <author fullname="N. Borenstein" initials="N." surname="Borenstein"/>
            <date month="November" year="1996"/>
            <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>
        <reference anchor="RFC2046">
          <front>
            <title>Multipurpose Internet Mail Extensions (MIME) Part Two: Media Types</title>
            <author fullname="N. Freed" initials="N." surname="Freed"/>
            <author fullname="N. Borenstein" initials="N." surname="Borenstein"/>
            <date month="November" year="1996"/>
            <abstract>
              <t>This second document defines the general structure of the MIME media typing system and defines an initial set of media types. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="2046"/>
          <seriesInfo name="DOI" value="10.17487/RFC2046"/>
        </reference>
        <reference anchor="RFC2049">
          <front>
            <title>Multipurpose Internet Mail Extensions (MIME) Part Five: Conformance Criteria and Examples</title>
            <author fullname="N. Freed" initials="N." surname="Freed"/>
            <author fullname="N. Borenstein" initials="N." surname="Borenstein"/>
            <date month="November" year="1996"/>
            <abstract>
              <t>This set of documents, collectively called the Multipurpose Internet Mail Extensions, or MIME, redefines the format of messages. This fifth and final document describes MIME conformance criteria as well as providing some illustrative examples of MIME message formats, acknowledgements, and the bibliography. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="2049"/>
          <seriesInfo name="DOI" value="10.17487/RFC2049"/>
        </reference>
        <reference anchor="RFC1767">
          <front>
            <title>MIME Encapsulation of EDI Objects</title>
            <author fullname="D. Crocker" initials="D." surname="Crocker"/>
            <date month="March" year="1995"/>
            <abstract>
              <t>Since there are many different EDI specifications, the current document defines three distinct categories as three different MIME content-types. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="1767"/>
          <seriesInfo name="DOI" value="10.17487/RFC1767"/>
        </reference>
        <reference anchor="RFC2616">
          <front>
            <title>Hypertext Transfer Protocol -- HTTP/1.1</title>
            <author fullname="R. Fielding" initials="R." surname="Fielding"/>
            <author fullname="J. Gettys" initials="J." surname="Gettys"/>
            <author fullname="J. Mogul" initials="J." surname="Mogul"/>
            <author fullname="H. Frystyk" initials="H." surname="Frystyk"/>
            <author fullname="L. Masinter" initials="L." surname="Masinter"/>
            <author fullname="P. Leach" initials="P." surname="Leach"/>
            <author fullname="T. Berners-Lee" initials="T." surname="Berners-Lee"/>
            <date month="June" year="1999"/>
            <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 "HTTP/1.1", 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="RFC3335">
          <front>
            <title>MIME-based Secure Peer-to-Peer Business Data Interchange over the Internet</title>
            <author fullname="T. Harding" initials="T." surname="Harding"/>
            <author fullname="R. Drummond" initials="R." surname="Drummond"/>
            <author fullname="C. Shih" initials="C." surname="Shih"/>
            <date month="September" year="2002"/>
            <abstract>
              <t>This document describes how to exchange structured business data
securely using SMTP transport for Electronic Data Interchange,
(EDI - either the American Standards Committee X12 or UN/EDIFACT,
Electronic Data Interchange for Administration, Commerce and
Transport), XML or other data used for business to business data
interchange. The data is packaged using standard MIME
content-types. Authentication and privacy are obtained by using
Cryptographic Message Syntax (S/MIME) or OpenPGP security body
parts. Authenticated acknowledgements make use of
multipart/signed replies to the original SMTP message.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="3335"/>
          <seriesInfo name="DOI" value="10.17487/RFC3335"/>
        </reference>
        <reference anchor="RFC3798">
          <front>
            <title>Message Disposition Notification</title>
            <author fullname="T. Hansen" initials="T." role="editor" surname="Hansen"/>
            <author fullname="G. Vaudreuil" initials="G." role="editor" surname="Vaudreuil"/>
            <date month="May" year="2004"/>
            <abstract>
              <t>This memo defines a MIME content-type that may be used by a mail user agent (MUA) or electronic mail gateway to report the disposition of a message after it has been successfully delivered to a recipient. This content-type is intended to be machine-processable. Additional message headers are also defined to permit Message Disposition Notifications (MDNs) to be requested by the sender of a message. The purpose is to extend Internet Mail to support functionality often found in other messaging systems, such as X.400 and the proprietary "LAN-based" systems, and often referred to as "read receipts," "acknowledgements", or "receipt notifications." The intention is to do this while respecting privacy concerns, which have often been expressed when such functions have been discussed in the past. Because many messages are sent between the Internet and other messaging systems (such as X.400 or the proprietary "LAN-based" systems), the MDN protocol is designed to be useful in a multi-protocol messaging environment. To this end, the protocol described in this memo provides for the carriage of "foreign" addresses, in addition to those normally used in Internet Mail. Additional attributes may also be defined to support "tunneling" of foreign notifications through Internet Mail. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="3798"/>
          <seriesInfo name="DOI" value="10.17487/RFC3798"/>
        </reference>
        <reference anchor="RFC8098">
          <front>
            <title>Message Disposition Notification</title>
            <author fullname="T. Hansen" initials="T." role="editor" surname="Hansen"/>
            <author fullname="A. Melnikov" initials="A." role="editor" surname="Melnikov"/>
            <date month="February" year="2017"/>
            <abstract>
              <t>This memo defines a MIME content type that may be used by a Mail User Agent (MUA) or electronic mail gateway to report the disposition of a message after it has been successfully delivered to a recipient. This content type is intended to be machine processable. Additional message header fields are also defined to permit Message Disposition Notifications (MDNs) to be requested by the sender of a message. The purpose is to extend Internet Mail to support functionality often found in other messaging systems, such as X.400 and the proprietary "LAN-based" systems, and are often referred to as "read receipts," "acknowledgements," or "receipt notifications." The intention is to do this while respecting privacy concerns, which have often been expressed when such functions have been discussed in the past.</t>
              <t>Because many messages are sent between the Internet and other messaging systems (such as X.400 or the proprietary "LAN-based" systems), the MDN protocol is designed to be useful in a multiprotocol messaging environment. To this end, the protocol described in this memo provides for the carriage of "foreign" addresses, in addition to those normally used in Internet Mail. Additional attributes may also be defined to support "tunneling" of foreign notifications through Internet Mail.</t>
              <t>This document is an Internet Standard. It obsoletes RFC 3798 and updates RFC 2046 (message/partial media type handling) and RFC 3461 (Original-Recipient header field generation requirement).</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="85"/>
          <seriesInfo name="RFC" value="8098"/>
          <seriesInfo name="DOI" value="10.17487/RFC8098"/>
        </reference>
        <reference anchor="RFC1847">
          <front>
            <title>Security Multiparts for MIME: Multipart/Signed and Multipart/Encrypted</title>
            <author fullname="J. Galvin" initials="J." surname="Galvin"/>
            <author fullname="S. Murphy" initials="S." surname="Murphy"/>
            <author fullname="S. Crocker" initials="S." surname="Crocker"/>
            <author fullname="N. Freed" initials="N." surname="Freed"/>
            <date month="October" year="1995"/>
            <abstract>
              <t>This document defines a framework within which security services may be applied to MIME body parts. [STANDARDS-TRACK] This memo defines a new Simple Mail Transfer Protocol (SMTP) [1] reply code, 521, which one may use to indicate that an Internet host does not accept incoming mail. This memo defines an Experimental Protocol for the Internet community. This memo defines an extension to the SMTP service whereby an interrupted SMTP transaction can be restarted at a later time without having to repeat all of the commands and message content sent prior to the interruption. This memo defines an Experimental Protocol for the Internet community.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="1847"/>
          <seriesInfo name="DOI" value="10.17487/RFC1847"/>
        </reference>
        <reference anchor="RFC5751">
          <front>
            <title>Secure/Multipurpose Internet Mail Extensions (S/MIME) Version 3.2 Message Specification</title>
            <author fullname="B. Ramsdell" initials="B." surname="Ramsdell"/>
            <author fullname="S. Turner" initials="S." surname="Turner"/>
            <date month="January" year="2010"/>
            <abstract>
              <t>This document defines Secure/Multipurpose Internet Mail Extensions (S/MIME) version 3.2. S/MIME provides a consistent way to send and receive secure MIME data. Digital signatures provide authentication, message integrity, and non-repudiation with proof of origin. Encryption provides data confidentiality. Compression can be used to reduce data size. This document obsoletes RFC 3851. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5751"/>
          <seriesInfo name="DOI" value="10.17487/RFC5751"/>
        </reference>
        <reference anchor="RFC5652">
          <front>
            <title>Cryptographic Message Syntax (CMS)</title>
            <author fullname="R. Housley" initials="R." surname="Housley"/>
            <date month="September" year="2009"/>
            <abstract>
              <t>This document describes the Cryptographic Message Syntax (CMS). This syntax is used to digitally sign, digest, authenticate, or encrypt arbitrary message content. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="70"/>
          <seriesInfo name="RFC" value="5652"/>
          <seriesInfo name="DOI" value="10.17487/RFC5652"/>
        </reference>
        <reference anchor="RFC3462">
          <front>
            <title>The Multipart/Report Content Type for the Reporting of Mail System Administrative Messages</title>
            <author fullname="G. Vaudreuil" initials="G." surname="Vaudreuil"/>
            <date month="January" year="2003"/>
            <abstract>
              <t>The Multipart/Report Multipurpose Internet Mail Extensions (MIME) content-type is a general "family" or "container" type for electronic mail reports of any kind. Although this memo defines only the use of the Multipart/Report content-type with respect to delivery status reports, mail processing programs will benefit if a single content-type is used to for all kinds of reports. This document is part of a four document set describing the delivery status report service. This collection includes the Simple Mail Transfer Protocol (SMTP) extensions to request delivery status reports, a MIME content for the reporting of delivery reports, an enumeration of extended status codes, and a multipart container for the delivery report, the original message, and a human-friendly summary of the failure. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="3462"/>
          <seriesInfo name="DOI" value="10.17487/RFC3462"/>
        </reference>
        <reference anchor="RFC3023">
          <front>
            <title>XML Media Types</title>
            <author fullname="M. Murata" initials="M." surname="Murata"/>
            <author fullname="S. St. Laurent" initials="S." surname="St. Laurent"/>
            <author fullname="D. Kohn" initials="D." surname="Kohn"/>
            <date month="January" year="2001"/>
            <abstract>
              <t>This document standardizes five new media types -- text/xml, application/xml, text/xml-external-parsed-entity, application/xml- external-parsed-entity, and application/xml-dtd -- for use in exchanging network entities that are related to the Extensible Markup Language (XML). This document also standardizes a convention (using the suffix '+xml') for naming media types outside of these five types when those media types represent XML MIME (Multipurpose Internet Mail Extensions) entities. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="3023"/>
          <seriesInfo name="DOI" value="10.17487/RFC3023"/>
        </reference>
        <reference anchor="RFC2026">
          <front>
            <title>The Internet Standards Process -- Revision 3</title>
            <author fullname="S. Bradner" initials="S." surname="Bradner"/>
            <date month="October" year="1996"/>
            <abstract>
              <t>This memo documents the process used by the Internet community for the standardization of protocols and procedures. It defines the stages in the standardization process, the requirements for moving a document between stages and the types of documents used during this process. 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="9"/>
          <seriesInfo name="RFC" value="2026"/>
          <seriesInfo name="DOI" value="10.17487/RFC2026"/>
        </reference>
        <reference anchor="RFC3850">
          <front>
            <title>Secure/Multipurpose Internet Mail Extensions (S/MIME) Version 3.1 Certificate Handling</title>
            <author fullname="B. Ramsdell" initials="B." role="editor" surname="Ramsdell"/>
            <date month="July" year="2004"/>
            <abstract>
              <t>This document specifies conventions for X.509 certificate usage by Secure/Multipurpose Internet Mail Extensions (S/MIME) agents. S/MIME provides a method to send and receive secure MIME messages, and certificates are an integral part of S/MIME agent processing. S/MIME agents validate certificates as described in RFC 3280, the Internet X.509 Public Key Infrastructure Certificate and CRL Profile. S/MIME agents must meet the certificate processing requirements in this document as well as those in RFC 3280. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="3850"/>
          <seriesInfo name="DOI" value="10.17487/RFC3850"/>
        </reference>
        <reference anchor="RFC2234">
          <front>
            <title>Augmented BNF for Syntax Specifications: ABNF</title>
            <author fullname="D. Crocker" initials="D." role="editor" surname="Crocker"/>
            <author fullname="P. Overell" initials="P." surname="Overell"/>
            <date month="November" year="1997"/>
            <abstract>
              <t>In the early days of the Arpanet, each specification contained its own definition of ABNF. This included the email specifications, RFC733 and then RFC822 which have come to be the common citations for defining ABNF. The current document separates out that definition, to permit selective reference. Predictably, it also provides some modifications and enhancements. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="2234"/>
          <seriesInfo name="DOI" value="10.17487/RFC2234"/>
        </reference>
        <reference anchor="RFC2119">
          <front>
            <title>Key words for use in RFCs to Indicate Requirement Levels</title>
            <author fullname="S. Bradner" initials="S." surname="Bradner"/>
            <date month="March" year="1997"/>
            <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="RFC8174">
          <front>
            <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
            <author fullname="B. Leiba" initials="B." surname="Leiba"/>
            <date month="May" year="2017"/>
            <abstract>
              <t>RFC 2119 specifies common key words that may be used in protocol specifications. This document aims to reduce the ambiguity by clarifying that only UPPERCASE usage of the key words have the defined special meanings.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="8174"/>
          <seriesInfo name="DOI" value="10.17487/RFC8174"/>
        </reference>
        <reference anchor="RFC3274">
          <front>
            <title>Compressed Data Content Type for Cryptographic Message Syntax (CMS)</title>
            <author fullname="P. Gutmann" initials="P." surname="Gutmann"/>
            <date month="June" year="2002"/>
            <abstract>
              <t>This document defines a format for using compressed data as a Cryptographic Message Syntax (CMS) content type. Compressing data before transmission provides a number of advantages, including the elimination of data redundancy which could help an attacker, speeding up processing by reducing the amount of data to be processed by later steps (such as signing or encryption), and reducing overall message size. Although there have been proposals for adding compression at other levels (for example at the MIME or SSL level), these don't address the problem of compression of CMS content unless the compression is supplied by an external means (for example by intermixing MIME and CMS). [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="3274"/>
          <seriesInfo name="DOI" value="10.17487/RFC3274"/>
        </reference>
        <reference anchor="RFC3280">
          <front>
            <title>Internet X.509 Public Key Infrastructure Certificate and Certificate Revocation List (CRL) Profile</title>
            <author fullname="R. Housley" initials="R." surname="Housley"/>
            <author fullname="W. Polk" initials="W." surname="Polk"/>
            <author fullname="W. Ford" initials="W." surname="Ford"/>
            <author fullname="D. Solo" initials="D." surname="Solo"/>
            <date month="May" year="2002"/>
            <abstract>
              <t>This memo profiles the X.509 v3 certificate and X.509 v2 Certificate Revocation List (CRL) for use in the Internet. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="3280"/>
          <seriesInfo name="DOI" value="10.17487/RFC3280"/>
        </reference>
        <reference anchor="RFC8551">
          <front>
            <title>Secure/Multipurpose Internet Mail Extensions (S/MIME) Version 4.0 Message Specification</title>
            <author fullname="J. Schaad" initials="J." surname="Schaad"/>
            <author fullname="B. Ramsdell" initials="B." surname="Ramsdell"/>
            <author fullname="S. Turner" initials="S." surname="Turner"/>
            <date month="April" year="2019"/>
            <abstract>
              <t>This document defines Secure/Multipurpose Internet Mail Extensions (S/MIME) version 4.0. S/MIME provides a consistent way to send and receive secure MIME data. Digital signatures provide authentication, message integrity, and non-repudiation with proof of origin. Encryption provides data confidentiality. Compression can be used to reduce data size. This document obsoletes RFC 5751.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8551"/>
          <seriesInfo name="DOI" value="10.17487/RFC8551"/>
        </reference>
        <reference anchor="RFC5322">
          <front>
            <title>Internet Message Format</title>
            <author fullname="P. Resnick" initials="P." role="editor" surname="Resnick"/>
            <date month="October" year="2008"/>
            <abstract>
              <t>This document specifies the Internet Message Format (IMF), a syntax for text messages that are sent between computer users, within the framework of "electronic mail" messages. This specification is a revision of Request For Comments (RFC) 2822, which itself superseded Request For Comments (RFC) 822, "Standard for the Format of ARPA Internet Text Messages", updating it to reflect current practice and incorporating incremental changes that were specified in other RFCs. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5322"/>
          <seriesInfo name="DOI" value="10.17487/RFC5322"/>
        </reference>
        <reference anchor="RFC6017">
          <front>
            <title>Electronic Data Interchange - Internet Integration (EDIINT) Features Header Field</title>
            <author fullname="K. Meadors" initials="K." role="editor" surname="Meadors"/>
            <date month="September" year="2010"/>
            <abstract>
              <t>With the maturity of the Electronic Data Interchange - Internet Integration (EDIINT) standards of AS1, AS2, and AS3, applications and additional features are being built upon the basic secure transport functionality. These features are not necessarily supported by all EDIINT applications and could cause potential problems with implementations. The EDIINT-Features header field provides a means to resolve these problems and support new functionality. This document is not an Internet Standards Track specification; it is published for informational purposes.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6017"/>
          <seriesInfo name="DOI" value="10.17487/RFC6017"/>
        </reference>
        <reference anchor="RFC5246">
          <front>
            <title>The Transport Layer Security (TLS) Protocol Version 1.2</title>
            <author fullname="T. Dierks" initials="T." surname="Dierks"/>
            <author fullname="E. Rescorla" initials="E." surname="Rescorla"/>
            <date month="August" year="2008"/>
            <abstract>
              <t>This document specifies Version 1.2 of the Transport Layer Security (TLS) protocol. The TLS protocol provides communications security over the Internet. The protocol allows client/server applications to communicate in a way that is designed to prevent eavesdropping, tampering, or message forgery. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5246"/>
          <seriesInfo name="DOI" value="10.17487/RFC5246"/>
        </reference>
        <reference anchor="RFC8446">
          <front>
            <title>The Transport Layer Security (TLS) Protocol Version 1.3</title>
            <author fullname="E. Rescorla" initials="E." surname="Rescorla"/>
            <date month="August" year="2018"/>
            <abstract>
              <t>This document specifies version 1.3 of the Transport Layer Security (TLS) protocol. TLS allows client/server applications to communicate over the Internet in a way that is designed to prevent eavesdropping, tampering, and message forgery.</t>
              <t>This document updates RFCs 5705 and 6066, and obsoletes RFCs 5077, 5246, and 6961. This document also specifies new requirements for TLS 1.2 implementations.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8446"/>
          <seriesInfo name="DOI" value="10.17487/RFC8446"/>
        </reference>
        <reference anchor="RFC8615">
          <front>
            <title>Well-Known Uniform Resource Identifiers (URIs)</title>
            <author fullname="M. Nottingham" initials="M." surname="Nottingham"/>
            <date month="May" year="2019"/>
            <abstract>
              <t>This memo defines a path prefix for "well-known locations", "/.well-known/", in selected Uniform Resource Identifier (URI) schemes.</t>
              <t>In doing so, it obsoletes RFC 5785 and updates the URI schemes defined in RFC 7230 to reserve that space. It also updates RFC 7595 to track URI schemes that support well-known URIs in their registry.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8615"/>
          <seriesInfo name="DOI" value="10.17487/RFC8615"/>
        </reference>
        <reference anchor="RFC9110">
          <front>
            <title>HTTP Semantics</title>
            <author fullname="R. Fielding" initials="R." role="editor" surname="Fielding"/>
            <author fullname="M. Nottingham" initials="M." role="editor" surname="Nottingham"/>
            <author fullname="J. Reschke" initials="J." role="editor" surname="Reschke"/>
            <date month="June" year="2022"/>
            <abstract>
              <t>The Hypertext Transfer Protocol (HTTP) is a stateless application-level protocol for distributed, collaborative, hypertext information systems. This document describes the overall architecture of HTTP, establishes common terminology, and defines aspects of the protocol that are shared by all versions. In this definition are core protocol elements, extensibility mechanisms, and the "http" and "https" Uniform Resource Identifier (URI) schemes.</t>
              <t>This document updates RFC 3864 and obsoletes RFCs 2818, 7231, 7232, 7233, 7235, 7538, 7615, 7694, and portions of 7230.</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="97"/>
          <seriesInfo name="RFC" value="9110"/>
          <seriesInfo name="DOI" value="10.17487/RFC9110"/>
        </reference>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="RFC2246">
          <front>
            <title>The TLS Protocol Version 1.0</title>
            <author fullname="T. Dierks" initials="T." surname="Dierks"/>
            <author fullname="C. Allen" initials="C." surname="Allen"/>
            <date month="January" year="1999"/>
            <abstract>
              <t>This document specifies Version 1.0 of the Transport Layer Security (TLS) protocol. The TLS protocol provides communications privacy over the Internet. The protocol allows client/server applications to communicate in a way that is designed to prevent eavesdropping, tampering, or message forgery.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="2246"/>
          <seriesInfo name="DOI" value="10.17487/RFC2246"/>
        </reference>
        <reference anchor="RFC4918">
          <front>
            <title>HTTP Extensions for Web Distributed Authoring and Versioning (WebDAV)</title>
            <author fullname="L. Dusseault" initials="L." role="editor" surname="Dusseault"/>
            <date month="June" year="2007"/>
            <abstract>
              <t>Web Distributed Authoring and Versioning (WebDAV) consists of a set of methods, headers, and content-types ancillary to HTTP/1.1 for the management of resource properties, creation and management of resource collections, URL namespace manipulation, and resource locking (collision avoidance).</t>
              <t>RFC 2518 was published in February 1999, and this specification obsoletes RFC 2518 with minor revisions mostly due to interoperability experience. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="4918"/>
          <seriesInfo name="DOI" value="10.17487/RFC4918"/>
        </reference>
        <reference anchor="RFC5753">
          <front>
            <title>Use of Elliptic Curve Cryptography (ECC) Algorithms in Cryptographic Message Syntax (CMS)</title>
            <author fullname="S. Turner" initials="S." surname="Turner"/>
            <author fullname="D. Brown" initials="D." surname="Brown"/>
            <date month="January" year="2010"/>
            <abstract>
              <t>This document describes how to use Elliptic Curve Cryptography (ECC) public key algorithms in the Cryptographic Message Syntax (CMS). The ECC algorithms support the creation of digital signatures and the exchange of keys to encrypt or authenticate content. The definition of the algorithm processing is based on the NIST FIPS 186-3 for digital signature, NIST SP800-56A and SEC1 for key agreement, RFC 3370 and RFC 3565 for key wrap and content encryption, NIST FIPS 180-3 for message digest, SEC1 for key derivation, and RFC 2104 and RFC 4231 for message authentication code standards. This document obsoletes RFC 3278. This document is not an Internet Standards Track specification; it is published for informational purposes.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5753"/>
          <seriesInfo name="DOI" value="10.17487/RFC5753"/>
        </reference>
        <reference anchor="I-D.draft-duker-as2-reliability-16">
          <front>
            <title>Operational Reliability for EDIINT AS2</title>
            <author fullname="John Duker" initials="J." surname="Duker">
              <organization>Procter &amp; Gamble</organization>
            </author>
            <author fullname="dale.moberg@gmail.com" initials="" surname="dale.moberg@gmail.com">
              <organization>Orion Health</organization>
            </author>
            <date day="21" month="October" year="2014"/>
            <abstract>
              <t>One goal of this document is to define approaches to achieve a "once
and only once" delivery of messages. The EDIINT AS2 protocol is
implemented by a number of software tools on a variety of platforms
with varying capabilities and with varying network service quality.
Although the AS2 protocol defines a unique "Message-ID", current
implementations of AS2 do not provide a standard method to prevent
the same message (re-transmitted by the initial sender) from reaching
back-end business applications at the initial receiver.

A second goal is to reduce retransmissions and failures when AS2 is used
in a synchronous mode for transmitting MDNs.  There can be a large
latency between receipt of the POSTed entity body and the MDN response
caused by the operations of decompressing, decrypting, and signature
checks. Uncoordinated timeout policies and intermediate devices dropping
connections have interfered with reliable data exchange. The use of an
HTTP 102(Processing) status code is described to mitigate these
difficulties. Use of these reliability features is indicated by
presence of the "AS2-Reliability" value in the EDIINT-Features header.

Intended Status

The intent of this document is to be placed on the RFC track as an
Informational RFC.

Feedback Instructions:
NOTE TO RFC EDITOR:  This section should be removed by the RFC editor
prior to publication.

If you want to provide feedback on this draft, follow these
guidelines:

-Send feedback via e-mail to the ietf-ediint list for discussion,
with "AS2 Reliability" in the Subject field. To enter or follow the
discussion, you need to subscribe to ietf-ediint@imc.org.

-Be specific as to what section you are referring to, preferably
quoting the portion that needs modification, after which you state
your comments.

-If you are recommending some text to be replaced with your suggested
text, again, quote the section to be replaced, and be clear on the
section in question.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-duker-as2-reliability-16"/>
        </reference>
        <reference anchor="I-D.draft-harding-as2-restart-02">
          <front>
            <title>AS2 Restart for Very Large Messages</title>
            <author fullname="Terry Harding" initials="T." surname="Harding">
         </author>
            <date day="26" month="January" year="2011"/>
            <abstract>
              <t>AS2 Restart provides a method for AS2 clients and servers to restart
payload transfers from the point of failure without requiring the
entire document to be resent.

Keywords

The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in RFC 2119.
              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-harding-as2-restart-02"/>
        </reference>
        <reference anchor="I-D.draft-meadors-certificate-exchange-14">
          <front>
            <title>Certificate Exchange Messaging for EDIINT draft-meadors-certificate-exchange-14.txt Abstract</title>
            <author fullname="Kyle Meadors" initials="K." surname="Meadors">
              <organization>Drummond Group Inc.</organization>
            </author>
            <author fullname="Dale Moberg" initials="D." surname="Moberg">
              <organization>Axway, Inc.</organization>
            </author>
            <date day="22" month="December" year="2011"/>
            <abstract>
              <t>   The EDIINT AS1, AS2 and AS3 message formats do not currently contain
   any neutral provisions for transporting and exchanging trading
   partner profiles or digital certificates. EDIINT Certificate Exchange
   Messaging provides the format and means to effectively exchange
   certificates for use within trading partner relationships. The
   messaging consists of two types of messages, Request and Response,
   which allow trading partners to communicate certificates, their
   intended usage and their acceptance through XML. Certificates can be
   specified for use in digital signatures, data encryption or SSL/TLS
   over HTTP (HTTPS).

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-meadors-certificate-exchange-14"/>
        </reference>
      </references>
    </references>
    <?line 2592?>

<section anchor="message-examples">
      <name>Message Examples</name>
      <t>Note to Readers: All examples are provided for illustration only, and are not
   part of the protocol specification. If an example conflicts with the
   protocol definitions, the example is wrong. Email addresses in the
   examples (e.g., in the <tt>Disposition-Notification-To</tt> field) reflect
   one valid option but are not required. In AS2, this field may also
   contain a URL, a fully qualified host name, an AS2 identifier, or
   another implementation-specific string, as described in <xref target="structure-and-processing-of-an-mdn-message"/>.3.</t>
      <section anchor="signed-message-requesting-a-signed-synchronous-receipt">
        <name>Signed Message Requesting a Signed, Synchronous Receipt</name>
        <sourcecode type="text"><![CDATA[
   POST /receive HTTP/1.1
   Host: 10.234.160.12:80
   User-Agent: AS2 Company Server
   Date: Wed, 31 Jul 2025 13:34:50 GMT
   AS2-Version: 1.3
   AS2-From: "as2 Name"
   AS2-To: 0123456780000
   Subject: Test Case
   Message-Id: <200207310834482A70BF63@\"~~foo~~\">
   Disposition-Notification-To: mrAS2@example.com
   Disposition-Notification-Options: signed-receipt-protocol=optional,
        pkcs7-signature; signed-receipt-micalg=optional,sha-256
   Content-Type: multipart/signed; boundary="as2BouNdary1as2";
        protocol="application/pkcs7-signature"; micalg=sha-256
   Content-Length: 2464

   --as2BouNdary1as2
   Content-Type: application/edi-x12
   Content-Disposition: attachment; filename=rfc1767.dat

     {ISA ...EDI transaction data...IEA...}

   --as2BouNdary1as2
   Content-Type: application/pkcs7-signature

     {omitted binary pkcs7 signature data}

   --as2BouNdary1as2--
]]></sourcecode>
      </section>
      <section anchor="mdn-for-message-in-a1-above">
        <name>MDN for Message in A.1, Above</name>
        <sourcecode type="text"><![CDATA[
   HTTP/1.1 200 OK
   AS2-From: 0123456780000
   AS2-To: "as2 Name"
   AS2-Version: 1.3
   Message-ID: <709700825.1028122454671.JavaMail@ediXchange>
   Content-Type: multipart/signed; micalg=sha-256;
        protocol="application/pkcs7-signature";
        boundary="----=_Part_57_648441049.1028122454671"
   Connection: Close
   Content-Length: 1980

   ------=_Part_57_648441049.1028122454671

   & Content-Type: multipart/report;
   &    report-type=disposition-notification;
   &    boundary="----=_Part_56_1672293592.1028122454656"
   &
   &------=_Part_56_1672293592.1028122454656
   &Content-Type: text/plain
   &Content-Transfer-Encoding: 7bit
   &
   &MDN for -
   & Message ID: <200207310834482A70BF63@\"~~foo~~\">
   &  From: "as2 Name"
   &  To: 0123456780000
   &  Received on: 2025-07-31 at 09:34:14 (EDT)
   & Status: processed
   & Comment: This is not a guarantee that the message has
   &  been completely processed or &understood by the receiving
   &  translator
   &
   &------=_Part_56_1672293592.1028122454656
   &Content-Type: message/disposition-notification
   &Content-Transfer-Encoding: 7bit
   &
   &Reporting-UA: AS2 Server
   &Original-Recipient: rfc822; 0123456780000
   &Final-Recipient: rfc822; 0123456780000
   &Original-Message-ID: <200207310834482A70BF63@\"~~foo~~\">
   &Received-content-MIC: 43d9tGY3gNSGuFaut4PAGvuc+48VgW6USgXLDPTxsBU=, sha-256
   &Disposition: automatic-action/MDN-sent-automatically; processed
   &
   &------=_Part_56_1672293592.1028122454656--

   ------=_Part_57_648441049.1028122454671
   Content-Type: application/pkcs7-signature; name=smime.p7s
   Content-Transfer-Encoding: base64
   Content-Disposition: attachment; filename=smime.p7s

   MIAGCSqGSIb3DQEHAqCAMIACAQExCzAJBgUrDgMCGgUAMIAGCSqGSIb3DQ
   cp24hMJNbxDKHnlB9jTiQzLwSwo+/90Pc87x+Sc6EpFSUYWGAAAAAAAA
   ------=_Part_57_648441049.1028122454671--

   Notes:

   1. The lines proceeded with "&" are what the signature is calculated
      over.

   2. For details on how to prepare the multipart/signed with protocol =
      "application/pkcs7-signature", see the "S/MIME Message
      Specification, PKCS Security Services for MIME".

   3. Note that the textual first body part of the multipart/report can
      be used to include a more detailed explanation of the error
      conditions reported by the disposition headers. The first body
      part of the multipart/report, when used in this way, allows a
      person to better diagnose a problem in detail.

   4. As specified by RFC 3462 [RFC3462], returning the original or portions
      of the original message in the third body part of the
      multipart/report is not required.  This is an optional body part.
      However, it is RECOMMENDED that this body part be omitted or left
      blank.
]]></sourcecode>
      </section>
      <section anchor="signed-encrypted-message-requesting-a-signed-asynchronous-receipt">
        <name>Signed, Encrypted Message Requesting a Signed, Asynchronous Receipt</name>
        <sourcecode type="text"><![CDATA[
   POST /trading_partner HTTP/1.1
   Host: 10.240.1.2:58101
   User-Agent: AS2 Company Server
   Message-ID: <#as2_company#01#a4260as2_companyout#>
   Date: Thu, 19 Dec 2024 15:04:18 GMT
   Subject: Signed and encrypted message with async MDN request
   Mime-Version: 1.0
   Content-Type: application/pkcs7-mime;
       smime-type=enveloped-data; name=smime.p7m
   Content-Transfer-Encoding: binary
   Content-Disposition: attachment; filename=smime.p7m
   Recipient-Address: 10.240.1.2//
   Disposition-Notification-To: http://10.240.1.2:58201/exchange/as2_company
   Disposition-Notification-Options: signed-receipt-protocol=optional,
        pkcs7-signature; signed-receipt-micalg=optional,sha-256
   Receipt-Delivery-Option: http://10.240.1.2:58201/exchange/as2_company
   AS2-From: as2_company
   AS2-To: "AS2 Test"
   AS2-Version: 1.3
   Content-Length: 3428

     {omitted binary encrypted data}
]]></sourcecode>
      </section>
      <section anchor="asynchronous-mdn-for-message-in-a3-above">
        <name>Asynchronous MDN for Message in A.3, Above</name>
        <sourcecode type="text"><![CDATA[
   POST / HTTP/1.1
   Host: 10.234.160.12:80
   TE: trailers, deflate, gzip, compress
   User-Agent: AS2 Company Server
   Date: Thu, 19 Dec 2024 15:05:38 GMT
   Message-ID: <AS2-20021219_030338@as2_company.dgi_th>
   AS2-Version: 1.3
   Mime-Version: 1.0
   Recipient-Address: http://10.240.1.2:58201/exchange/as2_company
   AS2-To: as2_company
   AS2-From: "AS2 Test"
   Subject: Your Requested MDN Response
   From: as2debug@example.com
   Accept-Encoding: deflate, gzip, x-gzip, compress, x-compress
   Content-Type: multipart/signed; micalg=sha-256;
        protocol="application/pkcs7-signature";
        boundary="----=_Part_337_6452266.1040310218750"
   Content-Length: 3103

   ------=_Part_337_6452266.1040310218750
   Content-Type: multipart/report;
        report-type=disposition-notification;
        boundary="----=_Part_336_6069110.1040310218718"

   ------=_Part_336_6069110.1040310218718
   Content-Type: text/plain; charset=us-ascii
   Content-Transfer-Encoding: 7bit

   The message <x12.edi> sent to Recipient <AS2 Test> on Thu, 19 Dec
   2024 15:04:18 GMT with Subject <Signed and encrypted message with async
   MDN request> has been received. The EDI Interchange was successfully
   decrypted, and its integrity was verified. In addition, the sender of
   the message, Sender <as2_company> at Location http://10.240.1.2:58201/exchange/as2_company
   was authenticated as the originator of the message. There is no
   guarantee, however, that the EDI interchange was syntactically
   correct, or that it was received by the EDI application/translator.

   ------=_Part_336_6069110.1040310218718
   Content-Type: message/disposition-notification
   Content-Transfer-Encoding: 7bit

   Reporting-UA: AS2@test:8101
   Original-Recipient: rfc822; "AS2 Test"
   Final-Recipient: rfc822; "AS2 Test"
   Original-Message-ID: <#as2_company#01#a4260as2_companyout#>
   Disposition: automatic-action/MDN-sent-automatically; processed
   Received-Content-MIC: Hes6my+vIxIYxmvsA+MNpEOTPAc=, sha256

   ------=_Part_336_6069110.1040310218718--

   ------=_Part_337_6452266.1040310218750
   Content-Type: application/pkcs7-signature; name=smime.p7s
   Content-Transfer-Encoding: base64
   Content-Disposition: attachment; filename=smime.p7s

   BhbWjEfbyXoTAS/H0zpnEqLqbaBh29y2v82b8bdeGw8pipBQWmf53hIcqHGM
   4ZBF3CHw5Wrf1JIE+8TwOzdbal30zeChw88WfRfD7c/j1fIA8sxsujvf2d9j
   UxCUga8BVdVB9kH0Geexytyt0KvWQXfaEEcgZGUAAAAAAAA=

   ------=_Part_337_6452266.1040310218750-
]]></sourcecode>
      </section>
    </section>
    <section anchor="change-log-non-normative">
      <name>Change Log (Non-Normative)</name>
      <t>This appendix records the substantive changes made during the revision
from the original RFC 4130 draft toward the current version of this document.</t>
      <section anchor="general">
        <name>General</name>
        <ul spacing="normal">
          <li>
            <t>Removed all references to AS1/SMTP throughout the draft.</t>
          </li>
          <li>
            <t>Included descriptions and references for compressed content, which was previously supported since AS2 version 1.1.</t>
          </li>
          <li>
            <t>This draft explicitly allows negotiation of newer RFCs while retaining legacy support, where necessary.</t>
          </li>
          <li>
            <t>Updated formatting and cross-references so that all internal "Section X.Y"
references are properly linked in HTML and XML output.</t>
          </li>
          <li>
            <t>Moved legacy interoperability clarifications to Section 1.2.1
to avoid confusion with normative text.</t>
          </li>
          <li>
            <t>Clarified that appendices are non-normative unless otherwise indicated.</t>
          </li>
          <li>
            <t>Replaced all references to RFC 3851 with RFC 5751.</t>
          </li>
          <li>
            <t>Replaced all references to RFC 3852 with RFC 5652.</t>
          </li>
        </ul>
      </section>
      <section anchor="changes-affecting-section-12-backward-compatibility-and-interoperability">
        <name>Changes affecting Section 1.2 - Backward Compatibility and Interoperability</name>
        <ul spacing="normal">
          <li>
            <t>Expanded to explicitly state the dual-reference policy:
            </t>
            <ul spacing="normal">
              <li>
                <t>Implementations MAY interoperate with S/MIME v3.2 (RFC 5751, which
obsoletes RFC 3851/3852).</t>
              </li>
              <li>
                <t>Conformant implementations MUST also support S/MIME v4.0 (RFC 8551,
which obsoletes RFC 5751).</t>
              </li>
            </ul>
          </li>
          <li>
            <t><strong>UPDATED (Technical Review)</strong>: Clarified that S/MIME 4.0 is the baseline
for conformant implementations, with explicit guidance on when to use
AuthEnvelopedData (S/MIME 4.0 with AES-GCM/AES-CCM) versus EnvelopedData
(S/MIME 3.2 with AES-CBC or for backward compatibility).</t>
          </li>
          <li>
            <t>Added explicit pointer to Section 1.2.1 for legacy interoperability
clarifications.</t>
          </li>
          <li>
            <t>Clarified that RFC 8551 forms the baseline for new implementations.</t>
          </li>
          <li>
            <t>Added new <strong>Section 1.2.1</strong>: Legacy Interoperability (non-normative clarifications):
            </t>
            <ul spacing="normal">
              <li>
                <t>Captures behavior when interoperating with RFC 4130 systems.</t>
              </li>
            </ul>
          </li>
        </ul>
      </section>
      <section anchor="changes-affecting-section-51-as2-version-header">
        <name>Changes affecting Section 5.1 - AS2-Version Header</name>
        <ul spacing="normal">
          <li>
            <t>Retained definitions for AS2-Version 1.0, 1.1, and included the previously supported version 1.2.</t>
          </li>
          <li>
            <t>Added <strong>AS2-Version: 1.3</strong>:
            </t>
            <ul spacing="normal">
              <li>
                <t>Defines modernization requirements (SHA-256, AES baseline per RFC 8551).</t>
              </li>
              <li>
                <t>Aligns MDN behavior with RFC 8098.</t>
              </li>
              <li>
                <t>Requires support for multiple-recipient encryption (Section 7.2).</t>
              </li>
              <li>
                <t>Points to Section 1.2.1 for legacy interoperability when communicating
with 1.2 or earlier partners.</t>
              </li>
            </ul>
          </li>
          <li>
            <t>Added note about future versioning: minor versions (1.x) remain backward
compatible; major version (2.0+) would indicate non-backward-compatible
revisions.</t>
          </li>
        </ul>
      </section>
      <section anchor="changes-affecting-section-533-message-id-and-original-message-id">
        <name>Changes affecting Section 5.3.3 — Message-Id and Original-Message-Id</name>
        <ul spacing="normal">
          <li>
            <t>Prohibit spaces and control characters in newly generated <tt>Message-Id</tt>
values; recommend removal (not substitution) when constructing from
other attributes.</t>
          </li>
          <li>
            <t>Clarify receiver behavior: implementations are not required to accept
malformed <tt>Message-Id</tt> values; they SHOULD return an MDN with
<tt>processed/error</tt> and a human-readable explanation (per <xref target="RFC8098"/>).</t>
          </li>
          <li>
            <t>Keep angle-bracket guidance; brackets are required on send and are not
part of the identifier value. Receivers SHOULD NOT reject solely for
missing brackets.</t>
          </li>
          <li>
            <t>Update normative reference to <xref target="RFC5322"/>.</t>
          </li>
        </ul>
      </section>
      <section anchor="changes-affecting-sections-54-and-55-reliability-and-restart">
        <name>Changes affecting Sections 5.4 and 5.5 — Reliability and Restart</name>
        <ul spacing="normal">
          <li>
            <t>Expanded Section 5.4 to clarify that HTTP 102 (Processing) MAY be used
under HTTP/1.1 for progress indication but MUST NOT be used under
HTTP/2 or HTTP/3.</t>
          </li>
          <li>
            <t>Changed previous requirement to close connections before retry to
optional behavior; clarified that 102 is deprecated but still
permitted for backward compatibility.</t>
          </li>
          <li>
            <t>Expanded Section 5.5 to reference the AS2 Reliability
(<xref target="I-D.draft-duker-as2-reliability-16"/>) and AS2 Restart (<xref target="I-D.draft-harding-as2-restart-02"/>) drafts.</t>
          </li>
          <li>
            <t>Clarified that implementations SHOULD support configurable retry logic
and MAY implement restart for large or interrupted transfers.</t>
          </li>
          <li>
            <t>Added explicit normative language about duplicate detection using
Message-ID.</t>
          </li>
        </ul>
      </section>
      <section anchor="changes-affecting-section-6-additional-as2-specific-http-headers">
        <name>Changes affecting Section 6 — Additional AS2-Specific HTTP Headers</name>
        <ul spacing="normal">
          <li>
            <t>Added new <tt>AS2-Product</tt> header to identify the sending product and version.</t>
          </li>
          <li>
            <t>Defined header format as <tt>&lt;product-name&gt;:&lt;major.minor[.patch]&gt;</tt>.</t>
          </li>
          <li>
            <t>Required inclusion for AS2-Version 1.3 and possibly 2.0 later.</t>
          </li>
          <li>
            <t>Clarified that the header enables interoperability diagnostics and
implementation-specific workarounds, not capability negotiation.</t>
          </li>
          <li>
            <t>Explicitly stated that arbitrary or misleading product names MUST NOT be used.</t>
          </li>
        </ul>
      </section>
      <section anchor="changes-affecting-section-7-algorithm-requirements">
        <name>Changes affecting Section 7 - Algorithm Requirements</name>
        <ul spacing="normal">
          <li>
            <t>Introduced a new dedicated section consolidating algorithm requirements.</t>
          </li>
          <li>
            <t><strong>Hash Algorithms</strong>:
            </t>
            <ul spacing="normal">
              <li>
                <t>MUST support SHA-256.</t>
              </li>
              <li>
                <t>SHOULD support SHA-384 or stronger.</t>
              </li>
            </ul>
          </li>
          <li>
            <t><strong>Encryption Algorithms</strong>:
            </t>
            <ul spacing="normal">
              <li>
                <t>MUST support AES-128-CBC; SHOULD support AES-256-CBC.</t>
              </li>
              <li>
                <t>RECOMMENDED to support AES-GCM and AES-CCM modes.</t>
              </li>
              <li>
                <t>SHOULD support multiple-recipient encryption (per RFC 8551 §3.3).</t>
              </li>
            </ul>
          </li>
          <li>
            <t><strong>UPDATED (Technical Review)</strong>: Added comprehensive key management algorithm
requirements:
            </t>
            <ul spacing="normal">
              <li>
                <t>MUST support RSA with minimum 2048-bit key length</t>
              </li>
              <li>
                <t>MAY support ECDH and Diffie-Hellman (RFC 5753)</t>
              </li>
              <li>
                <t>For elliptic curves, SHOULD support NIST P-256 or stronger</t>
              </li>
            </ul>
          </li>
          <li>
            <t><strong>UPDATED (Technical Review)</strong>: Added new Section 7.2 subsections:
            </t>
            <ul spacing="normal">
              <li>
                <t>"EnvelopedData vs AuthEnvelopedData" - Explicit rules for when to use each:
                </t>
                <ul spacing="normal">
                  <li>
                    <t>AuthEnvelopedData MUST be used with AES-GCM and AES-CCM</t>
                  </li>
                  <li>
                    <t>EnvelopedData MUST be used with AES-CBC and for S/MIME 3.2 compatibility</t>
                  </li>
                  <li>
                    <t>Single content encryption algorithm MUST be used for all recipients</t>
                  </li>
                </ul>
              </li>
              <li>
                <t>"Multiple-Recipient Encryption" - Explains support for multiple recipients
of the same content-encryption key</t>
              </li>
            </ul>
          </li>
          <li>
            <t>Added explicit cross-references to Section 1.2.1 for legacy interoperability.</t>
          </li>
        </ul>
      </section>
      <section anchor="changes-affecting-section-8-mdn-processing">
        <name>Changes affecting Section 8 - MDN Processing</name>
        <ul spacing="normal">
          <li>
            <t>Updated to align MDN behavior with RFC 8098 (superseding RFC 3798).</t>
          </li>
          <li>
            <t>Clarified semantics for signed-receipt-micalg:
            </t>
            <ul spacing="normal">
              <li>
                <t>Allow multiple algorithms in header for backward compatibility.</t>
              </li>
              <li>
                <t>Conformance requires selecting one algorithm in Received-content-MIC.</t>
              </li>
              <li>
                <t>SHA-256 set as the default minimum</t>
              </li>
            </ul>
          </li>
          <li>
            <t>Relaxed constraints on the content of the Disposition-notification-to header.</t>
          </li>
          <li>
            <t>Definitions have been included for additional supported error dispositions.</t>
          </li>
          <li>
            <t>Clarified required MDN fields:
            </t>
            <ul spacing="normal">
              <li>
                <t><tt>Final-Recipient</tt> — MUST always be present.</t>
              </li>
              <li>
                <t><tt>Original-Message-ID</tt> — REQUIRED and must match the original message exactly.</t>
              </li>
              <li>
                <t><tt>Message-ID</tt> in the MDN — optional.</t>
              </li>
              <li>
                <t><tt>Disposition-Notification-To</tt> — MAY use any format (email, URL, hostname);
receiving systems MUST ignore syntax issues per RFC 4130.</t>
              </li>
            </ul>
          </li>
          <li>
            <t>Updated asynchronous MDN handling to reflect practical implementation realities:
            </t>
            <ul spacing="normal">
              <li>
                <t>HTTP 200-level responses SHOULD be sent immediately after receiving the last byte,
before full decryption or validation, to minimize timeout risk.</t>
              </li>
              <li>
                <t>Persistent (keep-alive) connections MAY be used; closing is optional and
implementation-dependent.</t>
              </li>
              <li>
                <t>Receipt of a 200-level response only acknowledges receipt, not successful processing.</t>
              </li>
            </ul>
          </li>
          <li>
            <t>Emphasized that asynchronous MDNs are sent as independent HTTP messages per
Section 7.3, and clarified that connection handling should not be mandated at
the application layer.</t>
          </li>
          <li>
            <t>Added standardized <tt>disposition-modifier</tt> extensions to improve error
reporting.</t>
          </li>
          <li>
            <t>New recommended modifiers:
            </t>
            <ul spacing="normal">
              <li>
                <t><tt>error: decompression-failed</tt></t>
              </li>
              <li>
                <t><tt>error:duplicate-filename</tt></t>
              </li>
              <li>
                <t><tt>error:illegal-filename</tt></t>
              </li>
              <li>
                <t><tt>error: insufficient-message-security</tt></t>
              </li>
              <li>
                <t><tt>error:invalid-message-id</tt></t>
              </li>
              <li>
                <t><tt>error:unknown-trading-relationship</tt></t>
              </li>
              <li>
                <t><tt>error: unknown-trading-partner</tt></t>
              </li>
            </ul>
          </li>
          <li>
            <t>Clarified that implementations returning these modifiers MUST include a
human-readable explanation in the MDN <tt>Explanation</tt> field.</t>
          </li>
        </ul>
      </section>
      <section anchor="changes-affecting-section-9-public-key-certificate-handling">
        <name>Changes affecting Section 9 — Public Key Certificate Handling</name>
        <ul spacing="normal">
          <li>
            <t>Revised the opening paragraph to reference the optional Well-Known URIs as
the preferred AS2 capability discovery mechanism, in addition to manual partner
onboarding.</t>
          </li>
          <li>
            <t>Expanded the section to clarify separate roles and lifecycle management
for <strong>TLS certificates</strong> (transport security) and <strong>AS2 certificates</strong>
(message signing and encryption).</t>
          </li>
          <li>
            <t><strong>UPDATED (Technical Review)</strong>: Strengthened requirement that TLS and AS2
certificates <strong>MUST NOT</strong> be the same certificate (changed from SHOULD NOT).
Using the same certificate for both purposes creates security dependencies
and operational risks that must be avoided.</t>
          </li>
          <li>
            <t>Required a <strong>minimum RSA key length of 2048 bits</strong> (or equivalent elliptic-curve
strength such as P-256).</t>
          </li>
          <li>
            <t>Clarified that:
            </t>
            <ul spacing="normal">
              <li>
                <t><strong>TLS certificates</strong> SHOULD be CA-signed in production; self-signed
certificates MAY be used in test environments or by partner agreement,
provided they include a <strong>Subject Alternative Name (SAN)</strong> extension
with hostname and/or IP address.</t>
              </li>
              <li>
                <t><strong>UPDATED (Technical Review)</strong>: Added reference to CA/Browser Forum
Baseline Requirements (https://cabforum.org/baseline-requirements-documents/)
for public-facing TLS certificates.</t>
              </li>
              <li>
                <t><strong>AS2 certificates</strong> MAY be CA-issued or self-signed per partner policy.</t>
              </li>
            </ul>
          </li>
          <li>
            <t>Added guidance that <strong>AS2 certificate lifetimes</strong> need not mirror the
short renewal cycles of TLS certificates; renewal policies SHOULD be
independent.</t>
          </li>
          <li>
            <t>Recommended <strong>CEM</strong> for automated certificate exchange between partners
to reduce manual errors and downtime.</t>
          </li>
          <li>
            <t><strong>UPDATED (Technical Review)</strong>: Clarified Well-Known URIs certificate retrieval
requirements to focus on authentication (verify requester identity) and
authorization (ensure only legitimate partners can access certificates)
rather than just integrity protection. While certificates are digitally
signed and thus tamper-evident, authentication and authorization prevent
unauthorized parties from obtaining certificates and mapping trading
partner relationships. For self-signed certificates, added requirement
for out-of-band fingerprint verification before production use.</t>
          </li>
          <li>
            <t>Added operational recommendations:
            </t>
            <ul spacing="normal">
              <li>
                <t>Maintain separate TLS / AS2 certificates.</t>
              </li>
              <li>
                <t>Include SAN extensions in all self-signed certificates.</t>
              </li>
              <li>
                <t>Support configurable expiry-notification mechanisms.</t>
              </li>
              <li>
                <t><strong>UPDATED (Technical Review)</strong>: Administrators MUST NOT (strengthened
from SHOULD NOT) reuse TLS certificates for AS2 message security.</t>
              </li>
            </ul>
          </li>
        </ul>
      </section>
      <section anchor="changes-affecting-section-10-security-considerations">
        <name>Changes affecting Section 10 - Security Considerations</name>
        <ul spacing="normal">
          <li>
            <t>Provided guidance for the usage of HTTPS and the minimum and recommended usage of TLS versions.</t>
          </li>
          <li>
            <t>Expanded discussion of algorithm lifecycle:
            </t>
            <ul spacing="normal">
              <li>
                <t>Implementations SHOULD NOT generate deprecated algorithms.</t>
              </li>
              <li>
                <t>Migration guidance provided for interoperability.</t>
              </li>
            </ul>
          </li>
          <li>
            <t>Added explicit references back to Section 7 (Algorithm Requirements) and
Section 1.2.1 (Legacy Interoperability).</t>
          </li>
        </ul>
      </section>
      <section anchor="changes-affecting-section-11-iana-considerations">
        <name>Changes affecting Section 11 - IANA Considerations</name>
        <ul spacing="normal">
          <li>
            <t>Clarified that IANA must update existing MDN registries to reference this
specification (replacing RFC 4130).</t>
          </li>
          <li>
            <t>Added direct links to IANA registry pages for clarity.</t>
          </li>
        </ul>
      </section>
      <section anchor="updated-message-examples">
        <name>Updated Message Examples</name>
        <ul spacing="normal">
          <li>
            <t><strong>Appendix A</strong>: Updated Message Examples with newer algorithms.</t>
          </li>
        </ul>
      </section>
      <section anchor="formatting-and-editorial-updates-technical-review">
        <name>Formatting and Editorial Updates (Technical Review)</name>
        <t>The following formatting and editorial improvements were made based on
technical review feedback:</t>
        <ul spacing="normal">
          <li>
            <t><strong>Section 1.1 (Applicable RFCs)</strong>:
            </t>
            <ul spacing="normal">
              <li>
                <t>Updated RFC references to reflect proper obsolescence chain (RFC 3851 -&gt;
RFC 5751 -&gt; RFC 8551)</t>
              </li>
              <li>
                <t>Added RFC 5751 and RFC 5652 to normative references</t>
              </li>
              <li>
                <t>Added explicit explanation of when to use AuthEnvelopedData vs
EnvelopedData based on encryption algorithm choice</t>
              </li>
            </ul>
          </li>
          <li>
            <t><strong>Section 1.3 (Algorithm Coverage)</strong>:
            </t>
            <ul spacing="normal">
              <li>
                <t>Expanded hash function section to include encryption algorithms</t>
              </li>
              <li>
                <t>Added key management algorithm requirements for ECDH</t>
              </li>
              <li>
                <t>Added RFC 5753 to informative references</t>
              </li>
            </ul>
          </li>
          <li>
            <t><strong>Section 6 (AS2-Specific HTTP Headers)</strong>:
            </t>
            <ul spacing="normal">
              <li>
                <t>Reformatted AS2-Version header descriptions to comply with RFC
formatting requirements (72-character line limit)</t>
              </li>
              <li>
                <t>Removed markdown artifacts <tt>{:format="none"}</tt> from all cross-references
throughout the document (24 instances)</t>
              </li>
            </ul>
          </li>
          <li>
            <t><strong>RFC Reference Sections</strong>:
            </t>
            <ul spacing="normal">
              <li>
                <t>Moved RFC citations from section titles to first sentence of each
section (9 sections in "Referenced RFCs and Their Contributions")</t>
              </li>
              <li>
                <t>Example: "## RFC 2616 HTTP v1.1 <xref target="RFC2616"/>" became
"## RFC 2616 HTTP v1.1" with "<xref target="RFC2616"/> specifies..." in text</t>
              </li>
            </ul>
          </li>
          <li>
            <t><strong>Capitalization</strong>:
            </t>
            <ul spacing="normal">
              <li>
                <t>Corrected "internet" to "Internet" (2 instances)</t>
              </li>
              <li>
                <t>Ensured consistent capitalization throughout document</t>
              </li>
            </ul>
          </li>
          <li>
            <t><strong>Cross-References</strong>:
            </t>
            <ul spacing="normal">
              <li>
                <t>Standardized all internal section references to use plain markdown
format without formatting directives</t>
              </li>
            </ul>
          </li>
          <li>
            <t><strong>Bullet Formatting</strong>:
            </t>
            <ul spacing="normal">
              <li>
                <t>Standardized all sections requiring bullets to use the same type and
and same spacing and margins.</t>
              </li>
            </ul>
          </li>
        </ul>
      </section>
      <section anchor="editorial-corrections">
        <name>Editorial Corrections</name>
        <ul spacing="normal">
          <li>
            <t><strong>Terminology Updates</strong>:
            </t>
            <ul spacing="normal">
              <li>
                <t>Changed all instances of "TCP/IP connection" to "HTTP connection" (3 locations)
to properly reflect the protocol layer and accommodate HTTP/2, HTTP/3, and QUIC</t>
              </li>
              <li>
                <t>Added RFC reference to S/MIME definition in Section 1.4 (Terms)</t>
              </li>
              <li>
                <t>Simplified "Internet's HTTP environment" to "over HTTP" in Section 2 (Overview)</t>
              </li>
              <li>
                <t>Removed outdated "Internet EDI" terminology (2 instances in Sections 8.3 and 8.5.4)</t>
              </li>
              <li>
                <t>Fixed typos in Appendix B change log ("dispositions.0" and "usgae")</t>
              </li>
            </ul>
          </li>
          <li>
            <t><strong>Cross-Reference Fixes</strong>:
            </t>
            <ul spacing="normal">
              <li>
                <t>Removed problematic forward reference to structure-and-processing-of-an-mdn-message
from Section 2.4.2 (reference was not resolving in kramdown-rfc)</t>
              </li>
              <li>
                <t>Replaced three anchor references with explicit section numbers due to kramdown-rfc
limitations with third-level explicit heading anchors:
                </t>
                <ul spacing="normal">
                  <li>
                    <t><tt>{{the-secure-transmission-loop}}</tt> -&gt; Section 2.3.1</t>
                  </li>
                  <li>
                    <t><tt>{{backward-compatibility-and-interoperability}}.1</tt> -&gt; Section 1.2.1</t>
                  </li>
                  <li>
                    <t><tt>{{legacy-interoperability-non-normative}}</tt> -&gt; Section 1.2.1 (in bullet list context)</t>
                  </li>
                </ul>
              </li>
            </ul>
          </li>
        </ul>
      </section>
      <section anchor="substantive-technical-changes">
        <name>Substantive Technical Changes</name>
        <ul spacing="normal">
          <li>
            <t><strong>Section 2.4.2 (Security Permutations)</strong>:
            </t>
            <ul spacing="normal">
              <li>
                <t>Replaced exhaustive 24-permutation enumeration with concise capability summary</t>
              </li>
              <li>
                <t>Added clarification that security combinations are determined by partner agreements</t>
              </li>
              <li>
                <t>Addresses reviewer concern about unnecessary implementation complexity</t>
              </li>
            </ul>
          </li>
          <li>
            <t><strong>Section 2.4.2 (Compression and Signature Ordering)</strong>:
            </t>
            <ul spacing="normal">
              <li>
                <t>Added explicit guidance that compression is always applied before encryption</t>
              </li>
              <li>
                <t>Clarified that implementations MAY apply compression before or after signing</t>
              </li>
              <li>
                <t>Added requirement that conformant implementations MUST handle decompression
regardless of compression/signing order</t>
              </li>
              <li>
                <t>Added note that MIC computation is always applied to the signed portion and
includes inner MIME headers</t>
              </li>
            </ul>
          </li>
          <li>
            <t><strong>Section 2.4.2 (MIME Type Requirements)</strong>:
            </t>
            <ul spacing="normal">
              <li>
                <t>Distinguished between protocol-level MIME types (MUST support) and
content-specific types (SHOULD support based on use case)</t>
              </li>
              <li>
                <t>Moved EDI-specific MIME types (application/EDI-X12, application/EDIFACT) to
SHOULD category to avoid unnecessary requirements for non-EDI implementations</t>
              </li>
            </ul>
          </li>
          <li>
            <t><strong>Section 5 (HTTP Considerations)</strong>:
            </t>
            <ul spacing="normal">
              <li>
                <t>Updated to clarify that HTTP/1.1 is the baseline, with HTTP/2 and HTTP/3 as
optional when supported by both partners</t>
              </li>
              <li>
                <t>Clarified that certification programs define their own conformance profiles</t>
              </li>
              <li>
                <t>Addresses concern about IETF/RFC overreach into certification scope</t>
              </li>
            </ul>
          </li>
          <li>
            <t><strong>Section 5 (Connection Management) - NEW SUBSECTION</strong>:
            </t>
            <ul spacing="normal">
              <li>
                <t>Added comprehensive guidance on HTTP persistent connections</t>
              </li>
              <li>
                <t>Clarified that Connection: close is not required and SHOULD NOT be used
unless specifically needed</t>
              </li>
              <li>
                <t>Explained that HTTP/1.1 persistent connections are the default behavior</t>
              </li>
              <li>
                <t>Noted performance benefits of persistent connections, particularly for HTTPS</t>
              </li>
              <li>
                <t>Removed Connection: close header from message examples (2 instances in Appendix A)</t>
              </li>
              <li>
                <t>Addresses working group discussion about unnecessary connection closing</t>
              </li>
            </ul>
          </li>
          <li>
            <t><strong>Section 5.1 (TLS Requirements)</strong>:
            </t>
            <ul spacing="normal">
              <li>
                <t>Updated to acknowledge TLS 1.3 <xref target="RFC8446"/> as current IETF standard</t>
              </li>
              <li>
                <t>Maintained TLS 1.2 <xref target="RFC5246"/> as baseline requirement for backward compatibility</t>
              </li>
              <li>
                <t>Provided clear migration guidance</t>
              </li>
              <li>
                <t>Added RFC8446 and RFC5246 to normative references</t>
              </li>
            </ul>
          </li>
          <li>
            <t><strong>Section 6.2 (AS2-Product Header)</strong>:
            </t>
            <ul spacing="normal">
              <li>
                <t>Updated format to support optional Private Enterprise Number (PEN) prefix</t>
              </li>
              <li>
                <t>Format: <tt>[PEN-&lt;number&gt;:]&lt;product-name&gt;:&lt;version&gt;</tt></t>
              </li>
              <li>
                <t>PEN usage is RECOMMENDED but not required</t>
              </li>
              <li>
                <t>Addresses concern about vendor identification without requiring PEN registration</t>
              </li>
            </ul>
          </li>
          <li>
            <t><strong>Section 7 (Algorithm Lifecycle Management) - NEW SUBSECTION</strong>:
            </t>
            <ul spacing="normal">
              <li>
                <t>Added formal algorithm lifecycle management guidance</t>
              </li>
              <li>
                <t>Defined algorithm categories (MUST, SHOULD, MAY, DEPRECATED, MUST NOT)</t>
              </li>
              <li>
                <t>Referenced existing S/MIME v4.0 and CMS algorithm registries rather than
creating redundant AS2-specific registry</t>
              </li>
              <li>
                <t>Provided references to NIST SP 800-57 and 800-131A for implementer guidance</t>
              </li>
              <li>
                <t>Establishes update pathway without requiring constant RFC revisions</t>
              </li>
            </ul>
          </li>
          <li>
            <t><strong>Section 11 (IANA Considerations)</strong>:
            </t>
            <ul spacing="normal">
              <li>
                <t>Added HTTP Field Name Registry section requesting registration of AS2 headers
(AS2-Version, AS2-Product, AS2-From, AS2-To) per RFC9110</t>
              </li>
              <li>
                <t>Created new AS2 MDN Disposition Modifier Registry with Specification Required
registration procedure</t>
              </li>
              <li>
                <t>Initial registry includes 10 error disposition modifiers</t>
              </li>
              <li>
                <t>Added RFC9110 to normative references</t>
              </li>
            </ul>
          </li>
        </ul>
      </section>
      <section anchor="normative-references-added">
        <name>Normative References Added</name>
        <ul spacing="normal">
          <li>
            <t>RFC5246 (TLS 1.2)</t>
          </li>
          <li>
            <t>RFC8446 (TLS 1.3)</t>
          </li>
          <li>
            <t>RFC9110 (HTTP Semantics)</t>
          </li>
        </ul>
        <t>These updates improve RFC formatting compliance and document clarity while
maintaining all technical content and backward compatibility requirements.</t>
      </section>
    </section>
  </back>
  <!-- ##markdown-source:
H4sIAAAAAAAAA+S9bXMbV5Y/9h6fogNXYlIBIJGSbJmamVqaksaskWStKI13
/7OqchNokr0C0JjuBimO1lv7HZKXydt8sP0kOc/33NvdkOTxbpIKq2YsEo3b
9+Hc83x+ZzqdjtqyXRZH2fj47DA72xTz8qKc521ZrbMX1aKo1+Xf6LfxCP5a
XFb17VHWtItRdd5Uy6ItmqPswcH9e6PRopqv8xWMtKjzi3ZaFu3FtFiU5bqd
1hdzfOa8bKb3DkfN9nxVNg2M2d5u4PnTp2+eZdlXWb5sKphHuV4UmwL+b92O
J9kYhmirusyX+Mvp8ffwn6qGf71+82w8Wm9X50V9NFrA1I5G82rdFOtmC1Nq
620xuj7K7o9g3LrIj7Lj10+P4Zebqn5/WVfbzVH20x+zn+C3cn2Z/RH/Mnpf
3MLHi6NRNs1gN/A/T5+cnr58g//6/vD70XWx3sJ7vsoyGwJ/4WXEY8GfV3m5
xEf+ofiQrzbLYjavVvj3vJ5fHWVXbbtpju7edR/eheFg6LK92p7DRjypt6tV
tV7QgHd37eoYvraELWha+JoOHH19xqPOymrnQDs/nF21q+V4NMq37VUFmz6F
t2bZxXa55HN/UpzXefaqaNucPqnqy1ypBz6V6fD+TLLnz0/oqYK3abzAb2/+
YSGP0QbjpsAL11W9glGuYeuz7PWzE5zPUfbxF/7t8N6Dh9Fv30S/fRd+O/j2
m2/dZ98cuCfv37/vRrn/7XePwm+P7vnfDh49cKM8/Pbhgfvtm4eHbpQH3/jf
7h3e9zM79G9/9NCv6PD+A/fbwYFbw6ODb91n9w/j3x65UR49jGZ2/9DN5Zt7
B34Nh37PHj2IfvvmwO3LdwcH/IZRub5ITuUwGuXBdwePol3StZ9On8yYyhbb
90U9zZvDaV0sy/y8XJbt7dQOJTx4ldcLuFnyaNPmdQt8pPPYqsgXVd1M50Xd
MhMrpsWH+VW+viymB7xPo+l0muXnTVvn83Y0enNVNhkwru0KuE22qavrclE0
Wb7O8s1mCUPwpIDhwWD0zB6sJsPDm2RnxZzY5P3Z4f4Ivjavy3NkAFfVTdZW
WVPMt7Cw20znAKPU23kLf1xk59umXBcNvDxv86y6LurshzdvXs1GZ0PPrPLb
7LzI/unF88fZ0yW8uq7W5Tx7gp+drtuilpfsAcvah+PJCrjxMCz8X3a8KmpY
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
/sUD09JtTzo0k2Bna6Hm3qru3e7FgthiOPgC3s0OXFCKmkKkGNV6NbCq64KX
xfBSqpJjnsFGajLHOFFgoE/xi6XGAwXVnKcRKq4YM5wdUDjQukCXQ16X2PFs
W5MV4cJ3ra/tepxRsFsT+S2spzG9byfZ+ATMbg4c/BEk4irHnoVJh4Vldskf
zYbZEp8E8yGfzEt5u9GZYeOXbPx43Ms5SGqP7447H8C3KDtxNOqMxS/N5250
GEAKYOkPo5H/VCYJ4mELXI0/oZRZw/TQP45GfhT9IuqdGIOd8gjLW/qy/TVC
BhmPOjvFwOo8lDmQaAhkkvDP7ld08fK1vWxMPJO+JDxynO2LTt33xWmoyRgc
PDyjs6OXHCXQulOZZfZv0UOLgnoso+dv1zPacWvggS2rAygnlgVeqPSJcomN
MJbDn69DFboJLG1K131Ykv2mlOw3MCmJJTnxlz6xXWvwzYcC9YiSR3c1E939
rPYU1cfk5I+ysZlDKjC9MiNPiwT2T6tQdk8H861vqN+j4H3z9J/egKAd7Ril
++AOcSzE1u8tROYhOMd2AOKXHE+YhfCvmLIERyM26MBX+FUHMLevj7+efv0/
voYr83UO//ob/ese/Os7+tdd+v//lf7/91+LWvE4K2cFqPBYOPrNg7147H1k
TH4iv8/Gkt1M11RymO3fDw8Ox5ac/KbCSH6NXb7ZlW6anPX08mWtk6xbxsVa
gVRQNT7zh3IW8npB8RkfJteLj+LutiIZWjVS82TyBPUHLPrl/HHKJr+HhTWq
FXEnLxlHmwZHualWziyEgvrQQvqbK9yRBOfQq7VASGWCf6oLqY8LcSXr4cHb
hIfMiYmrnKSsDKKVwUvxVxd5vSw7hdaKXzRcYK3Zm3lahOp7CwfkUBzn56fh
o59F05GkJofF6XdN2mlu2eixvZSyc5eLr8mH+LbT45fHmTUKleaV6ILzCQt/
dombNq5UUZcwxzTQ7ZGiPg9omitNHSxmVPZQWdZH1NUDv6TAmAH924AC8Ct8
xaYO4Ty5yWKPL4L7tfMWzvbNCfObtFqB/Va0x4B24Jrgpg1WMNKlZSpi2XfD
atyLDItJyqVYcea3V+J3RgBNOaS/x+6EUPmpS0QQt+JLc07uzw7sBJxCGFq3
9jr9e/we1sslcYeruyhgiiraURW7ywJ0uyTYnHaMa4nHdjIKtFQkTCuEzglH
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

-->

</rfc>
