DCT
5:18-cv-00196
PersonalWeb Tech LLC v. Vend Inc
Key Events
Complaint
Table of Contents
complaint Intelligence
I. Executive Summary and Procedural Information
- Parties & Counsel:
- Plaintiff: PersonalWeb Technologies, LLC (Texas)
- Defendant: Vend Inc. (Delaware) and Vend Limited (New Zealand)
- Plaintiff's Counsel: IP Law Group, LLP
- Case Identification: 5:18-cv-00196, N.D. Cal., 01/09/2018
- Venue Allegations: Venue is alleged to be proper in the Northern District of California because Defendant Vend Inc. has a regular and established place of business in the district, has conducted business there, and has committed the alleged acts of infringement within the district.
- Core Dispute: Plaintiff alleges that Defendant's website and associated content delivery architecture infringe five U.S. patents related to identifying, locating, and managing data in computer networks using content-based identifiers.
- Technical Context: The patents address foundational methods for data de-duplication, integrity verification, and access control in distributed systems by using cryptographic hashes of data content as unique identifiers, a technology central to modern cloud computing and Content Delivery Networks (CDNs).
- Key Procedural History: The complaint states that Plaintiff PersonalWeb Technologies, LLC and co-plaintiff Level 3 Communications, LLC each own a 50% undivided interest in the patents-in-suit pursuant to a 2000 agreement. The complaint also notes that PersonalWeb has previously enforced these patents against third parties, resulting in settlements and the grant of non-exclusive licenses.
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 Issued |
| 2000-09-01 | Agreement governing patent ownership between PersonalWeb and Level 3 predecessors |
| 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-09 | Complaint Filed |
II. Technology and Patent(s)-in-Suit Analysis
No probative visual evidence provided in complaint.
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: The patent's background describes the inefficiency and unreliability of conventional data identification methods in expanding computer networks, where data is named relative to a specific context (e.g., file path) Compl. ¶¶13-14 This system creates ambiguity, as identical names can refer to different data and vice-versa, complicating data management, retrieval, and verification '791 Patent, col. 1:11-2:10
- The Patented Solution: The invention proposes a system that identifies data items not by name or location, but by their content Compl. ¶14 It does this by applying a function, such as a cryptographic hash, to the data item to generate a "substantially unique identifier" or "True Name" '791 Patent, col. 13:10-14 This content-based identifier allows any data item to be stored, located, managed, and accessed independent of its context, enabling efficient de-duplication and integrity verification across a distributed system Compl. ¶17 '791 Patent, abstract
- Technical Importance: This approach provided a system-wide method for reliably identifying and managing data based on content, a foundational principle for modern distributed storage systems, content delivery networks, and cloud computing Compl. ¶¶4-5
Key Claims at a Glance
- The complaint asserts independent claim 38 and dependent claim 42 Compl. ¶37
- Independent Claim 38 is a method claim with the following essential elements:
- (A) Determining a substantially unique identifier for a data item based on and using all of and only the data in the data 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) Determining and maintaining a set of identifiers for a plurality of data items stored there.
- (b) Determining, based on the set of identifiers, if the data item corresponding to the requested identifier is present at the provider location.
- (c) If the data item is present, notifying the requester that the provider has a copy.
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: In distributed systems where files are distributed across multiple computers, there is a need to control access and enforce licensing, ensuring that only authorized or licensed copies of content are used or served '442 Patent, col. 3:5-10
- The Patented Solution: The patent describes a method that leverages content-based identifiers to manage content distribution. The method involves obtaining a name for a data file based on its content (e.g., a hash) and then using that name to determine if a copy of the file on a computer is an "unauthorized copy or an unlicensed copy" '442 Patent, abstract '442 Patent, col. 16:1-5 This allows for policing content across a network based on the intrinsic properties of the data itself, rather than external metadata.
- Technical Importance: The invention extends the concept of content-based identifiers into the domain of access control and digital rights management for distributed file systems Compl. ¶46
Key Claims at a Glance
- The complaint asserts independent claim 10 and dependent claim 11 Compl. ¶47
- Independent Claim 10 is a method claim with the following essential elements:
- Obtaining a name for a data file, where the name is based at least in part on a function of the data file's contents.
- Using at least the 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.
Multi-Patent Capsules
U.S. Patent No. 7,802,310: "Controlling Access to Data in a Data Processing System," issued September 21, 2010.
- Technology Synopsis: The patent describes a system that controls access to data by receiving a request that includes a content-dependent name for a data item. The system compares this name to a plurality of values and, based on the comparison, determines if access to the data item is authorized or unauthorized Compl. ¶¶58-59
- Asserted Claims: 20, 69, and 71 Compl. ¶56
- Accused Features: Defendant's use of E-Tags as content-dependent names in HTTP requests, where servers compare the received E-Tag to a database of stored E-Tag values to determine whether access to cached content is still authorized Compl. ¶¶57-59
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 discloses a method for determining a "digital key" for a file by applying functions to one or more "parts" of that file. This key is added to a database. A search for the file is conducted by generating a "search key" from search criteria and attempting to match it with a digital key in the database Compl. ¶¶65-69
- Asserted Claims: 46, 48, 49, 52, 55, and 56 Compl. ¶63
- Accused Features: The complaint alleges that Defendant's webpage E-Tag (the "digital key") is generated from the URIs of its constituent asset files (the "parts"). A browser's subsequent request includes this E-Tag as a "search key" which the server matches against its database to determine if the webpage content has changed Compl. ¶¶66-71
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 that determines one or more content-dependent digital identifiers for a data item. It then selectively permits the data item to be made available for access based on whether at least one of the identifiers corresponds to an entry in one or more databases Compl. ¶¶76-77
- Asserted Claims: 25, 26, 27, 29, 30, 32-36, and 166 Compl. ¶73
- Accused Features: Defendant's system allegedly applies hash functions to webpage files to generate fingerprints and E-Tags ("digital identifiers"). Access to content is then selectively permitted by comparing a received E-Tag in a request with E-Tags contained in a server database Compl. ¶¶76-78
III. The Accused Instrumentality
- Product Identification: The website
vendhq.comand its associated content delivery architecture and methods Compl. ¶20 - Functionality and Market Context:
- The complaint alleges the accused instrumentality is a system for providing webpage content to users Compl. ¶¶14-15 It allegedly uses a Ruby on Rails architecture to generate "fingerprints" (hashes) of file contents, which are then appended to file URLs to create unique URIs Compl. ¶22 The system is also alleged to generate E-Tag values for files, which are hashes of the file content Compl. ¶24
- This system is alleged to use the HTTP
IF-NONE-MATCHprotocol, where a browser or intermediate cache sends a "CONDITIONAL GET" request containing the E-Tag of its cached version of a file (Compl. ¶¶20; Compl. ¶27). The receiving server compares this E-Tag to its current E-Tag for the file. A match results in an HTTP 304 "Not Modified" response, while a mismatch results in an HTTP 200 response with the new content and new E-Tag Compl. ¶¶28-29 - This functionality is alleged to reduce bandwidth and transaction overhead by serving only files whose content has changed, allowing content to be served from the nearest cache Compl. ¶21
IV. Analysis of Infringement Allegations
5,978,791 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 for data items (index and asset files) by calculating a hash fingerprint and E-Tags based only on the file's contents. | ¶39 | col. 13:10-19 |
| (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 a CONDITIONAL GET request containing the E-Tag (data identifier) to provider locations (origin or intermediate servers). | ¶40 | col. 15:10-16 |
| (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 determine E-Tags for their content and maintain a database/table mapping URIs to content and their associated E-Tags (a set of identifiers). | ¶41 | col. 7:26-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 compares the E-Tag received in the request with the E-Tag values in its database to determine if there is a match, which allegedly determines if the data item is present. | ¶42 | col. 3:35-40 |
| (c) based on the determining... notifying the requestor that the provider has a copy of the given data item. | If there is an E-Tag match, the server sends an HTTP 304 message, which the complaint alleges notifies the requesting browser that the same file content is present and it has a copy. | ¶43 | col. 15:20-27 |
- Identified Points of Contention:
- Scope Questions: A primary question may be whether the standard HTTP cache validation process constitutes the patented method of "locating a particular data item." A defendant may argue that sending an
IF-NONE-MATCHheader is a check for content staleness at a known location (the URI), not a method for locating an item whose location is unknown. - Technical Questions: The complaint equates an HTTP 304 "Not Modified" response with "notifying the requestor that the provider has a copy of the given data item." A central issue may be whether a notification that content has not changed is functionally the same as a notification of presence or possession as claimed.
- Scope Questions: A primary question may be whether the standard HTTP cache validation process constitutes the patented method of "locating a particular data item." A defendant may argue that sending an
6,928,442 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's system obtains E-Tags and fingerprints for its index and asset files by applying a hash function to the contents of those files. | ¶49 | col. 12:55-60 |
| determining, using at least the name, whether a copy of the data file is present on at least one of said computers. | An origination or intermediate cache server receives a CONDITIONAL GET request with an E-Tag and compares that E-Tag to its stored E-Tags to determine if content with that E-Tag is present. | ¶50; ¶51 | col. 15:53-56 |
| 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. | The complaint alleges that if the E-Tags match, the server determines the downstream copy is "authorized," and if there is no match, it determines the copy is "unauthorized or unlicensed." | ¶52 | col. 16:1-5 |
- Identified Points of Contention:
- Scope Questions: The infringement theory hinges on equating a "stale" or "out-of-date" file in a cache (indicated by an E-Tag mismatch) with an "unauthorized copy or an unlicensed copy" of the data file. A key legal question will be whether the claim term "unauthorized" can be construed to cover content that is merely outdated, as opposed to content for which the user lacks legal rights or permissions.
- Technical Questions: The complaint alleges that an E-Tag mismatch leads the server to determine the cached copy is "unauthorized." A factual question may be whether the server's logic performs an authorization check, or simply a version-comparison check, which are technically distinct operations.
V. Key Claim Terms for Construction
For the '791 Patent
- The Term: "locating a particular data item" (preamble, Claim 38)
- Context and Importance: Plaintiff's infringement theory for the '791 patent is premised on the idea that the accused cache-validation process is a method of "locating." The definition of this term is critical, as a narrow construction focused on finding a file's physical location in a network could undermine the infringement allegation, which is based on verifying the state of content at an already-known URI.
- Intrinsic Evidence for Interpretation:
- Evidence for a Broader Interpretation: The patent abstract states the system "determines whether a particular data item is present in the database by examining the identifiers," which may support a broader reading that includes checking for the presence of content corresponding to an identifier, not just finding a file path.
- Evidence for a Narrower Interpretation: The detailed description includes flowcharts and processes, such as "Locate Remote File" and "Find File," that describe searching for and retrieving a file from various potential sources, which may suggest that "locating" implies a search-and-find operation rather than a state-verification check (e.g.,'791 Patent, FIG. 15).
For the '442 Patent
- The Term: "an unauthorized copy or an unlicensed copy" (Claim 10)
- Context and Importance: This term is the lynchpin of the '442 patent infringement claim. Practitioners may focus on this term because the plaintiff's case requires that an E-Tag mismatch (indicating a stale file) renders the cached copy "unauthorized." If the term is construed to mean lacking legal permission (e.g., copyright license), the infringement theory may not stand.
- Intrinsic Evidence for Interpretation:
- Evidence for a Broader Interpretation: The complaint's theory itself suggests a broad interpretation where "authorized" means "the current, correct version approved for use by the origin server."
- Evidence for a Narrower Interpretation: The patent specification explicitly discusses a "license table (LT) 136... identifying files, which may only be used by licensed users" '442 Patent, col. 7:51-55 This direct link between the invention's mechanisms and user licensing may support a narrower construction tied to legal or contractual authorization, not merely content freshness.
VI. Other Allegations
- Indirect Infringement: The complaint alleges facts that may support a claim for induced infringement. It states that by sending content with an associated E-Tag, Defendant has "forced the browser cache and all intermediate cache servers to use the E-Tag in an HTTP CONDITIONAL GET" protocol, thereby causing them to perform the claimed steps Compl. ¶27 It also alleges Defendant "controlled the distribution of its webpage content" Compl. ¶3 and "directed and/or controlled" the actions of third-party systems like Amazon S3 Compl. ¶23
VII. Analyst's Conclusion: Key Questions for the Case
- A core issue will be one of definitional scope: can the standard, widely-used HTTP cache-validation protocol, which checks if content at a known URI is stale, be construed as the patented methods of "locating" a data item and determining if that data item is "unauthorized"? The outcome may depend on whether the court views these terms in a broad, functional sense or in a narrower context suggested by the patent specifications.
- A key evidentiary question will be one of functional equivalence: does an E-Tag mismatch, which technically signifies that a cached resource is no longer fresh, perform the same function as determining that a copy of a file is "unauthorized or unlicensed" in the context of access rights and permissions? The case will likely require a deep analysis of the distinction between a technical state (stale vs. fresh) and a legal or policy-based status (authorized vs. unauthorized).
Analysis metadata