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=..."
}