DCT

5:18-cv-03582

PersonalWeb Tech LLC v. FanDuel Inc

Key Events
Complaint

I. Executive Summary and Procedural Information

  • Parties & Counsel:
  • 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.
  • Core Dispute: Plaintiff alleges that Defendant’s website, fanduel.com, and its underlying content delivery architecture infringe five patents related to using content-based identifiers for efficient data retrieval, caching, and access control in distributed computer networks.
  • Technical Context: The technology relates to fundamental aspects of cloud computing and content delivery networks, where data is identified by a unique "fingerprint" of its content rather than by its name or location.
  • Key Procedural History: The complaint notes that the patents-in-suit have been successfully enforced against third parties, resulting in settlements and non-exclusive licenses. It also states that the last of the patents-in-suit has expired and the infringement allegations are directed to the time period before expiration. Subsequent to their issuance, the asserted patents have been the subject of multiple reexamination and inter partes review proceedings, with some claims being canceled and others confirmed.

Case Timeline

Date Event
1995-04-11 Priority Date for all Patents-in-Suit
1999-11-02 U.S. Patent No. 5,978,791 Issued
2005-08-09 U.S. Patent No. 6,928,442 Issued
2010-09-21 U.S. Patent No. 7,802,310 Issued
2011-05-17 U.S. Patent No. 7,945,544 Issued
2012-01-17 U.S. Patent No. 8,099,420 Issued
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. 5978791, "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 distributed computer networks, conventional methods of naming and locating data based on file names and directory paths become inefficient and unreliable. This approach can lead to ambiguity, redundant data copies, and difficulty in verifying data integrity across different locations. (Compl. ¶13; ’791 Patent, col. 1:12–2:40).
  • The Patented Solution: The invention proposes replacing context-dependent names with a "substantially unique identifier," which the patent specification calls a "True Name." This identifier is generated by applying a cryptographic hash function to the entire content of a data item. This content-based identifier is independent of the data's name or location, allowing any data item to be located, verified, and managed based solely on what it contains. (Compl. ¶¶14, 16; ’791 Patent, col. 3:24–34).
  • Technical Importance: This approach established a method for content-addressable storage, a foundational concept for modern distributed systems like content delivery networks (CDNs) and cloud storage, by enabling efficient data de-duplication and integrity verification. (Compl. ¶11).

Key Claims at a Glance

  • The complaint asserts independent claim 38 and dependent claim 42.
  • Essential elements of independent claim 38, a method for locating a data item, include:
    • (A) Determining a substantially unique identifier for a data item based only on all the data within that item.
    • (B) Requesting the data item by sending its identifier from a requester location to one or more provider locations.
    • (C) At a provider location: (a) maintaining a set of identifiers for its available data items; (b) determining if the requested identifier matches an identifier in its set; and (c) if a match is found, notifying the requester that it has a copy of the data item.
  • The complaint reserves the right to assert other claims. (Compl. ¶37).

U.S. Patent No. 6,928,442 - "Enforcement and Policing of Licensed Content Using Content-Based Identifiers"

  • Patent Identification: U.S. Patent No. 6928442, "Enforcement and Policing of Licensed Content Using Content-Based Identifiers," issued August 9, 2005.

The Invention Explained

  • Problem Addressed: Distributing licensed content across a network makes it difficult to police and enforce access rights, as traditional identifiers like filenames are not reliably tied to the content itself and can be easily altered. (’442 Patent, col. 2:1–18).
  • The Patented Solution: The invention uses content-based identifiers to police content. A system can determine if a requested file is authorized by comparing its content-based name against a database of names corresponding to licensed or authorized content. This allows the system to identify unauthorized or unlicensed copies of a file regardless of its name or location. (’442 Patent, Abstract; col. 4:21–36).
  • Technical Importance: This technology extends the concept of content-based addressing to digital rights management (DRM) and access control, a key function for networks that distribute licensed media. (Compl. ¶48).

