Patent ID: 8296342

Claim:
A method, comprising: fingerprinting, by at least one processor, a first copy of a database with a first fingerprint having at least one part of said first fingerprint in common with another fingerprint used for another copy of said database, and at least one part of said first fingerprint unique to said first copy of said database; wherein said fingerprinting said first copy of said database comprises swapping attributes between multiple records in said first copy of said database; and an operation selected from the group consisting of a first operation and a second operation; wherein said first operation comprises identifying a first record in said first copy that has a first attribute that results in a predetermined value in modulo P when hashed with a key and a second record in said first copy that has a second attribute that also results in said predetermined value in modulo P when hashed with a key, and wherein swapping said attributes comprises swapping said second attributes between said first and second records; and wherein said second operation comprises determining target marking records whose attributes are to be swapped and determining source marking records having attributes potentially to be used to swap with said attributes of said target marking records, wherein determining said target marking records comprises, for a given record in said first copy of said database, concatenating a marking key with a primary key to produce a concatenation.