IP Library Granted Patent US 12,192,227
Granted Patent B2
US 12,192,227 · App. 18/100,480 · Granted Jan 7, 2025

Secure application for accessing web resources

Inventors: Scott M. Petry (Portola Valley, CA); Ramesh Rajagopal (Los Altos, CA); Peter K. Lund (San Francisco, CA); Fredric L. Cox (San Jose, CA); Adam P. Moore (San Francisco, CA); Leslie L. Dunston (Foster City, CA)
Assignee: Authentic8, Inc.
H04L63/1433H04L45/306H04L63/0209H04L63/0428H04L63/083H04L63/0876H04L63/10H04L63/123H04L67/02H04L67/563
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,192,227
App. No.
18/100,480
Granted
Jan 7, 2025
Kind
B2
Abstract

Embodiments described herein may be directed to systems, methods, apparatuses, devices, computer program products, computer-executable instructions, and/or applications for providing a remote cloud browsing session. An apparatus may receive a request for Internet content from a user device, access the Internet content from an Internet content source, and transmit second Internet content to the user device based on the requested Internet content.

Claims (59)

1. A computing device at a first location through which Internet content is accessed during a remote cloud browsing session, the computing device comprising:

at least one memory comprising instructions; and

at least one processing device configured for executing the instructions, wherein the instructions cause the at least one processing device to perform operations of:

receiving a request for the Internet content from a user device located in a second location different from the first location, wherein the user device executes an Internet application associated with the remote cloud browsing session, and wherein the Internet content is associated with the remote cloud browsing session;

determining the second location associated with the user device;

communicating with an Internet content source to access the Internet content, such that the user device is substantially insulated from communicating directly with the Internet content source or receiving the Internet content directly from the Internet content source;

transmitting second Internet content to the user device, wherein the user device initiates display of, using a graphical processing unit (GPU) comprised in the user device, the second Internet content, or third Internet content based on the second Internet content, to a user of the user device;

logging data associated with at least one of the request for the Internet content from the user device located in the second location, the second location associated with the user device, the remote cloud browsing session, the second Internet content, or the third Internet content, thereby resulting in logged data; and

enabling a remote device application, associated with a remote device located in a remote location different from the first location and the second location, to access the logged data,

wherein access to the logged data enables determination of data associated with at least one of the request for the Internet content from the user device located in the second location, the second location associated with the user device, the remote cloud browsing session, the second Internet content, the third Internet content, the user device, or the Internet application.

2. The computing device of claim 1 , wherein the instructions cause the at least one processing device to further perform an operation of:

initiating storage of the logged data in a repository.

3. The computing device of claim 1 , wherein the second Internet content includes computing instructions for generating an image representation of at least a portion of the Internet content, wherein the third Internet content comprises the image representation of the at least the portion of the Internet content.

4. The computing device of claim 1 , wherein the instructions cause the at least one processing device to further perform further operations of:

receiving, from the user device located in the second location, a request for the logged data; and

transmitting, to the user device, the logged data associated with at least one of the request for the Internet content from the user device located in the second location, the second location associated with the user device, and an enterprise network associated with the user device.

5. The computing device of claim 1 , wherein the instructions cause the at least one processing device to further perform further operations of:

receiving, from the user device located in the second location, a request to delete the logged data; and

deleting, based on the request to delete the logged data, the logged data associated with at least one of the request for the Internet content from the user device located in the second location, the second location associated with the user device, and an enterprise network associated with the user device.

6. The computing device of claim 1 , wherein the Internet content comprises a first content portion and a second content portion, wherein the first content portion comprises a file portion, and wherein the instructions cause the at least one processing device to further perform further operations of:

identifying, prior to transmitting the second Internet content associated with the remote cloud browsing session to the user device, the first content portion of the Internet content and the second content portion of the Internet content; and

generating the second Internet content based on the second content portion of the Internet content.

7. The computing device of claim 1 , wherein the Internet application executed by the user device comprises at least one of an Internet browser, a mobile application, and a background computing process executed on the user device.

8. The computing device of claim 1 , wherein the instructions cause the at least one processing device to further perform further operations of:

receiving a request for fourth Internet content from a second user device located in a third location different from the first location, wherein the second user device executes a second Internet application associated with the remote cloud browsing session, and wherein the fourth Internet content is associated with the remote cloud browsing session, such that the remote cloud browsing session is associated with more than one user device; and

