2022 FedCM CG + CHAPI
Credential Handler API
1
CHAPI in One Picture
2
Issuer
(Website)
Issues
Verifier
(Website)
Requests
Digital Wallet
(Website or App)
Stores, Presents
Issue Credentials
Present
Credentials
CHAPI is used to exchange verifiable credentials between Digital Wallets and websites
Analogue: FedCM APIs are used to exchange identity claims between IdPs and websites.
Digital Wallet Registration
3
Digital Wallet Selection
4
Degrades when 3rd-party cookies unavailable
5
Interoperability Overview
CHAPI and VC-API
17 different Issuers�14 PlugFest participants�3 from the broader VC-API community
8 different wallets�5 web wallets�3 native mobile apps
81
Combinations Demonstrated
© copyright 2022. All rights reserved
Goals and Non-Goals
7
Discussion
8
FedCM Issue #374
TL;DR; Wallet selection in CHAPI is built with iframes and third party cookies. This is an exploration if FedCM can help preserve it.
Appendix
9
CHAPI Details
10
Credential Handler Registration
Step 1
Step 2
Step 3
Credential repository website requests install of Credential Handler
Individual allows credential handler install
Credential handler ready
11
Verifiable Credential Storage
Step 1
Step 2
Step 3
Individual logs into website
Website requests storage of Verifiable Credential
Individual approves storage of Verifiable Credential
12
Verifiable Presentation Request
Step 1
Step 2
Step 3
Website requests Verifiable Credentials
Individual selects Verifiable Credentials to transmit
Individual transmits Verifiable Credentials
13
CHAPI Timeline
14
Related Specifications and Code
15
Demo site: https://playground.chapi.io/issuer
Developer Documentation: https://chapi.io/
CHAPI Polyfill: https://github.com/credential-handler/credential-handler-polyfill
CHAPI Specification: https://w3c-ccg.github.io/credential-handler-api/