# US 10,482,222 B2 · Methods, apparatus, and articles of manufacture to encode auxiliary data into text data and methods, apparatus, and articles of manufacture to obtain encoded data from text data

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

- Number: US 10,482,222 B2
- Document ID: US10482222B2
- Status: Granted
- Kind: B2
- Application number: 16/208,175
- Filed: 2018-12-03
- Published: 2019-06-13
- Granted: 2019-11-19
- Earliest claimed: 2012-11-30
- Assignees: The Nielsen Company (US), LLC
- Applicants: The Nielsen Company (US), LLC
- Inventors: Nikolay Georgiev; Leonid Ayzenshtat
- Web page: https://patentgrep.com/patent/US10482222B2

## CPC

- G06F 21/16: Program or content traceability, e.g. by watermarking
- G06F 16/84: Mapping; Conversion
- 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]}
- G09C 5/00: Ciphering apparatus or methods not provided for in the preceding groups, e.g. involving the concealment or deformation of graphic data such as designs, written or printed messages
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- G09C: CIPHERING OR DECIPHERING APPARATUS FOR CRYPTOGRAPHIC OR OTHER PURPOSES INVOLVING THE NEED FOR SECRECY

## Abstract

Methods, apparatus, and articles of manufacture to encode auxiliary data into text data and methods, apparatus, and articles of manufacture to obtain encoded data from text data are disclosed. An example method includes detecting, using a processor, a first symbol present in first text data, the first symbol including a white space character; mapping the first symbol to first data using the processor; detecting, using the processor, a second symbol present in the first text data by detecting a white space character or a flow control character; mapping, using the processor, the second symbol to a first bit position of the first data in encoded data; and determining the encoded data, using the processor, based on placing the first data in the first bit position.

## Claims

### Claim 1

An apparatus to encode auxiliary data into text data, the apparatus comprising:
a data character selector to:
map a first portion of auxiliary data to a first set of one or more encoded characters to be included in the text data; and
map a second portion of the auxiliary data to a second set of one or more encoded characters to be included in the text data;
a source data parser to determine a number of white spaces in the text data;
a position character selector to map respective positions of the first portion of the auxiliary data and the second portion of the auxiliary data within the auxiliary data to a third set of one or more encoded characters to be included in the text data based on the number of white spaces; and
a data unit encoder to include the first set of one or more encoded characters, the second set of one or more encoded characters, and the third set of one or more encoded characters in the text data to encode the auxiliary data in the text data, the data character selector, the position character selector, the data unit encoder and the source data parser implemented by hardware or at least one hardware processor.

### Claim 2 (depends on 1)

The apparatus of claim 1, wherein the first set of one or more encoded characters, the second set of one or more encoded characters and the third set of one or more encoded characters each include at least one Unicode white space character.

### Claim 3 (depends on 2)

The apparatus of claim 2, wherein:
the at least one Unicode white space character includes at least one of Unicode character U+2000, Unicode character U+2004, or Unicode character U+2006; and
the data unit encoder is to use the at least one Unicode white space character included in each of the first set of one or more encoded characters, the second set of one or more encoded characters and the third set of one or more encoded characters to encode two bits of the auxiliary data in a visual space of the text data.

### Claim 4 (depends on 2)

The apparatus of claim 2, wherein:
the Unicode white space character includes at least one of Unicode character U+200A, Unicode character U+2009, Unicode character U+202F, Unicode character U+2008, or Unicode character U+205F; and
the data unit encoder is to use the at least one Unicode white space character included in each of the first set of one or more encoded characters, the second set of one or more encoded characters and the third set of one or more encoded characters to encode four bits of the auxiliary data in a visual space of the text data.

### Claim 5 (depends on 1)

The apparatus of claim 1, wherein the first set of one or more encoded characters and the second set of one or more encoded characters represent a substantially similar character width.

### Claim 6 (depends on 1)

The apparatus of claim 1, wherein the data unit encoder is to include the first set of one or more encoded characters, the second set of encoded characters, and the third set of one or more encoded characters in the text data by:
replacing a first white space character of the text data with the first set of one or more encoded characters;
replacing a second white space character of the text data with the second set of one or more encoded characters; and
replacing a third white space character of the text data with the third set of one or more encoded characters.

### Claim 7

