Patent ID: 8806171

Claim:
A computer program product embodied in a non-transitory computer-readable medium, the computer program product comprising an algorithm adapted to effectuate a method for dynamically remapping a set of elements onto another set of elements, the method comprising: providing a first set of elements bijectively mapped onto a second set of elements; providing a pointer for indicating an element from the first set; and dynamically remapping the first set onto the second set, wherein the dynamically remapping comprises performing two or more rounds of mapping, each respective round of mapping comprising: mapping, at least partially based on a random key, each respective element of the first set to a random respective element in the second set by swapping, between the respective element from the first set and another respective element from the first set, their respective mappings to an element from the second set, wherein the random key is a new random key provided for the respective round of mapping and wherein the pointer is updated to indicate an element from the first set to be mapped next during the respective round of mapping; and tracking, using the pointer, the new random key for the respective round of mapping, and a random key from a previous round of mapping, which elements from the first set have already been mapped to elements from the second set in the respective round of mapping.