Key Claims at a Glance

  • The complaint asserts independent claim 10 and dependent claim 11.

  • Essential elements of independent claim 10, a method for distributing files, include:

    • Obtaining a name for a data file that is based at least in part on the file's contents.
    • Using that name to determine whether a copy of the data file is present on at least one computer in a plurality of computers.
    • Determining whether a present copy of the data file is an unauthorized or unlicensed copy.
  • The complaint reserves the right to assert other claims. (Compl. ¶47).

  • Multi-Patent Capsule: U.S. Patent No. 7,802,310

    • Patent Identification: U.S. Patent No. 7802310, "Controlling Access to Data in a Data Processing System," issued September 21, 2010.
    • Technology Synopsis: The patent describes a system for controlling data access 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: Independent claim 69 and dependent claims 20 and 71 are asserted. (Compl. ¶55).
    • Accused Features: The accused features are the use of E-Tags as content-dependent names in HTTP CONDITIONAL GET requests, which are compared against stored E-Tag values on upstream servers to determine whether a browser is authorized to use its cached content or must receive updated content. (Compl. ¶¶57–58).
  • Multi-Patent Capsule: U.S. Patent No. 7,945,544

    • Patent Identification: U.S. Patent No. 7945544, "Similarity-Based Access Control of Data in a Data Processing System," issued May 17, 2011.
    • Technology Synopsis: The patent discloses a method where a "particular digital key" for a file is determined based on applying hash functions to its constituent parts. This key is added to a database. A "search key" derived from search criteria is then used to query the database and find information about the corresponding file. (Compl. ¶¶64–69).
    • Asserted Claims: Independent claim 46 and dependent claims 48, 49, 52, 55, and 56 are asserted. (Compl. ¶62).
    • Accused Features: The accused functionality involves generating an E-Tag (the "digital key") for a webpage by hashing its index file, which contains URIs of the page's asset files. This E-Tag is later used as a "search key" in "IF-NONE-MATCH" requests to check if the webpage content has changed. (Compl. ¶¶64, 67–68).
  • Multi-Patent Capsule: U.S. Patent No. 8,099,420

    • Patent Identification: U.S. Patent No. 8099420, "Accessing Data in a Data Processing System," issued January 17, 2012.
    • Technology Synopsis: The patent describes a system that determines one or more content-dependent digital identifiers for a data item. The system then selectively permits the data item to be accessed by computers in a network based on whether at least one of its identifiers corresponds to an entry in one or more databases. (Compl. ¶¶77–78).
    • Asserted Claims: Independent claim 166 and dependent claims 25-27, 29, 30, and 32-36 are asserted. (Compl. ¶74).
    • Accused Features: The accused system allegedly applies hash functions to determine fingerprints and E-Tags ("content-dependent digital identifiers") for webpage files. Access to cached content is then controlled by comparing these identifiers to entries in databases on webpage servers via "CONDITIONAL GET" requests. (Compl. ¶¶77, 79).

III. The Accused Instrumentality

  • Product Identification: The accused instrumentality is the website located at fanduel.com, including its underlying architecture for compiling, distributing, and caching webpage content. (Compl. ¶20).
  • Functionality and Market Context: The complaint alleges the fanduel.com website uses a Ruby on Rails architecture to compile webpage files, which consist of index files and various asset files. (Compl. ¶22). The system generates content-based "fingerprints" of these files, which are appended to their URLs to create unique resource identifiers (URIs). (Compl. ¶22). These files are then uploaded as objects to Amazon's S3 hosting system, which generates a content-based E-Tag value for each object. (Compl. ¶¶23–24). The core of the accused functionality is the use of the standard HTTP "IF-NONE-MATCH" caching protocol. When a user's browser requests a webpage it has previously cached, it sends a "CONDITIONAL GET" request containing the E-Tag of its cached version. (Compl. ¶28). An intermediate cache or origin server compares this E-Tag to its current version. If they match, the server returns an HTTP 304 (Not Modified) message, instructing the browser to use its local copy. (Compl. ¶28). If they do not match, the server returns an HTTP 200 message with the new content and a new E-Tag. (Compl. ¶29). This system is alleged to reduce bandwidth and transaction overhead by serving content from the nearest cache and only transmitting files whose content has changed. (Compl. ¶21). No probative visual evidence provided in complaint.

IV. Analysis of Infringement Allegations

