IP Library Granted Patent US 11,899,819
Granted Patent B2
US 11,899,819 · App. 17/488,157 · Granted Feb 13, 2024

Machine-driven crowd-disambiguation of data resources

Inventors: David F Lerner (Newton, MA); Peter J Lepeska (Boston, MA); Douglas C Larrick (Newton, MA); Devin R Toth (Quincy, MA)
Assignee: Viasat, Inc.
G06F21/6245G06F16/9574G06F21/6263H04L67/5681H04L67/5682H04L9/0643H04L47/70H04L67/01
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 11,899,819
App. No.
17/488,157
Granted
Feb 13, 2024
Kind
B2
Abstract

Embodiments seek to protect privacy of potentially sensitive client resources in web transactions using crowd-disambiguation. Crowd-disambiguation machines can aggregate information about resources from multiple clients as resource fingerprints, and can use the fingerprints to provide crowd-sourced services in a privacy-protected manner. For example, embodiments can communicate a resource fingerprint as a fully ambiguated resource instance (FARI) and a partially disambiguated resource instance (PDRI). When one (or few) clients communicates the resource fingerprint, the identity of the resource remains obfuscated from the crowd-disambiguation machine. As more clients communicate fingerprints for the same resource (e.g., identified by the matching FARIs), respective, differently generated PDRIs of those fingerprints enable the crowd-disambiguation machine to resolve further portions of the resource, ultimately permitting the resource to be revealed and considered non-private (e.g., for use in hint generation or other crowd-sourced services).

Claims (38)

1. A method for privacy-protected hinting generation, the method comprising:

receiving a resource fingerprint of an invoked resource from a client machine over a communications network;

responsive to determining that the invoked resource is included as a whitelisted resource in a whitelist data store:

generating hint information associated with the invoked resource responsive to the resource fingerprint being received from the client machine as part of a hinting request;

updating stored hinting information associated with the invoked resource responsive to the resource fingerprint being received from the client machine as part of hinting feedback;

responsive to determining that the invoked resource is not included as a whitelisted resource and that the resource fingerprint matches a previously received resource fingerprint:

formulating an aggregated resolved portion of the invoked resource based on a first resolved portion of the invoked resource and an additional resolved portion of the invoked resource, the first resolved portion of the invoked resource derived from the resource fingerprint and the additional resolved portion of the invoked resource derived from the previously received resource fingerprint;

responsive to determining that the aggregated resolved portion of the invoked resource satisfies a disambiguation threshold, storing the invoked resource as a whitelisted resource in the whitelist data store.

2. The method of claim 1 , wherein the resource fingerprint includes a fully ambiguated resource instance (FARI) of the invoked resource and a partially disambiguated resource instance (PDRI) of the invoked resource.

3. The method of claim 2 , wherein the PDRI is generated according to a disambiguation schema that resolves only a portion of the invoked resource.

4. The method of claim 2 , wherein determining that the invoked resource is included as a whitelisted resource in the whitelist data store comprises looking up the FARI in the whitelist data store to identify a matching FARI.

5. The method of claim 2 , wherein determining that the resource fingerprint matches a previously received resource fingerprint comprises looking up the FARI in a blacklist data store to identify a matching FARI.

6. The method of claim 2 further comprising, responsive to determining that the invoked resource is not included as a whitelisted resource, storing the FARI and the PDRI in a blacklist data store.

7. The method of claim 1 further comprising sending feedback to the client machine that the invoked resource is non-private responsive to determining that the invoked resource is included as a whitelisted resource in the whitelist data store.

8. The method of claim 1 further comprising, responsive to determining that the invoked resource is not included as a whitelisted resource and that the resource fingerprint does not match a previously received resource fingerprint, updating the stored hinting information associated with the invoked resource.

9. The method of claim 1 further comprising, responsive to determining that the aggregated resolved portion of the invoked resource does not satisfy the disambiguation threshold, further disambiguating the invoked resource using a disambiguation model.

10. The method of claim 1 further comprising, responsive to determining that the aggregated resolved portion of the invoked resource does not satisfy the disambiguation threshold, updating the stored hinting information associated with the invoked resource.

11. A crowd-based disambiguation machine configured to provide privacy-protected hinting generation, the crowd-based disambiguation machine comprising:

a communication engine configured to receive a resource fingerprint of an invoked resource from a client machine over a communications network;

a hinting data store configured to store hinting information;

a whitelist data store configured to store a list of whitelisted resources;

a blacklist data store configured to store a list of blacklisted resources; and

a hinting engine configured to:

responsive to determining that the invoked resource is included in the whitelist data store:

retrieve from the hinting data store the stored hinting information associated with the invoked resource responsive to the resource fingerprint being received from the client machine as part of a hinting request;

update the stored hinting information associated with the invoked resource responsive to the resource fingerprint being received from the client machine as part of hinting feedback;

