Trust Framework 4 min read
The Trust Framework facilitates secure data sharing between Licensed Financial Institutions (LFIs) and Third-Party Providers (TPPs) by delivering key services such as API discovery, client onboarding, and client authentication.
Sandbox and Production endpoints
Sandbox Trust Framework
- Web Application: https://web.sandbox.directory.openfinance.ae/
- OIDC Discovery API: https://auth.sandbox.directory.openfinance.ae/.well-known/openid-configuration
Production Trust Framework
- Web Application: https://web.directory.openfinance.ae/
- OIDC Discovery API: https://auth.directory.openfinance.ae/.well-known/openid-configuration
What the Trust Framework provides
Trust Anchors
Maintain a registry of authorized participants, defining their roles and scopes of access within the ecosystem.
API Portal for Discovery
Serve as a centralized directory of all servers, clients, and APIs participating in the ecosystem.
Keystore
Manage a registry of active cryptographic keys for each participant. These keys are used to validate identities, enabling mutual trust — an essential foundation for secure data sharing.
Public Key Infrastructure (PKI)
Issue and manage TLS, signature, and encryption certificates. The PKI also provides mechanisms for verifying certificates generated within the platform.
How long to cache a JWKS fetched from the keystore
Every participant's public keys are published as JWKS documents on the keystore — keystore.directory.openfinance.ae in production and keystore.sandbox.directory.openfinance.ae in sandbox — including application.jwks, transport.jwks and their inactive/ counterparts. The keystore is served through a CDN and returns each JWKS with:
- Cache-Control header:
public, max-age=300 - Cache duration: 5 minutes
- Validators:
ETagandLast-Modified— a conditional request for an unchanged JWKS returns304 Not Modifiedwith no body
Fetching a JWKS
A participant that verifies signatures or encrypts with another participant's keys:
- MUST cache each JWKS, keyed by its URL, and MUST NOT fetch it on every request.
- SHOULD treat a cached JWKS as fresh for the
max-ageit was served with (currently 300 seconds), and MUST NOT treat it as fresh for longer than 10 minutes. - SHOULD refresh the cached JWKS before it expires, continuing to use the cached copy meanwhile, so that signature verification and encryption do not wait on a keystore request.
- SHOULD revalidate using
If-None-Matchwith the cachedETag. - SHOULD refetch the JWKS immediately when a JWS references a
kidthat is not in the cached copy, no more than once every 60 seconds per URL, before rejecting the JWS. - SHOULD NOT cache a
404 Not Foundfor longer than 60 seconds. A newly registered organisation or software statement returns404until its keys are published. - SHOULD apply a timeout of 5 seconds to keystore requests and, when a refresh fails, continue to use the last JWKS it fetched successfully while retrying with backoff, for no longer than 1 hour.
Publishing a key
A participant that adds or rotates a key in the Trust Framework:
- MUST wait at least 10 minutes after publishing a new key before signing with it. A JWKS can take around a minute to propagate through the CDN, and a consumer may hold the previous copy for a further 5 minutes.
- SHOULD keep the private key of a retired encryption key available for decryption for at least 10 minutes after removing it, so that payloads encrypted against a cached copy of the JWKS can still be decrypted.
LFIs, TPPs, and how they coexist in the directory
All organisations participating in Open Finance operate within the Trust Framework. Upon successful onboarding, participants are registered within the Framework and gain visibility of other authorised organisations in the ecosystem.
Organisations are classified according to their role:
Licensed Financial Institutions (LFIs) provide capabilities into the Open Finance ecosystem. For example, an institution such as ADCB may expose payment initiation services or account information APIs for consumption by authorised participants.
Third Party Providers (TPPs) consume the capabilities made available through Open Finance. For example, a fintech organisation such as Spare Technologies may access payment or data services provided by LFIs to deliver customer-facing solutions.
Where permitted by their regulatory licence, an LFI may also operate in the capacity of a TPP. In such cases, the organisation retains its LFI classification within the Trust Framework while exercising TPP capabilities.
