Systems and methods for anonosizing data
First Claim
1. A system, comprising:
- a communication interface for sending data over a network;
a memory having, stored therein, computer program code;
one or more data sources; and
one or more processing units operatively coupled to the memory and configured to execute instructions in the computer program code that cause the one or more processing units to;
obtain data from each of the one or more data sources pertaining to a first plurality of data subjects;
generate a first dynamically-changing, temporally unique identifier for a first data subject in the first plurality of data subjects, wherein the first data subject is in each of a first data source and a second data source of the one or more data sources;
generate one or more second dynamically-changing, temporally unique identifiers corresponding to one or more quasi-identifiers in each of the first data source and the second data source, wherein each quasi-identifier has a value;
receive, over the network, a first request for the values of the one or more quasi-identifiers in the first data source;
receive, over the network, a second request for the values of the one or more quasi-identifiers in the second data source;
transform the values obtained from the first request into one or more third dynamically changing temporally unique identifiers;
transform the values obtained from the second request into one or more fourth dynamically changing temporally unique identifiers;
store, in the memory;
the first dynamically changing, temporally unique identifier;
the second dynamically-changing, temporally unique identifier;
the one or more third dynamically-changing, temporally unique identifiers; and
the one or more fourth dynamically-changing, temporally unique identifiers; and
send the first dynamically-changing, temporally unique identifier;
the second dynamically-changing, temporally unique identifier;
the one or more third dynamically-changing, temporally unique identifiers; and
the one or more fourth dynamically-changing, temporally unique identifiers over the network.
3 Assignments
0 Petitions
Accused Products
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 desired—are disclosed herein. This concept is also referred to herein as “anonosizing.” In some embodiments, the anonosizing of data may be implemented by encoding and decoding data under controlled conditions to support specific uses within designated authorized contexts. By anonosizing data controls via “identifying” and/or “associating” data elements within a population, data uses may be restricted to only those uses permissioned by a data subject or authorized third party. If new authorized data uses arise, all original data value and utility may be retained to support them—to the extent authorized by a data subject or authorized third party—but inappropriate, i.e., non-permissioned, uses of identifying information may be prevented.
66 Citations
48 Claims
-
1. A system, comprising:
-
a communication interface for sending data over a network; a memory having, stored therein, computer program code; one or more data sources; and one or more processing units operatively coupled to the memory and configured to execute instructions in the computer program code that cause the one or more processing units to; obtain data from each of the one or more data sources pertaining to a first plurality of data subjects; generate a first dynamically-changing, temporally unique identifier for a first data subject in the first plurality of data subjects, wherein the first data subject is in each of a first data source and a second data source of the one or more data sources; generate one or more second dynamically-changing, temporally unique identifiers corresponding to one or more quasi-identifiers in each of the first data source and the second data source, wherein each quasi-identifier has a value; receive, over the network, a first request for the values of the one or more quasi-identifiers in the first data source; receive, over the network, a second request for the values of the one or more quasi-identifiers in the second data source; transform the values obtained from the first request into one or more third dynamically changing temporally unique identifiers; transform the values obtained from the second request into one or more fourth dynamically changing temporally unique identifiers; store, in the memory;
the first dynamically changing, temporally unique identifier;
the second dynamically-changing, temporally unique identifier;
the one or more third dynamically-changing, temporally unique identifiers; and
the one or more fourth dynamically-changing, temporally unique identifiers; andsend the first dynamically-changing, temporally unique identifier;
the second dynamically-changing, temporally unique identifier;
the one or more third dynamically-changing, temporally unique identifiers; and
the one or more fourth dynamically-changing, temporally unique identifiers over the network. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16)
-
-
17. A non-transitory computer readable medium comprising computer executable instructions stored thereon to cause one or more processing units to:
-
obtain data from each of the one or more data sources pertaining to a first plurality of data subjects; generate a first dynamically-changing, temporally unique identifier for a first data subject in the first plurality of data subjects, wherein the first data subject is in each of a first data source and a second data source of the one or more data sources; generate one or more second dynamically-changing, temporally unique identifiers corresponding to one or more quasi-identifiers in each of the first data source and the second data source, wherein each quasi-identifier has a value; receive, over a network, a first request for the values of the one or more quasi-identifiers in the first data source; receive, over the network, a second request for the values of the one or more quasi-identifiers in the second data source; transform the values obtained from the first request into one or more third dynamically changing temporally unique identifiers; transform the values obtained from the second request into one or more fourth dynamically changing temporally unique identifiers; store, in the memory;
the first dynamically changing, temporally unique identifier;
the second dynamically-changing, temporally unique identifier;
the one or more third dynamically-changing, temporally unique identifiers; and
the one or more fourth dynamically-changing, temporally unique identifiers; andsend the first dynamically-changing, temporally unique identifier;
the second dynamically-changing, temporally unique identifier;
the one or more third dynamically-changing, temporally unique identifiers; and
the one or more fourth dynamically-changing, temporally unique identifiers over the network. - View Dependent Claims (18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32)
-
-
33. A computer-implemented method comprising:
-
obtaining data from each of one or more data sources pertaining to a first plurality of data subjects; generating a first dynamically-changing, temporally unique identifier for a first data subject in the first plurality of data subjects, wherein the first data subject is in each of a first data source and a second data source of the one or more data sources; generating one or more second dynamically-changing, temporally unique identifiers corresponding to one or more quasi-identifiers in each of the first data source and the second data source, wherein each quasi-identifier has a value; receiving, over a network, a first request for the values of the one or more quasi-identifiers in the first data source; receiving, over the network, a second request for the values of the one or more quasi-identifiers in the second data source; transforming the values obtained from the first request into one or more third dynamically changing temporally unique identifiers; transforming the values obtained from the second request into one or more fourth dynamically changing temporally unique identifiers; storing, in the memory;
the first dynamically changing, temporally unique identifier;
the second dynamically-changing, temporally unique identifier;
the one or more third dynamically-changing, temporally unique identifiers; and
the one or more fourth dynamically-changing, temporally unique identifiers; andsending the first dynamically-changing, temporally unique identifier;
the second dynamically-changing, temporally unique identifier;
the one or more third dynamically-changing, temporally unique identifiers; and
the one or more fourth dynamically-changing, temporally unique identifiers over the network. - View Dependent Claims (34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48)
-
Specification