Application remoting across a network using draw commands
US-2020250372-A1 · Aug 6, 2020 · US
US12105829B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-12105829-B2 |
| Application number | US-202318318146-A |
| Country | US |
| Kind code | B2 |
| Filing date | May 16, 2023 |
| Priority date | Mar 19, 2021 |
| Publication date | Oct 1, 2024 |
| Grant date | Oct 1, 2024 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
A remote browsing session is initiated between a remote browser client executing on a client device and a remote browser host executing on a remote browser server. The remote browser host receives from the client device, encrypted remote browser data of remote browser data that affects the remote browser session. The remote browser client does not have access to a decryption key for the encrypted remote browser data. The encrypted remote browser data is decrypted to reveal the remote browser data. The remote browser host is configured with the remote browser data. The remote browser host manages updates to the remote browser data during the remote browsing session. Periodically, updates to the remote browser data are encrypted and transmitted to the remote browser client for storage.
Opening claim text (preview).
What is claimed is: 1. A method, comprising: initiating a remote browsing session between a remote browser client executing on a client device and a remote browser host executing on a remote browser server; receiving, at the remote browser host from the client device, encrypted remote browser data of remote browser data that affects the remote browser session, wherein the remote browser client does not have access to a decryption key for the encrypted remote browser data; decrypting the encrypted remote browser data to reveal the remote browser data; configuring the remote browser host with the remote browser data; managing, at the remote browser host, updates to the remote browser data during the remote browsing session; and periodically encrypting and transmitting updates to the remote browser data to the remote browser client executing on the client device for storage. 2. The method of claim 1 , further comprising: periodically collapsing updates to the remote browser data to remove redundant data; encrypting the collapsed updates to the remote browser data; and transmitting the encrypted collapsed updates to the remote browser data to the remote browser client. 3. The method of claim 1 , further comprising: during the remote browsing session, intercepting a first set of one or more draw commands associated with output of the remote browser host; providing the first set of one or more draw commands to the remote browser client to cause the remote browser client to render one or more portions of output based on the first set of one or more draw commands; receiving input from the remote browser client; and executing the input at the remote browser host. 4. The method of claim 1 , wherein the encrypted remote browser data is sent to an iframe loaded on the remote browser client. 5. The method of claim 1 , wherein the encrypted remote browser data is to be stored through IndexedDB on the client device. 6. The method of claim 1 , further comprising: responsive to the remote browsing session ending, deleting the remote browser data at the remote browser host. 7. The method of claim 1 , wherein the encrypted remote browser data is an opaque binary blob. 8. A method on a client device, comprising: participating in establishing a first remote browsing session between a remote browser client executing on the client device and a first instance of a remote browser host executing on a remote browser server; during the first remote browsing session, periodically receiving encrypted remote browser data at the remote browser client, wherein the remote browser client does not have access to a decryption key for the encrypted remote browser data, and wherein the encrypted remote browser data is related to the first remote browsing session; persisting, on the client device, the encrypted remote browser data; exiting the first remote browsing session; participating in establishing a second remote browsing session between the remote browser client executing on the client device and a second instance of the remote browser host executing on the remote browser server; and during the establishing of the second remote browsing session, transmitting the persisted encrypted remote browser data to the second instance of the remote browser host for decryption and configuration of the second instance of the remote browser host with decrypted remote browser data. 9. The method of claim 8 , wherein the encrypted remote browser data is stored on one of local storage and IndexedDB. 10. The method of claim 8 , wherein the first remote browsing session includes: receiving a first set of one or more draw commands from the first instance of the remote browser host; rendering, by the remote browser client, one or more portions of output based on the first set of one or more draw commands; receiving, by the remote browser client, an input event; transmitting the input event to the first instance of the remote browser host; receiving a second set of one or more draw commands from the first instance of the remote browser host in response to the transmitted input event; and rendering, by the remote browser client, one or more portions of output based on the second set of one or more draw commands. 11. The method of claim 8 , wherein the encrypted remote browser data is received at an iframe loaded on the remote browser client. 12. A non-transitory machine-readable storage medium that provides instructions that, when executed by a processing system cause operations to be performed comprising: initiating a remote browsing session between a remote browser client executing on a client device and a remote browser host executing on a remote browser server; receiving, at the remote browser host from the client device, encrypted remote browser data of remote browser data that affects the remote browser session, wherein the remote browser client does not have access to a decryption key for the encrypted remote browser data; decrypting the encrypted remote browser data to reveal the remote browser data; configuring the remote browser host with the remote browser data; managing, at the remote browser host, updates to the remote browser data during the remote browsing session; and periodically encrypting and transmitting updates to the remote browser data to the remote browser client executing on the client device for storage. 13. The non-transitory machine-readable storage medium of claim 12 , wherein the operations further comprise: periodically collapsing updates to the remote browser data to remove redundant data; encrypting the collapsed updates to the remote browser data; and transmitting the encrypted collapsed updates to the remote browser data to the remote browser client. 14. The non-transitory machine-readable storage medium of claim 12 , wherein the operations further comprise: during the remote browsing session, intercepting a first set of one or more draw commands associated with output of the remote browser host; providing the first set of one or more draw commands to the remote browser client to cause the remote browser client to render one or more portions of output based on the first set of one or more draw commands; receiving input from the remote browser client; and executing the input at the remote browser host. 15. The non-transitory machine-readable storage medium of claim 12 , wherein the encrypted remote browser data is sent to an iframe loaded on the remote browser client. 16. The non-transitory machine-readable storage medium of claim 12 , wherein the encrypted remote browser data is to be stored through IndexedDB on the client device. 17. The non-transitory machine-readable storage medium of claim 12 , further comprising: responsive to the remote browsing session ending, deleting the remote browser data at the remote browser host. 18. The non-transitory machine-readable storage medium of claim 12 , wherein the encrypted remote browser data is an opaque binary blob. 19. The method of claim 1 , wherein the remote browser data includes one or more of: browser extension data; data to be stored in a local database of client device; one or more settings; browser history; autofill history; one or more bookmarks; and one or more passwords. 20. The method of claim 8 , wherein the encrypted remote browser data includes one or more of: browser extension data; data to be stored in a local database of client device; one or more settings; browser history; autofill history; on
wherein the data content is protected, e.g. by encrypting or encapsulating the payload · CPC title
Markers for unambiguous identification of a particular session, e.g. session cookie or URL-encoding · CPC title
based on web technology, e.g. hypertext transfer protocol [HTTP] · CPC title
to a single file or object, e.g. in a secure envelope, encrypted and accessed using a key, or with access control rules appended to the object itself · CPC title
where protection concerns the structure of data, e.g. records, types, queries · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.