IP Library Granted Patent US 9,087,215
Granted Patent B2
US 9,087,215 · App. 14/529,960 · Granted Jul 21, 2015

Dynamic de-identification and anonymity

Inventors: Malcolm Gary LaFever (Lyons, CO); Ted N. Myerson (New York, NY); Samantha L. Hampton (Greeley, CO); Howard Kaushansky (Nederland, CO); Steven Mason (Las Vegas, NV)
Assignee: Anonos Inc.
G06F21/6254
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 9,087,215
App. No.
14/529,960
Granted
Jul 21, 2015
Kind
B2
Abstract

Various systems, computer-readable media, and computer-implemented methods of providing improved data privacy, anonymity and security by enabling subjects to which data pertains to remain “dynamically anonymous,” i.e., anonymous for as long as is desired—and to the extent that is desired—are disclosed herein. Embodiments include systems that create, access, use, store and/or erase data with increased privacy, anonymity and security, thereby facilitating the availability of more qualified and accurate information. When data is authorized by subjects to be shared with third parties, embodiments may facilitate sharing information in a dynamically controlled manner that enables delivery of temporally-, geographically-, and/or purpose-limited information to the receiving party. In one example, anonymity measurement scores may be calculated for the shared data elements so that a level of consent/involvement required by the Data Subject before sharing the relevant data elements to third parties may be specified.

Claims (104)

1. A system, comprising:

a communication interface for sending data;

one or more memory elements having, stored therein, computer program code; and

one or more processing units operatively coupled to the one or more memory elements and configured to execute instructions in the computer program code that cause the one or more processing units to:

generate or receive two or more dynamically-changing, temporally unique identifiers;

receive a first request from a first client for two or more dynamically-changing, temporally unique identifiers related to a first data subject;

associate, in response to the first request, two or more dynamically-changing, temporally unique identifiers with the first data subject;

generate first time period data, wherein the first time period data comprises information defining a first time period during which a first one of the two or more dynamically-changing, temporally unique identifiers associated with the first data subject is used to identify the first data subject;

generate second time period data, wherein the second time period data comprises information defining a second time period during which a second one of the two or more dynamically-changing, temporally unique identifiers associated with the first data subject is used to identify the first data subject,

wherein the first time period is different from the second time period,

wherein the first dynamically-changing, temporally unique identifier is different from the second dynamically-changing, temporally unique identifier,

wherein the first dynamically-changing, temporally unique identifier is not used to identify the first data subject during the second time period, and

wherein the second dynamically-changing, temporally unique identifier is not used to identify the first data subject during the first time period, thereby providing anonymity to the first data subject;

store, in at least one of the one or more memory elements, the two or more dynamically-changing, temporally unique identifiers and the first and second time period data; and

send the two or more dynamically-changing, temporally unique identifiers to the first client.

2. The system of claim 1 , wherein the instructions in the computer program code further cause the one or more processing units to:

associate one or more data attributes with the first dynamically-changing,

temporally unique identifier of the two or more dynamically-changing,

temporally unique identifiers.

3. The system of claim 2 , wherein at least one of the one or more data attributes associated with the first dynamically-changing, temporally unique identifier relates to an action, activity, process, purpose, identity, or trait of the first data subject.

4. The system of claim 3 , wherein the instructions in the computer program code further cause the one or more processing units to:

receive a second request from a second client for at least one of the one or more data attributes associated with the first dynamically-changing, temporally unique identifier during the first time period;

determine that the second request is authorized; and

grant the ability of the second client to determine the requested one or more data attributes associated with the first dynamically-changing, temporally unique identifier during the first time period.

5. The system of claim 3 , wherein the instructions in the computer program code further cause the one or more processing units to:

associate the first dynamically-changing temporally unique identifier with a second data subject during a third time period,

wherein at least one of the one or more data attributes associated with the first dynamically-changing temporally unique identifier during the first time period is the same as one of the one or more data attributes associated with the first dynamically-changing temporally unique identifier during the third time period.

6. The system of claim 4 , wherein the instructions in the computer program code further cause the one or more processing units to:

revoke the ability of the second client to determine the requested one or more data attributes associated with the first dynamically-changing temporally unique identifier during the second time period.

7. The system of claim 1 , wherein the instructions in the computer program code further cause the one or more processing units to:

associate the first dynamically-changing, temporally unique identifier of the two or more dynamically-changing, temporally unique identifiers with a second data subject during the first time period or during the second time period.

8. The system of claim 1 , wherein the instructions in the computer program code further cause the one or more processing units to:

associate, in response to the first request, a third dynamically-changing, temporally unique identifier of the two or more dynamically-changing, temporally unique identifiers with the first data subject;

generate third time period data, wherein the third time period data comprises information defining a third time period during which the third dynamically-changing, temporally unique identifier is used to identify the first data subject,

wherein the third time period is different from the first and second time periods,

wherein the third dynamically-changing, temporally unique identifier is different from the second dynamically-changing, temporally unique identifier, but the same as the first dynamically-changing, temporally unique identifier,

wherein the third dynamically-changing, temporally unique identifier is not used to identify the first data subject during the second time period;

