# US 2021/0240854 A1 · Restricted environments for message generation in networked environments

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

- Number: US 2021/0240854 A1
- Document ID: US20210240854A1
- Status: Published application
- Kind: A1
- Application number: 17/042,785
- Filed: 2019-04-16
- Published: 2021-08-05
- Earliest claimed: 2019-04-16
- Assignees: Google Inc.
- Applicants: Google LLC
- Inventors: Jonathan Krafcik; Yian Gao; Gang Wang
- Web page: https://patentgrep.com/patent/US20210240854A1

## CPC

- G06F 21/6263: {during internet communication, e.g. revealing personal data from cookies}
- G06F 21/6227: {where protection concerns the structure of data, e.g. records, types, queries}
- G06F 21/6254: {by anonymising data, e.g. decorrelating personal data from the owner's identification}
- H04L 67/02: based on web technology, e.g. hypertext transfer protocol [HTTP]
- H04L 67/146: Markers for unambiguous identification of a particular session, e.g. session cookie or URL-encoding
- H04L 67/561: Adding application-functional data or data for application control, e.g. adding metadata
- H04L 67/564: Enhancement of application control based on intercepted application data
- 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)

## Abstract

Systems and methods described herein can provide a restricted environment for the local execution of server provided processor-executable instructions. The restricted environment can be maintained by a web browser to enable sandboxed generation of content requests by the web browser during the rendering of web pages. The restricted environment can enable the web browser to control the generation and transmission of content requests.

## Claims

### Claim 1

A method to exchange data in a networked system, comprising:
storing, by a web browser executed by a client device, a client device profile comprising a plurality of client device parameters and processor-executable instructions to generate a content request in a restricted environment of the client device, wherein the restricted environment is associated with a content server;
transmitting, by the web browser, a content item parameter to the restricted environment stored on the client device based on the web browser receiving a web page;
generating, by the web browser executing the processor-executable instructions stored in the restricted environment, a parameter list based on the client device profile and the content item parameter;
transmitting, by the web browser, the parameter list to a proxy server; and
receiving, by the web browser, a content item to render in a content slot of the web page based on the proxy server determining an aggregate value of at least one parameter in the parameter list satisfies a predetermined threshold.

### Claim 2 (depends on 1)

The method of claim 1, further comprising generating, by the web browser, a plurality of restricted environments, each of the plurality of restricted environments comprising a respective client device profile and a respective set of processor-executable instructions to generate the content request, wherein each of the plurality of restricted environments are associated with a different content server.

### Claim 3 (depends on 1, 2)

The method of claim 1 or 2, further comprising:
identifying, by the web browser, a content server associated with the content slot of the web page; and
selecting, by the web browser, the restricted environment from a plurality of restricted environments based on an identification of the content server associated with the content slot of the web page.

### Claim 4

The method of any preceding claim, wherein the content item parameter comprises at least one of an identifier of the content slot, a request identifier, a base resource uniform resource locator (URL), or a URL of the web page.

### Claim 5

The method of any preceding claim, further comprising:
receiving, by the web browser, a second web page comprising a second set of processor-executable instructions to generate the content request, wherein the second set of processor-executable instructions are provided by the content server; and
updating, by the web browser, the processor-executable instructions stored in the restricted environment based on the second set of processor-executable instructions.

### Claim 6

The method of any preceding claim, further comprising:
transmitting, by the web browser, a second content item parameter to the restricted environment based on the web browser receiving a second web page;
generating, by the web browser executing the processor-executable instructions stored in the restricted environment, a second parameter list based on the client device profile and the second content item parameter;
transmitting, by the web browser, the second parameter list to the proxy server; and
receiving, by the web browser, a generic content item to render in a content slot of the second web page based on the proxy server determining a second aggregate value of at least one parameter in the second parameter list does not satisfy the predetermined threshold.

### Claim 7

The method of any preceding claim, further comprising selecting a portion of client device parameters to include in the parameter list to satisfy the predetermined threshold.

### Claim 8

The method of any preceding claim, wherein the content item is selected based on at least one of the parameters in the parameter list.

### Claim 9

