# US 2014/0157439 A1 · Methods, apparatus, and articles of manufacture to encode auxilary data into relational database keys and methods, apparatus, and articles of manufacture to obtain encoded data from relational database keys

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2014/0157439 A1
- Document ID: US20140157439A1
- Status: Published application
- Kind: A1
- Application number: 13/691,515
- Filed: 2012-11-30
- Published: 2014-06-05
- Earliest claimed: 2012-11-30
- Assignees: The Nielsen Company (US), LLC
- Inventors: Leonid Ayzenshtat; Nikolay Georgiev; Kalyanaraman Rajamani
- Web page: https://patentgrep.com/patent/US20140157439A1

## CPC

- G06F 21/16: Program or content traceability, e.g. by watermarking
- G06F 21/10: Protecting distributed programs or content, e.g. vending or licensing of copyrighted material (protection in video systems or pay television H04N7/16) {; Digital rights management [DRM]}
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

Methods, apparatus, and articles of manufacture to encode auxiliary data into relational database keys and methods, apparatus, and articles of manufacture to obtain encoded data from relational database keys are disclosed. An example method to encode auxiliary data into relational data includes generating a code comprising a plurality of groups and representative of auxiliary data, determining incremental values for the plurality of groups, generating a first key based on the code, and generating a subsequent key by modifying the first key based on the value of the first key and the incremental values.

## Claims

### Claim 1

A method to encode auxiliary data into relational data, comprising:
dividing a code representative of auxiliary data into a plurality of groups;
determining an incremental value for each of the plurality of groups;
generating a first key based on the code; and
generating a subsequent key by modifying the first key based on the value of the first key and the incremental values.

### Claim 2 (depends on 1)

A method as defined in claim 1, wherein generating the subsequent key comprises generating a value for the subsequent key such that a modulo operation of the first key and the subsequent key based on the incremental values have identical results.

### Claim 3 (depends on 1)

A method as defined in claim 1, wherein each of the plurality of groups in the code has an initial value, and determining the incremental values comprises determining a prime number for each of the groups, the prime number for each of the groups being larger than the initial value of that group.

### Claim 4 (depends on 1)

A method as defined in claim 1, further comprising determining an upper value for each of the groups, wherein generating the subsequent key comprises incrementing a second one of the groups when a first one of the groups is equal to the upper value for the second group.

### Claim 5 (depends on 1)

A method as defined in claim 1, wherein each of the plurality of groups is representative of a character of the auxiliary data.

### Claim 6 (depends on 1)

A method as defined in claim 1, further comprising encrypting the auxiliary data to generate the code.

### Claim 7 (depends on 1)

A method as defined in claim 1, further comprising modifying the auxiliary data using a base number to generate the code.

### Claim 8 (depends on 1)

A method as defined in claim 1, further comprising performing an operation on the auxiliary data according to a base algorithm to generate the code.

### Claim at position 9

9-15. (canceled)

### Claim 16

An apparatus to encode auxiliary data into relational data, comprising:
a code generator to generate a code comprising a plurality of groups and representative of auxiliary data;
an increment determiner to determine an incremental value for each of the plurality of groups; and
a database key generator to generate a first key based on the code, and to generate a subsequent key such that a group of the subsequent key differs from a corresponding group of the first key by a multiple of a corresponding incremental value for the group.

### Claim 17 (depends on 16)

An apparatus as defined in claim 16, further comprising a relational data builder to generate relational data including the first key and the subsequent key.

### Claim 18 (depends on 16)

An apparatus as defined in claim 16, wherein the code generator is to generate the code by modifying the auxiliary data using a base number.

### Claim 19 (depends on 16)

An apparatus as defined in claim 16, wherein the increment determiner is to determine the incremental values to be prime numbers greater than the respective values of the code for the plurality of groups.

### Claim 20 (depends on 16)

An apparatus as defined in claim 16, wherein the database key generator is to generate the subsequent key by modifying the value of one of the groups of the first key by an incremental value of the one of the groups.

### Claim 21 (depends on 16)

An apparatus as defined in claim 16, wherein the code determiner is to determine an upper value for each of the groups, the database key generator to generate the subsequent key by incrementing a second one of the groups when a first one of the groups is equal to the upper value for the second group.

### Claim at position 16

22-27. (canceled)

### Claim 28

A computer readable storage medium comprising computer readable instructions which, when executed, cause a processor to:
divide a code representative of auxiliary data into a plurality of groups;
determine incremental values for the plurality of groups;
generate a first key based on the code; and
generate a subsequent key by modifying the first key based on the value of the first key and the incremental values.

### Claim 29 (depends on 28)

A computer readable storage medium as defined in claim 28, wherein the instructions are to cause the processor to generate the subsequent key by generating a value for the subsequent key such that a modulo operation of the first key and the subsequent key based on the incremental values have identical results.

### Claim 30 (depends on 28)

A computer readable storage medium as defined in claim 28, wherein each of the plurality of groups in the code has an initial value, and the instructions are to cause the processor to determine the incremental values by determining a prime number for each of the groups, the prime number for each of the groups being larger than the initial value of that group.

### Claim 31 (depends on 28)

A computer readable storage medium as defined in claim 28, wherein the instructions are further to cause the processor to determine an upper value for each of the groups, the instructions to cause the processor to generate the subsequent key by incrementing a second one of the groups when a first one of the groups is equal to the upper value for the second group.

### Claim 32 (depends on 28)

A computer readable storage medium as defined in claim 28, wherein each of the plurality of groups is representative of a character of the auxiliary data.

### Claim 33 (depends on 28)

A computer readable storage medium as defined in claim 28, wherein the instructions are further to cause the processor to encrypt the auxiliary data to generate the code.

### Claim 34 (depends on 28)

A computer readable storage medium as defined in claim 28, wherein the instructions are further to cause the processor to modify the auxiliary data using a base number to generate the code.

### Claim 35 (depends on 28)

A computer readable storage medium as defined in claim 28, wherein the instructions are to cause the processor to perform an operation on the auxiliary data according to a base algorithm to generate the code.

### Claim at position 25

36-42. (canceled)
