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

<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 88?>

<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 3852 Cryptographic Message Syntax (CMS)
]]></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>
          <t>o  <strong>Message Integrity Checks (MICs):</strong> 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.</t>
          <t>o  <strong>Encryption Algorithms:</strong> 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.</t>
          <artwork><![CDATA[
  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.
]]></artwork>
          <t>o  <strong>Multiple-Recipient Encryption:</strong> 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.</t>
          <t>o  <strong>Error Handling:</strong> 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.</t>
          <t>o  <strong>Profile Selection:</strong> 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.</t>
          <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 certification, 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
            TCP/IP connection as the sender's original message.

   Asynchronous Receipt: A receipt returned to the sender over a different
            TCP/IP 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.

   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 RECOMMENDED 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 in the Internet's HTTP environment.</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>
          <t>o  Encrypted object is an EDI/EC Interchange.</t>
          <t>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.</t>
          <t>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.</t>
          <t>o  EDI envelope headers are encrypted.</t>
          <t>Congruent with the above statement, EDI envelope headers are NOT
   visible in the MIME package.</t>
          <t>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.</t>
          <t>o  X12.58 and UN/EDIFACT Security Considerations</t>
          <t>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.</t>
        </section>
        <section anchor="flexibility-assumptions">
          <name>Flexibility Assumptions</name>
          <t>o  Encrypted or Unencrypted Data</t>
          <t>This specification allows for EDI/EC message exchange in which the
   EDI/EC data can be either unprotected or protected by means of
   encryption.</t>
          <t>o  Signed or Unsigned Data</t>
          <t>This specification allows for EDI/EC message exchange with or without
   digital signature of the original EDI transmission.</t>
          <t>o  Compressed or Uncompressed Data</t>
          <t>This specification allows for optional compression and MAY be applied alone
  or in combination with signing and/or encryption, as defined in <xref target="RFC3274"/>.
  It is supported by AS2-Version: 1.1 and higher.</t>
          <t>o  Optional Use of Receipt</t>
          <t>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.</t>
          <t>o  Use of Synchronous or Asynchronous Receipts</t>
          <t>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
   specified in <xref target="structure-and-processing-of-an-mdn-message"/> of this document.</t>
          <t>o  Security Formatting</t>
          <t>This specification relies on the guidelines set forth in RFC
   3851/3852  <xref target="RFC3851"/> / <xref target="RFC3852"/> "S/MIME Version 3.1 Message Specification;
   Cryptographic Message Syntax" as well as RFC 8551 <xref target="RFC8551"/> "Secure/Multipurpose Internet
   Mail Extensions (S/MIME) Version 4.0" for modern implementations.</t>
          <t>o  Hash Function, Message Digest Choices</t>
          <t>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.</t>
          <t>o  Encryption Algorithms</t>
          <t>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.</t>
          <t>o  Key Management Algorithms</t>
          <t>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 <xref target="RFC5753"/>. When using elliptic curves, implementations SHOULD support
   NIST P-256 (secp256r1) or stronger curves.</t>
          <t>o  Permutation Summary</t>
          <t>The optional use of compression, as defined in <xref target="RFC3274"/> was introduced in AS2-Version 1.1.
   Compression can be applied to the message payload before signing and/or encryption,
   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.</t>
          <t>The following summary therefore extends the original AS2 security permutations to include
   the additional possibilities created by the use of compression, resulting in a total of
   twenty-four security permutations.</t>
          <t>Without Compression (12 permutations)</t>
          <ol spacing="normal" type="1"><li>
              <t>Sender sends un-encrypted data and does NOT request a receipt.</t>
            </li>
            <li>
              <t>Sender sends un-encrypted data and requests an unsigned receipt.
Receiver sends back the unsigned receipt.</t>
            </li>
            <li>
              <t>Sender sends un-encrypted data and requests a signed receipt.
Receiver sends back the signed receipt.</t>
            </li>
            <li>
              <t>Sender sends encrypted data and does NOT request a receipt.</t>
            </li>
            <li>
              <t>Sender sends encrypted data and requests an unsigned receipt.
Receiver sends back the unsigned receipt.</t>
            </li>
            <li>
              <t>Sender sends encrypted data and requests a signed receipt.
