Skip to main content
Version: Next

Encrypted Context Wrapper

@experimental A wrapper context type for encrypted FDC3 context data. When an app broadcasts encrypted context data, the original type is preserved for routing purposes, while the remaining context information is encrypted. Recipients can request a symmetric key via 'fdc3.security.symmetricKeyRequest' to decrypt the payload.

Schema

https://fdc3.finos.org/schemas/next/context/encrypted.schema.json (github)

Type

fdc3.security.encryptedContext

Properties

originalType (required)

type: string

The original FDC3 context type that was encrypted (e.g., 'fdc3.instrument', 'fdc3.contact'). This field is used by the desktop agent and context handlers for routing decisions.

id (required)

type: object

Subproperties:

kid (required)

type: string

Key ID identifying the symmetric key used to encrypt the payload.

Identifiers for the encryption key used.

encryptedPayload (required)

type: string

The encrypted context data as a base64-encoded string. Contains all fields from the original context except for the type. Encrypted using the symmetric key identified by 'id.kid'.

Examples

{
"type": "fdc3.security.encryptedContext",
"originalType": "fdc3.instrument",
"id": {
"kid": "channel-key-abc123"
},
"encryptedPayload": "eyJuYW1lIjoiQXBwbGUiLCJpZCI6eyJ0aWNrZXIiOiJBQVBMIn19..."
}
{
"type": "fdc3.security.encryptedContext",
"originalType": "fdc3.contact",
"id": {
"kid": "session-key-xyz789"
},
"encryptedPayload": "eyJuYW1lIjoiSm9obiBEb2UiLCJpZCI6eyJlbWFpbCI6ImpvaG5AZXhhbXBsZS5jb20ifX0=..."
}