DCT
1:18-cv-00269
PersonalWeb Tech LLC v. FanDuel Inc
I. Executive Summary and Procedural Information
- Parties & Counsel:
- Plaintiff: PersonalWeb Technologies, LLC (Texas) and Level 3 Communications, LLC (Delaware). The complaint states that Level 3 has joined pursuant to contractual obligations and that all infringement allegations are made by PersonalWeb.
- Defendant: FanDuel Inc. (Delaware) and FanDuel Limited (United Kingdom)
- Plaintiff’s Counsel: Kent, Beatty & Gordon, LLP; IP Law Group, LLP; SethLaw
- Case Identification: 1:18-cv-00269, S.D.N.Y., 01/11/2018
- Venue Allegations: Venue is alleged to be proper in the Southern District of New York because Defendant FanDuel Inc. has a regular and established place of business in the district and has committed alleged acts of infringement there.
- Core Dispute: Plaintiff alleges that Defendant’s content distribution system for its website, fanduel.com, infringes five patents related to identifying and managing data using content-based identifiers.
- Technical Context: The technology relates to fundamental aspects of distributed data storage and cloud computing, where unique identifiers are generated based on the content of data itself to improve efficiency, reduce redundancy, and control access.
- Key Procedural History: The complaint states that the patents-in-suit have been successfully enforced against third parties, resulting in settlements and non-exclusive licenses. The complaint also notes that the last of the patents-in-suit has expired and that the allegations are directed to the time period before expiration.
Case Timeline
| Date | Event |
|---|---|
| 1995-04-11 | Earliest Priority Date for all Patents-in-Suit |
| 1999-11-02 | U.S. Patent No. 5,978,791 Issues |
| 2005-08-09 | U.S. Patent No. 6,928,442 Issues |
| 2010-09-21 | U.S. Patent No. 7,802,310 Issues |
| 2011-05-17 | U.S. Patent No. 7,945,544 Issues |
| 2012-01-17 | U.S. Patent No. 8,099,420 Issues |
| 2018-01-11 | Complaint Filing Date |
II. Technology and Patent(s)-in-Suit Analysis
U.S. Patent No. 5,978,791 - "Data Processing System Using Substantially Unique Identifiers to Identify Data Items, Whereby Identical Data Items Have the Same Identifiers"
- Patent Identification: U.S. Patent No. 5,978,791, "Data Processing System Using Substantially Unique Identifiers to Identify Data Items, Whereby Identical Data Items Have the Same Identifiers," issued November 2, 1999.
The Invention Explained
- Problem Addressed: In expanding computer networks, conventional methods of naming and locating data files based on their name and storage location were inefficient, created duplicate copies of data, and made it difficult to verify that a retrieved data item was the correct one (’791 Patent, col. 2:11-26; Compl. ¶13).
- The Patented Solution: The invention proposes replacing context-dependent names (like file pathnames) with a "substantially unique identifier" that depends only on the actual content of the data item ('791 Patent, Abstract). This identifier, referred to as a "True Name," is generated by applying a cryptographic hash function to the data's sequence of bits. This allows any data item to be located, managed, and verified based on its content, irrespective of its name or location in the network ('791 Patent, col. 3:6-15; Compl. ¶14-17).
- Technical Importance: This content-centric approach to data identification is a foundational concept in modern cloud computing and content delivery networks, enabling efficient data de-duplication and bandwidth reduction (Compl. ¶11).
Key Claims at a Glance
- The complaint asserts at least claims 38 and 42; Claim 38 is an independent method claim (Compl. ¶37).
- The essential elements of independent claim 38 include:
- (A) Determining a substantially unique identifier for a data item, where the identifier depends only on the data in the item.
- (B) Requesting the data item by sending its identifier from a requester location to a provider location.
- (C) At the provider location: (a) maintaining a set of identifiers for data items it possesses, (b) determining if the requested data item is present by using this set of identifiers, and (c) if present, notifying the requester that it has a copy.
U.S. Patent No. 6,928,442 - "Enforcement and Policing of Licensed Content Using Content-Based Identifiers"
- Patent Identification: U.S. Patent No. 6,928,442, "Enforcement and Policing of Licensed Content Using Content-Based Identifiers," issued August 9, 2005.
The Invention Explained
- Problem Addressed: The patent addresses the challenge of enforcing licenses and policing access to content in a distributed network where files can be easily copied and distributed (’442 Patent, Abstract).
- The Patented Solution: The invention describes a method where a content-based name (similar to the "True Name" from the '791 Patent) is used to manage access. The method involves obtaining this content-based name for a data file, using that name to determine if a copy of the file is present on a computer, and then determining if that copy is an authorized or licensed copy ('442 Patent, col. 2:1-13; Compl. ¶51).
- Technical Importance: This technology provides a framework for digital rights management (DRM) and content control in distributed systems, where verification is based on the content itself rather than mutable metadata.
Key Claims at a Glance
- The complaint asserts at least claims 10 and 11; Claim 10 is an independent method claim (Compl. ¶47).
- The essential elements of independent claim 10 include:
- In a system where files are distributed across computers, obtaining a name for a data file that is based on a function of the file's contents.
- Using that name to determine whether a copy of the data file is present on at least one of the computers.
- Determining whether the present copy is an unauthorized or unlicensed copy.
U.S. Patent No. 7,802,310 - "Controlling Access to Data in a Data Processing System"
- Patent Identification: U.S. Patent No. 7,802,310, "Controlling Access to Data in a Data Processing System," issued September 21, 2010.
- Technology Synopsis: This patent describes a system for controlling access to data items in a network. A first computer receives a request from a second computer that includes a content-dependent name for a data item. The first computer compares this name to a plurality of values to determine if access is authorized and, based on that determination, allows or denies access to the data item (Compl. ¶57-58).
- Asserted Claims: Claims 20, 69, and 71 are asserted; claim 69 is an independent system claim (Compl. ¶55-56).
- Accused Features: The accused features include Defendant's system of using E-Tags (as content-dependent names) in HTTP CONDITIONAL GET requests, where upstream servers compare the received E-Tag to their stored values to determine whether the requesting browser is authorized to use its cached content or must receive new content (Compl. ¶57-58).
U.S. Patent No. 7,945,544 - "Similarity-Based Access Control of Data in a Data Processing System"
- Patent Identification: U.S. Patent No. 7,945,544, "Similarity-Based Access Control of Data in a Data Processing System," issued May 17, 2011.
- Technology Synopsis: This patent details a method for managing data using a two-level hashing process. A "digital key" for a file (e.g., a webpage's index file) is determined from the "part values" (e.g., content-based identifiers of asset files listed in the index file). This digital key is then used as a search key to determine if content has changed (Compl. ¶64-68).
- Asserted Claims: Claims 46, 48, 49, 52, 55, and 56 are asserted; claim 46 is an independent method claim (Compl. ¶62-63).
- Accused Features: The complaint alleges that a webpage's E-Tag serves as the "digital key," generated by hashing the index file's contents, which themselves consist of URIs for asset files that include content fingerprints (the "part values"). This webpage E-Tag is then allegedly used as a search key in CONDITIONAL GET requests to check for changes (Compl. ¶64-67).
U.S. Patent No. 8,099,420 - "Accessing Data in a Data Processing System"
- Patent Identification: U.S. Patent No. 8,099,420, "Accessing Data in a Data Processing System," issued January 17, 2012.
- Technology Synopsis: The patent describes a system for selectively permitting access to data. It involves determining one or more content-dependent identifiers for a data item and then using a database of such identifiers to resolve whether access is authorized. This allows controlled access to data items within a network of computers (Compl. ¶77-78).
- Asserted Claims: Claims 25, 26, 27, 29, 30, 32-36, and 166 are asserted; claim 166 is an independent system claim (Compl. ¶74-75).
- Accused Features: Defendant's system is accused of using hash functions to determine fingerprints and E-Tags ("content-dependent digital identifiers") for its webpage files. These identifiers are allegedly used with databases of E-Tag values on servers and a system of CONDITIONAL GET requests to ensure that downstream caches only access authorized file content (Compl. ¶77-79).
III. The Accused Instrumentality
Product Identification
The accused instrumentality is the system and method used to operate the website fanduel.com, including its content distribution architecture (Compl. ¶20).
Functionality and Market Context
- The complaint alleges the system uses a Ruby on Rails architecture to compile webpage files and generate content "fingerprints" using a message digest hash function (Compl. ¶22). These fingerprints are appended to the files' URLs (Compl. ¶22, ¶34).
- Files are uploaded as objects to an Amazon S3 host system, which generates an associated E-Tag value for each object based on its content (Compl. ¶23-24).
- The system allegedly controls content distribution and caching through the use of HTTP CONDITIONAL GET requests containing an "IF-NONE-MATCH" header with the E-Tag of the cached file (Compl. ¶27).
- If the E-Tag on the server matches the one sent by the browser or intermediate cache, the server responds with an HTTP 304 (Not Modified) message, authorizing the use of the cached content. If they do not match, the server sends an HTTP 200 response with the new content and a new E-Tag (Compl. ¶28-29). This process is alleged to reduce bandwidth by ensuring servers only transmit files whose content has changed (Compl. ¶21).
No probative visual evidence provided in complaint.
IV. Analysis of Infringement Allegations
'5,978,791 Patent Infringement Allegations
| Claim Element (from Independent Claim 38) | Alleged Infringing Functionality | Complaint Citation | Patent Citation |
|---|---|---|---|
| (A) determining a substantially unique identifier for the data item, the identifier depending on and being determined using all of the data in the data item and only the data in the data item... | Defendant’s system determines a "substantially unique identifier" by calculating a hash fingerprint and an E-Tag based on the contents of its files (e.g., asset files). | ¶39 | col. 13:56-61 |
| (B) requesting the particular data item by sending the data identifier of the data item from the requester location to at least one location of a plurality of provider locations... | A user's browser (requester location) sends a CONDITIONAL GET request with an "IF-NONE-MATCH" header containing the E-Tag (the data identifier) to an upstream server (provider location). | ¶40 | col. 16:11-14 |
| (C) on at least some of the provider locations, (a) for each data item... (i) determining a substantially unique identifier... and (ii) making and maintaining a set of identifiers of data items. | Defendant’s origination and intermediate servers (provider locations) determine and maintain a mapping of identifiers (E-Tags and appended content fingerprints in URIs) to authorized content. | ¶41 | col. 7:35-44 |
| (b) determining, based on the set of identifiers, whether the data item corresponding to the requested data identifier is present at the provider location. | A responding server determines if the content corresponding to the received E-Tag is present by comparing that E-Tag to the E-Tag values in its database. | ¶42 | col. 14:52-56 |
| (c) based on the determining, when the provider location determines that the particular data item is present... notifying the requestor that the provider has a copy of the given data item. | When an E-Tag match occurs, the responding server issues an HTTP 304 message, notifying the requesting browser that the same file content is present and re-authorizing its use. | ¶43 | col. 14:57-63 |
- Identified Points of Contention:
- Scope Questions: A primary question may be whether the term "data processing system" as described in the patent, which appears to contemplate a general-purpose, peer-to-peer data management framework, can be construed to read on a standard client-server HTTP caching architecture. Further, does an E-Tag, which is unique within the context of a given web server, meet the "substantially unique identifier" limitation, which the patent specification frames as a system-wide "True Name"?
- Technical Questions: The analysis may turn on whether the function of an HTTP 304 message is equivalent to "notifying the requestor that the provider has a copy." An HTTP 304 message technically confirms that the requester's existing copy is still valid, which may be functionally different from notifying it that the provider has a copy.
'6,928,442 Patent Infringement Allegations
| Claim Element (from Independent Claim 10) | Alleged Infringing Functionality | Complaint Citation | Patent Citation |
|---|---|---|---|
| obtaining a name for a data file, the name being based at least in part on a given function of the data, wherein the data used by the function comprises the contents of the particular file. | Defendant obtains E-Tags and fingerprints for its files by applying a hash function to the contents of those files. | ¶49 | col. 2:1-5 |
| determining, using at least the name, whether a copy of the data file is present on at least one of said computers. | In response to a CONDITIONAL GET request, an origination or intermediate cache server compares the E-Tag in the request to its stored E-Tags to determine if it has a copy of the content. | ¶50 | col. 2:6-8 |
| determining whether a copy of the data file that is present on a at least one of said computers is an unauthorized copy or an unlicensed copy of the data file. | If an E-Tag match occurs, the server determines the downstream copy is "authorized." If there is no match, the server determines the copy is "unauthorized or unlicensed." | ¶51 | col. 2:9-13 |
- Identified Points of Contention:
- Scope Questions: A central issue will likely be whether a standard technical protocol for cache validation constitutes "Enforcement and Policing of Licensed Content," as the patent is titled. The interpretation of "unauthorized or unlicensed" will be critical.
- Technical Questions: Does a server determining that a browser's cache is stale (E-Tag mismatch) and needs updating perform the same function as determining a copy is "unauthorized or unlicensed"? The defense may argue the former is a check for data freshness for efficiency, while the claim requires a substantive check of rights or licensing status.
V. Key Claim Terms for Construction
Term from '791 Patent: "substantially unique identifier"
- The Term: "substantially unique identifier"
- Context and Importance: This term is the core of the invention. Its construction will determine whether standard web technologies like E-Tags, which are not globally unique but provide uniqueness in a specific context (per-server), fall within the scope of the claims. Practitioners may focus on whether "substantially unique" requires uniqueness across the entire internet or merely within the relevant distributed system.
- Intrinsic Evidence for Interpretation:
- Evidence for a Broader Interpretation: The patent specifies that the identifier "depends on all of the data in the data items and only on the data in the data items" ('791 Patent, Abstract), a characteristic shared by content-based E-Tags. The complaint notes the inventors turned to cryptographic hash functions like MD5 and SHA, which are commonly used to generate E-Tags (Compl. ¶15).
- Evidence for a Narrower Interpretation: The specification consistently refers to this identifier as a "True Name," suggesting a specific, branded implementation beyond a generic hash ('791 Patent, col. 6:10). The patent's goal of reducing data duplication system-wide may imply a need for greater uniqueness than that provided by a standard E-Tag, which only guarantees uniqueness for a given resource on a specific origin server ('791 Patent, col. 3:11-15).
Term from '442 Patent: "unauthorized copy or an unlicensed copy"
- The Term: "unauthorized copy or an unlicensed copy"
- Context and Importance: This phrase is central to distinguishing the claimed invention from a standard caching mechanism. Whether an E-Tag mismatch signifies an "unauthorized" copy or simply a "stale" copy will likely be a key point of dispute.
- Intrinsic Evidence for Interpretation:
- Evidence for a Broader Interpretation: From a server's perspective, a client with a mismatched E-Tag is not "authorized" to use its cached version and must fetch a new one. The patent does not appear to explicitly limit the basis of the authorization to a specific licensing scheme.
- Evidence for a Narrower Interpretation: The patent's title, "Enforcement and Policing of Licensed Content," and abstract strongly suggest a purpose related to digital rights management, not technical efficiency. A court may find that determining a copy is "unauthorized" requires a check against a set of licenses or permissions, a function not inherent in the HTTP "IF-NONE-MATCH" protocol, which is designed to conserve bandwidth.
VI. Other Allegations
- Indirect Infringement: The complaint alleges that Defendant "forced" intermediate cache servers and end-user browsers to perform the claimed steps by sending E-Tags in HTTP messages and appending fingerprints to URLs (Compl. ¶40, ¶41, ¶42). These allegations may form the basis for a claim of induced infringement, suggesting that Defendant's system architecture instructs and causes other entities (caches, browsers) to perform the infringing methods.
VII. Analyst’s Conclusion: Key Questions for the Case
- A core issue will be one of technological scope: can patented methods for a novel, general-purpose data management system be construed to cover the subsequent, widespread, and standardized use of HTTP caching protocols (like E-Tags and Conditional GET requests), or does the specific implementation and purpose of the web protocols place them outside the patents' scope?
- A second key question will be one of functional equivalence and intent: does a server's determination that a client's cache is stale via an E-Tag mismatch—an automated process for ensuring data freshness and efficiency—perform the same function as the patented step of "determining whether a copy ... is an unauthorized copy or an unlicensed copy," which implies a substantive evaluation of access rights?