# US 2021/0240830 A1 · Attestation of processing

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2021/0240830 A1
- Document ID: US20210240830A1
- Status: Published application
- Kind: A1
- Application number: 17/048,744
- Filed: 2019-05-08
- Published: 2021-08-05
- Earliest claimed: 2018-06-13
- Assignees: ARM IP Limited
- Applicants: Arm IP Limited
- Inventors: Milosch MERIAC
- Web page: https://patentgrep.com/patent/US20210240830A1

## CPC

- G06F 21/57: Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
- G06F 21/62: Protecting access to data via a platform, e.g. using keys or access control rules
- G06F 9/45558: {Hypervisor-specific management and integration aspects}
- G06F 21/606: {by securing the transmission between two devices or processes}
- G06F 21/64: Protecting data integrity, e.g. using checksums, certificates or signatures
- H04L 9/3236: {using cryptographic hash functions}
- H04L 9/3247: {involving digital signatures}
- G06F 2009/45587: {Isolation or security of virtual machine instances}
- G06F 2221/034: Test or assess a computer or a system
- G06Q 30/018: Certifying business or products
- G16H 40/20: for the management or administration of healthcare resources or facilities, e.g. managing hospital staff or surgery rooms
- G16H 40/67: for remote operation
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)
- G06Q: INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G16H: HEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA

## Abstract

There is provided a data processing apparatus that includes an input policy filter that receives input data and an input provenance that relates to the input data. The filter forwards some or all of the input data and the input provenance according to at least one input policy. A processing environment receives the input data forwarded by the input policy filter and processes the input data to generate output data A management environment produces an attestation of the processing environment and produces an output provenance based on the input provenance and the attestation. An output policy filter receives the output data and the output provenance and forwards the output data and the output provenance according to at least one output policy.

## Claims

### Claim 1

A data processing apparatus comprising:
an input policy filter to receive input data and an input provenance that relates to the input data, and to forward some or all of the input data and the input provenance according to at least one input policy;
a processing environment to receive the input data forwarded by the input policy filter and to process the input data to generate output data;
a management environment to produce an attestation of the processing environment and to produce an output provenance based on the input provenance and the attestation; and
an output policy filter to receive the output data and the output provenance and to forward the output data and the output provenance according to at least one output policy.

### Claim 2 (depends on 1)

A data processing apparatus according to claim 1, wherein
the at least one input policy comprises at least one input provenance condition; and
the input data and the input provenance are forwarded according to the at least one input provenance condition.

### Claim 3 (depends on 2)

A data processing apparatus according to claim 2, wherein
the input provenance condition is applied to a subset of inputs to the input policy filter; and
in response to the input provenance condition being missed, an error is triggered.

### Claim 4 (depends on 1)

A data processing apparatus according to claim 1, wherein
the input policy filter is adapted to inhibit the input provenance from being passed to the processing environment, and is adapted to forward the input provenance to the management environment.

### Claim 5 (depends on 1)

A data processing apparatus according to claim 1, wherein
at least one of:
the at least one input policy restricts forwarding of the input data based on an identity of a source of the input data, and
the at least one output policy restricts forwarding of the output data based on an identity of a target of the output data.

### Claim 6 (depends on 1)

A data processing apparatus according to claim 1, wherein
the at least one input policy comprises a plurality of input policies;
the input policy filter applies one of the plurality of input policies; and
the one of the plurality of input policies is selected in dependence on a data source of the input data or a type of the input data.

### Claim 7 (depends on 1)

A data processing apparatus according to claim 1, wherein
the at least one output policy comprises a plurality of output policies;
the output policy filter applies one of the plurality of output policies; and
the one of the plurality of output policies is selected in dependence on a target of the output data or a type of the output data.

### Claim 8 (depends on 1)

A data processing apparatus according to claim 1, wherein
the input data comprises data received via a plurality of data sources and;
the input provenance comprises provenance information relating to each of the plurality of data sources.

### Claim 9 (depends on 1)

A data processing apparatus according to claim 1, wherein
the attestation of the processing environment comprises a hash of at least part of the processing environment.

### Claim 10 (depends on 1)

A data processing apparatus according to claim 1, wherein
the attestation of the processing environment comprises a hash of the output data.

### Claim 11 (depends on 1)

A data processing apparatus according to claim 1, wherein
the input provenance is cryptographically signed; and
the management environment causes the attestation of the processing environment to be cryptographically signed.