’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... Calculating a hash fingerprint and an E-Tag based on the contents of a file, such as a webpage asset file. ¶39 col. 12:53-55
(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 in the system. A user's browser (requester location) sends an HTTP "CONDITIONAL GET" request with an "IF-NONE-MATCH" header containing the E-Tag (data identifier) to upstream servers (provider locations). ¶40 col. 16:10-14
(C) on at least some of the provider locations, (a) for each data item... (i) determining a substantially unique identifier for the data item... and (ii) making and maintaining a set of identifiers of data items. Defendant's origin servers and intermediate cache servers store website content mapped to its corresponding E-Tag and URI (which includes a content fingerprint), thereby maintaining a set of identifiers. ¶41 col. 7:27-34
(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 (origin or cache) compares the E-Tag received in the "CONDITIONAL GET" request against its database of E-Tag values to determine if there is a match. ¶42 col. 14:5-8
(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 is found, the responding server issues an HTTP 304 message, notifying the requesting browser that the content is unchanged and that it is authorized to use its cached copy. ¶43 col. 15:18-24

’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. Obtaining E-Tags and fingerprints for index and asset files by applying a hash function to the contents of those files. ¶49 col. 4:21-27
determining, using at least the name, whether a copy of the data file is present on at least one of said computers. An origin or intermediate cache server receives a "CONDITIONAL GET" request with an E-Tag and compares it to its stored E-Tags to determine if it has a copy of the content corresponding to that E-Tag. ¶50 col. 4:28-30
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 the E-Tag from the request matches the server's E-Tag, the copy is determined to be authorized/licensed. If there is no match, the copy is determined to be unauthorized/unlicensed. ¶51 col. 4:31-36
  • Identified Points of Contention:
    • Scope Questions: A primary question may be whether the standard HTTP E-Tag caching protocol falls within the scope of the claimed methods. The patents describe a comprehensive, content-addressable data management system, whereas the accused system is a specific implementation of a web caching standard. The litigation may focus on whether an E-Tag used for cache validation constitutes the claimed "substantially unique identifier" for "locating" a data item, or whether an HTTP 304 response constitutes "notifying the requestor that the provider has a copy."
    • Technical Questions: For the ’442 patent, a core dispute may arise over the equation of a cache-coherency check with a determination of "unauthorized" or "unlicensed" status. The complaint alleges that an E-Tag mismatch leads to a determination that the cached copy is "unauthorized." A court may need to decide if this technical state (stale data) is equivalent to the legal concept of an "unauthorized copy" as contemplated by a patent titled "Enforcement and Policing of Licensed Content."

V. Key Claim Terms for Construction

  • Term: "substantially unique identifier" (’791 Patent, Claim 38)

    • Context and Importance: This term is the foundation of the asserted claims. Its construction will determine whether content-based identifiers like E-Tags and file "fingerprints," which are used for cache validation and data integrity, meet the claim limitation. Practitioners may focus on this term because the patent describes it as the core of a novel data processing system, whereas the accused use is within the pre-existing HTTP protocol.
    • Intrinsic Evidence for Interpretation:
      • Evidence for a Broader Interpretation: The specification explicitly discloses that the identifier can be generated using message digest functions like MD5 and SHA, which are often used to generate E-Tags. (’791 Patent, col. 12:53–55, 13:14–16).
      • Evidence for a Narrower Interpretation: The patent repeatedly refers to the identifier as a "True Name" and describes its role within a comprehensive, newly-designed file system architecture, which may suggest a meaning more integral and foundational than a cache validation token. (’791 Patent, col. 5:11–19, Abstract).
  • Term: "unauthorized copy or an unlicensed copy" (’442 Patent, Claim 10)

    • Context and Importance: The infringement theory for the ’442 patent hinges on construing this term to cover a stale cache entry. The outcome of this construction will likely be dispositive for this patent.
    • Intrinsic Evidence for Interpretation:
      • Evidence for a Broader Interpretation: A party might argue that in the technical context of a CDN, a file is "authorized" for use only when the origin server confirms it is the current version. A mismatch, therefore, renders the cached copy "unauthorized" for use in rendering the webpage.
      • Evidence for a Narrower Interpretation: The patent's title, "Enforcement and Policing of Licensed Content," and abstract strongly suggest that "unauthorized" and "unlicensed" relate to legal rights, permissions, and DRM-style enforcement, rather than a mere technical check for data freshness. (’442 Patent, Title; Abstract).

VI. Other Allegations

  • Indirect Infringement: The complaint alleges that Defendant "has caused" and "forced" downstream cache servers and end-user browsers to perform steps of the claimed methods, such as sending "CONDITIONAL GET" requests and comparing E-Tags. (Compl. ¶¶40, 42, 50). These allegations, which focus on Defendant's control over the content delivery process, may be intended to support a theory of induced infringement.
  • Willful Infringement: The complaint does not include an explicit allegation of willful infringement or a request for enhanced damages under 35 U.S.C. § 284.

VII. Analyst’s Conclusion: Key Questions for the Case

  • A central technical question will be one of functional equivalence: Does the standard HTTP E-Tag caching mechanism, primarily designed to ensure data freshness and reduce bandwidth, perform the specific functions of the patented system for locating data items and policing licensed content? The court will examine whether a server responding with an HTTP 304 "Not Modified" message is functionally equivalent to the claimed methods of "notifying" a requester of a file's presence or "determining" a copy is authorized.
  • A key legal issue will be one of definitional scope: Can the claim term "unauthorized copy," from a patent focused on enforcing licensed content, be construed to encompass a technically stale data file in a web cache? The resolution will likely depend on whether the term is interpreted in a narrow, legalistic sense (pertaining to copyright or license status) or a broader, technical sense (pertaining to server-side authorization to use a specific version of a file).