store, in at least one of the one or more memory elements, the third dynamically-changing, temporally unique identifier and the third time period data; and

send the third dynamically-changing, temporally unique identifier to the first client.

9. The system of claim 1 , wherein the instructions in the computer program code further cause the one or more processing units to:

associate one or more data attributes with the second dynamically-changing temporally unique identifier,

wherein at least one of the one or more data attributes associated with the second dynamically-changing temporally unique identifier relates to an action, activity, process, purpose, identity, or trait of the first data subject.

10. The system of claim 9 , wherein at least one of the one or more data attributes associated with the first dynamically-changing temporally unique identifier is different from at least one of the one or more data attributes associated with the second dynamically-changing temporally unique identifier.

11. The system of claim 1 , wherein the instructions in the computer program code further cause the one or more processing units to:

receive from a second client, a third dynamically-changing temporally unique identifier related to a second data subject;

associate the third dynamically-changing temporally unique identifier with the second data subject;

generate third time period data, wherein the third time period data comprises information defining a third time period during which the third dynamically-changing temporally unique identifier used to identify the second data subject; and

store, in at least one of the one or more memory elements, the third dynamically-changing temporally unique identifier and the third time period data.

12. A non-transitory computer readable medium comprising computer executable instructions stored thereon to cause one or more processing units to:

generate or receive two or more dynamically-changing, temporally unique identifiers;

receive a first request from a first client for two or more dynamically-changing temporally unique identifiers related to a first data subject;

associate, in response to the first request, two or more dynamically-changing temporally unique identifiers with the first data subject;

generate first time period data, wherein the first time period data comprises information defining a first time period during which a first one of the two or more dynamically-changing temporally unique identifiers associated with the first data subject is used to identify the first data subject;

generate second time period data, wherein the second time period data comprises information defining a second time period during which a second one of the two or more dynamically-changing, temporally unique identifiers associated with the first data subject is used to identify the first data subject,

wherein the first time period is different from the second time period,

wherein the first dynamically-changing, temporally unique identifier is different from the second dynamically-changing, temporally unique identifier,

wherein the first dynamically-changing, temporally unique identifier is not used to identify the first data subject during the second time period, and

wherein the second dynamically-changing, temporally unique identifier is not used to identify the first data subject during the first time period, thereby providing anonymity to the first data subject;

store, in one or more memory elements, the two or more dynamically-changing temporally unique identifiers and the first and second time period data; and

send the first and second dynamically-changing temporally unique identifiers to the first client.

13. The non-transitory computer readable medium of claim 12 , wherein the instructions further cause the one or more processing units to:

associate one or more data attributes with the first dynamically-changing temporally unique identifier of the two or more dynamically-changing temporally unique identifiers.

14. The non-transitory computer readable medium of claim 13 , wherein at least one of the one or more data attributes associated with the first dynamically-changing temporally unique identifier relates to an action, activity, process, purpose, identity, or trait of the first data subject.

15. The non-transitory computer readable medium of claim 13 , wherein the first dynamically-changing temporally unique identifier is not derived from any of the one or more data attributes associated with the first dynamically-changing temporally unique identifier.

16. The non-transitory computer readable medium of claim 14 , wherein the instructions further cause the one or more processing units to:

receive a second request from a second client for at least one of the one or more data attributes associated with the first dynamically-changing temporally unique identifier during the first time period;

determine that the second request is authorized; and

grant the ability of the second client to determine the requested one or more data attributes associated with the first dynamically-changing temporally unique identifier during the first time period.

17. The non-transitory computer readable medium of claim 14 , wherein the instructions further cause the one or more processing units to:

associate the first dynamically-changing temporally unique identifier with a second data subject during a third time period,

wherein at least one of the one or more data attributes associated with the first dynamically-changing temporally unique identifier during the first time period is the same as one of the one or more data attributes associated with the first dynamically-changing temporally unique identifier during the third time period.

18. The non-transitory computer readable medium of claim 16 , wherein the instructions further cause the one or more processing units to:

revoke the ability of the second client to determine the requested one or more data attributes associated with the first dynamically-changing temporally unique identifier during the second time period.

19. The non-transitory computer readable medium of claim 12 , wherein the instructions further cause the one or more processing units to:

associate the first dynamically-changing temporally unique identifier of the two or more dynamically-changing temporally unique identifiers with a second data subject during a second time period.

20. The non-transitory computer readable medium of claim 12 , wherein the instructions further cause the one or more processing units to:

associate the first dynamically-changing temporally unique identifier of the two or more dynamically-changing temporally unique identifiers with a second data subject during the first time period.

21. The non-transitory computer readable medium of claim 12 , wherein the instructions further cause the one or more processing units to:

associate, in response to the first request, a third dynamically-changing temporally unique identifier of the two or more dynamically-changing, temporally unique identifiers with the first data subject;

generate third time period data, wherein the third time period data comprises information defining a third time period during which the third dynamically-changing temporally unique identifier is used to identify the first data subject,

wherein the third time period is different from the first and second time periods,

