CPC G06F 21/6254 (2013.01) | 20 Claims |
1. A data storage device comprising:
a memory; and
a processor configured to:
receive, from a host, a logical address and data comprising a plurality of data portions in a non-anonymized form, wherein the host transmits a non-anonymized version of the data to the data storage device for storage;
receive, from the host, a plurality of tokens, wherein each token of the plurality of tokens identifies a different set of the data portions to anonymize;
create a plurality of anonymized versions of the data per the plurality of tokens;
store the plurality of anonymized versions of the data in a respective plurality of different physical addresses in the memory;
create a one-to-many logical-to-physical address entry that maps the logical address to the plurality of different physical addresses, wherein each different physical address is indexed by a respective one of the plurality of tokens;
receive a request to read the logical address, wherein the request comprises one of the plurality of tokens;
use the one-to-many logical-to-physical address entry and the one of the plurality of tokens to determine which of the different physical addresses to read;
read the anonymized version of the data stored in the determined physical address; and
send the read anonymized version of the data in response to the request.
|