Applications
Shared infrastructure, different permissions. These example system designs show where object protection and policy controlled key access can reduce duplicated delivery and storage arrangements.
These are illustrative designs, not packaged applications or verified deployments. Start with the shared broker example for the mechanism and the Security model for the common trust assumptions.
← Back to homepage ApplicationsExample 02
Telemetry and application events
A sensor application publishes repeated observations and equipment-status events through a shared broker. An analysis application is entitled to observations; a maintenance application is entitled to equipment status. All three applications authenticate within the same CABE Domain. The producer assigns distinct Attribute Sets to the two information products.
- Resolve two product Leases
The producer obtains authorised Non-Captive Leases O and E for observation and equipment-status Attribute Sets.
- Encrypt a sequence locally
O₁ → O₂ → O₃ use Lease O. E₁ → E₂ → E₃ use Lease E. Each Message uses the required encryption parameters.
- Shared broker delivers Envelopes
The same infrastructure carries both products without receiving their decryption keys.
- Different consumer permissions
The analysis application requests observation access; the maintenance application requests equipment-status access. The Key Service evaluates them separately.
The producer obtains an authorised Lease for each Attribute Set. With Non-Captive Lease Keys and valid cached Leases, it encrypts further Messages locally, using the same applicable Lease Key with the required per-Message encryption parameters. A short sequence of readings therefore does not require a fresh Prograde request for every event. Expiry or invalidation prompts new resolution; cached Leases do not promise an instantaneous transition during Rollover.
The broker carries the Envelopes without receiving the decryption keys. Each consumer requests access for its permitted product. The Key Service evaluates its Claims, the Attribute Set and the operation. This separates product permissions while amortising key resolution across frequent exchanges. Envelopes sharing usable key material still share that access boundary; the example makes no throughput or latency guarantee.
Frequent local encryption; key resolution spread across a Lease.
Back to contents ↑Example 03
A coalition operating picture
Several producers contribute position reports, observations and selected satellite products. The participants agree compatible report formats and Attribute meanings. Their separately operated applications use an established CABE Domain and authenticate to its Key Service. The example uses Non-Captive Lease Keys and does not require federation between Domains.
- Agree the application conventions
Participants agree report formats and Attribute meanings, and use one logical Key Service in a CABE Domain.
- Three producers publish
Position reports, observations and selected satellite products become distinct Envelopes under authorised Non-Captive Leases.
- Relay and store ciphertext
Shared infrastructure carries all three contributions. It has no keys and performs no plaintext fusion.
- Field picture · authorised reader
The field application obtains keys for position reports and selected observations, then processes those plaintext inputs.
- Analysis picture · authorised reader
The analysis application is also permitted satellite products. Its plaintext processing builds a different view from its permitted inputs.
Each producer protects its contributions using the appropriate Attribute Set. Shared relays and storage carry the Envelopes to consuming applications. A field application may obtain keys for position reports and selected observations, while an analysis application also receives access to satellite products. The Key Service evaluates each request using that application’s established Claims, the contribution’s Attributes and the requested operation.
Any application correlating, fusing or displaying plaintext contributions is an authorised reader. The diagram places this work inside the consuming applications, not inside the encrypted relay. Those applications remain responsible for interpreting compatible reports and constructing their views.
CABE supplies a common Envelope and key access mechanism for independently developed applications. It does not translate Payload formats or reconcile independently chosen Attribute meanings. Contributions to a common operating picture can therefore have different audiences: a shared picture does not require every participant to read every underlying report or see an identical view.
Shared contributions, selectively authorised application views.
Back to contents ↑Example 04
Air tasking orders and updates
In this possible integration, an air operations centre’s tasking publisher, a planning application and a unit application use one CABE Domain with Non-Captive Lease Keys. The planning application may read the complete order and its amendments; the unit application may read separately prepared unit tasking and its amendments. These audiences have distinct Attribute Sets and separate key material. The applications agree compatible tasking formats and trusted issuing-authority public keys.
- Publisher prepares the audience products
The authorised publisher prepares the complete order and separate unit tasking. It applies release rules and digitally signs each product’s content, order identifier and revision as an application function.
- Obtain authorised product Leases
The publisher authenticates to the Domain’s Key Service. Distinct Attribute Sets and separate key material protect the full-order and unit products.
- Initial order → protected amendment
Shared messaging and storage carry the encrypted initial products, followed by a smaller amendment for each affected product. The services have no decryption keys and do no redaction. Both message sizes use the same Envelope format.
- Planning application · complete-order access
The planning application authenticates and requests the material for the complete order and its amendments. It uses CABE to recover the protected information.
- Unit application · unit-tasking access
The unit application authenticates and requests the material for its unit tasking and amendments. It uses CABE to recover that information; it has no complete-order key.
- Application function · verify issuing authority
Each recipient verifies the additional signature using its configured issuing-authority keys and checks the issuer’s authority for the product. Shared-key decryption alone does not identify the issuer.
- Application function · check revision and update
Each recipient checks the order, base revision and applicability against its local copy before applying the amendment and updating its view. Mismatches go to the application’s reconciliation workflow.
The publisher prepares both products, digitally signs their content and application-level order identifiers and revisions, then protects them in CABE Envelopes under authorised Leases. A complete order is one opaque Payload: CABE does not selectively reveal its internal paragraphs. The publisher applies release rules when selecting each product’s content; shared messaging and storage services carry the Envelopes without decrypting or redacting them.
Recipients authenticate to the Key Service and request the material for their permitted products. Policy evaluates their established Claims, the Attributes and the requested operation. Retrieving an Envelope is not permission to read it. Separate Envelopes are not independent access boundaries where the same usable key material spans them.
When tasking changes, the publisher prepares a signed amendment for each affected product. It can be much smaller than the original order while using the same Envelope format and key access mechanism. The amendment identifies its order, base revision and resulting revision within the application’s signed content.
After recovering the protected information, the receiving application verifies the signature against its configured issuing-authority keys and checks that the issuer is authorised for that product. CABE’s symmetric authentication alone does not uniquely identify an issuer among holders of the same key. The application checks the amendment’s order and base revision against its local copy before applying it and updating its view; mismatches require reconciliation through the application’s workflow.
Tasking validation and supersession remain application responsibilities. Order identifiers and revision relationships are application data, not CABE fields or operations. Publishing a new revision does not erase earlier plaintext, recall obtained keys or guarantee that every recipient has the latest order.
Application responsibilities can use existing components. An ATO application can use an authorisation engine such as Cedar to decide whether an authenticated issuer may issue or amend a particular tasking product. The application supplies verified issuer information and relevant order context, then enforces the decision. This is separate from authorising access to key material, for which the reference Key Server khaled supports Cedar. Signature verification and maintaining, applying and reconciling revisions remain part of the surrounding application integration. CABE does not require a particular policy language.
Participants share distribution infrastructure for protected tasking and updates without giving relays plaintext or adopting a different protection format for each message size.
Back to contents ↑Example 05
Live voice and video
Voice and video applications produce encoded audio blocks, video frames or segments and protect them before delivery through shared infrastructure. The applications agree the media formats, framing and channel Attributes, and use one CABE Domain. This example uses Non-Captive Lease Keys and reusable Leases for successive media chunks.
- Obtain authorised Leases
Voice and video applications resolve Non-Captive Leases for the agreed channel Attribute Sets. Key access follows the configured channel and audience rules.
- Protect media as it is produced
Producers encapsulate encoded audio blocks, video frames or segments. Valid cached Leases support successive chunks without a Key Service round trip for every chunk.
- Forward successive Envelopes
A shared relay delivers the encrypted media. It receives no decryption keys and performs no plaintext mixing or transcoding.
- Authorise receivers and recover media
Receiving applications obtain their permitted key material, recover the encoded media and decode it locally. Key access is separate from repeated media delivery.
Each producer obtains a Lease for the appropriate Attribute Set and protects the encoded media as CABE Messages before publication. While its cached Lease remains valid, it can encrypt further units with the same Attribute Set locally, using the required per-Message encryption parameters. A shared relay forwards the resulting Envelopes without receiving their decryption keys.
Receiving applications authenticate to the Key Service and request the material for the arriving Envelopes. Policy evaluates the caller’s established Claims, the channel Attributes and the requested operation. Authorised applications decrypt locally, recover the encoded media and pass it to their decoders. Key access is separate from the media delivery path; successive chunks can use a valid cached Lease without a Key Service round trip for every chunk.
Splitting a stream into units does not itself create independent permissions. Access boundaries follow the usable key material, and a later refusal cannot recall keys or media already obtained. A service performing plaintext mixing, transcoding or analysis would be an authorised processor with its own access arrangement; the relay shown here only forwards encrypted media.
This is an architectural use of CABE. Latency and throughput depend on the media applications, implementation and network, and require measurement in the system being built.
Media applications share a relay while key access controls who can recover the encoded media.
Back to contents ↑Example 06
A partner observation reaching the field
A partner’s publishing application has a current drone observation needed by an authorised SOF application for situational awareness. The partner and field applications participate in an agreed CABE Domain and can authenticate to its Key Service. The producer is authorised to publish the observation, and the field application does not already hold its key.
- Partner obtains publishing access
The authorised partner authenticates to the agreed Domain’s Key Service and obtains a Non-Captive Lease.
- Protect and forward the observation
The partner encrypts the drone observation. Shared intermediaries carry the resulting Envelope without decryption keys.
- Field application requests access
The SOF application authenticates to the same Key Service. Its Claims and the observation’s Attributes permit the requested read operation.
- Decrypt at the field endpoint
The field application uses the permitted material to read the delivered observation locally.
The producer assigns the agreed Attributes and obtains a Non-Captive Lease Key. It encrypts the observation before passing the Envelope to a shared delivery path. Brokers, gateways and caches forward the same protected object without being given its decryption key. They are intermediaries, distinct from the application entitled to read the report.
The field application requests decryption material using the Envelope’s Attribute Set and Lease Reference. The Key Service evaluates the caller’s established Claims and the requested operation under the configured Policy. If access is permitted, the application decrypts the observation locally.
The direct sharing relationship is between the publishing and consuming applications despite the intervening transport. This is an example design, not a deployed system or a promise of real-time delivery; the field application still needs a usable delivery path and the stated key access arrangement.
Application-level sharing across intermediary transport.
Back to contents ↑Example 07
Protected traffic over an allied radio mesh
Two applications have an available data connection through an ally-operated mobile ad hoc network. Radio admission, routing and waveform compatibility are already provided by that network. The applications use the same CABE Domain and have a separate, usable relationship with its Key Service; the radio network is not the Domain boundary.
- Endpoint key access
Both applications can authenticate to one logical Key Service. The sender has an authorised Non-Captive Lease.
- Sender encrypts
The application protects its Messages before handing Envelopes to the radio network.
- Radio → relay → radio
The allied mesh supplies an existing data connection. Its operators and intermediate relays are not given application keys.
- Receiver obtains permitted material
The receiving application requests key access and decrypts at the endpoint. Domain membership is not defined by the physical radio path.
The sending application obtains an authorised Non-Captive Lease Key and encrypts each Message locally. A valid cached Lease can serve further Messages with the same Attribute Set. Radios and relays transport the resulting Envelopes between endpoints, but they do not receive the application decryption keys.
The receiving application authenticates to the Key Service and requests the material needed for the arriving Envelope. Its established Claims, the Message’s Attributes and the requested operation determine the access decision. Once authorised, it decrypts at the endpoint; the mesh continues to handle only the protected traffic.
This permits reuse of an available transport path without making every transport operator an authorised reader. The dashed relationships in the diagram represent key access, rather than a claim that key requests require physically separate radios. The surrounding network supplies connectivity; CABE supplies protection for the application objects carried over it.
Transport availability and permission to read remain separate.
Back to contents ↑Example 08
Information arriving over an intermittent link
An Origin Domain sends protected reports through an intermittent link, a store-and-forward path or carried storage. The receiving Target Domain is included in the federation arrangement when the Lease is created. Its local Key Service holds the federation secret material needed to recover the relevant Non-Captive Lease Key information.
- Origin Domain · prepare the Lease
During Prograde Resolution, the Origin Key Service includes the Target Domain and creates its FLP for a Non-Captive Lease.
- Envelope + applicable FLP
The producer sends both through an intermittent link, store-and-forward path or carried storage. The carrier holds no Lease Key.
- Target Domain · local request
The recipient quotes the FLP and Envelope identifiers to its functioning local Key Service.
- Verify, recover and decide
Using its federation secret material, that service verifies the FLP and matching identifiers, recovers the Lease Key and evaluates access. No live Origin request is needed.
During Prograde Resolution, the Origin Domain’s Key Service prepares a Federated Lease Package (FLP) for the included Target Domain. The producer attaches the applicable FLP to the Envelope. Both travel through the delivery path; the intermediary needs neither the plaintext nor the Lease Key.
After delivery, the recipient quotes the Origin Domain, Attribute Set, Lease Reference and FLP in a Retrograde request to its local Key Service. The service decrypts and verifies the package, checks that the identifiers match the request, and evaluates the recipient’s access. It can recover the same Lease Key material without contacting the Origin Domain.
The Origin Domain does not need to be online at the moment of reading. A prepared federation relationship, usable package and functioning local Key Service are still part of this design. The Target Domain’s service is trusted with recovered key material; it has a different role from the carrier transporting ciphertext.
Local key access after delayed delivery, without a live Origin request.
Back to contents ↑Example 09
Restricted inputs, separately releasable results
An authorised processing application needs restricted observations to produce a result for a wider audience. Its operators define the release rules and trust it to apply them to plaintext. The applications use one CABE Domain, with distinct Attribute Sets and an appropriate key arrangement for the restricted inputs and the released result.
- Restricted input Envelopes
The processing application receives protected observations under the restricted input Attribute Sets.
- Authorised input read
The Key Service evaluates the processor’s authenticated request for input material.
- Trusted plaintext processing
The application decrypts, analyses and determines what result its release rules permit. This is the explicit release boundary.
- New protected result
The processor constructs a new Message, assigns the output Attribute Set and obtains an authorised output Lease. It encrypts a distinct result Envelope.
- Different audience
The recipient receives the result and requests its permitted material. Result access does not grant restricted input access.
The processing application requests access to the input Envelopes as its own authenticated Principal. The Key Service checks its Claims and requested operation against each input’s Attributes. With permitted Non-Captive key access, it decrypts the observations locally and performs the analysis inside an explicitly trusted processing boundary.
The application determines what may be released, including any required sanitisation or redaction, constructs a new Message, assigns that result its own Attribute Set and obtains an authorised output Lease. It encrypts the result into a separate Envelope. A recipient authorised for the result can request its key without being granted access to the restricted input material.
The processing system makes and enforces the release decision. CABE protects the separately published objects; it does not sanitise or declassify their Payloads, propagate policy automatically, or turn the original ciphertext into a releasable result by changing its labels.
A deliberate release decision creates a new protected information product.
Back to contents ↑Example 10
A workflow coordinator without access to every input
A coordinator dispatches tasks and references to two separately authenticated processing services. An analysis worker may read observations; a maintenance worker may read equipment-status inputs. The inputs have distinct Attribute Sets and key arrangements in one CABE Domain. The coordinator has neither worker’s input keys.
- Coordinator dispatches tasks
Dotted task/reference flow sends object locations and work instructions to two workers. The coordinator has neither worker’s input keys.
- Storage delivers protected inputs
Solid encrypted delivery supplies observation and equipment-status Envelopes. A reference is not permission to decrypt.
- Analysis worker authenticates
Dashed key access permits observations and refuses equipment status. The worker processes its permitted plaintext inputs.
- Maintenance worker authenticates
Its separate request permits equipment status and refuses observations. Workflow controls still constrain each worker’s tasks and results.
The coordinator sends each worker a task and an object reference. The workers fetch protected inputs from shared storage and request the required material from the Key Service as their own Principals. A task reference locates an object; it is not itself an entitlement to decrypt it. Policy checks the worker’s established Claims, the input’s Attribute Set and the requested operation.
The diagram separates dotted task/reference traffic, solid encrypted delivery and dashed key access. The analysis worker is permitted observation access and refused equipment-status access; the maintenance worker has the converse permissions. Each permitted worker becomes a trusted plaintext-processing participant for its own inputs.
The coordinator does not need every input key to dispatch work. The surrounding workflow must still authorise tasks and constrain what workers do with their results. This example uses direct worker authentication, without claiming a CABE transitive identity protocol or protection against every misuse of a worker by a malicious coordinator.
Coordination and authority to read inputs are separate responsibilities.
Back to contents ↑Example 11
Requests made on someone else’s behalf
An analyst asks a planning application to examine imagery, and it assigns work to an image-processing service. In this proposed integration, the operator runs that service in isolated task executions within one CABE Domain. Each starts without the requested observation’s key or CEK, with no shared key or plaintext cache. The operator enforces this separation and controls result release.
- Analyst → planning application
An analyst asks for imagery analysis. The planning application assigns a task and observation references to the image-processing service.
- Check requester and task authority
A trusted task authority authenticates the requester, checks the grants to the acting services and issues a signed credential bound to the requester, task, scope and intended worker.
- Deliver protected observations
Storage supplies Envelopes to an isolated worker execution. Each task starts without the input key, CEK or plaintext; there is no shared input cache.
- Verify before establishing Claims
The Key Service’s authentication integration verifies the credential’s issuer, signature, validity and worker binding, then maps verified service, requester and task facts into Claims.
- Ordinary Retrograde request
The worker supplies the Attribute Set and Lease Reference. Policy evaluates the authenticated Claims, Attributes and operation. The task credential is an integration mechanism, not a new CABE field or operation.
- Same service, different task decisions
Task A with permitted requester and scope receives key access. Task B outside that scope is refused. Separate executions prevent Task B from inheriting keys or plaintext already obtained for Task A.
A trusted task authority authenticates the analyst and checks the authority granted to the planning application and processing service for the requested observations. It issues a signed, short-lived task credential bound to the requester, task, scope and intended worker. The Key Service’s authentication integration verifies the issuer, signature, validity and worker binding, then maps the verified service, requester and task information into Claims on the authenticated Principal. Forwarded names or task identifiers alone supply no authority.
The worker fetches the protected observations and makes an ordinary CKAP Retrograde request with the Attribute Set and Lease Reference. Policy evaluates the established Claims, Attributes and requested operation. For the same processing service, Task A with permitted requester and scope is allowed; Task B outside that scope is refused. These are separate executions starting without the input material, not a sequence in which a worker forgets keys it has already obtained.
The task credential, authority checks and execution isolation are supporting integration choices, not CABE delegation fields or a new CKAP operation. Refusing a fresh request would not constrain a worker that already held usable input keys, CEKs or plaintext.
Records can associate the original task, acting services, requested information and key access decisions. Application-side events record local decryption or use separately. Key Service logs do not record every local decryption, and correlating these records does not by itself establish complete, tamper-proof provenance.
Verified requester and task authority contribute to the decision alongside the acting service’s identity.
Back to contents ↑Example 12
Selected diagnostic data for a supplier
An operator deliberately publishes fault records and operational observations as distinct information products. The supplier’s diagnostic application and the operator’s operations application authenticate to the same agreed CABE Domain. Fault and observation Messages have different Attribute Sets and appropriate, separate key arrangements; their Payloads are prepared by the producer.
- Publish two distinct products
The operator deliberately separates fault records from operational observations, with different Attribute Sets and key arrangements.
- Share collection infrastructure
Both products are encrypted before entering the same collection and storage service. That service has no product keys.
- Supplier · selective key access
The authenticated diagnostic application is permitted fault-record material and refused operational-observation material.
- Operator · operational access
The operator’s application requests and receives its permitted observation material. Each application handles its own authorised plaintext.
The producer encrypts both products before uploading their Envelopes to a common collection service. The supplier can fetch the collection’s protected objects, but its established Claims permit key access for fault records only. A request for operational-observation key material is refused. The operator’s application has the observation access required for its own work.
The Key Service applies the product distinction when evaluating each requested operation. The collection service stores and delivers ciphertext without holding either product’s decryption keys. Supplier access therefore does not require duplicating the whole collection system or giving the supplier the complete operational dataset.
Selecting the diagnostic content is an explicit publishing decision. CABE does not inspect an operational Payload and strip sensitive fields from it. The supplier is an authorised plaintext recipient for the fault records it obtains, so the example does not imply that those records can later be recalled from its possession.
Selective external access through a common collection service.
Back to contents ↑