IP Library Granted Patent US 10,157,270
Granted Patent B2
US 10,157,270 · App. 14/728,532 · Granted Dec 18, 2018

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

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,157,270
App. No.
14/728,532
Granted
Dec 18, 2018
Kind
B2
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 (41)

1. A method to obtain auxiliary data from text data, the method comprising:

detecting, by executing an instruction with a processor, a first set of encoded characters present in first text data obtained from computer memory, the first set of encoded characters including a first white space character and a first flow control character;

mapping the first set of encoded characters to first data in the auxiliary data by executing an instruction with the processor;

detecting, by executing an instruction with the processor, a second set of encoded characters present in the first text data obtained from computer memory, the second set of encoded characters including at least one of a second white space character or a second flow control character;

mapping, by executing an instruction with the processor, the second set of encoded characters to a first bit position of the first data in the auxiliary data; and

determining the auxiliary data, by executing an instruction with the processor, based on placing the first data in the first bit position in the auxiliary data.

2. The method as defined in claim 1 , wherein the detecting of the first set of encoded characters includes detecting at least one of a combination of multiple Unicode non-zero width white space characters or a combination of Unicode characters including a non-zero width white space character and a zero-width white space character.

3. The method as defined in claim 1 , further including:

detecting a third set of encoded characters and a fourth set of encoded characters present in second text data;

mapping the third set of encoded characters to second data in the auxiliary data;

mapping the fourth set of encoded characters to a second bit position of the second data in the auxiliary data, wherein the second bit position is different than the first bit position; and

determining the auxiliary data based further on placing the second data in the second bit position in the auxiliary data.

4. The method as defined in claim 3 , further including determining whether the auxiliary data has been completely assembled, the determining of the auxiliary data being based on the auxiliary data having been completely assembled.

5. The method as defined in claim 3 , further including determining whether the auxiliary data has been completely assembled, the detecting of the third set of encoded characters and the fourth set of encoded characters, the mapping of the third set of encoded characters, and the mapping of the fourth set of encoded characters occurring in response to determining that the auxiliary data has not been completely assembled.

6. The method as defined in claim 1 , wherein the first and second sets of encoded characters represent a similar width, the width being defined based on a width presented when the first and second sets of encoded characters are decoded and displayed by a processing device.

7. The method as defined in claim 1 , wherein the detecting of the first set of encoded characters includes detecting a combination of Unicode characters including the flow control character.

8. An apparatus to obtain auxiliary data from text data, the apparatus comprising:

a data character extractor to detect a first set of encoded characters present in first text data obtained from computer memory, the first set of encoded characters including a first white space character and a first flow control character, and to map the first set of encoded characters to first data in the auxiliary data;

a position character extractor to detect a second set of encoded characters present in the first text data obtained from computer memory, the second set of encoded characters including at least one of a second white space character or a second flow control character, the position character extractor to map the second set of encoded characters to a first bit position of the first data in auxiliary data; and

an auxiliary data assembler to place the first data in the first bit position in the auxiliary data to determine the auxiliary data.

9. The apparatus as defined in claim 8 , wherein the first set of encoded characters is at least one of a combination of multiple Unicode non-zero width white space characters, a combination of Unicode characters including a non-zero width white space character and a zero-width white space character, or a combination of Unicode characters including a flow control character.

10. The apparatus as defined in claim 8 , wherein the data character extractor is to detect a third set of encoded characters present in second text data and map the third set of encoded characters to second data, the position character extractor is to detect a fourth set of encoded characters present in second text data, the position character extractor is to map the fourth set of encoded characters to a second bit position of the second data in the auxiliary data, and the auxiliary data assembler is to determine the auxiliary data based further on placing the second data in the second bit position in the auxiliary data.

11. The apparatus as defined in claim 10 , wherein the auxiliary data assembler is to determine whether the auxiliary data has been completely assembled, the auxiliary data assembler to determine the auxiliary data when the auxiliary data has been completely assembled.

12. The apparatus as defined in claim 8 , further including an encoded data parser to determine a number of white spaces in the first text data, the data character extractor to map the first set of encoded characters based on the number of white spaces and the position character extractor to map the second set of encoded characters based on the number of white spaces.

