IP Library Granted Patent US 12,596,820
Granted Patent B2
US 12,596,820 · App. 17/499,176 · Granted Apr 7, 2026

Secure cloaking of data

Inventors: James Anderson Blackley (Rockville Center, NY); Jay Eric Carlson (St. Charles, MO); Michael David Hanrahan (Chesterfield, MO); Bajeed Pattan (Ballwin, MO); Christopher Scott Alcott (Town and Country, MO)
Assignee: Charter Communications Operating, LLC
G06F21/6209G06F21/602G06F21/78G06F2221/2107
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 12,596,820
App. No.
17/499,176
Granted
Apr 7, 2026
Kind
B2
Abstract

In a method for providing secure data storage, a user selection of a plurality of cloaking sequences is received. The cloaking sequences include at least a first and second cloaking sequence. The method also includes cloaking data (e.g., one or more files). Cloaking the data includes retrieving a first hidden sequence associated with the first cloaking sequence, and retrieving a second hidden sequence associated with the second cloaking sequence. The second hidden sequence includes an ordered sequence of bit sets each including one or more bits. Cloaking the data also includes using the first hidden sequence to identify offset positions within the data, and using the ordered sequence of bit sets to perform one or more operations on the data at the identified offset positions. The method further includes storing the cloaked data.

Claims (116)

1 . A method for providing secure data storage, the method comprising:

receiving a user selection of a plurality of cloaking sequences, wherein the plurality of cloaking sequences includes at least (i) a first cloaking sequence and (ii) a second cloaking sequence;

cloaking data, wherein cloaking the data includes

retrieving a first hidden sequence associated with the first cloaking sequence,

retrieving a second hidden sequence associated with the second cloaking sequence, the second hidden sequence including an ordered sequence of bit sets each including one or more bits,

using the first hidden sequence to identify offset positions within the data, and

modifying the data at the identified offset positions by using the ordered sequence of bit sets to perform one or more operations on the data at the identified offset positions, wherein using the ordered sequence of bit sets to perform one or more operations on the data at the identified offset positions includes, at each of the identified offset positions within the data, (i) inserting a respective one of the bit sets, or (ii) determining whether the data includes a bit pattern that matches a respective one of the bit sets and removing the bit pattern from the data only if the bit pattern matches the respective one of the bit sets; and

storing the cloaked data.

2 . The method of claim 1 , wherein using the ordered sequence of bit sets to perform one or more operations on the data at the identified offset positions includes, at each of the identified offset positions within the data, inserting the respective one of the bit sets.

3 . The method of claim 2 , wherein:

the first hidden sequence includes at least a first integer followed by a second integer;

the second hidden sequence includes at least a first bit set followed by a second bit set; and

using the ordered sequence of bit sets to perform one or more operations on the data at the identified offset positions includes

inserting the first bit set immediately after a first number of bits of the data, the first number being equal to the first integer, and

inserting the second bit set immediately after a second number of bits of the data, the second number of bits of the data immediately following the inserted first bit set, and the second number being equal to the second integer.

4 . The method of claim 1 , wherein using the ordered sequence of bit sets to perform one or more operations on the data at the identified offset positions includes, at each of the identified offset positions within the data:

determining whether the data includes the bit pattern that matches the respective one of the bit sets; and

removing the bit pattern from the data only if the bit pattern matches the respective one of the bit sets.

5 . A method for providing secure data storage, the method comprising:

receiving a user selection of a plurality of cloaking sequences, wherein the plurality of cloaking sequences includes at least (i) a first cloaking sequence and (ii) a second cloaking sequence;

cloaking data, wherein cloaking the data includes

retrieving a first hidden sequence associated with the first cloaking sequence,

retrieving a second hidden sequence associated with the second cloaking sequence, the second hidden sequence including an ordered sequence of bit sets each including one or more bits,

using the first hidden sequence to identify offset positions within the data, and

modifying the data at the identified offset positions by using the ordered sequence of bit sets to perform one or more operations on the data at the identified offset positions; and

