CPC G06F 21/6218 (2013.01) [G06F 16/9014 (2019.01); G06F 16/9024 (2019.01); H04L 9/3239 (2013.01); G06F 2221/2107 (2013.01)] | 20 Claims |
1. A tangible, non-transitory, machine-readable medium storing instructions that when executed by one or more processors effectuate operations comprising:
obtaining, with one or more processors, criteria to select plain-text values in, or requested to be written to, a lower-trust database;
selecting, based on the criteria, a first plain-text value stored in, or requested to be stored in, a first entry in the lower-trust database;
in response to selecting the first plain-text value, determining, with one or more processors, a first reference value, wherein:
the criteria indicate whether the plain-text values are to be stored in the lower-trust database or a higher-trust database;
the lower-trust database stores relationships between both plain-text values stored in the lower-trust database and plain-text values stored in the higher-trust database; and
the first reference value does not reveal the first plain-text value without access to the higher-trust database;
storing, with one or more processors, the first plain-text value in the higher-trust database in a second entry identified by the first reference value;
storing, with one or more processors, the first reference value in the first entry of the lower-trust database;
selecting, with one or more processors, another instance of the first plain-text value stored in, or requested to be stored in, a third entry in the lower-trust database, the third entry being a different entry from the first entry; and
in response to selecting another instance of the first plain-text value stored in, or requested to be stored in, the third entry in the lower-trust database, storing, with one or more processors, a value associated with, or equal to, the first reference value.
|