transmitting fifth Internet content associated with the remote cloud browsing session to the second user device, wherein the second user device initiates display of, using the graphical processing unit (GPU) comprised in the second user device, the fifth Internet content, or sixth Internet content based on the fifth Internet content, to a second user of the second user device.

9. The computing device of claim 1 , wherein the access to the logged data enables the determination of the data associated with the at least one of the request for the Internet content from the user device located in the second location, the second location associated with the user device, the remote cloud browsing session, the second Internet content, the third Internet content, the user device, or the Internet application without breaking Internet traffic associated with at least one of the remote cloud browsing session, the user device, or the Internet application.

10. A method associated with a remote cloud browsing session executed at a first location, comprising:

receiving, using one or more computing device processors, a request for Internet content from a user device located in a second location different from the first location, wherein the user device executes an Internet application associated with the remote cloud browsing session, and wherein the Internet content is associated with the remote cloud browsing session;

determining, using the one or more computing device processors, the second location associated with the user device;

communicating, using the one or more computing device processors, with an Internet content source to access the Internet content, such that the user device is substantially insulated from communicating directly with the Internet content source or receiving the Internet content directly from the Internet content source;

transmitting, using the one or more computing device processors, second Internet content to the user device, wherein the user device initiates display of, using a graphical processing unit (GPU) comprised in the user device, the second Internet content, or third Internet content based on the second Internet content, to a user of the user device;

logging, using the one or more computing device processors, data associated with at least one of the request for the Internet content from the user device located in the second location, the second location associated with the user device, the remote cloud browsing session, the second Internet content, or the third Internet content, thereby resulting in logged data; and

enabling, using the one or more computing device processors, a remote device application, associated with a remote computing system located in a remote location different from the first location and the second location, to access the logged data,

wherein access to the logged data enables determination of data associated with at least one of the request for the Internet content from the user device located in the second location, the second location associated with the user device, the remote cloud browsing session, the second Internet content, the third Internet content, the user device, an enterprise network, or the Internet application.

11. The method of claim 10 , wherein the method further comprises:

initiating storage of the logged data in a repository.

12. The method of claim 10 , wherein the second Internet content includes computing instructions for generating the third Internet content, wherein the third Internet content comprises an image representation of at least a portion of the Internet content.

13. The method of claim 10 , wherein the remote device application comprises at least one of a security application, a machine learning application, an analytics application, a trend analysis application, a threat detection or hunting application, and an artificial intelligence application.

14. The method of claim 10 , wherein the remote device application generates, based on the logged data, data for visual display.

15. The method of claim 10 , wherein the access to the logged data enables the determination of the data associated with the at least one of the request for the Internet content from the user device located in the second location, the second location associated with the user device, the remote cloud browsing session, the second Internet content, the third Internet content, the user device, the enterprise network, or the Internet application without intercepting live network traffic associated with the remote cloud browsing session.

16. A method associated with a remote cloud browsing session executed at a first location, comprising:

receiving, using one or more computing device processors, a request for Internet content from a user device located in a second location different from the first location, wherein the user device executes an Internet application associated with the remote cloud browsing session, and wherein the Internet content is associated with the remote cloud browsing session;

communicating, using the one or more computing device processors, with an Internet content source to access the Internet content, such that the user device is substantially insulated from communicating directly with the Internet content source or receiving the Internet content directly from the Internet content source;

transmitting, using the one or more computing device processors, second Internet content to the user device, wherein the user device initiates display of, using a graphical processing unit (GPU) comprised in the user device, the second Internet content, or third Internet content based on the second Internet content, to a user of the user device;

logging, using the one or more computing device processors, data associated with at least one of the request for the Internet content from the user device located in the second location, the second location associated with the user device, the remote cloud browsing session, the second Internet content, or the third Internet content, thereby resulting in logged data; and

enabling, using the one or more computing device processors, a remote system application, associated with a remote computing system located in a remote location different from the first location and the second location, to access the logged data from a repository,

wherein access to the logged data enables determination of data associated with at least one of the request for the Internet content from the user device located in the second location, the second location associated with the user device, the remote cloud browsing session, the second Internet content, the third Internet content, the user device, an enterprise network, or the Internet application.

17. The method of claim 16 , wherein the method further comprises:

initiating storage of the logged data in the repository.

18. The method of claim 16 , wherein the second Internet content includes computing instructions for generating the third Internet content comprising an image representation of at least a portion of the Internet content, or wherein the second Internet content comprises the image representation of the at least the portion of the Internet content.

19. The method of claim 16 , wherein the access to the logged data enables the determination of the data associated with the at least one of the request for the Internet content from the user device located in the second location, the second location associated with the user device, the remote cloud browsing session, the second Internet content, the third Internet content, the user device, the enterprise network, or the Internet application without intercepting or accessing network traffic associated with at least one of the remote cloud browsing session, the user device, the second location, the enterprise network, or the Internet application.

20. The method of claim 16 , further comprising:

identifying, prior to transmitting the second Internet content associated with the remote cloud browsing session to the user device, a first content portion of the Internet content and a second content portion of the Internet content;

generating the second Internet content based on the second content portion of the Internet content;

transmitting a file portion to a second computing device located at a third location for file processing of the file portion,

wherein the file processing comprises determining contents of the file portion;

generating a modified file portion based on the determining the contents of the file portion; and

transmitting the modified file portion to the user device located at the second location.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 2, 2024
From: PETRY, SCOTT M.; RAJAGOPAL, RAMESH; LUND, PETER K.; COX, FREDRIC L.; MOORE, ADAM P.; DUNSTON, LESLIE L.
To: AUTHENTIC8, INC.
Reel/Frame 068165/0240 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 9, 2023
From: PETRY, SCOTT M.; RAJAGOPAL, RAMESH; LUND, PETER K.; COX, FREDRIC L.; MOORE, ADAM P.; DUNSTON, LESLIE L.
To: AUTHENTIC8, INC.
Reel/Frame 062645/0668 →
Continuity (9)
Continuation 17341165 · Jun 7, 2021
Continuation 16747430 · Jan 20, 2020
Continuation In Part 16181324 · Nov 5, 2018
Continuation In Part 16036846 · Jul 16, 2018
Continuation 15454915 · Mar 9, 2017
Continuation In Part 15395914 · Dec 30, 2016
Continuation 15049075 · Feb 20, 2016
Provisional Application 62118862 · Feb 20, 2015
Related Publication 20230171284A1 · Jun 1, 2023
References Cited (104)
US 6138168A · Kelly et al. · 2000 [cited by applicant]
US 6704024B2 · Robotham et al. · 2004 [cited by applicant]
US 6963916B1 · Pugaczewski et al. · 2005 [cited by applicant]
US 7120142B1 · Oz et al. · 2006 [cited by applicant]
US 7334254B1 · Boydstun et al. · 2008 [cited by applicant]
US 7363363B2 · Dal Canto et al. · 2008 [cited by applicant]
US 7774363B2 · Lim · 2010 [cited by applicant]
US 7779034B2 · Pedersen et al. · 2010 [cited by applicant]
US 7934253B2 · Overcash et al. · 2011 [cited by applicant]
US 7958012B2 · Hudak et al. · 2011 [cited by applicant]
US 8266685B2 · Abzarian et al. · 2012 [cited by applicant]
US 8306807B2 · Van Guilder et al. · 2012 [cited by applicant]
US 8332626B2 · Mansfield · 2012 [cited by applicant]
US 8375434B2 · Cottrell et al. · 2013 [cited by applicant]
US 8443416B2 · Sabin et al. · 2013 [cited by applicant]
US 8484718B2 · Chacko et al. · 2013 [cited by applicant]
US 8555273B1 · Chia et al. · 2013 [cited by applicant]
US 8615795B2 · Cottrell et al. · 2013 [cited by applicant]
US 8763082B2 · Huber et al. · 2014 [cited by applicant]
US 8776169B2 · Rajagopal et al. · 2014 [cited by applicant]
US 8868724B2 · Goodwin et al. · 2014 [cited by applicant]
US 8881227B2 · Rajagopal et al. · 2014 [cited by applicant]
US 8984621B2 · Burch et al. · 2015 [cited by applicant]
US 9075895B2 · Lindsey et al. · 2015 [cited by applicant]
US 9246904B2 · Rajagopal et al. · 2016 [cited by applicant]
US 9306972B2 · Mansfield · 2016 [cited by applicant]
US 9313227B2 · Amiga · 2016 [cited by applicant]
US 9391832B1 · Song et al. · 2016 [cited by applicant]
US 9521118B2 · Cottrell et al. · 2016 [cited by applicant]
US 9537873B2 · Petry et al. · 2017 [cited by applicant]
US 9712386B1 · Chen et al. · 2017 [cited by applicant]
US 9787637B2 · Petry et al. · 2017 [cited by applicant]
US 10027625B2 · Petry et al. · 2018 [cited by applicant]
US 10027700B2 · Petry et al. · 2018 [cited by applicant]
US 10027714B2 · Rajagopal et al. · 2018 [cited by applicant]
US 10542031B2 · Petry et al. · 2020 [cited by applicant]
US 10686824B2 · Petry et al. · 2020 [cited by applicant]
US 10834115B2 · Gluck · 2020 [cited by applicant]
US 11032309B2 · Petry et al. · 2021 [cited by applicant]
US 11563766B2 · Petry et al. · 2023 [cited by applicant]
US 20030050932A1 · Pace et al. · 2003 [cited by applicant]
US 20030120593A1 · Bansal et al. · 2003 [cited by applicant]
US 20030135543A1 · Kittredge et al. · 2003 [cited by applicant]
US 20040049702A1 · Subramaniam et al. · 2004 [cited by applicant]
US 20040107360A1 · Hermann et al. · 2004 [cited by applicant]
US 20040205101A1 · Radhakrishnan · 2004 [cited by applicant]
US 20040239681A1 · Robotham et al. · 2004 [cited by applicant]
US 20050097353A1 · Patrick et al. · 2005 [cited by applicant]
US 20060005008A1 · Kao · 2006 [cited by applicant]
US 20060041755A1 · Pemmaraju · 2006 [cited by applicant]
US 20070016949A1 · Dunagan et al. · 2007 [cited by applicant]
US 20070101435A1 · Konanka et al. · 2007 [cited by applicant]
US 20070115990A1 · Asati et al. · 2007 [cited by applicant]
US 20070214359A1 · Williamson · 2007 [cited by applicant]
US 20080016551A1 · Pinkas et al. · 2008 [cited by applicant]
US 20080271020A1 · Leitz et al. · 2008 [cited by applicant]
US 20090187919A1 · Maes · 2009 [cited by applicant]
US 20100024036A1 · Morozov et al. · 2010 [cited by applicant]
US 20100057836A1 · Anbuselvan · 2010 [cited by applicant]
US 20100125902A1 · Killian et al. · 2010 [cited by applicant]
US 20110184993A1 · Chawla et al. · 2011 [cited by applicant]
US 20110247045A1 · Rajagopal et al. · 2011 [cited by applicant]
US 20130014259A1 · Gribble et al. · 2013 [cited by applicant]
US 20130290404A1 · Rajabi et al. · 2013 [cited by applicant]
US 20130335436A1 · Lindsey · 2013 [cited by applicant]
US 20130340028A1 · Rajagopal et al. · 2013 [cited by applicant]
US 20150106683A1 · Lindsey et al. · 2015 [cited by applicant]
US 20150222600A1 · Cottrell et al. · 2015 [cited by applicant]
US 20160217274A1 · Byrne et al. · 2016 [cited by applicant]
US 20160352803A1 · Amiga et al. · 2016 [cited by applicant]
US 20170034190A1 · May · 2017 [cited by applicant]
US 20170111318A1 · Petry et al. · 2017 [cited by applicant]
US 20170208079A1 · Cammarota et al. · 2017 [cited by applicant]
US 20180034773A1 · Petry et al. · 2018 [cited by applicant]
US 20180069840A1 · Chilakapati et al. · 2018 [cited by applicant]
US 20180205704A1 · Terry et al. · 2018 [cited by applicant]
US 20180288087A1 · Hittel et al. · 2018 [cited by applicant]
US 20180293375A1 · Wang et al. · 2018 [cited by applicant]
US 20190253398A1 · Sun et al. · 2019 [cited by applicant]
US 20210297394A1 · Petry et al. · 2021 [cited by applicant]
EP 1233333A1 · 2002 [cited by applicant]
WO 2008156924A1 · 2008 [cited by applicant]
WO 2018165602A1 · 2018 [cited by applicant]
International Search Report and the Written Opinion of the International Searching Authority in connection with PCT Application No. PCT/US2016/018828, dated Jun. 8, 2016, 10 pages. [cited by applicant]
Koved, Larry, et al.., “Security challenges for Enterprise Java in an e-business environment”, Retrieved from http://ieeexplore.ieee.org/stamp.jsp?arnumber=5386964, IBM Systems Journal 40.1 (2001): 130-152, Published 20… [cited by applicant]
Guitart, Jordi et al., “Characterizing secure dynamic web applications scalability”, Retrieved from http://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=1419933, 19th IEEE International Parallel and Distributed Processin… [cited by applicant]
International Search Report and Written Opinion dated Aug. 23, 2011 in connection with International Application No. PCT/US2011/030620, 7 pages. [cited by applicant]
Tzi-cker Chiueh, et al., “Spout: a transparent proxy for safe execution of Java applets”, in Selected Areas in Communications, IEEE Journal, vol. 20, No. 7, pp. 1426-1433, Sep. 2002, Web Accessed; Sep. 18, 2015, doi: 10… [cited by applicant]
Berryman, A., et al., “VDBench: A Benchmarking Toolkit for Thin-Client Based Virtual Desktop Environments”, (CloudCom), 2010 IEEE Second Intl Conf., pp. 480-487, Nov. 30-Dec. 3, 2010, Accessed; Sep. 18, 2015, doi: 10.11… [cited by applicant]
Lesueur, F., et al., “SAFE-OS: A secure and usable desktop operating system”, 2010 Fifth Intl Conf., pp. 1-7, Oct. 10-13, 2010, Web Accessed; Sep. 18, 2015, doi: 10.1109/CRISIS.2010.5764916, URL: http://ieeexplore.ieee.… [cited by applicant]
“Tab (GUI: Difference between revisions)”, Wikipedia, Wikimedia Foundation, published Apr. 19, 2009, Accessed Web, Apr. 18, 2014, <http://en.wikipedia.org/w/index.php?title=Tab_(GUI)&diff=284321974&oldid=283>, 1 page. [cited by applicant]
“Internet Explorer—7—Wikipedia, the free encyclopedia”, Wikipedia, the free encyclopedia, published Apr. 9, 2009, Accessed—Web. Oct. 10, 2013, <http://en.wikipedia.org/w/index.php?title=Internet_Explorer_7&oldid=2827888… [cited by applicant]
Tiwari, Auy, et al., “A multifactor security protocol for wireless payment-secure-web authentication using mobile devices”, Retrieved from https://arxiv.org/ftp/arxiv/papers/1111/1111.3010.pdf, arXiv prepint arXiv:1111.… [cited by applicant]
Tom Scholl, “Internet Routing and Traffic Engineering”, AWS Architecture Blog, Retrieved from https://aws.amazon.com/blogs/architecture/internet-routing-and-traffic-engineering/, Published Dec. 15, 2014 (Year:2014), 14 … [cited by applicant]
Petry et al., U.S. Appl. No. 15/454,915. [cited by applicant]
Petry et al., U.S. Appl. No. 16/181,324. [cited by applicant]
International Search Report and Written Opinion dated Feb. 28, 2020 in connection with International Application No. PCT/US2019/059901, 8 pages. [cited by applicant]
Rajagopal et al., U.S. Appl. No. 16/036,813. [cited by applicant]
Extended European Search Report dated Feb. 20, 2019 in connection with European Application No. 18212536.9, 10 pages. [cited by applicant]
Anonymous, “Proxy server—Wikipedia”, retrieved from Internet: URL:https:\\en.wikipedia.org/w/index.php?title=Proxy_server&oldid=865232195, [retrieved on Feb. 8, 2019], Oct. 22, 2018, XP55554267, 14 pages. [cited by applicant]
Anonymous, “Tor (anonymity network)—Wikipedia”, retrieved from Internet URL:https://en.wikipedia.org/w/index.pho?title=Tor_(anonymity network)&oldid=866478846, [retrieved on Feb. 8, 2019], Oct. 30, 2018, 36 pages. [cited by applicant]
Petry et al., U.S. Appl. No. 16/036,822. [cited by applicant]
Petry et al., U.S. Appl. No. 16/036,846. [cited by applicant]
Petry et al., U.S. Appl. No. 16/747,430. [cited by applicant]
Cited By (1)
US 12,724,876