13. The apparatus as defined in claim 8 , further including an auxiliary data decryptor to decrypt the auxiliary data to obtain plaintext auxiliary data.

14. The apparatus as defined in claim 8 , wherein the position character extractor is to determine the first bit position of the first data in the auxiliary data to be at least one of N leftmost bits in the auxiliary data, N rightmost bits in the auxiliary data, alternating bits in the auxiliary data, N inside bits in the auxiliary data, or N outside bits in the auxiliary data.

15. A computer readable storage medium comprising computer readable instructions which, when executed, cause a processor to at least:

detect a first set of encoded characters present in first text data obtained from computer memory, the first set of encoded characters including a first white space character and a first flow control character;

map the first set of encoded characters to first data in auxiliary data conveyed with the first text data obtained from computer memory;

detect a second set of encoded characters present in the first text data obtained from computer memory, the second set of encoded characters including at least one of a second white space character or a second flow control character;

map the second set of encoded characters to a first bit position of the first data in the auxiliary data; and

determine the auxiliary data based on placing the first data in the first bit position in the auxiliary data.

16. The storage medium as defined in claim 15 , wherein the instructions are to cause the processor to detect the first set of encoded characters by detecting a combination of multiple Unicode non-zero width white space characters or a combination of Unicode characters including a non-zero width white space character and a zero-width white space character.

17. The storage medium as defined in claim 15 , wherein the instructions are further to cause the processor to:

detect a third set of encoded characters and a fourth set of encoded characters present in second text data;

map the third set of encoded characters to second data in the auxiliary data;

map the fourth set of encoded characters to a second bit position of the second data in the auxiliary data, wherein the second bit position is different than the first bit position; and

determine the auxiliary data based further on placing the second data in the second bit position in the auxiliary data.

18. The storage medium as defined in claim 17 , wherein the instructions are further to cause the processor to determine whether the auxiliary data has been completely assembled, the instructions to cause the processor to detect the third set of encoded characters and the fourth set of encoded characters, map the third set of encoded characters, and map the fourth set of encoded characters in response to determining that the auxiliary data has not been completely assembled.

19. The storage medium as defined in claim 15 , wherein the first and second sets of encoded characters represent a similar width, the width being defined based on a width presented when the first and second sets of encoded characters are decoded and displayed by a processing device.

20. The storage medium as defined in claim 15 , wherein the instructions are to cause the processor to detect the first set of encoded characters by detecting a combination of Unicode characters including the flow control character.