storing the cloaked data,

wherein receiving the user selection of the plurality of cloaking sequences includes receiving a user selection of a plurality of image sequences.

6 . A method for providing secure data storage, the method comprising:

receiving a user selection of a plurality of cloaking sequences, wherein the plurality of cloaking sequences includes at least (i) a first cloaking sequence and (ii) a second cloaking sequence;

cloaking data, wherein cloaking the data includes

retrieving a first hidden sequence associated with the first cloaking sequence,

retrieving a second hidden sequence associated with the second cloaking sequence, the second hidden sequence including an ordered sequence of bit sets each including one or more bits,

using the first hidden sequence to identify offset positions within the data, and

modifying the data at the identified offset positions by using the ordered sequence of bit sets to perform one or more operations on the data at the identified offset positions;

storing the cloaked data; and

prior to cloaking the data, converting the data to a binary format.

7 . The method of claim 1 , wherein storing the cloaked data includes storing the cloaked data in a database, wherein the data is stored in the database prior to cloaking the data, and wherein the method further comprises:

prior to cloaking the data, uncloaking the data using a plurality of other cloaking sequences, the plurality of other cloaking sequences corresponding to a previous user selection.

8 . A method for providing secure data storage, the method comprising:

receiving a user selection of a plurality of cloaking sequences, wherein the plurality of cloaking sequences includes at least (i) a first cloaking sequence and (ii) a second cloaking sequence;

cloaking data, wherein cloaking the data includes

retrieving a first hidden sequence associated with the first cloaking sequence,

retrieving a second hidden sequence associated with the second cloaking sequence, the second hidden sequence including an ordered sequence of bit sets each including one or more bits,

using the first hidden sequence to identify offset positions within the data, and

modifying the data at the identified offset positions by using the ordered sequence of bit sets to perform one or more operations on the data at the identified offset positions; and

storing the cloaked data,

wherein storing the cloaked data includes storing the cloaked data in a database, wherein the data is stored in the database prior to cloaking the data, and wherein the method further comprises:

prior to cloaking the data, uncloaking the data using a plurality of other hidden sequences, the plurality of other hidden sequences being previously associated with the plurality of cloaking sequences.

9 . The method of claim 1 , wherein the plurality of cloaking sequences further includes a third cloaking sequence, and wherein cloaking the data further includes:

retrieving a third hidden sequence associated with the third cloaking sequence, the third hidden sequence including an additional ordered sequence of bit sets each including one or more bits; and

after using the ordered sequence of bit sets to perform one or more operations on the data at the identified offset positions, (i) using the first hidden sequence to identify offset positions within the data, and (ii) using the additional ordered sequence of bit sets to perform one or more operations on the data at the identified offset positions.

10 . The method of claim 1 , wherein receiving the user selection of the plurality of cloaking sequences includes:

receiving a user request to automatically generate cloaking sequences; and

automatically generating the plurality of cloaking sequences in response to the user request.

11 . A method for providing secure data storage, the method comprising:

receiving a user selection of a plurality of cloaking sequences, wherein the plurality of cloaking sequences includes at least (i) a first cloaking sequence and (ii) a second cloaking sequence;

cloaking data, wherein cloaking the data includes

retrieving a first hidden sequence associated with the first cloaking sequence,

retrieving a second hidden sequence associated with the second cloaking sequence, the second hidden sequence including an ordered sequence of bit sets each including one or more bits,

using the first hidden sequence to identify offset positions within the data, and

modifying the data at the identified offset positions by using the ordered sequence of bit sets to perform one or more operations on the data at the identified offset positions:

storing the cloaked data;

receiving a user selection of a master key;

after storing the cloaked data, receiving a user entry of the master key;

after receiving the user entry of the master key, uncloaking the cloaked data using at least the first cloaking sequence and the second cloaking sequence; and

displaying at least a portion of the uncloaked data to the user.

12 . A method for providing secure data storage, the method comprising:

receiving a user selection of a plurality of cloaking sequences, wherein the plurality of cloaking sequences includes at least (i) a first cloaking sequence and (ii) a second cloaking sequence;

cloaking data, wherein cloaking the data includes

retrieving a first hidden sequence associated with the first cloaking sequence,

retrieving a second hidden sequence associated with the second cloaking sequence, the second hidden sequence including an ordered sequence of bit sets each including one or more bits,

using the first hidden sequence to identify offset positions within the data, and

modifying the data at the identified offset positions by using the ordered sequence of bit sets to perform one or more operations on the data at the identified offset positions; and

storing the cloaked data,

wherein cloaking the data includes:

requesting, from a server, hidden sequences associated with the first cloaking sequence and the second cloaking sequence; and

in response to requesting the hidden sequences, receiving the first hidden sequence and the second hidden sequence from the server.

13 . The method of claim 1 , further comprising:

receiving a user indication of an additional user to whom limited access to the data is to be provided; and

transmitting, to the additional user, a key that enables uncloaking the data only a fixed number of times.

14 . The method of claim 1 , further comprising:

receiving, via the user interface, a user selection of an option to only partially cloak the data,

wherein using the first hidden sequence to identify offset positions within the data includes (i) identifying a subset of the data that is to be cloaked, and (ii) using the first hidden sequence to identify offset positions within the subset of the data.

15 . A non-transitory, computer-readable medium storing instructions that, when executed by one or more processors, cause the one or more processors to:

receive a user selection of a plurality of cloaking sequences, wherein the plurality of cloaking sequences includes at least (i) a first cloaking sequence and (ii) a second cloaking sequence, and wherein the plurality of cloaking sequences includes a plurality of image sequences;

cloak data, at least in part by

retrieving a first hidden sequence associated with the first cloaking sequence,

retrieving a second hidden sequence associated with the second cloaking sequence, the second hidden sequence including an ordered sequence of bit sets each including one or more bits,

using the first hidden sequence to identify offset positions within the data, and

using the ordered sequence of bit sets to perform one or more operations on the data at the identified offset positions; and

store the cloaked data.

16 . The non-transitory, computer-readable medium of claim 15 , wherein using the ordered sequence of bit sets to perform one or more operations on the data at the identified offset positions includes, at each of the identified offset positions within the data, inserting a respective one of the bit sets.

17 . The non-transitory, computer-readable medium of claim 15 , wherein using the ordered sequence of bit sets to perform one or more operations on the data at the identified offset positions includes, at each of the identified offset positions within the data:

determining whether the data includes a bit pattern that matches a respective one of the bit sets; and

removing the bit pattern from the data only if the bit pattern matches the respective one of the bit sets.

18 . A non-transitory, computer-readable medium storing instructions that, when executed by one or more processors, cause the one or more processors to:

receive a user selection of a plurality of cloaking sequences, wherein the plurality of cloaking sequences includes at least (i) a first cloaking sequence and (ii) a second cloaking sequence;

cloak data, at least in part by

retrieving a first hidden sequence associated with the first cloaking sequence,

retrieving a second hidden sequence associated with the second cloaking sequence, the second hidden sequence including an ordered sequence of bit sets each including one or more bits,

using the first hidden sequence to identify offset positions within the data, and

using the ordered sequence of bit sets to perform one or more operations on the data at the identified offset positions; and

store the cloaked data,

wherein storing the cloaked data includes storing the cloaked data in a database, wherein the data is stored in the database prior to cloaking the data, and wherein the instructions further cause the one or more processors to:

prior to cloaking the data, uncloak the data using a plurality of other hidden sequences, the plurality of other hidden sequences being previously associated with the plurality of cloaking sequences.

19 . A non-transitory, computer-readable medium storing instructions that, when executed by one or more processors, cause the one or more processors to:

receive a user selection of a plurality of cloaking sequences, wherein the plurality of cloaking sequences includes at least (i) a first cloaking sequence and (ii) a second cloaking sequence;