### Claim 12 (depends on 1)

A data processing apparatus according to claim 1, wherein
the processing environment is signed with a cryptographic signature; and
the management environment is adapted to check validity of the cryptographic signature.

### Claim 13 (depends on 1)

A data processing apparatus according to claim 1, wherein
the at least one input policy comprises at least one of a required input data type, a maximum input data quantity, a maximum input data rate, and a maximum input data latency.

### Claim 14 (depends on 1)

A data processing apparatus according to claim 1, wherein
the at least one output policy comprises at least one of a required output data type, a maximum output data quantity, a maximum output data rate, and a maximum output data latency.

### Claim 15 (depends on 1)

A data processing apparatus according to claim 1, wherein
the at least one output policy comprises a requirement that a type of the output data matches a type of the input data.

### Claim 16 (depends on 1)

A data processing apparatus according to claim 1, wherein
the output filter is adapted to perform a conversion from a type of the output data to a type of the input data in response to the type of the output data being different to the type of the input data.

### Claim 17 (depends on 1)

A data processing apparatus according to claim 1, wherein
the management environment is adapted to produce the output provenance by concatenating the attestation with the input provenance.

### Claim 18 (depends on 1)

A data processing apparatus according to claim 1, wherein
the management environment is adapted to produce the output provenance by merging the attestation with the input provenance.

### Claim 19 (depends on 1)

A data processing apparatus according to claim 1, wherein
in response to the input provenance meeting a condition, the management environment is adapted to produce the output provenance by outputting the attestation.

### Claim 20 (depends on 19)

A data processing apparatus according to claim 19, wherein the condition comprises a requirement that the input provenance is verified.

### Claim 21 (depends on 1)

A data processing apparatus according to claim 1, wherein
the processing environment is adapted to process the input data or the output data to generate further output data; and
the output policy is adapted to permit forwarding of the further output data in dependence on the output data.

### Claim 22 (depends on 21)

A data processing apparatus according to claim 21, wherein
the output policy is adapted to permit forwarding of the further output data in dependence on the output data having a given characteristic.

### Claim 23 (depends on 1)

A data processing apparatus according to claim 1, wherein
the management environment is provided by a hypervisor; and
the processing environment is a virtual machine that is managed by the hypervisor.

### Claim 24 (depends on 1)

A data processing apparatus according to claim 1, wherein
the management environment is adapted to control a behaviour of the processing environment to operate according to at least one processing policy.

### Claim 25 (depends on 24)

A data processing apparatus according to claim 24, wherein
the at least one processing policy comprises a state reset condition; and
in response to the state reset condition being met, the management environment causes a processing state of the processing environment to be reset.

### Claim 26 (depends on 24)

A data processing apparatus according to claim 24, wherein
the at least one processing policy comprises a logging condition; and
in response to the logging condition being met, the management environment causes a processing state to perform logging.

### Claim 27 (depends on 24)

A data processing apparatus according to claim 24, wherein
the at least one processing policy comprises one or more error handling rules; and
in response to an error condition occurring in the processing environment, the management environment causes the error condition to be handled according to the one or more error handling rules.

### Claim 28 (depends on 1)

A data processing apparatus according to claim 1, wherein
an attestation is provided in respect of at least one of the at least one input policy and the at least one output policy.

### Claim 29 (depends on 1)

A data processing apparatus according to claim 1, wherein
at least one of the at least one input policy and at least one output policy comprises a base policy and an other policy; and
the other policy is at least as restrictive as the base policy.

### Claim 30

A method of data processing comprising:
receiving input data and an input provenance that relates to the input data;
forwarding some or all of the input data and the input provenance at an input policy filter according to at least one input policy;
receiving the input data forwarded by the input policy filter;
processing the input data to generate output data;
producing an attestation of the processing environment;
producing an output provenance based on the input provenance and the attestation; and
receiving the output data and the output provenance and forwarding the output data and the output provenance according to at least one output policy.

### Claim 31

A data processing apparatus comprising:
means for receiving input data and an input provenance that relates to the input data;
means for forwarding some or all of the input data and the input provenance according to at least one input policy;
means for receiving the input data forwarded by the means for forwarding;
means for processing the input data to generate output data;
means for producing an attestation of the processing environment;
means for producing an output provenance based on the input provenance and the attestation; and
means for receiving the output data and the output provenance and forwarding the output data and the output provenance according to at least one output policy.