responsive to determining that the invoked resource is not included in the whitelist data store and that the resource fingerprint matches a received resource fingerprint in the blacklist data store:

formulate an aggregated resolved portion of the invoked resource based on a first resolved portion of the invoked resource and an additional resolved portion of the invoked resource, the first resolved portion of the invoked resource derived from the resource fingerprint and the additional resolved portion of the invoked resource derived from the received resource fingerprint in the blacklist data store;

responsive to determining that the aggregated resolved portion of the invoked resource satisfies a disambiguation threshold, store the invoked resource in the whitelist data store.

12. The crowd-based disambiguation machine of claim 11 , wherein the resource fingerprint includes a fully ambiguated resource instance (FARI) of the invoked resource and a partially disambiguated resource instance (PDRI) of the invoked resource.

13. The crowd-based disambiguation machine of claim 12 , wherein the PDRI is generated according to a disambiguation schema that resolves only a portion of the invoked resource.

14. The crowd-based disambiguation machine of claim 12 , wherein determining that the invoked resource is included in the whitelist data store comprises looking up the FARI in the whitelist data store to identify a matching FARI.

15. The crowd-based disambiguation machine of claim 12 , wherein determining that the resource fingerprint matches a received resource fingerprint in the blacklist data store comprises looking up the FARI in the blacklist data store to identify a matching FARI.

16. The crowd-based disambiguation machine of claim 12 , wherein the hinting engine is further configured to store the FARI and the PDRI in the blacklist data store responsive to determining that the invoked resource is not included in the whitelist data store.

17. The crowd-based disambiguation machine of claim 11 , wherein the hinting engine is further configured to send feedback to the client machine that the invoked resource is non-private responsive to determining that the invoked resource is included in the whitelist data store.

18. The crowd-based disambiguation machine of claim 11 , wherein the hinting engine is further configured to update the stored hinting information associated with the invoked resource responsive to determining that the invoked resource is not included in the whitelist data store and that the resource fingerprint does not match a received resource fingerprint in the blacklist data store.

19. The crowd-based disambiguation machine of claim 11 , wherein the hinting engine is further configured to further disambiguate the invoked resource using a disambiguation model responsive to determining that the aggregated resolved portion of the invoked resource does not satisfy the disambiguation threshold.

20. The crowd-based disambiguation machine of claim 11 , wherein the hinting engine is further configured to update the stored hinting information associated with the invoked resource responsive to determining that the aggregated resolved portion of the invoked resource does not satisfy the disambiguation threshold.

Assignments (11)
PARTIAL RELEASE OF SECURITY INTEREST IN PATENT COLLATERAL AT REEL/FRAME NO. 64176/0566 Recorded Jun 6, 2025
From: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL TRUSTEE
To: VIASAT, INC.
Reel/Frame 071510/0382 →
PARTIAL RELEASE OF SECURITY INTEREST AT REEL/FRAME 063822/0446 Recorded Jun 4, 2025
From: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
To: VIASAT, INC.
Reel/Frame 071495/0223 →
RELEASE OF SECURITY INTEREST Recorded Jun 4, 2025
From: MUFG BANK, LTD., AS AGENT
To: VIASAT, INC.
Reel/Frame 071321/0001 →
PARTIAL RELEASE OF SECURITY INTEREST AT REEL/FRAME 064164/0152 Recorded Jun 4, 2025
From: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
To: VIASAT, INC.
Reel/Frame 071484/0233 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 21, 2025
From: VIASAT, INC.
To: SNAPPI HOLDCO, INC.
Reel/Frame 070293/0483 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 21, 2025
From: SNAPPI HOLDCO, INC.
To: SNAPPI, INC.
Reel/Frame 070293/0879 →
SUPPLEMENTAL PATENT SECURITY AGREEMENT Recorded Sep 19, 2023
From: VIASAT, INC.
To: MUFG BANK, LTD., AS AGENT
Reel/Frame 064948/0379 →
SUPPLEMENTAL PATENT SECURITY AGREEMENT Recorded Jun 29, 2023
From: VIASAT, INC.
To: BANK OF AMERICA, N.A.
Reel/Frame 064164/0152 →
SUPPLEMENTAL PATENT SECURITY AGREEMENT Recorded Jun 29, 2023
From: VIASAT, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL TRUSTEE
Reel/Frame 064176/0566 →
SECURITY AGREEMENT Recorded Jun 1, 2023
From: VIASAT, INC.
To: BANK OF AMERICA, N.A., AS AGENT
Reel/Frame 063822/0446 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 21, 2021
From: LERNER, DAVID F; LEPESKA, PETER J; LARRICK, DOUGLAS C; TOTH, DEVIN R
To: VIASAT, INC.
Reel/Frame 057871/0060 →
Continuity (3)
Continuation 16521064 · Jul 24, 2019
Continuation 15758918
Related Publication 20220391533A1 · Dec 8, 2022
Cited By (1)
US 12,299,174