Assignments (8)
RELEASE (REEL 054066 / FRAME 0064) Recorded May 11, 2023
From: CITIBANK, N.A.
To: A. C. NIELSEN COMPANY, LLC; EXELATE, INC.; GRACENOTE, INC.; GRACENOTE MEDIA SERVICES, LLC; THE NIELSEN COMPANY (US), LLC; NETRATINGS, LLC
Reel/Frame 063605/0001 →
RELEASE (REEL 053473 / FRAME 0001) Recorded May 11, 2023
From: CITIBANK, N.A.
To: A. C. NIELSEN COMPANY, LLC; EXELATE, INC.; GRACENOTE, INC.; GRACENOTE MEDIA SERVICES, LLC; THE NIELSEN COMPANY (US), LLC; NETRATINGS, LLC
Reel/Frame 063603/0001 →
SECURITY INTEREST Recorded May 8, 2023
From: GRACENOTE DIGITAL VENTURES, LLC; GRACENOTE MEDIA SERVICES, LLC; GRACENOTE, INC.; TNC (US) HOLDINGS, INC.; THE NIELSEN COMPANY (US), LLC
To: ARES CAPITAL CORPORATION
Reel/Frame 063574/0632 →
SECURITY INTEREST Recorded Apr 28, 2023
From: GRACENOTE DIGITAL VENTURES, LLC; GRACENOTE MEDIA SERVICES, LLC; GRACENOTE, INC.; TNC (US) HOLDINGS, INC.; THE NIELSEN COMPANY (US), LLC
To: CITIBANK, N.A.
Reel/Frame 063561/0381 →
SECURITY AGREEMENT Recorded Jan 31, 2023
From: GRACENOTE DIGITAL VENTURES, LLC; GRACENOTE MEDIA SERVICES, LLC; GRACENOTE, INC.; TNC (US) HOLDINGS, INC.; THE NIELSEN COMPANY (US), LLC
To: BANK OF AMERICA, N.A.
Reel/Frame 063560/0547 →
CORRECTIVE ASSIGNMENT TO CORRECT THE PATENTS LISTED ON SCHEDULE 1 RECORDED ON 6-9-2020 PREVIOUSLY RECORDED ON REEL 053473 FRAME 0001. ASSIGNOR(S) HEREBY CONFIRMS THE SUPPLEMENTAL IP SECURITY AGREEMENT. Recorded Oct 7, 2020
From: A.C. NIELSEN (ARGENTINA) S.A.; A.C. NIELSEN COMPANY, LLC; ACN HOLDINGS INC.; ACNIELSEN CORPORATION; ACNIELSEN ERATINGS.COM; AFFINNOVA, INC.; ART HOLDING, L.L.C.; ATHENIAN LEASING CORPORATION; CZT/ACN TRADEMARKS, L.L.C.; EXELATE, INC.; GRACENOTE, INC.; GRACENOTE DIGITAL VENTURES, LLC; GRACENOTE MEDIA SERVICES, LLC; NETRATINGS, LLC; NIELSEN AUDIO, INC.; NIELSEN CONSUMER INSIGHTS, INC.; NIELSEN CONSUMER NEUROSCIENCE, INC.; NIELSEN FINANCE CO.; NIELSEN FINANCE LLC; NIELSEN INTERNATIONAL HOLDINGS, INC.; NIELSEN MOBILE, LLC; NMR INVESTING I, INC.; TCG DIVESTITURE INC.; TNC (US) HOLDINGS, INC.; THE NIELSEN COMPANY (US), LLC; VIZU CORPORATION; VNU MARKETING INFORMATION, INC.; NMR LICENSING ASSOCIATES, L.P.; NIELSEN HOLDING AND FINANCE B.V.; THE NIELSEN COMPANY B.V.; VNU INTERNATIONAL B.V.
To: CITIBANK, N.A
Reel/Frame 054066/0064 →
SUPPLEMENTAL SECURITY AGREEMENT Recorded Jun 9, 2020
From: A. C. NIELSEN COMPANY, LLC; ACN HOLDINGS INC.; ACNIELSEN CORPORATION; ACNIELSEN ERATINGS.COM; AFFINNOVA, INC.; ART HOLDING, L.L.C.; ATHENIAN LEASING CORPORATION; CZT/ACN TRADEMARKS, L.L.C.; EXELATE, INC.; GRACENOTE, INC.; GRACENOTE DIGITAL VENTURES, LLC; GRACENOTE MEDIA SERVICES, LLC; NETRATINGS, LLC; NIELSEN AUDIO, INC.; NIELSEN CONSUMER INSIGHTS, INC.; NIELSEN CONSUMER NEUROSCIENCE, INC.; NIELSEN FINANCE CO.; NIELSEN FINANCE LLC; NIELSEN INTERNATIONAL HOLDINGS, INC.; NIELSEN MOBILE, LLC; NIELSEN UK FINANCE I, LLC; NMR INVESTING I, INC.; TCG DIVESTITURE INC.; TNC (US) HOLDINGS, INC.; THE NIELSEN COMPANY (US), LLC; VIZU CORPORATION; VNU MARKETING INFORMATION, INC.; NMR LICENSING ASSOCIATES, L.P.; NIELSEN HOLDING AND FINANCE B.V.; THE NIELSEN COMPANY B.V.; VNU INTERNATIONAL B.V.
To: CITIBANK, N.A.
Reel/Frame 053473/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 15, 2015
From: GEORGIEV, NIKOLAY; AYZENSHTAT, LEONID
To: THE NIELSEN COMPANY (US), LLC
Reel/Frame 035834/0284 →