<?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.35 (Ruby 3.4.9) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-petta-rfc4130bis-06" category="info" consensus="true" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.33.0 -->
  <front>
    <title>AS2 Specification Modernization</title>
    <seriesInfo name="Internet-Draft" value="draft-petta-rfc4130bis-06"/>
    <author fullname="Debra Petta">
      <organization>Drummond Group, LLC</organization>
      <address>
        <email>debrap@drummondgroup.com</email>
      </address>
    </author>
    <date year="2026" month="May" day="01"/>
    <keyword>AS2</keyword>
    <keyword>EDIINT</keyword>
    <keyword>B2B</keyword>
    <abstract>
      <?line 68?>

<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-petta-rfc4130bis/draft-petta-rfc4130bis.html"/>.
        Status information for this document may be found at <eref target="https://datatracker.ietf.org/doc/draft-petta-rfc4130bis/"/>.
      </t>
      <t>Source for this draft and an issue tracker can be found at
        <eref target="https://github.com/DrummondGroup/draft-petta-rfc4130bis"/>.</t>
    </note>
  </front>
  <middle>
    <?line 89?>

<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 such as 3DES or SHA-1. 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 may continue
        to accept SHA-1 for MIC calculations when required by legacy
        partners. SHA-1 SHOULD NOT be generated by conformant modern
        implementations, but SHA-1 values SHOULD continue to be used to
        maintain backward compatibility.

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

        Note: NIST withdrew the 3DES specification on 1 January 2024, and
        disallowed the two-key variant in 2017. Any residual use of 3DES is
        for backward compatibility only and SHOULD NOT be generated by
        conformant implementations.

     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 from SHA-1 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.

   SHA-1:   A secure, one-way hash algorithm used in conjunction with
            digital signature. This algorithm is retained for backward
            compatibility but is deprecated in this specification.
            Implementations MUST support SHA-256 or stronger where possible,
            and SHOULD prefer these algorithms in production environments
            unless legacy partners cannot yet migrate to SHA-256 or stronger.

   MD5:     A secure, one-way hash algorithm used in conjunction with
            digital signature. This algorithm is obsolete and MUST NOT be generated
            by conformant implementations.

   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. SHA-1 MAY be supported for incoming messages
    for backward compatibility, but SHOULD NOT be generated for outgoing messages
    unless it is strictly required for interoperability. MD5 is obsolete
    and MUST NOT be generated by conformant implementations.

  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. Triple-DES (3DES) and RC2 are deprecated and SHOULD NOT
    be generated by conformant implementations, though they SHOULD be accepted
    for backward compatibility with legacy systems. 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 (e.g., SHA-1, 3DES, RC2, MD5)
                       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. SHA-1 and MD5 are deprecated due to
   known weaknesses and SHOULD NOT be generated by conformant implementations.</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>
        <t>Triple DES (3DES) and RC2 are deprecated and SHOULD NOT be generated by
   conformant implementations.</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 3DES and other 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,sha1
]]></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)
      SHA-1        sha-1 or sha1 (DEPRECATED - legacy deployments only)
]]></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, but SHA-1 MAY be used when required for legacy partners.</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.

     o  SHA-1 **MAY** be accepted only when required for interoperability
        with legacy partners and SHOULD NOT be generated for modern
        implementations once both parties support stronger algorithms.

     o  MD5 is obsolete and MUST NOT be generated.

  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" | "sha-1" | "sha1"
                 ; The "sha1" is a legacy representation of the "sha-1"
                 ; defined hash in the IANA Textual Names Registry.
                 ; It should be maintained for backwards compatibility;
                 ; sha1 | sha-1 should only be used by legacy deployments
                 ; that cannot support sha-256 or greater
]]></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. SHA-1 MAY be
   used only for legacy interoperability (see <xref target="backward-compatibility-and-interoperability"/>.1). 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 the <strong>AS2 GET</strong> method (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 <strong>AS2 GET</strong> method MAY be used for initial retrieval of partner
   certificates. Implementations using AS2 GET 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 such as SHA-1, MD5, 3DES, and RC2 are deprecated
   due to known weaknesses. Implementations SHOULD NOT generate these
   algorithms 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
   AS2 GET, 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:**  rfc4130bis, Section 6.1

 **Field Name:** AS2-Product
 **Status:**     permanent
 **Reference:**  rfc4130bis, Section 6.2

 **Field Name:** AS2-From
 **Status:**     permanent
 **Reference:**  rfc4130bis, Section 6.3

 **Field Name:** AS2-To
 **Status:**     permanent
 **Reference:**  rfc4130bis, 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">rfc4130bis</td>
            </tr>
            <tr>
              <td align="left">error: decompression-failed</td>
              <td align="left">rfc4130bis</td>
            </tr>
            <tr>
              <td align="left">error: decryption-failed</td>
              <td align="left">rfc4130bis</td>
            </tr>
            <tr>
              <td align="left">error: insufficient-message-security</td>
              <td align="left">rfc4130bis</td>
            </tr>
            <tr>
              <td align="left">error: integrity-check-failed</td>
              <td align="left">rfc4130bis</td>
            </tr>
            <tr>
              <td align="left">error: unexpected-processing-error</td>
              <td align="left">rfc4130bis</td>
            </tr>
            <tr>
              <td align="left">error:duplicate-filename</td>
              <td align="left">rfc4130bis</td>
            </tr>
            <tr>
              <td align="left">error:illegal-filename</td>
              <td align="left">rfc4130bis</td>
            </tr>
            <tr>
              <td align="left">error:invalid-message-id</td>
              <td align="left">rfc4130bis</td>
            </tr>
            <tr>
              <td align="left">error:unknown-trading-relationship</td>
              <td align="left">rfc4130bis</td>
            </tr>
            <tr>
              <td align="left">error:unknown-trading-partner</td>
              <td align="left">rfc4130bis</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"/>
          </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="April" 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="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 2628?>

<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=, sha1

   ------=_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>
              <li>
                <t>Explicit note: 3DES withdrawn by NIST in 2024; MAY only be accepted for
backward compatibility, SHOULD NOT be generated.</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>States weak algorithms (SHA-1, MD5, 3DES, RC2) SHOULD NOT be generated
by conformant 1.3 implementations.</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>
              <li>
                <t>SHA-1 and MD5 deprecated; SHOULD NOT be generated by conformant implementations.</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>3DES and RC2 deprecated; SHOULD NOT be generated.</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; SHA-1 only permitted for legacy use.</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 <strong>AS2 GET</strong> method,
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 AS2 GET 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>SHA-1 and MD5 deprecated; 3DES formally withdrawn by NIST (2024).</t>
              </li>
              <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:
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
nd98zJmBatwY3KTU2Ww1XK119GhyB8rsoQOFfKM/d6DQs439UO9yIMldsO3t
B913LE043N72FrndbG1rZ8e2s0z/izz7Nenap3+PdRFLfkEOIso3hlDWOoh5
l6mz0z5Y4wNbIWXvV/e2t1lLXd5OmcvLW/iR0anz/iHa1iBFiP81jiZTwt2+
/A17azR7+ZQwVuk23T3smG3q6QCcObRYW+3Ws5+bnWanc/BXZ8ob48v45+XV
y7VeeNmWLRH+P7P+uMxrxcJff6N5fkpWqSpeVMWwZkr5gNcZkRpHw9VlPjzW
pU4uRw3kVuO27q8K/sRdof+vUYVOB23H3XZ7bw8sx50mOCDt1sH+bnOzdDO0
mp2i9b72Gfd9nRM7oD+Pjh3c9y17P+8197CyyR1H62CzbMxrri2O2UYMnmOT
YJpFyxerrB5mozh+4EAgd5O2q+Ncf33bajeicfwyIMx7SnyI5NPGIvl8iUa0
syfJys6fnnwoagnO1488P2kD2iP0pcvBwr4lW5UYWqRKFAEkuOGiWcOhis8x
lDs1pxJdOxLwBu6KlMSEQskoiqQ0ZOCDnOgDFjzRb752tvFLjHm8S7Rr4Il6
gThKPIwQybuKaYmYHH79eYPLw9lqxEeYaEkNfRvt1xGHAacqzk+VS+NN7h6z
EFOtPOcSl3Shzrqa+fgwd0fbEErjn5Ljx8ROHiPLhajJXzGZeKjW5H1xE1/9
ro2Z+JeVx0seb4X+8wEOE3PpuTGXt1G2N7v76vr49vin29l11v3q5P2i/935
aXfEMZbWE5arLCryBL36vyko8upq+PGX/mR492Ny3h1sv23+tpj3f3336zB8
ddV+dte+PmgPD4bj6M3NwSJevPr+42yy27k6Hv369s0JeZH/9up1p/f2Zvdj
Oml9c9z/6uD85rvfxsNw2mn+FvWubg4OPk7OJkf7o+1fWpPj7kF2m61+uZ60
x89+IYvntvfhMjx49cP4h1fPPr9tvomi27vl3bL57fXH73+chP3+6PLf3nzQ
aMqLJ0y8ZjKCHu/zd8llUHlPxjOBCl5H1Y0NxdRH/N9b07WxZKIULJOkRl/W
FIg8NY7cbmosPKC622IvkqlEILhRODhumDYocmoDmECuJAsPdukbRq3dqGNd
PxUxYKOGKT2hjtXuoLVNlB5CWqGcz/TKBtx6rI1GDoF0Jvg25kHMd8wmTjS2
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
TAIA

-->

</rfc>
