# US 10,873,642 B2 · Methods of accessing a remote resource from a data processing device

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

- Number: US 10,873,642 B2
- Document ID: US10873642B2
- Status: Granted
- Kind: B2
- Application number: 15/527,077
- Filed: 2015-10-26
- Published: 2018-06-28
- Granted: 2020-12-22
- Earliest claimed: 2014-11-18
- Assignees: ARM IP Limited
- Applicants: ARM IP Limited
- Inventors: Milosch Meriac; Geraint David Luff
- Web page: https://patentgrep.com/patent/US10873642B2

## CPC

- H04L 67/55: Push-based network services
- G06F 9/541: {via adapters, e.g. between incompatible applications}
- G06F 9/546: {Message passing systems or structures, e.g. queues}
- G06F 9/547: {Remote procedure calls [RPC]; Web services}
- G06F 16/9566: {URL specific, e.g. using aliases, detecting broken or misspelled links}
- G06F 21/602: {Providing cryptographic facilities or services}
- H04L 41/22: comprising specially adapted graphical user interfaces [GUI]
- H04L 67/146: Markers for unambiguous identification of a particular session, e.g. session cookie or URL-encoding
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

Methods of accessing a remote resource from a data processing device A method of accessing a remote resource from a data processing device for providing a rich user interface on a client device, the method comprising: pushing, from the data processing device, a first type of data comprising user interface resources to the remote resource; generating, on the data processing device, a second type of data comprising operational data relating to the operation of the data processing device; pushing from the data processing device, the second type of data, to the remote resource.

## Claims

### Claim 1

A method of accessing a remote resource from a data processing device for providing a rich user interface on a client device, the method comprising:
transmitting, from the data processing device, a first type of data comprising user interface (UI) resources to the remote resource;
generating, on the data processing device, a second type of data comprising operational data relating to the operation of the data processing device;
obtaining a first identifier corresponding to the remote resource to which the first or second type of data is to be transmitted;
obtaining secret data corresponding to the first identifier;
generating an obscured identifier at the data processing device using the secret data corresponding to the first identifier, wherein the obscured identifier is for obtaining the actual location of the remote resource; and
transmitting, from the data processing device, the first or second types of data to the remote resource using the obscured identifier.

### Claim 2 (depends on 1)

A method according to claim 1, wherein the first identifier comprises a first uniform resource locator (URL).

### Claim 3 (depends on 2)

A method according to claim 2, wherein the obscured identifier comprises an obscured URL.

### Claim 4 (depends on 3)

A method according to claim 3, wherein the obscured URL is generated by performing a transformation of the first URL into the obscured URL using the secret data.

### Claim 5 (depends on 1)

A method according to claim 1, further comprising:
encrypting, at the data processing device, the first type of data.

### Claim 6 (depends on 1)

A method according to claim 1, further comprising:
encrypting, at the data processing device, the second type of data.

### Claim 7

A data processing device comprising:
processing circuitry configured to perform data processing;
communication circuitry configured to communicate with a remote resource;
memory circuitry configured to store a first type of data comprising user interface (UI) resources; and
input/output circuitry configured to generate a second type of data comprising operational data;
wherein the processing circuitry is configured to:
obtain a first identifier corresponding to the remote resource from memory to which the first or second type of data is to be transmitted;
obtain secret data corresponding to the first identifier;
generate an obscured identifier at the data processing device using the secret data corresponding to the first identifier, wherein the obscured identifier is for obtaining the actual location of the remote resource;
control the communication circuitry to transmit the first type of data to the remote resource the first or second types of data to the remote resource using the obscured identifier.

### Claim 8 (depends on 7)

The data processing device of claim 7, wherein the processing circuitry is configured to encrypt the first and second types of data.

### Claim 9

A method of accessing a remote resource from a client device for providing a rich user interface on the client device, the method comprising:
obtaining a first identifier corresponding to the remote resource to which a first type of data or a second type of data is to be transmitted;
obtaining secret data corresponding to the first identifier;
generating an obscured identifier using the secret data corresponding to the first identifier, wherein the obscured identifier is for obtaining the actual location of the remote resource;
transmitting the first type of data comprising user interface resources to the remote resource using the obscured identifier;
transmitting the second type of data to the remote resource using the obscured identifier;
fetching the first and second type of data from the remote resource; and
displaying at least the second type of data within a user interface associated with the client device.

### Claim 10 (depends on 9)

A method according to claim 9, wherein the obtaining the first identifier is at the data processing device and the generating the obscured identifier is at the data processing device.

### Claim 11 (depends on 9)

A method according to claim 9, the method further comprising:
obtaining, at the client device, a second identifier corresponding to the remote resource from which the first or second type of data is to be fetched;
obtaining secret data corresponding to the second identifier;
generating, at the client device, the obscured identifier using the secret data corresponding to the second identifier; and
fetching, by the client device, the first or second type of data from the remote resource using the obscured identifier.

### Claim 12 (depends on 11)

A method according to claim 11, further comprising:
encrypting, at the data processing device, or decrypting, at the client device, the first and/or second type of data.

### Claim 13 (depends on 9)

A method according to claim 9, further comprising:
caching the first and/or second type of data transmitted to the remote resource at an intermediate network node between the data processing device and the remote resource.

### Claim 14 (depends on 13)

The method according to claim 13, wherein if the first and/or second type of data stored at the remote resource is available at the intermediate network node, then the data is provided to the client device from the intermediate network node if requested by the client device.

### Claim 15 (depends on 13)

The method according to claim 13, wherein the intermediate network node is one of a plurality of intermediate network nodes.

### Claim 16 (depends on 15)

The method according to claim 15, wherein at least one of the plurality of intermediate network nodes comprises a transaction queue for queuing transactions to be sent to the data processing device.

### Claim 17 (depends on 16)

The method according to claim 16, wherein the data processing device pulls transactions from the transaction queue when it is ready to process the transactions.

### Claim 18 (depends on 17)

The method according to claim 17, wherein the client device and the data processing device communicate asynchronously using the transaction queue.