Receiver sends back the signed receipt.</t>
            </li>
            <li>
              <t>Sender sends signed data and does NOT request a signed or
unsigned receipt.</t>
            </li>
            <li>
              <t>Sender sends signed data and requests an unsigned receipt.
Receiver sends back the unsigned receipt.</t>
            </li>
            <li>
              <t>Sender sends signed data and requests a signed receipt.
Receiver sends back the signed receipt.</t>
            </li>
            <li>
              <t>Sender sends encrypted and signed data and does NOT request a
signed or unsigned receipt.</t>
            </li>
            <li>
              <t>Sender sends encrypted and signed data and requests an unsigned
receipt.  Receiver sends back the unsigned receipt.</t>
            </li>
            <li>
              <t>Sender sends encrypted and signed data and requests a signed
receipt.  Receiver sends back the signed receipt.</t>
            </li>
          </ol>
          <t>With Compression (12 permutations)</t>
          <ol spacing="normal" type="1" start="13"><li>
              <t>Sender sends compressed data (not encrypted or signed) and does NOT request a receipt.</t>
            </li>
            <li>
              <t>Sender sends compressed data and requests an unsigned receipt. Receiver sends back the unsigned receipt.</t>
            </li>
            <li>
              <t>Sender sends compressed data and requests a signed receipt. Receiver sends back the signed receipt.</t>
            </li>
            <li>
              <t>Sender sends compressed and encrypted data and does NOT request a receipt.</t>
            </li>
            <li>
              <t>Sender sends compressed and encrypted data and requests an unsigned receipt. Receiver sends back the unsigned receipt.</t>
            </li>
            <li>
              <t>Sender sends compressed and encrypted data and requests a signed receipt. Receiver sends back the signed receipt.</t>
            </li>
            <li>
              <t>Sender sends compressed and signed data and does NOT request a signed or unsigned receipt.</t>
            </li>
            <li>
              <t>Sender sends compressed and signed data and requests an unsigned receipt. Receiver sends back the unsigned receipt.</t>
            </li>
            <li>
              <t>Sender sends compressed and signed data and requests a signed receipt. Receiver sends back the signed receipt.</t>
            </li>
            <li>
              <t>Sender sends compressed, encrypted, and signed data and does NOT request a signed or unsigned receipt.</t>
            </li>
            <li>
              <t>Sender sends compressed, encrypted, and signed data and requests an unsigned receipt. Receiver sends back the unsigned receipt.</t>
            </li>
            <li>
              <t>Sender sends compressed, encrypted, and signed data and requests a signed receipt. Receiver sends back the signed receipt.</t>
            </li>
          </ol>
          <t><strong>Key Notes</strong></t>
          <t>o Compression MAY be applied alone or in combination with signing and/or encryption, as defined in <xref target="RFC3274"/> and is supported
     by AS2-Version 1.1 and higher.</t>
          <t>o Users may choose any of these twenty-four possibilities, but only the final example (24), when compression, signing, encryption,
     and a signed receipt are all used, offers the full suite of security and efficiency features described in
    Section 2.3.1, “The Secure Transmission Loop.”</t>
          <t>o As with the original permutations, 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.</t>
        </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-3851-and-3852-smime-version-31-message-specifications-and-cryptographic-message-syntax-cms">
        <name>RFC 3851 and 3852 S/MIME Version 3.1 Message Specifications and Cryptographic Message Syntax (CMS)</name>
        <t><xref target="RFC3851"/> and <xref target="RFC3852"/> 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)
          - RFC3851 (application/pkcs7-signature)

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

   Encryption, signature, no compression
      - RFC2616/2045
        - RFC3851 (application/pkcs7-mime)
          - RFC1847 (multipart/signed)(encrypted)
            - RFC1767/RFC3023  (application/EDIxxxx or /xml) (encrypted)
            - RFC3851 (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)
              - RFC3851 (application/pkcs7-signature)

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

   Encryption, signature (compression may occur before or after signing)
      - RFC2616/2045
        - RFC3851 (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)
              - RFC3851 (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)
         - RFC3851 (application/pkcs7-signature)
]]></sourcecode>
        <t><strong>Key Notes</strong></t>
        <t>o RFC 3274 (CompressedData) is the normative reference for compression.</t>
        <t>o Compression MAY be combined with signing and/or encryption in either order,
    but the choice affects what the digital signature covers.</t>
        <t>o Many implementations compress before signing and encrypting to maximize size
    reduction, but compression after signing and before encrypting MUST also be supported.</t>
        <t>o Although all MIME content types SHOULD be supported, the following
    MIME content types MUST be supported:</t>
        <artwork><![CDATA[
         Content-type: multipart/signed
         Content-Type: multipart/report
         Content-type: message/disposition-notification
         Content-Type: application/PKCS7-signature
         Content-Type: application/PKCS7-mime
         Content-Type: application/EDI-X12
         Content-Type: application/EDIFACT
         Content-Type: application/edi-consent
         Content-Type: application/XML
]]></artwork>
      </section>
    </section>
    <section anchor="http-considerations">
      <name>HTTP Considerations</name>
      <t>This specification permits but does not require the use of HTTP/2 or
