Patent ID: 7979410

Claim:
A non-transitory computer-readable medium storing computer-executable instructions that when executed by a computer cause the computer to perform a method, the method comprising: identifying a column to be masked in a database table; upon determining that a second column depends on the column to be masked, identifying a dependency relationship between the column to be masked and the second column; determining a transitive closure graph for dependency relationships involving the column to be masked, the second column, and other columns related to the column to be masked through a dependency relationship; identifying a root column for a column in the transitive closure graph; creating a mapping table that stores original values and masking values for the root column; masking the root column based, at least in part, on the mapping table; and masking a child column of the root column based, at least in part, on the mapping table; where referential integrity between the root column and the child column is maintained after masking by masking corresponding values in the root column and the child column with identical mask values from the mapping table.