Patent ID: 8055668

Claim:
A method for data masking at least one data field of at least one data record in a primary database and at least one data field of at least one data record in a secondary database that has a key field having a correspondence with a key field in the at least one data record in the primary database, using a table of translation matrix records comprising an unmasked key field and at least one masked data field corresponding to the at least one data field of the at least one data record, the method comprising the actions of: with respect of the primary database: comparing the key field of the at least one data record in the corresponding database against the unmasked key field of each of the translation matrix records; populating a first sub-table record, if the unmasked key field of a translation matrix record matches the key field of the at least one data record, the first sub-table record comprising an unmasked key field and at least one masked data field corresponding to the at least one data field of the at least one data record, using the unmasked key field and the at least one masked data field of the matching translation matrix record; populating a second sub-table record, if no unmasked key field of any translation matrix record matches the key field of the at least one data record, the second sub-table record comprising a key field and at least one data field corresponding to the at least one data field of the at least one data record, using the corresponding key field and the at least one data field of the at least one data record; masking the at least one data field of the second sub-table record; adding the first sub-table record or the masked second sub-table record as a masked record in a masked copy of the corresponding database; and if the masked second sub-table record was created, populating a translation matrix record corresponding thereto using the key field and the at least one data field for the unmasked key field and the at least one masked data field; repeating the actions performed with respect of the primary database with respect to the secondary database and further comprising: if the key field in the at least one data record in the primary database and the key field in the at least one data record in the secondary database are different, setting out the correspondence therebetween in a pivot table including both of the key fields; and comparing the key field of the at least one data record in the secondary database against the unmasked key field of each of the translation matrix records further comprises looking up the at least one key field of the at least one data record in the secondary database in the corresponding key field of the pivot table and comparing the other key field thereof against the unmasked key field of each of the translation matrix records; whereby at least one data field of the at least one data record of the primary database and the at least one data field of the at least one data record of the secondary database are masked in a consistent manner.