The method of any preceding claim, wherein parameters of the parameter list are configured based upon a frequency of occurrence of the parameters.

### Claim 10

The method of any preceding claim, wherein receiving the content item comprises receiving the content item from the proxy server responsive to the proxy server receiving the content item from the content server.

### Claim 11

The method of any preceding claim, wherein transmitting the parameter list to the proxy server further comprises:
encoding the parameter list as URL parameters;
generating a request URL by concatenating the URL parameters to a base URL included in the content item parameter; and
transmitting the request URL to the proxy server.

### Claim 12

A system to exchange data in a networked system, comprising:
a web browser executed by one or more processors of a client device, the web browser maintaining one or more restricted environments to:
store, in a restricted environment, a client device profile comprising a plurality of client device parameters and processor-executable instructions to generate a content request, wherein the restricted environment is associated with a content server;
transmit a content item parameter to the restricted environment stored on the client device based on the web browser receiving a web page;
generate, based on execution of the processor-executable instructions stored in the restricted environment, a parameter list based on the client device profile and the content item parameter;
transmit the parameter list to a proxy server; and
receive a content item to render in a content slot of the web page based on the proxy server determining an aggregate value of at least one parameter in the parameter list satisfies a predetermined threshold.

### Claim 13 (depends on 12)

The system of claim 12, further comprising the web browser to generate a plurality of restricted environments, each of the plurality of restricted environments comprising a respective client device profile and a respective set of processor-executable instructions to generate the content request, wherein each of the plurality of restricted environments are associated with a different content server.

### Claim 14 (depends on 12, 13)

The system of claim 12 or 13, further comprising the web browser to:
identify a content server associated with the content slot of the web page; and
select the restricted environment from a plurality of restricted environments based on an identification of the content server associated with the content slot of the web page.

### Claim 15 (depends on 12, 13, 14)

The system of claim 12, 13 or 14, wherein the content item parameter comprises at least one of an identifier of the content slot, a request identifier, a base resource URL, or a URL of the web page.

### Claim 16 (depends on 12, 13, 14, 15)

The system of any one of claims 12 to 15, further comprising the web browser to:
receive a second web page comprising a second set of processor-executable instructions to generate the content request, wherein the second set of processor-executable instructions are provided by the content server; and
update the processor-executable instructions stored in the restricted environment based on the second set of processor-executable instructions.

### Claim 17 (depends on 12, 13, 14, 15, 16)

The system of any one of claims 12 to 16, further comprising the web browser to:
transmit a second content item parameter to the restricted environment based on the web browser receiving a second web page;
generate, by executing the processor-executable instructions stored in the restricted environment, a second parameter list based on the client device profile and the second content item parameter;
transmit the second parameter list to the proxy server; and
receive a generic content item to render in a content slot of the second web page based on the proxy server determining a second aggregate value of at least one parameter in the second parameter list does not satisfy the predetermined threshold.

### Claim 18 (depends on 12, 13, 14, 15, 16, 17)

The system of any one of claims 12 to 17, further comprising the web browser to select a portion of client device parameters to include in the parameter list to satisfy the predetermined threshold.

### Claim 19 (depends on 12, 13, 14, 15, 16, 17, 18)

The system of any one of claims 12 to 18, wherein the content item is selected based on at least one of the parameters in the parameter list.

### Claim 20 (depends on 12, 13, 14, 15, 16, 17, 18, 19)

The system of any one of claims 12 to 19, wherein parameters of the parameter list are configured based upon a frequency of occurrence of the parameters.

### Claim 21 (depends on 12, 13, 14, 15, 16, 17, 18, 19, 20)

The system of any one of claims 12 to 20, further comprising the web browser to receive the content item from the proxy server responsive to the proxy server receiving the content item from the content server.

### Claim 22 (depends on 12, 13, 14, 15, 16, 17, 18, 19, 20, 21)

The system of any one of claims 12 to 21, further comprising the web browser to:
encode the parameter list as URL parameters;
generate a request URL by concatenating the URL parameters to a base URL included in the content item parameter; and
transmit the request URL to the proxy server.