HTTP/3 as transport protocols. Interoperability testing and
certification are scoped to HTTP/1.1 unless otherwise agreed upon between
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.2 or higher and SHOULD follow the guidance 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>
    <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 {{backward-compatibility-and-interoperability}}.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[
     * <product-name>: lowercase alphanumeric and hyphen characters (a–z,
        0–9, "-") without spaces.
     * <major.minor[.patch]>: version string consistent with the product’s
        release version, with one or more numeric components separated by dots.

   Examples:

      AS2-Product: biztalk:2025.1
      AS2-Product: acme-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.  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",
   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
   Section 1.2.1.</t>
      <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>
          <ul spacing="normal">
            <li>
              <t><strong>AuthEnvelopedData</strong> 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 <xref target="RFC8551"/> specifically to support these modes.</t>
            </li>
            <li>
              <t><strong>EnvelopedData</strong> MUST be used when employing non-authenticated
encryption algorithms such as AES-CBC or when maintaining backward
compatibility with S/MIME 3.2 implementations <xref target="RFC5751"/>. When using
EnvelopedData, integrity protection MUST be provided separately
through digital signatures (multipart/signed).</t>
            </li>
          </ul>
          <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 TCP/IP 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
   TCP/IP 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 TCP/IP 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.</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 currently supported values for MIC algorithm &lt;micalg&gt; values are:</t>
        <artwork><![CDATA[
    Algorithm   Value Used
    ---------    ---------
     SHA-256      sha-256
     SHA-384      sha-384
     SHA-512      sha-512
     SHA-1        sha-1 or sha1 (should *only* be used in legacy deployments that
                                 cannot support SHA-256 or greater)
]]></artwork>
        <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>
            <t><strong>The following algorithm requirements apply to all implementations:</strong>  </t>
            <t>
o Implementations <strong>MUST</strong> support SHA-256.  </t>
            <t>
o Implementations <strong>SHOULD</strong> support SHA-384 or stronger.  </t>
            <t>
o SHA-1 <strong>MAY</strong> be accepted only when required for interoperability with
    legacy partners and SHOULD NOT be generated for modern implementations once
    both parties support stronger algorithms.  </t>
            <t>
o MD5 is obsolete and MUST NOT be generated.  </t>
            <t>
See Section 10 for additional algorithm requirements
and deprecation timelines.  </t>
            <t>
Both the "signed-receipt-protocol" and the "signed-receipt-micalg"
option parameters are REQUIRED when requesting a signed receipt.  </t>
            <t>
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".</t>
          </li>
          <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, 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: For Internet EDI, 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" |
    "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>
          <t>o <strong>Final-Recipient</strong> — This field <strong>MUST</strong> always be present in an MDN
     and MUST identify the AS2-To value of the original message.</t>
          <t>o <strong>Original-Message-ID</strong> — This field is <strong>REQUIRED</strong> and MUST exactly
     match the <tt>Message-ID</tt> of the original message as transmitted.
     <tt>Message-ID</tt> in the MDN itself is optional.</t>
          <t>o <strong>Disposition-Notification-To</strong> — Implementations <strong>MAY</strong> include this
     field using an email address, URL, hostname, or other identifier as
     appropriate to the system.  However, as specified in <xref target="RFC4130"/>, receiving
     applications <strong>MUST</strong> ignore this field and <strong>MUST NOT</strong> reject a message
     due to syntax or address format violations. The field is retained for
     compatibility with prior implementations.</t>
        </section>
        <section anchor="additional-as2-mdn-programming-notes">
          <name>Additional AS2-MDN Programming Notes</name>
          <t>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.</t>
          <t>o  Refer to RFC 3798 for the formatting of the MDN, except for the
      specific deviations mentioned above.</t>
          <t>o  Refer to RFC 3462 and RFC 3798 for the formatting of the content-
      type entity-headers for the MDN.</t>
          <t>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.</t>
          <t>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.</t>
          <t>o  Use a sending-mode of "MDN-sent-automatically" when the MDN is
      sent because the UA had previously been configured to do so.</t>
          <t>o  Use a sending-mode of "MDN-sent-manually" when the user explicitly
      gave permission for this particular MDN to be sent.</t>
          <t>o  The sending-mode "MDN-sent-manually" is meaningful ONLY with
      "manual-action", not with "automatic-action".</t>
          <t>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.</t>
        </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 Internet EDI use, 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
                                              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="RFC3851"/>
   and <xref target="RFC3852"/>.</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>
        <ul spacing="normal">
          <li>
            <t><strong>TLS Certificates</strong> 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 <strong>Subject Alternative
Name (SAN)</strong> extension containing the DNS name and/or IP address. The
SAN extension MUST be marked as non-critical.</t>
          </li>
          <li>
            <t><strong>AS2 Certificates</strong> 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.</t>
          </li>
        </ul>
        <t>AS2 certificates MUST use a key length of at least <strong>2048 bits for RSA
   keys</strong>.  For elliptic-curve certificates, the selected curve MUST provide
   equivalent or stronger security (e.g., P-256 or higher).</t>
        <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>
        <ul spacing="normal">
          <li>
            <t>TLS and AS2 certificates MUST be managed separately and MUST NOT be
the same certificate.</t>
          </li>
          <li>
            <t>CEM SHOULD be supported to reduce manual errors and configuration drift.</t>
          </li>
          <li>
            <t>Self-signed certificates SHOULD include SAN extensions for clarity and
validation consistency.</t>
          </li>
          <li>
            <t>Implementations SHOULD support configurable expiration and notification
mechanisms for certificate renewal.</t>
          </li>
          <li>
            <t>Administrators MUST NOT reuse TLS certificates as AS2 certificates to
maintain separation of security domains.</t>
          </li>
        </ul>
        <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.2 or higher and <strong>SHOULD</strong> support TLS 1.3.
   TLS 1.3 is strongly encouraged as the default where platform support allows, but TLS 1.2
   remains the mandatory baseline to ensure interoperability with older environments (e.g., legacy JVMs).
   Products SHOULD allow administrators to configure which TLS versions are enabled, so that TLS 1.3 can be
   mandated by policy where required. Future revisions of this specification are expected to mandate TLS 1.3
   as the minimum required version once deployment is widespread.</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>SHOULD</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>
        <t><strong>Future Considerations</strong>
   Per BCP 195/RFC 7525bis, new IETF protocols and major revisions are expected to mandate TLS 1.3.
   AS2-bis is a backward-compatible revision, and therefore specifies MUST support of TLS 1.2 and SHOULD
   support of TLS 1.3 to preserve interoperability with existing implementations. At the same time, implementers
   are strongly encouraged to deploy TLS 1.3 as the default for all new products and configurations.
   Future versions of AS2 (for example, a potential AS2-Version 1.3 or subsequent update) are expected to raise
   the baseline to MUST support TLS 1.3 or higher, and may deprecate TLS 1.2 once widespread deployment
   makes this feasible. Implementers are encouraged to prepare for a future revision of this specification
   that will mandate TLS 1.3 as the minimum required version.</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>
      <t>o MDN Disposition Modifier Names
     https://www.iana.org/assignments/mdn/mdn.xhtml#disposition-modifier</t>
      <t>o Message Disposition Notification Parameters
     https://www.iana.org/assignments/mdn/mdn.xhtml#parameters</t>
      <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>
          <sourcecode type="text"><![CDATA[
   Parameter-name:  warning
   Semantics: See (#as2-mdn-fields) and
   (#processing-warnings) in this document.
]]></sourcecode>
        </section>
      </section>
    </section>
    <section anchor="acknowledgments">
      <name>Acknowledgments</name>
      <t>Carl Hage, Karen Rosenfeld, Chuck Fenton, and many others
   provided valuable suggestions during 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="RFC3851">
          <front>
            <title>Secure/Multipurpose Internet Mail Extensions (S/MIME) Version 3.1 Message Specification</title>
            <author fullname="B. Ramsdell" initials="B." role="editor" surname="Ramsdell"/>
            <date month="July" year="2004"/>
            <abstract>
              <t>This document defines Secure/Multipurpose Internet Mail Extensions (S/MIME) version 3.1. 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 2633. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="3851"/>
          <seriesInfo name="DOI" value="10.17487/RFC3851"/>
        </reference>
        <reference anchor="RFC3852">
          <front>
            <title>Cryptographic Message Syntax (CMS)</title>
            <author fullname="R. Housley" initials="R." surname="Housley"/>
            <date month="July" year="2004"/>
            <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="RFC" value="3852"/>
          <seriesInfo name="DOI" value="10.17487/RFC3852"/>
        </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="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>
      </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="RFC3560">
          <front>
            <title>Use of the RSAES-OAEP Key Transport Algorithm in Cryptographic Message Syntax (CMS)</title>
            <author fullname="R. Housley" initials="R." surname="Housley"/>
            <date month="July" year="2003"/>
            <abstract>
              <t>This document describes the conventions for using the RSAES-OAEP key transport algorithm with the Cryptographic Message Syntax (CMS). The CMS specifies the enveloped-data content type, which consists of an encrypted content and encrypted content-encryption keys for one or more recipients. The RSAES-OAEP key transport algorithm can be used to encrypt content-encryption keys for intended recipients. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="3560"/>
          <seriesInfo name="DOI" value="10.17487/RFC3560"/>
        </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 2556?>

<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
   Connection: close
   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
   Connection: close, TE
   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>
        </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.0</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>
            </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 usgae 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-january-2025">
        <name>Formatting and Editorial Updates (Technical Review - January 2025)</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 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 3560 and 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>
        </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:
H4sIAAAAAAAAA9S9bXMbV5Ym+B2/IheOWZNcABJJyZapckXTlFTmlCSrRard
PdWKcBJIktkCkajMBCmW2x31H3a/TMTM1/lh9Uv2vN9zbyYg0lb1zjKqLBLI
vK/nnntenzMejwdt2c6Lg2x4eLKXnSyLaXleTvO2rBbZq2pW1IvyL/TXcACf
FhdVfXuQlYvzajCYVdNFfgWvzur8vB0vi7bNx/X59NHu/sOzshk/fDRoVmdX
ZdPA6+3tEp48fn76Isu+yPJ5U0GX5WJWLAv4z6IdjrJhMSvbqi7zOf5xfPgd
/FPV8Nvb0xfDwWJ1dVbUB4MZjOJgMK0WTbFoVs1B1tarYnB9kO0PoN26yA+y
w7fPD+GPm6r+cFFXq+VB9uMfsh/hr3Jxkf0BPxl8KG7h69nBIBtnMHH85/mz
4+PXp/jbd3vfDa6LxQr6+SLLrAn8g6cRtwUfX+XlHB/5h+JjfrWcF5NpdYWf
5/X08iC7bNtlc/DggfvyATQHTZft5eoMFuJZvbq6qhYzavBB/3oO4YU5TL5p
4QVtMnpxwu1NympNE2s+nly2V/PhYJCv2ssKlngMPWXZ+Wo+5/19VpzVefYG
36JvqvoiV7KAb2UIvBqj7OXLI3qq4EUZ4p6PD6dteV22t/8wk6dpVXEloN9F
VV9BY9ew3ln29sURDusg+/kX/mvv4aPH0V9fRX99E/7a/fqrr913X+26J/f3
910r+19/8yT89eSh/2v3ySPXyv6Tx7vRX3vur0df+b8e7u37ke19Fb3nZ7S3
/8j9tbvr5vBk92v33f5e/NcT18qTx35kj/f33Fi+erjr5vD4a3lygAc3Xuu9
Pb+ej77ZdSux//irh1ErOr/j8bMJk9Js9aGox3mzN66LeZmflXPY5LEtfHjw
Mq9ncGTk0abN63b8cK/z2FWRz6q6GU+LumVGVIyLj9PLfHFRjHd5LQbj8TjL
z5q2zqftYHB6WTYZ8KLVFbCRbFlX1+WsaLJ8keXL5Rya4EFl0Gdb0DNbMJsM
N2iUnRRTYnX7k73tAbw2rcszPNmX1U3WVllTTFcwsdtMxwCt1KtpCx/OsrNV
Uy6KBjrP2zyrros6+/709M1kcLLumav8Njsrsn9+9fJp9nwOXdfVopxmz/C7
40Vb1NLJFvCibdisrIADDc3Cf7LDq6KGySyy13Tu8nl20uaLGSxrkx1VV1dl
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
SwdQURP8AO/vtIKvl7Og3WxvB61Or7PV224Gr47eS5aWs4Y9KcYQYLNesG6U
Jqrpdfn5+6QXNFtmPNs7u92m+YO6liLOveA9+JSDUeqDOkx6wZftZrPd3O20
mt3O1la33d9tvni50/nq7+u//z5Nkt9///v6cxz1arHrBVcLM4KvWGIbYwIk
X3nHt8QQ12Pvts6ubV32zTPBiqhxMstsqctxulu3Lvx+/tYrCDmduxvTixGU
QuIZwCczoHP1CihE++YQX0LL8N0zmNIXyfId/KNl/r7uYe3RyNYVhMdmblDr
+wEPo+Ttb7Hbrhe0t3a2UHvV67nXFceq32Wcrfpty7vIx+LKstH4AjbVvqWm
eLaYjlu7O7uNyUgAvP7xZtgPGo1GDvkbbXvz4zeHffPf3/7IAHOTIe+TQMuZ
Md2MZ4RXaVg1894Vr6vX+WD/DO0ULGSV0J3RMI1WLegjaKjesbJHEcDq22/8
PVPYHbJtipspv/EcDIrZMbvNvd1ms9vebrSa7W6r3d7a3trZbTW+Hl2Pjow6
/8os1o+UWXv+GAn0pebJUmevd5Jszs76s4/GCMs+bu9+3Nnqbm21mlt7/njX
eWwxOUe9YDBLSD/khba1Z3QbLdKjnozXfr7yu6mOc58uCqSuE03nZ6ssZnd1
+VfufGzt7Lbbe53tvbYezPYOfubn+B9/+KtvwYv90YOAbc6hWsr/JewhY1bX
D2Oq9uoFu2dElkGvFNGt0/hFglGOHql5zVeX6Xzz41KV/3lgQ4IBrCocLvXm
bt2cNcYMa+7BKdPaCiqHB++rdD1hwPUU8CIvH3i4cHZcULEQNmI7yEiXMJLY
0wU1V30eCIk95d09gHozF58ji22aQQgmz4zN96NumkGt1f/J6j3kjz1tTU+k
Drn+oU+HvDvcP/+W3dT6ieBq9QKjh7vt9n7JWr18/KX2wZ4ueqwMlUWJe8FW
Z7KXvfqpc/5u+Gr50vgWW8f9V9fL8Rdb3e/Pf9j5MDz/8e3B8fvb9MWHZ7VA
HWuf/1lozyevqjkOnqKBnnJW7aPh+iy9gvq8+W7q3VwUBqjFMof4k05i92w8
Td70Xw2Gv74avjnrHHx3+Lr/66Bvfjbof3d4O/jU//rF+YfFwfnR4NX5h75/
Ldri8/bWxdHX785uD755Hc9e7P3yPvru09ub4U3yxeZe83jc3b39YjjeOZy/
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
AgA=

-->

</rfc>
