Internet-Draft CAPP August 2025
Shim & Han Expires 22 February 2026 [Page]
Workgroup:
TBD
Internet-Draft:
draft-shim-capp-00
Published:
Intended Status:
Standards Track
Expires:
Authors:
A. Shim
Hopae Inc.
L. J. Han
Hopae Inc.

Contextual Authentication Presentation Protocol (CAPP)

Abstract

CAPP is a decentralized presentation protocol for Verifiable Credentials that enables frictionless, context-triggered, pre-consented credential sharing without requiring interactive challenge-response cycles. It is optimized for physical access, transit, event entry, and other passive authentication scenarios.

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 22 February 2026.

Table of Contents

1. Introduction

The use of Verifiable Credentials (VCs) often requires a verifier-issued challenge, user interaction, and roundtrip communication. CAPP introduces a passive, context-aware presentation flow based on a Consent Profile locally maintained by the Holder.

CAPP is purpose-built for physical and routine authentication scenarios where users should not be required to approve every interaction explicitly. It allows for seamless, automatic credential presentation based on pre-defined conditions (e.g., location, time, trigger signal).

1.1. Example Use Cases

  • Building Access: An employee walks into the office building and passes through the turnstile without tapping or confirming—CAPP presents a purpose-bound VP to the verifier as the user approaches the gate.

  • Airport Boarding Gate: A traveler approaches a boarding gate and their flight ticket credential is automatically presented via NFC.

  • Event Entry: A guest enters via QR or beacon without needing repeated approvals.

  • Subway and Transit Access: A metro rider walks through the gate using a digital transit pass wallet that pushes the credential passively.

  • Smart Gym/Workspace Entry: Members are authenticated passively using a pre-agreed consent profile.

  • Healthcare Check-In: A returning patient’s insurance credential is passively presented to the hospital kiosk.

These scenarios share a common trait: the need for high trust, low interaction, and rapid flow.

2. Terminology

3. Protocol Overview

  1. Preparation: Holder creates VP (with aud, purpose, exp, nonce), configures Consent Profile.

  2. Trigger: Verifier emits a signed trigger (e.g., capp:// URI).

  3. Consent Profile Matching: Device checks verifier, time, purpose, context.

  4. Automatic Presentation: VP sent to verifier endpoint (HTTPS or DIDComm).

4. Flow Diagram (Non-Normative)

   Holder                      Device                      Gate
     |                           |                          |
     | Configure Consent Profile |                          |
     |-------------------------->|                          |
     |                           |                          |
     |                           |  Create CAPP-ready VP    |
     |                           |--------------------------|
     |                           |                          |
     |                           |<-------------------------|
     |                           |     Emit Trigger         |
     |                           |--------------------------|
     |                           |                          |
     |                           |   Match Consent Profile  |
     |                           |--------------------------|
     |                           |                          |
     |                           |      Auto-send VP        |
     |                           |------------------------->|
     |                           |                          |
     |                           |                          | Validate VP
     |                           |                          |------------>
     |                           |                          | Grant Access
     |<-----------------------------------------------------|
     |                           |                          |

5. Examples

5.2. VP Payload Format

{
  "type": ["VerifiablePresentation", "CAPPPresentation"],
  "holder": "did:example:holder123",
  "verifiableCredential": ["<VC or SD-JWT>"],
  "purpose": "building-entry",
  "aud": "did:example:corp-building",
  "exp": "2025-06-12T09:30:00Z",
  "nonce": "f8a8...x3b",
  "proof": {
    "type": "Ed25519Signature2020",
    "created": "2025-06-12T08:45:00Z",
    "verificationMethod": "did:holder#key-1",
    "proofPurpose": "authentication"
  }
}

6. Security Considerations

7. Extensions

8. Compatibility

9. IANA Considerations

This document has no IANA actions.

10. References

TBD

Authors' Addresses

Ace Shim
Hopae Inc.
Lukas J. Han
Hopae Inc.