IP Library Granted Patent US 10,747,787
Granted Patent B2
US 10,747,787 · App. 15/405,087 · Granted Aug 18, 2020

Web cookie virtualization

Inventors: Mehrdad Reshadi (Sunnyvale, CA); Madhukar Kedlaya (Santa Clara, CA); Jasvir Nagra (Redwood City, CA); Rajaram Gaunker (Santa Clara, CA)
Assignee: Akamai Technologies, Inc.
G06F16/289G06F9/465G06F9/543G06F21/54G06F21/64H04L9/3236H04L63/0414H04L63/0428H04L67/02G06F2212/464G06F2212/465G06F2212/468G06F2221/2119H04L63/168H04L2209/16H04L2209/34H04L2209/601H04L2209/603
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 10,747,787
App. No.
15/405,087
Granted
Aug 18, 2020
Kind
B2
Abstract

The web cookie data specifying a web cookie associated with an encoded domain is received. An identifier of an original domain corresponding to the encoded domain is determined. The web cookie data is stored in a stored web cookie in a manner that associates the web cookie data to the original domain but the stored web cookie is scoped to a domain scope that includes the encoded domain.

Claims (32)

1. A method of storing web cookie data, comprising:

receiving the web cookie data specifying a web cookie associated with an encoded domain, wherein the encoded domain is a domain that is different from an original domain;

using a processor to determine an identifier of the original domain corresponding to the encoded domain; and

storing the web cookie data in a stored web cookie, wherein the stored web cookie is a container cookie stored as a single cookie entry, wherein the single cookie entry stores a plurality of virtualized cookies, each virtualized cookie storing a different set of web cookie data, each virtualized cookie specifying a different web cookie, and wherein storing the web cookie data in the stored web cookie comprises:

storing the web cookie data in the stored web cookie in a manner that associates the web cookie data to the original domain but the stored web cookie is scoped to a domain scope that includes the encoded domain, wherein each of the plurality of virtualized cookies stored in the container cookie is associated with the original domain by storing a key of the container cookie comprising data that identifies the original domain, and wherein the stored web cookie is scoped to a domain scope that includes the encoded domain by defining a domain attribute of the stored web cookie to the domain scope that includes the encoded domain.

2. The method of claim 1 , wherein a location address of web content that provided the web cookie data is an encoded location identifier that includes the encoded domain and the encoded location identifier was generated by encoding an original location identifier that includes the original domain.

3. The method of claim 1 , wherein a subdomain included in the encoded domain was generated by encoding at least a portion of the original domain.

4. The method of claim 1 , wherein the method is at least in part performed in response to a call to a web API.

5. The method of claim 1 , wherein determining the identifier of the original domain includes decoding at least a portion of the encoded domain.

6. The method of claim 1 , wherein determining the identifier of the original domain includes encoding each of a plurality of identifiers of candidate original domains and comparing each result of the encoding with at least a portion of the encoded domain.

7. The method of claim 1 , wherein determining the identifier of the original domain includes obtaining a mapping cookie scoped to the encoded domain and using a value of the mapping cookie to determine the identifier of the original domain.

8. The method of claim 7 , wherein the value of the mapping cookie is decoded to obtain the identifier of the original domain.

9. The method of claim 1 , wherein determining the identifier of the original domain includes obtaining a mapping cookie scoped to the encoded domain and validating the mapping cookie by comparing a result of encoding a value derived using a value of the mapping cookie with at least a portion of the encoded domain.

10. The method of claim 1 , wherein the identifier of the original domain is an identifier of the stored web cookie.

11. The method of claim 1 , further comprising identifying the stored web cookie in a cookie storage using the determined identifier of the original domain.

12. The method of claim 1 , wherein a key of the stored web cookie includes at least a portion of the identifier of the original domain.

13. The method of claim 1 , wherein the stored web cookie stores a metadata entry that identifies a total size of the stored web cookie.

14. The method of claim 1 , further comprising performing virtual cookie garbage collection at least in part by analyzing one or more virtual cookies stored in the stored web cookie to identify and remove any expired virtual cookies.

15. The method of claim 1 , wherein the stored web cookie is a second virtual cookie container cookie associated with the original domain and storing the web cookie data in the stored web cookie includes determining that a first virtual cookie container cookie associated with the original domain cannot store the received web cookie data without exceeding a maximum cookie size.

16. The method of claim 1 , wherein the stored web cookie stores a metadata entry that identifies an earliest expiration time of expiration times of all virtual cookies specified in the stored web cookie.

17. The method of claim 1 , wherein the domain scope that includes the encoded domain encompasses all domains that share at least a domain name of the encoded domain.

18. A system of storing web cookie data, comprising:

a processor configured to:

receive the web cookie data specifying a web cookie associated with an encoded domain, wherein the encoded domain is a domain that is different from an original domain; and

determine an identifier of the original domain corresponding to the encoded domain; and

a memory coupled with the processor and configured to store the web cookie data in a stored web cookie, wherein the stored web cookie is a container cookie stored as a single cookie entry, wherein the single cookie entry stores a plurality of virtualized cookies, each virtualized cookie storing a different set of web cookie data, each virtualized cookie specifying a different web cookie, and wherein storing the web cookie data in the stored web cookie comprises:

storing the web cookie data in the stored web cookie in a manner that associates the web cookie data to the original domain but the stored web cookie is scoped to a domain scope that includes the encoded domain, wherein each of the plurality of virtualized cookies stored in the container cookie is associated with the original domain by storing a key of the container cookie comprising data that identifies the original domain, and wherein the stored web cookie is scoped to a domain scope that includes the encoded domain by defining a domain attribute of the stored web cookie to the domain scope that includes the encoded domain.

19. A method of obtaining data of web cookies, comprising:

receiving a request for one or more web cookies associated with an encoded domain, wherein the encoded domain is a domain that is different from an original domain;

using a processor to determine an identifier of the original domain corresponding to the encoded domain;

utilizing the identifier of the original domain to identify a container web cookie scoped to a domain scope that includes the encoded domain but corresponds to the original domain, wherein the container web cookie includes one or more key value pairs of the one or more requested web cookies; and

obtaining the one or more key value pairs of the one or more requested web cookies from the container web cookie.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 16, 2020
From: INSTART LOGIC, INC.
To: AKAMAI TECHNOLOGIES, INC.
Reel/Frame 052120/0773 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 3, 2017
From: RESHADI, MEHRDAD; KEDLAYA, MADHUKAR; NAGRA, JASVIR; GAUNKER, RAJARAM
To: INSTART LOGIC, INC.
Reel/Frame 041466/0664 →
Continuity (10)
Continuation In Part PCTUS2016053102 · Sep 22, 2016
Continuation In Part 15079396 · Mar 24, 2016
Continuation In Part 15079396 · Mar 24, 2016
Continuation In Part 14206344 · Mar 12, 2014
Provisional Application 62279468 · Jan 15, 2016
Provisional Application 62279468 · Jan 15, 2016
Provisional Application 62279468 · Jan 15, 2016
Provisional Application 62222116 · Sep 22, 2015
Provisional Application 62222116 · Sep 22, 2015
Related Publication 20170169100A1 · Jun 15, 2017