wherein the third dynamically-changing, temporally unique identifier is different from the second dynamically-changing, temporally unique identifier, but the same as the first dynamically-changing, temporally unique identifier,

wherein the third dynamically-changing, temporally unique identifier is not used to identify the first data subject during the second time period;

store, in at least one of the one or more memory elements, the third dynamically-changing temporally unique identifier and the third time period data; and

send the third dynamically-changing temporally unique identifier to the first client.

22. The non-transitory computer readable medium of claim 21 , wherein the first time period and the second time period do not overlap.

23. The non-transitory computer readable medium of claim 21 , wherein the first time period and the second time period at least partially overlap.

24. The non-transitory computer readable medium of claim 12 , wherein the instructions further cause the one or more processing units to:

associate one or more data attributes with the second dynamically-changing temporally unique identifier,

wherein at least one of the one or more data attributes associated with the second dynamically-changing temporally unique identifier relates to an action, activity, process, purpose, identity, or trait of the first data subject.

25. The non-transitory computer readable medium of claim 24 , wherein at least one of the one or more data attributes associated with the first dynamically-changing temporally unique identifier is different from at least one of the one or more data attributes associated with the second dynamically-changing temporally unique identifier.

26. The non-transitory computer readable medium of claim 12 , wherein the instructions further cause the one or more processing units to:

receive from a second client, a third dynamically-changing temporally unique identifier related to a second data subject;

associate the third dynamically-changing temporally unique identifier with the second data subject;

generate third time period data, wherein the third time period data comprises information defining a third time period during which the third dynamically-changing temporally unique identifier used to identify the second data subject; and

store, in at least one of the one or more memory elements, the third dynamically-changing temporally unique identifier and the third time period data.

27. The non-transitory computer readable medium of claim 26 , wherein the third dynamically-changing temporally unique identifier comprises a Hypertext Transfer Protocol (HTTP) cookie.

28. The non-transitory computer readable medium of claim 12 , wherein the instructions further cause the one or more processing units to:

receive a second request from a second client for an identity of the first data subject associated with a first dynamically-changing temporally unique identifier of the one or more dynamically-changing temporally unique identifiers during the first time period;

determine that the second request is authorized; and

grant the ability of the second client to determine the identity of the first data subject during the first time period.

29. The non-transitory computer readable medium of claim 28 , wherein the instructions further cause the one or more processing units to:

revoke the ability of the second client to determine the identity of the first data subject during the first time period.

30. The non-transitory computer readable medium of claim 12 , wherein the first dynamically-changing temporally unique identifier of the two or more dynamically-changing temporally unique identifiers comprises a primary identifier for the first data subject.

Assignments (7)
RELEASE OF SECURITY INTEREST Recorded May 8, 2026
From: ANKURA TRUST COMPANY, LLC
To: ANONOS IP LLC
Reel/Frame 074607/0340 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 4, 2026
From: ANONOS TECHNOLOGIES LLC
To: ANONOS INNOVATIONS LLC
Reel/Frame 073688/0692 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 2, 2026
From: SONONA LLC
To: ANONOS TECHNOLOGIES LLC
Reel/Frame 073661/0128 →
ASSIGNMENT OF INTELLECTUAL PROPERTY Recorded Oct 3, 2025
From: ANKURA TRUST COMPANY, LLC
To: SONONA LLC
Reel/Frame 072997/0822 →
SECURITY INTEREST Recorded Oct 12, 2022
From: ANONOS IP LLC
To: ANKURA TRUST COMPANY, LLC
Reel/Frame 061395/0457 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 2, 2022
From: ANONOS INC.
To: ANONOS IP LLC
Reel/Frame 060978/0927 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 31, 2014
From: LAFEVER, MALCOLM GARY; MYERSON, TED N.; HAMPTON, SAMANTHA L.; KAUSHANSKY, HOWARD; MASON, STEVEN
To: ANONOS INC.
Reel/Frame 034082/0610 →
Continuity (23)
Provisional Application 61899096 · Nov 1, 2013
Provisional Application 61938631 · Feb 11, 2014
Provisional Application 61941242 · Feb 18, 2014
Provisional Application 61944565 · Feb 25, 2014
Provisional Application 61945821 · Feb 27, 2014
Provisional Application 61948575 · Mar 6, 2014
Provisional Application 61969194 · Mar 23, 2014
Provisional Application 61974442 · Apr 3, 2014
Provisional Application 61988373 · May 5, 2014
Provisional Application 61992441 · May 13, 2014
Provisional Application 61994076 · May 15, 2014
Provisional Application 61994715 · May 16, 2014
Provisional Application 61994721 · May 16, 2014
Provisional Application 62001127 · May 21, 2014
Provisional Application 62015431 · Jun 21, 2014
Provisional Application 62019987 · Jul 2, 2014
Provisional Application 62037703 · Aug 15, 2014
Provisional Application 62043238 · Aug 28, 2014
Provisional Application 62045321 · Sep 3, 2014
Provisional Application 62051270 · Sep 16, 2014
Provisional Application 62055669 · Sep 26, 2014
Provisional Application 62059882 · Oct 4, 2014
Related Publication 20150128287A1 · May 7, 2015