# US 12,183,438 B2 · Secure computing systems and methods

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

- Number: US 12,183,438 B2
- Document ID: US12183438B2
- Status: Granted
- Kind: B2
- Application number: 18/468,974
- Filed: 2023-09-18
- Published: 2024-01-04
- Granted: 2024-12-31
- Earliest claimed: 2014-05-01
- Assignees: Intertrust Technologies Corporation
- Applicants: Intertrust Technologies Corporation
- Inventors: W. Knox Carey; Jarl A. Nilsson; Bart Grantham
- Web page: https://patentgrep.com/patent/US12183438B2

## CPC

- G16B 50/30: Data warehousing; Computing architectures
- G06F 21/53: by executing in a restricted environment, e.g. sandbox or secure virtual machine
- G06F 21/62: Protecting access to data via a platform, e.g. using keys or access control rules
- G06F 21/6227: {where protection concerns the structure of data, e.g. records, types, queries}
- G06F 21/6245: {Protecting personal data, e.g. for financial or medical purposes}
- G16B 20/00: ICT specially adapted for functional genomics or proteomics, e.g. genotype-phenotype associations
- G16B 20/20: Allele or variant detection, e.g. single nucleotide polymorphism [SNP] detection
- G16B 50/00: ICT programming tools or database systems specially adapted for bioinformatics
- G16H 10/60: for patient-specific data, e.g. for electronic patient records
- G16H 40/63: for local operation
- G16H 40/67: for remote operation
- G06F 2221/2101: Auditing as a secondary aspect
- G16B: BIOINFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR GENETIC OR PROTEIN-RELATED DATA PROCESSING IN COMPUTATIONAL MOLECULAR BIOLOGY
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- G16H: HEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA

## Abstract

The present disclosure relates to systems and methods for facilitating trusted handling of genomic and/or other sensitive information. Certain embodiments may use a virtualized execution environment to execute code and/or programs that wish to access and/or otherwise use genomic and/or other sensitive information. In some embodiments, data requests from the code and/or programs may be routed through a transparent data access proxy configured to transform requests and/or associated responses to protect the integrity of the genomic and/or other sensitive information.

## Claims

### Claim 1

A method for performing trusted computations on sensitive data performed within a protected execution environment of a first system, the first system comprising a processor and a non-transitory computer-readable storage medium storing instructions that, when executed by the processor, cause the first system to perform the method, the method comprising:
receiving, from an application executing in an execution environment different than the protected execution environment, a request to access a sensitive data set managed by the protected execution environment;
transforming the request using execution context information associated with the application to generate a secure request to access the sensitive data set;
sending the generated secure request to access the sensitive data set to a data store storing the sensitive data set, the data store being associated with the protected execution environment;
receiving a secure response to the secure request from the data store associated with the protected execution environment;
transforming the secure response using the execution context information to generate a response to the request to access the sensitive data set;
transmitting the generated response to the application;
generating an audit record comprising information associated with at least one of the transformation of the request and the transformation of the secure response; and
storing the audit record within storage associated with the protected execution environment.

### Claim 2 (depends on 1)

The method of claim 1, wherein the execution environment different than the protected execution environment and the protected execution environment comprise different execution environments of the first system.

### Claim 3 (depends on 1)

The method of claim 1, wherein the execution environment different than the protected execution environment comprises an execution environment of a second system different than the first system.

### Claim 4 (depends on 1)

The method of claim 1, wherein the data store comprises a local data store of the first system.

### Claim 5 (depends on 1)

The method of claim 1, wherein the data store comprises a distributed data store.

### Claim 6 (depends on 1)

The method of claim 1, wherein the request identifies the sensitive data set and transforming the request to generate the secure request comprises identifying at least a subset of the sensitive data set in the secure request.

### Claim 7 (depends on 6)

The method of claim 6, wherein the at least a subset of the sensitive data set in the secure request is identified based, at least in part, on one or more identities associated with the sensitive data set.

### Claim 8 (depends on 1)

The method of claim 1, wherein transforming the secure response to generate the response to the request to access the sensitive data set comprises removing at least a portion of the secure response when generating the response to the request to access the sensitive data set.

### Claim 9 (depends on 8)

The method of claim 8, wherein the at least a portion of the secure response is based, at least in part, on one or more identities associated with the sensitive data set.

### Claim 10 (depends on 1)

The method of claim 1, wherein the transforming the request to generate the secure request is based, at least in part, on information associated with a user of the application.

### Claim 11 (depends on 1)

The method of claim 1, wherein transforming the secure response to generate the response is based, at least in part, on information associated with a user of the application.

### Claim 12 (depends on 1)

The method of claim 1, wherein transforming the secure response to generate the response comprises transforming the secure response using transformation data to generate the response.

### Claim 13 (depends on 1)

The method of claim 1, wherein the method further comprises accessing the execution context information associated with the application from the protected execution environment.

### Claim 14 (depends on 1)

The method of claim 1, wherein the method further comprises:
identifying a policy associated with the request to access the sensitive data set; and
wherein generating the secure request is further based on the identified policy.

### Claim 15 (depends on 14)

The method of claim 14, wherein the policy is identified based on the sensitive data set.

### Claim 16 (depends on 14)

The method of claim 14, wherein the policy is identified based on a user of the application.

### Claim 17 (depends on 16)

The method of claim 16, wherein the execution environment different than the protected execution environment comprises an execution environment of a second system different than the first system.

### Claim 18 (depends on 1)

The method of claim 1, wherein the request to access the sensitive data set comprises a request for a result to be generated based on the sensitive data set.

### Claim 19 (depends on 1)

The method of claim 1, wherein the response comprises a Boolean response.