A non-transitory computer readable storage medium comprising computer readable instructions which, when executed, cause a processor to at least:
map a first portion of auxiliary data to a first set of one or more encoded characters to be included in text data;
map a second portion of the auxiliary data to a second set of one or more encoded characters to be included in the text data;
determine a number of white spaces in the text data;
map respective positions of the first portion of the auxiliary data and the second portion of the auxiliary data within the auxiliary data to a third set of one or more encoded characters to be included in the text data based on the number of white spaces; and
encode the auxiliary data in the text data by including the first set of one or more encoded characters, the second set of one or more encoded characters, and the third set of one or more encoded characters in the text data.

### Claim 8 (depends on 7)

The computer readable storage medium of claim 7, wherein the first set of one or more encoded characters, the second set of one or more encoded characters and the third set of one or more encoded characters each include at least one Unicode white space character.

### Claim 9 (depends on 8)

The computer readable storage medium of claim 8, wherein the Unicode white space character includes at least one of Unicode character U+2000, Unicode character U+2004, or Unicode character U+2006, and the instructions, when executed, cause the processor to use the at least one Unicode white space character included in each of the first set of one or more encoded characters, the second set of one or more encoded characters and the third set of one or more encoded characters to encode two bits of the auxiliary data in a visual space of the text data.

### Claim 10 (depends on 8)

The computer readable storage medium of claim 8, wherein the Unicode white space character includes at least one of Unicode character U+200A, Unicode character U+2009, Unicode character U+202F, Unicode character U+2008, or Unicode character U+205F, and the instructions, when executed, cause the processor to use the at least one Unicode white space character included in each of the first set of one or more encoded characters, the second set of one or more encoded characters and the third set of one or more encoded characters to encode four bits of the auxiliary data in a visual space of the text data.

### Claim 11 (depends on 7)

The computer readable storage medium of claim 7, wherein the first set of one or more encoded characters and the second set of one or more encoded characters represent a substantially similar character width.

### Claim 12 (depends on 8)

The computer readable storage medium of claim 8, wherein the instructions, when executed, cause the processor to:
replace a first white space character of the text data with the first set of one or more encoded characters;
replace a second white space character of the text data with the second set of one or more encoded characters; and
replace a third white space character of the text data with the third set of one or more encoded characters.

### Claim 13

A method to encode auxiliary data into text data, the method comprising:
mapping, by executing an instruction with a processor, a first portion of auxiliary data to a first set of one or more encoded characters to be included in the text data;
mapping, by executing an instruction with the processor, a second portion of the auxiliary data to a second set of one or more encoded characters to be included in the text data;
determining, by executing an instruction with the processor, a number of white spaces in the text data;
mapping, by executing an instruction with the processor, respective positions of the first portion of the auxiliary data and the second portion of the auxiliary data within the auxiliary data to a third set of one or more encoded characters to be included in the text data based on the number of white spaces; and
encoding, by executing an instruction with the processor, the auxiliary data in the text data by including the first set of one or more encoded characters, the second set of one or more encoded characters, and the third set of one or more encoded characters in the text data.

### Claim 14 (depends on 13)

The method of claim 13, wherein the first set of one or more encoded characters, the second set of one or more encoded characters and the third set of one or more encoded characters each include at least one Unicode white space character.

### Claim 15 (depends on 14)

The method of claim 14, wherein the Unicode white space character includes at least one of Unicode character U+2000, Unicode character U+2004, or Unicode character U+2006, and the encoding of the auxiliary data in the text data includes encoding two bits of the auxiliary data in a visual space of the text data using the at least one Unicode white space character included in each of the first set of one or more encoded characters, the second set of one or more encoded characters and the third set of one or more encoded characters.

### Claim 16 (depends on 14)

The method of claim 14, wherein the Unicode white space character includes at least one of Unicode character U+200A, Unicode character U+2009, Unicode character U+202F, Unicode character U+2008, or Unicode character U+205F, and the encoding of the auxiliary data in the text data includes encoding four bits of the auxiliary data in a visual space of the text data using the at least one Unicode white space character included in each of the first set of one or more encoded characters, the second set of one or more encoded characters and the third set of one or more encoded characters.

### Claim 17 (depends on 13)

The method of claim 13, wherein the first set of one or more encoded characters and the second set of one or more encoded characters represent a substantially similar character width.

### Claim 18 (depends on 13)

The method of claim 13, wherein the encoding of the auxiliary data includes:
replacing a first white space character of the text data with the first set of one or more encoded characters;
replacing a second white space character of the text data with the second set of one or more encoded characters; and
replacing a third white space character of the text data with the third set of one or more encoded characters.