cloak data, at least in part by

retrieving a first hidden sequence associated with the first cloaking sequence,

retrieving a second hidden sequence associated with the second cloaking sequence, the second hidden sequence including an ordered sequence of bit sets each including one or more bits,

using the first hidden sequence to identify offset positions within the data, and

using the ordered sequence of bit sets to perform one or more operations on the data at the identified offset positions; and

store the cloaked data,

wherein the instructions cause the one or more processors to cloak the data in part by:

requesting, from a server, hidden sequences associated with the first cloaking sequence and the second cloaking sequence; and

in response to requesting the hidden sequences, receiving the first hidden sequence and the second hidden sequence from the server.

Assignments (4)
SECURITY INTEREST Recorded Sep 22, 2022
From: CHARTER COMMUNICATIONS OPERATING, LLC; TIME WARNER CABLE ENTERPRISES, LLC
To: WELLS FARGO TRUST COMPANY, N.A.
Reel/Frame 061503/0937 →
SECURITY INTEREST Recorded Sep 22, 2022
From: CHARTER COMMUNICATIONS OPERATING, LLC; TIME WARNER CABLE ENTERPRISES, LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 061504/0307 →
SUPPLEMENTAL SECURITY AGREEMENT Recorded Aug 10, 2022
From: CHARTER COMMUNICATIONS OPERATING, LLC; TIME WARNER CABLE ENTERPRISES LLC
To: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 061633/0069 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 18, 2021
From: BLACKLEY, JAMES ANDERSON; CARLSON, JAY ERIC; HANRAHAN, MICHAEL DAVID; PATTAN, BAJEED; ALCOTT, CHRISTOPHER SCOTT
To: CHARTER COMMUNICATIONS OPERATING, LLC
Reel/Frame 057824/0043 →
Continuity (2)
Continuation 16277748 · Feb 15, 2019
Related Publication 20220035935A1 · Feb 3, 2022
References Cited (24)
US 6970886B1 · Conwell et al. · 2005 [cited by applicant]
US 8347398B1 · Weber · 2013 [cited by applicant]
US 8464311B2 · Ashley et al. · 2013 [cited by applicant]
US 8826455B2 · Julisch et al. · 2014 [cited by applicant]
US 9224000B1 · Ghetti · 2015 [cited by applicant]
US 9495544B2 · Aissi et al. · 2016 [cited by applicant]
US 9639714B1 · Carlson et al. · 2017 [cited by applicant]
US 9749302B1 · Copeland et al. · 2017 [cited by applicant]
US 20080114884A1 · Hewes et al. · 2008 [cited by applicant]
US 20120254386A1 · Smith et al. · 2012 [cited by applicant]
US 20120297271A1 · Sommer · 2012 [cited by examiner]
US 20130232304A1 · Lohman et al. · 2013 [cited by applicant]
US 20130305345A1 · Bugenhagen · 2013 [cited by applicant]
US 20140177825A1 · Mattsson et al. · 2014 [cited by applicant]
US 20150007265A1 · Aissi et al. · 2015 [cited by applicant]
US 20160063269A1 · Liden et al. · 2016 [cited by applicant]
US 20160164681A1 · Jiang et al. · 2016 [cited by applicant]
WO WO2012000092A1 · 2012 [cited by applicant]
WO WO2016064888A1 · 2016 [cited by applicant]
Joint Crypto-Stego Scheme for Enhanced Image Protection With Nearest-Centroid Clustering. Shifa. (Year: 2018). [cited by examiner]
Efficient Implementation of Synchronization in OFDM System Based on FGPA. Qiang. (Year: 2007). [cited by examiner]
CN108563956. English Translation. (Year: 2018). [cited by examiner]
KR 102180508. English Translation. (Year: 2019). [cited by examiner]
Traceroute Based IP Channel for Sending Hidden Short Messages. Trabelsi et al. IWSEC. (Year: 2006). [cited by applicant]