Individual Submission S. Das Internet-Draft Independent Inventor Intended status: Informational 9 September 2026 Expires: 13 March 2027 Data-Purpose Laundering Prevention: Execution-Finality for Preventing Cross-Domain Data Reuse draft-das-purpose-execution-finality-00 Abstract Systems that collect data for one stated purpose routinely permit that data, or values derived from it, to be consumed by a second system for a different purpose -- not because the second use was authorized, but because nothing in the protocol path was capable of refusing it. The most common technical control in deployment today is a self-asserted purpose string: a "purpose" claim in a token, a field in an API request, a comment in a data-sharing agreement. A self-asserted string is evidence of intent, not proof of authority, and it fails precisely when it matters most -- when the requester lies. This document specifies an execution-finality architecture in which a Candidate Act to read, transmit, or derive from a protected data object does not become effective merely because a caller labels its request with an allowed purpose. Effect is withheld until a Protected Enforcement Domain verifies caller identity, requested operation, and destination against binding records -- not against caller-supplied metadata -- and issues a scoped, non-bearer Execution Handle before any release occurs. The document works through a single running example (a delivery address later targeted by an unrelated advertising system) to make the failure mode and the enforcement boundary concrete, and states plainly which part of the problem this architecture does not solve. It is offered as an architectural pattern for discussion, not as a proposal for a new wire protocol. Cross-referencing data across systems, including in advertising, is a legitimate and economically necessary function, and this document does not argue for eliminating it; doing so would stall innovation and materially harm the businesses that depend on it. What this architecture offers such systems is a way to make an authorized combination of data technically verifiable at the moment it happens, rather than leaving that boundary to rest on a data-sharing agreement nobody downstream actually checks -- making lawful cross-referencing demonstrable, not making cross-referencing itself the target. Das Expires 13 March 2027 [Page 1] Internet-Draft Data-Purpose Laundering Prevention September 2026 A further motivation is stated directly here because it shapes several design choices in this document: the same technical capacity that lets an advertising system profitably combine location and behavioral signals across sources is, absent a verifiable purpose boundary, also capable of exposing patterns -- such as the movement of military personnel or the operating rhythm of critical infrastructure -- to a party in a jurisdiction other than the one the data was collected in. Aggregated commercial location and behavioral data has, in publicly reported incidents, already been shown capable of revealing exactly this kind of sensitive pattern. This document does not ask commercial systems to stop combining data for legitimate purposes; it asks that a combination authorized for commercial targeting be technically distinguishable, at the moment of use, from a combination that has crossed into cross-jurisdictional intelligence-gathering territory the data was never authorized for. Status of This Memo This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet- Drafts is at https://datatracker.ietf.org/drafts/current/. Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress." This Internet-Draft will expire on 13 March 2027. Copyright Notice Copyright (c) 2026 IETF Trust and the persons identified as the document authors. All rights reserved. This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (https://trustee.ietf.org/ license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Das Expires 13 March 2027 [Page 2] Internet-Draft Data-Purpose Laundering Prevention September 2026 Table of Contents 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 4 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 5 3. Problem Statement . . . . . . . . . . . . . . . . . . . . . . 6 3.1. Self-Asserted Purpose Is Not Verifiable Purpose . . . . . 6 3.2. Attestation Answers a Different Question Than Authorization . . . . . . . . . . . . . . . . . . . . . . 6 3.3. Derived Data Carries the Restriction, Not Just the Value . . . . . . . . . . . . . . . . . . . . . . . . . . 7 3.4. The Residual Limit: Plaintext Already Released . . . . . 7 4. Architecture Overview . . . . . . . . . . . . . . . . . . . . 7 5. Worked Example . . . . . . . . . . . . . . . . . . . . . . . 8 5.1. Collection: Binding the Data Object to a Permitted Use . 8 5.2. A Legitimate Request . . . . . . . . . . . . . . . . . . 8 5.3. An Unauthorized Request . . . . . . . . . . . . . . . . . 9 5.4. A Relabeled Request . . . . . . . . . . . . . . . . . . . 10 5.5. A Request From Inside an Attested Enclave . . . . . . . . 10 5.6. A Request for a Derived Value . . . . . . . . . . . . . . 10 5.7. What This Architecture Does Not Close . . . . . . . . . . 11 6. Threat Model . . . . . . . . . . . . . . . . . . . . . . . . 11 7. Relation to Existing Work . . . . . . . . . . . . . . . . . . 12 8. Relevance to IETF Working Groups . . . . . . . . . . . . . . 12 8.1. GNAP . . . . . . . . . . . . . . . . . . . . . . . . . . 13 8.2. OAUTH . . . . . . . . . . . . . . . . . . . . . . . . . . 13 8.3. RATS . . . . . . . . . . . . . . . . . . . . . . . . . . 13 8.4. SPICE . . . . . . . . . . . . . . . . . . . . . . . . . . 13 8.5. SECDISPATCH . . . . . . . . . . . . . . . . . . . . . . . 14 8.6. PEARG (IRTF) . . . . . . . . . . . . . . . . . . . . . . 14 9. Security Considerations . . . . . . . . . . . . . . . . . . . 14 10. Privacy Considerations . . . . . . . . . . . . . . . . . . . 14 11. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 15 12. Intellectual Property and Licensing . . . . . . . . . . . . . 15 13. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 15 14. Resources . . . . . . . . . . . . . . . . . . . . . . . . . . 15 15. Latency Characteristics (Non-Normative) . . . . . . . . . . . 16 16. Feasibility and Legacy System Integration . . . . . . . . . . 18 17. Normative References . . . . . . . . . . . . . . . . . . . . 21 18. Informative References . . . . . . . . . . . . . . . . . . . 21 Author's Address . . . . . . . . . . . . . . . . . . . . . . . . 23 Das Expires 13 March 2027 [Page 3] Internet-Draft Data-Purpose Laundering Prevention September 2026 1. Introduction Purpose limitation is a stated requirement across data protection law, sectoral regulation, and internal governance policy: data collected for one purpose should not be repurposed for another without new authority. It is, at the protocol level, almost never enforced. What is typically enforced is that a request carries a "purpose" value the requester chose to write down. This gap is not a corner case. It is the default shape of most data- sharing architectures in production today: an access-control check confirms that a caller is _permitted to call the API_, and a separate, unenforced convention -- a contract clause, a privacy notice, a code comment -- says what the caller is supposed to do with the response. Nothing in the request path distinguishes a truthful purpose claim from a false one, because the claim was never checked against anything the requester does not control. This document uses a single concrete scenario to walk through what changes when purpose is treated as something to be verified rather than declared. A delivery application collects a home address in order to fulfil an order. An unrelated advertising system later attempts to use that same address to infer household income for ad targeting. Every variation of that attempt -- a direct request, a relabeled request, a request issued from inside an attested secure enclave, a request for a value merely _derived_ from the address -- is traced through an enforcement boundary that answers one question before doing anything else: is this caller, this operation, and this destination actually authorized, based on records the caller cannot write to? The architecture generalizes past the delivery/advertising example to any setting where data crosses an organizational, workload, or trust boundary and the receiving side has an incentive to reuse it for something other than what it was released for: cross-tenant AI agent tool use, cross-border data transfer under jurisdictional restriction, and inter-service data sharing inside a single company under an internal purpose limitation policy are all instances of the same problem. This document keeps the running example narrow so the mechanism stays concrete; companion drafts in the same series ([DAS-EU-AI-ACT], [DAS-GLOBAL-PRIVACY], [DAS-PRECISION-EGRESS]) apply the same underlying architecture to EU AI Act high-risk system enforcement, general-purpose privacy-execution enforcement, and precision-bounded data egress respectively. [FUTURIUM-PURPOSE-LAUNDERING] develops the GDPR purpose-limitation and high-risk AI governance framing of this same delivery/advertising pattern in regulatory detail, and [FUTURIUM-PAPER-COMPLIANCE] situates that framing within the broader argument for moving from Das Expires 13 March 2027 [Page 4] Internet-Draft Data-Purpose Laundering Prevention September 2026 paper compliance to technical enforcement under GDPR and the EU AI Act; this document is the protocol-mechanics counterpart to that discussion. See Section 14 for a Resources pointer to the drafts and the runnable reference implementation that develop these mechanics further. The architecture does not claim to solve purpose limitation in general. Section 5.7 and Section 6 state directly what remains unsolved once data has been legitimately released as plaintext to an authorized recipient. 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 [RFC2119] [RFC8174] when, and only when, they appear in all capitals, as shown here. 2. Terminology Candidate Act: A request to read, transmit, transform, or derive from a protected data object. A Candidate Act has no effect on its own; it is a proposal for an effect. Non-Effective State: The state of a Candidate Act prior to validation. No data release, decryption, or downstream write occurs while a Candidate Act remains in this state. Protected Enforcement Domain (PED): The component that evaluates a Candidate Act against binding records -- caller identity, order/ workflow state, recipient assignment, and policy version -- and decides whether to advance it out of the Non-Effective State. The PED does not accept caller-supplied metadata (such as a "purpose" field) as evidence on its own. Execution Handle: A short-lived, non-bearer, scoped authorization issued by the PED after a Candidate Act passes validation. An Execution Handle is bound to a specific data object, operation, requester identity, and recipient; it is not a general-purpose credential and is not intended to be transferable. Finality Sink: The boundary at which a protected data object, or a value derived from it, is actually released, decrypted, or written to a destination store. The Finality Sink accepts only a valid, unexpired, unrevoked Execution Handle. Ledger-Anchored Validation Receipt (LAVR): An enforcement artifact Das Expires 13 March 2027 [Page 5] Internet-Draft Data-Purpose Laundering Prevention September 2026 -- not an audit log -- generated by the PED at the point a Candidate Act is validated or rejected. A LAVR records the check performed, its result, and a hash-chained, domain-signed anchor, and is generated regardless of outcome. Algorithmic Logic Fingerprint (ALF): A binding of the specific operation or computation a Candidate Act requests (e.g., "obtain delivery destination" versus "infer household income") to the set of operations the governing policy actually permits on that data object. Capability-Validated Inbound Descriptor (CVID): The structured description of an inbound Candidate Act -- caller, requested operation, target object, destination -- that the PED evaluates against binding records before issuing an Execution Handle. Purpose Laundering: The practice, intentional or not, of obtaining data or a value derived from it under one declared purpose and consuming it under a different, unauthorized purpose, where the receiving system's own request format permits the original purpose label to travel with the data without being re-verified at the point of reuse. 3. Problem Statement 3.1. Self-Asserted Purpose Is Not Verifiable Purpose Most deployed systems that reference "purpose" at all do so as a string carried in a token claim (e.g., a JWT claim, see [RFC7519]), an API parameter, or a log field. That string is written by the same party requesting access. A verification step that only checks whether the field is present, well-formed, or drawn from an enumerated list does not verify that the caller's actual operation matches the label -- it verifies that the caller knows which label to write. 3.2. Attestation Answers a Different Question Than Authorization Remote attestation (see [RFC9334]) establishes that a piece of code is running in an expected state on expected hardware. It does not establish that the workload attested is authorized to perform a specific operation on a specific data object. A correctly attested enclave running an unauthorized computation is still an unauthorized computation; attestation and purpose authorization are orthogonal checks, and treating a passed attestation as implicit authorization silently collapses that distinction. Das Expires 13 March 2027 [Page 6] Internet-Draft Data-Purpose Laundering Prevention September 2026 3.3. Derived Data Carries the Restriction, Not Just the Value A value computed from restricted data (e.g., an income estimate computed from a home address) is not automatically free of the restriction that governed the source, even where the derived value contains none of the original data verbatim. Without deliberate propagation of source lineage to the derived object, a downstream consumer of the derived value bypasses every control placed on the source. 3.4. The Residual Limit: Plaintext Already Released Once a protected value is legitimately released as plaintext to an authorized recipient, this architecture -- or any architecture operating at the request/response boundary -- cannot guarantee that the recipient will not copy, screenshot, or re-transmit that value outside the enforced path. Section 5.7 and Section 6 return to this point; it is stated here because any reader evaluating this document for what it does NOT do should not have to search for the admission. 4. Architecture Overview The architecture separates two things that are frequently conflated in deployed systems: the authority to request an operation, and the capability to actually perform it. A Candidate Act carries no capability. It is evaluated by a Protected Enforcement Domain against records the requester did not write (order state, recipient assignment, policy version, workload identity). Only on a pass does the PED issue a scoped Execution Handle, and only a Finality Sink presented with a valid Execution Handle releases, decrypts, or writes the underlying value. Every evaluation, pass or fail, produces a LAVR. Requester --Candidate Act--> [Protected Enforcement Domain] | binding-record checks (Section 5.2) | pass? --------> Execution Handle | | fail --> LAVR Finality Sink | | LAVR release Das Expires 13 March 2027 [Page 7] Internet-Draft Data-Purpose Laundering Prevention September 2026 This differs from a conventional access-control gate in one load- bearing respect: the PED's checks are defined over records external to the request (what the request _is about_), not over fields internal to the request (what the request _says about itself_). A caller cannot pass validation by changing what it writes in its own request. 5. Worked Example 5.1. Collection: Binding the Data Object to a Permitted Use A customer provides a delivery address for a specific order. The address is stored as a protected data object. A separate, integrity- protected policy record binds that object to a single permitted workflow, operation, and recipient class, with an explicit disallowed-operation entry and an expiry: Data object: address-619 Allowed workflow: delivery-order-842 Allowed operation: obtain delivery destination Allowed recipient: assigned courier service Disallowed operation: advertising-profile enrichment Expiry: configured delivery-access deadline Policy version: 38 The party that will later compute an advertising profile is never given the address's decryption key or database credentials. If it were, every check described below would be enforcement theater -- bypassable at will by the party the checks are meant to constrain. 5.2. A Legitimate Request The delivery service submits a Candidate Act: Read address-619, for order-842, send to assigned-courier-6, operation: obtain delivery destination The PED checks this against binding records, not against the request's own claims: Das Expires 13 March 2027 [Page 8] Internet-Draft Data-Purpose Laundering Prevention September 2026 +======================================+=======================+ | Check | Evidence checked | +======================================+=======================+ | Is this really the delivery service? | Authenticated | | | workload identity | +--------------------------------------+-----------------------+ | Does this order exist? | Order-management | | | record | +--------------------------------------+-----------------------+ | Does this address belong to the | Protected order-to- | | order? | address association | +--------------------------------------+-----------------------+ | Is this courier assigned? | Current courier- | | | assignment record | +--------------------------------------+-----------------------+ | Is the requested operation | Versioned policy (ALF | | permitted? | match) | +--------------------------------------+-----------------------+ | Is access still valid? | Order status, expiry, | | | revocation state | +--------------------------------------+-----------------------+ Table 1: PED validation checks for the delivery Candidate Act A pass issues a short-lived Execution Handle scoped to this exact address, order, operation, and recipient; the Finality Sink releases the minimum necessary delivery data on presentation of that handle. Any check that cannot be completed -- a stale record, an ambiguous assignment, an expired policy version -- MUST be treated as a failed check. The PED fails closed by default; it does not proceed on missing or ambiguous evidence. 5.3. An Unauthorized Request An advertising workload submits: Read address-619, operation: infer household income, destination: advertising-profile-database Every check in Section 5.2 fails: the caller is not the delivery service, the operation is not the permitted operation, and the destination is not the permitted recipient. No Execution Handle is issued, no address is released, and no decryption authority is granted. The rejection occurs before the income computation begins -- blocking only the resulting advertisement, after the profiling computation has already run on the address, would not have prevented the unauthorized use; it would only have hidden its output. Das Expires 13 March 2027 [Page 9] Internet-Draft Data-Purpose Laundering Prevention September 2026 5.4. A Relabeled Request The advertising workload resubmits with a relabeled purpose field: Purpose: delivery, order: order-842 This does not change the outcome. The PED's checks are defined over the caller's authenticated identity, its destination, and its actual delivery-workflow authority -- none of which change because the request's purpose field changed. A caller that presents even a validly issued delivery Execution Handle from the wrong workload identity or toward the wrong destination MUST fail validation, provided identity and destination binding are actually enforced at the Finality Sink and not only at issuance time. Purpose, in this architecture, is a conclusion the PED reaches from verifiable relationships -- not an input the caller supplies. 5.5. A Request From Inside an Attested Enclave Suppose the income-inference computation runs inside a hardware Trusted Execution Environment (TEE) that successfully attests its own integrity. A successful attestation establishes that the enclave is running the code it claims to run; it does not establish that the code is authorized to decrypt address-619 for this purpose. The PED still evaluates workload identity and requested operation against the same binding records, and an enclave running an income-profiling workload receives no authority to decrypt a delivery address it was never granted. A caveat: if a broadly authorized enclave already holds unrestricted plaintext access to the address for an unrelated legitimate reason, an output-only Finality Sink cannot retroactively undo profiling computation that already occurred inside it. Access and computation boundaries require enforcement at the point capability is granted, not only at the point output is written. 5.6. A Request for a Derived Value The advertising system instead attempts to write a value computed from, but not textually identical to, the address: customer-17 -> estimated high-income household The value contains no street address. A Finality Sink that checks only for the literal restricted value would pass it. A Finality Sink that checks propagated source lineage does not: Das Expires 13 March 2027 [Page 10] Internet-Draft Data-Purpose Laundering Prevention September 2026 Derived object: income-estimate-52 Restricted source: address-619 Requested use: advertising The profile-write boundary rejects the write on the lineage binding, not on pattern-matching the output. This requires deliberate, non- removable tracking of derived-data provenance; a label attached to the output that the producing workload can choose to omit provides no enforcement at all. 5.7. What This Architecture Does Not Close If an authorized courier receives the plaintext address and copies it into an unrelated application, the protected data service cannot guarantee the copy is never reused. Containment beyond this point requires controlled recipient software, restricted export paths, minimal disclosure, and downstream enforcement at the recipient's own boundary -- outside what a source-side PED can observe. Human observation, screenshots, and compromised endpoints remain outside this architecture's reach. The claim this document makes is therefore bounded: within an enforced system boundary, data can be made unavailable to unauthorized workloads, and unauthorized derived- value writes can be blocked. Preventing every possible reuse after legitimate plaintext disclosure is a different, and materially harder, problem that this document does not claim to solve. 6. Threat Model In scope: * A requester relabels or forges the purpose field of a request to obtain access to data it is not authorized to use for that purpose (Section 5.4). * A requester assumes that running inside an attested TEE substitutes for a purpose-authorization check (Section 5.5). * A requester attempts to obtain a value derived from restricted data as a way of evading a restriction on the source value (Section 5.6). * A requester replays a validly issued Execution Handle from a different workload identity or toward a different destination than the one it was scoped to. Out of scope / residual risk: Das Expires 13 March 2027 [Page 11] Internet-Draft Data-Purpose Laundering Prevention September 2026 * Reuse of data after legitimate plaintext release to an authorized recipient (Section 5.7). * Compromise of the Protected Enforcement Domain itself, or of the binding records it evaluates against; this architecture assumes the PED and its record store are not themselves attacker- controlled. * Side-channel or covert-channel exfiltration from within an authorized, attested computation. 7. Relation to Existing Work The pattern of checking a request's declared purpose against a policy before granting access is not new in the access-control literature; purpose-based access control (PBAC) models and attribute-based access control frameworks such as XACML define policy evaluation over request attributes including purpose. This document's distinguishing element is that the evaluated attributes are drawn from binding records external to the request (order state, recipient assignment, workload identity), the resulting grant is a short-lived, non-bearer, single-scope Execution Handle rather than a general session grant, and derived-value writes are checked against propagated source lineage rather than against the presence or absence of a purpose label on the output. Decentralized information flow control (DIFC) systems address the derived-data problem in Section 5.6 by propagating labels through computation at the operating-system or language-runtime level. This document does not specify a label-propagation mechanism; it specifies that a Finality Sink MUST reject a derived-value write that cannot demonstrate valid source lineage, leaving the propagation mechanism to the implementing system. [RFC8707] (Resource Indicators for OAuth 2.0) and audience restriction in OAuth 2.0 bearer tokens address a related but narrower problem: binding a token to an intended resource server. This document's Execution Handle extends that idea to bind a grant to a specific operation and destination, evaluated per Candidate Act rather than issued once per session. 8. Relevance to IETF Working Groups Das Expires 13 March 2027 [Page 12] Internet-Draft Data-Purpose Laundering Prevention September 2026 8.1. GNAP GNAP [RFC9635] already separates the negotiation of a grant from its use, and supports fine-grained, per-request access rather than a single broad session token. The Execution Handle described here is compatible with a GNAP access token scoped to a single resource/ operation pair; this document's contribution to GNAP-adjacent work is the requirement that the Authorization Server's grant decision be made against externally-verified binding records rather than against client-supplied purpose or context claims, and that a derived- resource request be evaluated against source lineage rather than treated as a fresh, unrelated grant. 8.2. OAUTH OAuth 2.0 [RFC6749] deployments that rely on a "purpose" or "scope" string supplied by the client are exposed to exactly the relabeling attack in Section 5.4. [RFC8707]'s audience restriction is a partial mitigation already in the OAuth toolkit; this document suggests that audience restriction alone is insufficient where the threat model includes a legitimately audience-scoped token presented for an operation outside its intended purpose, and that purpose SHOULD be a property the authorization server derives from verifiable request context rather than a bearer-supplied claim. 8.3. RATS Section 5.5 is directly a RATS-relevant finding: this document treats a RATS [RFC9334] Attestation Result as answering "is this code running as expected" and treats purpose/operation authorization as a separate, subsequent check that a Relying Party MUST perform independently. Where RATS-based systems are used to gate access to sensitive data, this document's caution against conflating attestation with authorization is offered as an applicability consideration. 8.4. SPICE SPICE's work on credential formats and selective disclosure is relevant to Section 5.1's binding of a data object to a specific permitted workflow: a credential-based encoding of the "allowed workflow / allowed operation / allowed recipient" policy record would let the binding travel with the data object in a verifiable form rather than living only in a centralized policy store, which may be of interest to SPICE's scope on interoperable credential structures. Das Expires 13 March 2027 [Page 13] Internet-Draft Data-Purpose Laundering Prevention September 2026 8.5. SECDISPATCH This document is submitted as an individual architectural pattern rather than a protocol specification, and the author does not assert a specific IETF venue for standardization. SECDISPATCH is the appropriate venue to determine whether, and where, a purpose-binding and derived-data-lineage mechanism of this kind warrants protocol- level standardization versus remaining an architectural pattern referenced by implementers of GNAP, OAuth, and RATS-based systems. 8.6. PEARG (IRTF) The Privacy Enhancements and Assessment Research Group is an IRTF research group rather than an IETF working group, and is noted here because Section 3.3 and Section 5.6 (derived-data lineage) and Section 5.7 (the residual plaintext-reuse limit) are research questions as much as engineering ones; PEARG's work on privacy threat modeling and assessment methodology is relevant to evaluating how completely a lineage-propagation mechanism actually closes the derived-data gap in practice. 9. Security Considerations The security of this architecture reduces to the integrity of the Protected Enforcement Domain and the binding records it evaluates against. An attacker who can write to the order-management record, the courier-assignment record, or the policy-version store used in Section 5.2 can forge a passing evaluation without needing to compromise the PED's logic itself; those records MUST be integrity- protected to a standard at least as strong as the PED's own decision logic. Execution Handles MUST be short-lived, single-scope, and non- bearer (i.e., bound to and unusable outside the requester identity and destination they were issued for) to limit the value of a captured handle. LAVR generation on both pass and fail outcomes is REQUIRED so that a rejected Candidate Act is not silently dropped in a way that hides a probing attack pattern. 10. Privacy Considerations This architecture is itself a privacy control, but it introduces its own data: the PED's binding records, and the LAVR trail, together describe who requested what data for what purpose and when. That record is sensitive in its own right and access to it SHOULD be governed by the same purpose-binding discipline described in this document, to avoid recreating the original problem one layer up. Implementations SHOULD apply data minimization to LAVR contents -- recording that a check passed or failed and against which policy version, rather than the full content of the Candidate Act, where the Das Expires 13 March 2027 [Page 14] Internet-Draft Data-Purpose Laundering Prevention September 2026 Candidate Act's content is itself sensitive. 11. IANA Considerations This document has no IANA actions. 12. Intellectual Property and Licensing This document describes an architectural pattern that is part of a broader execution-finality patent portfolio pursued by the author. This document, and the accompanying reference material referenced in Section 18, are made available under CC BY-NC 4.0 by default. Patent rights in the underlying architecture are reserved and are not licensed by publication of this document. If any element described in this document is incorporated into an IETF Standards Track specification, the author intends to offer licensing on Fair, Reasonable, and Non-Discriminatory (FRAND) terms consistent with the IETF's IPR disclosure obligations under [BCP79]. 13. Acknowledgments None yet. 14. Resources [DAS-EU-AI-ACT] and [DAS-GLOBAL-PRIVACY] develop the execution- enforcement model summarized in this document in greater technical detail, including Candidate Acts, protected validation, scoped non- bearer authority, Finality Sink enforcement, and privacy and jurisdictional controls, together with deployment considerations not repeated here. Readers interested in the protocol mechanics are encouraged to review those drafts alongside [DAS-PRIVACY-FINALITY-IMPL], a runnable reference implementation of the privacy/purpose-enforcement path described in Section 5. [DAS-PRIVACY-FINALITY-IMPL]'s built-in demo enforces GDPR Article 5(1)(b) purpose limitation and AI Act-style technical enforcement obligations as one concrete instance of the general mechanism specified in this document. The demo models a customer support request scoped to CUSTOMER_SUPPORT (delivery_status, expected_delivery_date) and denies a resubmission of the same request under TARGETED_MARKETING before any Finality Sink effect is recorded -- the same Candidate Act / Protected Enforcement Domain / Finality Sink pattern this document describes, in regulation-agnostic form, as the delivery-address / advertising-profiling example in Section 5. The mapping between the two is direct: Das Expires 13 March 2027 [Page 15] Internet-Draft Data-Purpose Laundering Prevention September 2026 +====================================+=============================+ | Reference implementation | This document | +====================================+=============================+ | Candidate Act (canonical JSON, | Candidate Act (Section 2) | | SHA-256 digest) | | +------------------------------------+-----------------------------+ | Protected Enforcement Domain (PED) | Protected Enforcement | | | Domain (Section 2) | +------------------------------------+-----------------------------+ | Signed act-bound Validation Permit | Execution Handle, non- | | + workload proof-of-possession | bearer, scoped (Section 2) | +------------------------------------+-----------------------------+ | Finality Sink (independent re- | Finality Sink (Section 2) | | verification) | | +------------------------------------+-----------------------------+ | Denied TARGETED_MARKETING | Section 5.4, relabeled / | | substitution | purpose-substituted request | +------------------------------------+-----------------------------+ Table 2: Mapping between the reference implementation and this document GDPR and the EU AI Act are the regulatory framing the reference implementation was built to demonstrate; the enforcement mechanism itself, as specified in this document, is regulation-agnostic and does not depend on any one jurisdiction's law. [DAS-PRIVACY-FINALITY-IMPL] explicitly disclaims that it decides whether a purpose is legally legitimate, whether consent is valid, or whether a controller satisfies any specific data-protection statute; it enforces machine-readable rules supplied to it, which is the same scope this document claims for the architecture in Section 4. 15. Latency Characteristics (Non-Normative) This section reports measured, not projected, latency for the [DAS-PRIVACY-FINALITY-IMPL] reference implementation's three sequential stages -- PED validation (Section 5.2's checks), permit issuance plus workload proof-of-possession (the Execution Handle of Section 2), and Finality Sink verify-and-commit (the atomic effect record of Section 4) -- each timed within a single request iteration so the three figures compose into one end-to-end path, at 500 iterations, on the SME support-agent demo Candidate Act. Two runs are reported: the implementation's own published figures, and an independent re-run performed for this document on different hardware, as a sanity check rather than a replacement measurement. Das Expires 13 March 2027 [Page 16] Internet-Draft Data-Purpose Laundering Prevention September 2026 +=================+==========================+====================+ | Stage | Published median/p95/p99 | Independent re-run | | | | median/p95/p99 | +=================+==========================+====================+ | PED validation | 21.5 / 33.1 / 118.9 | 31.2 / 52.4 / 65.9 | +-----------------+--------------------------+--------------------+ | Permit + PoP | 95.1 / 145.1 / 338.1 | 120.1 / 154.0 / | | | | 190.5 | +-----------------+--------------------------+--------------------+ | Sink verify + | 271.4 / 371.9 / 499.7 | 335.4 / 385.9 / | | commit | | 459.9 | +-----------------+--------------------------+--------------------+ | End-to-end (sum | ~388.0 | ~486.7 | | of medians) | | | +-----------------+--------------------------+--------------------+ Table 3: PED / permit / sink latency, published vs. independent re-run (microseconds) Two observations follow directly from the data. First, the Finality Sink's atomic commit step (SQLite BEGIN IMMEDIATE plus unique-JTI replay check) dominates the total in both runs -- roughly 60-70% of end-to-end median latency -- not the cryptographic verification steps (signature check, proof-of-possession). This is consistent with the general expectation that the fail-closed, atomic finality boundary of Section 4 is the more expensive operation to make correct, not the identity or purpose checks upstream of it. Second, both runs land the end-to-end path under half a millisecond, which is the basis for describing this as a hot-path-suitable operation for interactive request/response flows, subject to Section 16's caveats about the sink's storage backend. As stated directly in the reference implementation and repeated here: this is a local Python microbenchmark on a single process, not a distributed-system or network-inclusive measurement, and it is NOT a protocol performance claim. It excludes network round-trip time between requester, PED, and Finality Sink when these run as separate services; excludes the cost of the binding-record lookups in Section 5.2's check table (the demo's vaults are in-process, not a networked identity/order/policy store); and excludes concurrency effects -- SQLite's single-writer model means throughput, not just per-request latency, is the binding constraint at production scale (see Section 16). A deployment claiming this latency profile MUST re-measure against its own storage backend, network topology, and binding-record sources before relying on these figures. Das Expires 13 March 2027 [Page 17] Internet-Draft Data-Purpose Laundering Prevention September 2026 16. Feasibility and Legacy System Integration *Deployment topology.* The PED, the Execution Handle issuer, and the Finality Sink are logically separable and MAY run as one process, as a sidecar per protected service, or as independently administered services (a pattern already anticipated by [DAS-PRIVACY-FINALITY-IMPL]'s note that vaults/PED/sink state can move into separate processes, TEEs, HSMs, confidential VMs, or DPUs/ SmartNICs). The architecture is agnostic to which topology an adopter chooses; Section 15's figures were measured in-process and should be treated as a floor, not a ceiling, once a real network hop separates these components. *Cold path / hot path split.* Companion draft draft-das-execution- finality-protocol-layer-00 separates policy reasoning (which bindings apply, which policy version is current) from deterministic verification (does this specific Candidate Act satisfy those bindings). The former can be cached, precomputed, or evaluated asynchronously as records change; the latter is what Section 15 measures and is designed to stay on the interactive request path. Implementers SHOULD keep policy lookups (the "cold" work) out of the per-request hot path so that the Finality Sink's atomic commit remains the dominant, and only, per-request cost. *Throughput and storage backend.* The reference implementation's SQLite-backed replay/effect store uses a single-writer commit model; at the measured ~330-490 us per commit, a single Finality Sink instance backed by SQLite is bounded to roughly two to three thousand committed effects per second before write contention dominates. This is adequate for the SME demo's scale and NOT representative of a production deployment's requirements; a production Finality Sink SHOULD replace the single-writer store with a backend that supports concurrent atomic commit with equivalent replay-prevention guarantees (e.g., a transactional database cluster or an append-only ledger with unique-nonce enforcement), and MUST preserve the fail-closed, atomic- consume property of Section 5.2 when doing so -- a faster backend that weakens atomicity reintroduces the race this architecture exists to close. *Legacy system integration without a flag day.* This architecture is intended to be adopted incrementally, not as a wholesale replacement of existing access control: * It SHOULD be deployed as an additional enforcement point positioned at or behind an existing API gateway, service mesh, or authorization layer (OAuth, GNAP, internal ABAC), not as a replacement for those systems. Coarse-grained authentication and general access control continue to run unchanged; this Das Expires 13 March 2027 [Page 18] Internet-Draft Data-Purpose Laundering Prevention September 2026 architecture adds a finer-grained, purpose-and-lineage-aware check at the specific data objects and operations an adopter chooses to protect. * Adoption SHOULD proceed data-object-class by data-object-class. A newly protected class (e.g., delivery addresses, as in Section 5) is bound to policy and enforced from the moment it is onboarded; classes not yet onboarded continue to be served by whatever legacy access control already governs them. * An unmigrated resource MUST NOT be represented, in logs, dashboards, or documentation, as being under this architecture's enforcement. A resource with no binding record is not "permissively allowed" by this architecture -- it is simply outside its scope, and an adopter that fails to mark that distinction risks the false sense of security this document argues against in Section 3.1. * No retroactive protection is created for data already released under a legacy regime before onboarding. Section 5.7's residual limitation applies identically here: onboarding a data class going forward does not constrain copies already made under the prior regime. *Real-time bidding and other latency-constrained environments.* Real- time bidding (RTB) in programmatic advertising operates within an auction window commonly on the order of 100 milliseconds end-to-end across multiple participants (supply-side platform, ad exchange, and one or more demand-side platforms). This is among the tightest latency budgets this architecture might be applied to and deserves direct treatment rather than a general feasibility claim. Das Expires 13 March 2027 [Page 19] Internet-Draft Data-Purpose Laundering Prevention September 2026 Cross-referencing data across advertising systems -- combining signals from multiple sources to select or price an ad -- is a legitimate, economically load-bearing function of the industry and is not, by itself, the problem this document addresses. The problem is unauthorized cross-referencing: a system consuming a signal for a use it was never granted, the same reuse pattern illustrated with delivery data in Section 5.3. Removing an advertising system's ability to combine data in order to make it "safe" would eliminate the function the system exists to perform and would stall a significant share of the economic activity the industry depends on; that is not this document's goal. The goal is to make an authorized combination technically demonstrable, and an unauthorized one technically blocked, rather than leaving the boundary between the two resting entirely on a data-sharing agreement that no downstream system actually checks -- this architecture is offered as a way to make lawful cross-referencing verifiable, not as a way to stop cross- referencing. Whether this is achievable inside a 100ms RTB budget is a question of where in the bid path enforcement is placed, not whether enforcement is possible at all: * A per-bid Candidate Act evaluated against a live policy store, with a TEE remote-attestation round-trip inline in the bid path, is not compatible with a 100ms budget; the attestation handshake alone commonly consumes a large share of that budget on its own, independent of anything measured in Section 15. * Section 15's measurements (sub-millisecond PED validation, permit issuance, and Finality Sink commit) are achievable in-path only if the expensive part -- deciding whether a given combination of data sources is authorized for a given advertiser/publisher/purpose triple -- is treated as cold-path work, evaluated and cached well before any individual bid, and refreshed on a policy change rather than on every auction. What remains in the 100ms hot path is then the cheap, deterministic step: verifying that this bid's Candidate Act matches an already-issued, still-valid Execution Handle for this exact combination -- the sub-millisecond range Section 15 measured, not a fresh policy evaluation or a fresh attestation. * Under this split, the architecture does not ask an RTB system to slow its auction down to perform compliance work live; it asks the system to be able to produce, on demand, a verifiable record that a specific data combination used in a specific bid was covered by a specific, current authorization -- which is close to what a regulator asking for evidence of purpose-limitation compliance is already asking advertising companies to be able to produce, typically without machine-checkable evidence to offer today. Das Expires 13 March 2027 [Page 20] Internet-Draft Data-Purpose Laundering Prevention September 2026 An implementer that attempts to fit full live policy evaluation and attestation into the per-bid path will fail the latency budget and should not attempt to. An implementer that separates authorization (cold, cacheable, amortized across many bids) from verification (hot, sub-millisecond, per bid) has a credible path to a compliance record without materially affecting auction latency -- and a credible, auditable basis for arguing that its cross-referencing practice is lawful, rather than merely asserted to be. *Feasibility summary.* The mechanism itself -- Candidate Act, binding-record check, scoped Execution Handle, atomic Finality Sink commit -- is implementable with commodity components (a policy/record store, an Ed25519 signing service, and a transactional commit boundary) and does not require new hardware, though Section 5.5 notes that hardware-rooted attestation strengthens, without being required by, the workload-identity leg of Section 5.2's checks. The primary adoption cost is organizational rather than cryptographic: identifying which binding records (order state, recipient assignment, workload identity) an adopter's systems already maintain reliably, versus which must be newly built, since the PED's validity depends entirely on the trustworthiness of the records it checks against (Section 9). 17. Normative References [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, DOI 10.17487/RFC2119, March 1997, . [RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, May 2017, . 18. Informative References [BCP79] IETF, "Intellectual Property Rights in IETF Technology", BCP 79, . [DAS-EU-AI-ACT] Das, S., "Technical Execution Enforcement for the EU AI Act", Work in Progress, . [DAS-GLOBAL-PRIVACY] Das, S., "Global Privacy Execution Enforcement", Work in Progress, . Das Expires 13 March 2027 [Page 21] Internet-Draft Data-Purpose Laundering Prevention September 2026 [DAS-PRECISION-EGRESS] Das, S., "Precision-Bounded Egress", Work in Progress, . [DAS-PRIVACY-FINALITY-IMPL] Das, S., "Privacy Finality Reference Implementation", GitHub repository, . [FUTURIUM-PAPER-COMPLIANCE] Das, S., "From Paper Compliance to Technical Enforcement: Making GDPR and the EU AI Act Executable in the AI Era", EU AI Alliance Futurium, . [FUTURIUM-PURPOSE-LAUNDERING] Das, S., "Preventing Data-Purpose Laundering by Agentic AI: A Hardware-Rooted Pre-Effectuation Layer for GDPR Purpose Limitation and High-Risk AI Governance", EU AI Alliance Futurium, . [RFC6749] Hardt, D., Ed., "The OAuth 2.0 Authorization Framework", RFC 6749, DOI 10.17487/RFC6749, October 2012, . [RFC7519] Jones, M., Bradley, J., and N. Sakimura, "JSON Web Token (JWT)", RFC 7519, DOI 10.17487/RFC7519, May 2015, . [RFC8707] Campbell, B. and A. Bansal, "Resource Indicators for OAuth 2.0", RFC 8707, DOI 10.17487/RFC8707, February 2020, . [RFC9334] Birkholz, H., Thaler, D., Richardson, M., Smith, N., and W. Pan, "Remote ATtestation procedureS (RATS) Architecture", RFC 9334, DOI 10.17487/RFC9334, January 2023, . [RFC9635] Richer, J. and F. Imbault, "Grant Negotiation and Authorization Protocol (GNAP)", RFC 9635, DOI 10.17487/RFC9635, October 2024, . Das Expires 13 March 2027 [Page 22] Internet-Draft Data-Purpose Laundering Prevention September 2026 Author's Address Sangam Kumar Das Independent Inventor Balasore Odisha India Email: info@sangamdas.com Das Expires 13 March 2027 [Page 23]