US 12,237,848 B2
System and method for encrypted data compression
Joshua Cooper, Columbia, SC (US); Aliasghar Riahi, Orinda, CA (US); Mojgan Haddad, Orinda, CA (US); Ryan Kourosh Riahi, Orinda, CA (US); Razmin Riahi, Orinda, CA (US); and Charles Yeomans, Orinda, CA (US)
Assigned to ATOMBEAM TECHNOLOGIES INC, Moraga, CA (US)
Filed by AtomBeam Technologies Inc., Moraga, CA (US)
Filed on Nov. 6, 2023, as Appl. No. 18/503,135.
Application 18/503,135 is a continuation of application No. 18/305,305, filed on Apr. 21, 2023, granted, now 11,811,428.
Application 18/305,305 is a continuation in part of application No. 18/190,044, filed on Mar. 24, 2023, granted, now 11,831,343.
Application 18/190,044 is a continuation in part of application No. 17/875,201, filed on Jul. 27, 2022, granted, now 11,700,013, issued on Jul. 11, 2023.
Application 18/190,044 is a continuation in part of application No. 17/727,913, filed on Apr. 25, 2022, granted, now 11,620,051, issued on Apr. 4, 2023.
Application 17/875,201 is a continuation of application No. 17/514,913, filed on Oct. 29, 2021, granted, now 11,424,760, issued on Aug. 23, 2022.
Application 17/875,201 is a continuation of application No. 17/458,747, filed on Aug. 27, 2021, granted, now 11,422,978, issued on Aug. 23, 2022.
Application 17/727,913 is a continuation of application No. 17/404,699, filed on Aug. 17, 2021, granted, now 11,385,794, issued on Jul. 12, 2022.
Application 17/514,913 is a continuation in part of application No. 17/404,699, filed on Aug. 17, 2021, granted, now 11,385,794, issued on Jul. 12, 2022.
Application 18/305,305 is a continuation in part of application No. 17/234,007, filed on Apr. 19, 2021, granted, now 11,782,879, issued on Oct. 10, 2023.
Application 17/234,007 is a continuation in part of application No. 17/180,439, filed on Feb. 19, 2021, granted, now 11,366,790, issued on Jun. 21, 2022.
Application 17/180,439 is a continuation in part of application No. 16/923,039, filed on Jul. 7, 2020, granted, now 11,232,076, issued on Jan. 25, 2022.
Application 17/458,747 is a continuation in part of application No. 16/923,039, filed on Jul. 7, 2020, granted, now 11,232,076, issued on Jan. 25, 2022.
Application 16/923,039 is a continuation in part of application No. 16/716,098, filed on Dec. 16, 2019, granted, now 10,706,018, issued on Jul. 7, 2020.
Application 16/716,098 is a continuation of application No. 16/455,655, filed on Jun. 27, 2019, granted, now 10,509,771, issued on Dec. 17, 2019.
Application 17/404,699 is a continuation in part of application No. 16/455,655, filed on Jun. 27, 2019, granted, now 10,509,771, issued on Dec. 17, 2019.
Application 16/455,655 is a continuation in part of application No. 16/200,466, filed on Nov. 26, 2018, granted, now 10,476,519, issued on Nov. 12, 2019.
Application 16/200,466 is a continuation in part of application No. 15/975,741, filed on May 9, 2018, granted, now 10,303,391, issued on May 28, 2019.
Claims priority of provisional application 63/485,518, filed on Feb. 16, 2023.
Claims priority of provisional application 63/388,411, filed on Jul. 12, 2022.
Claims priority of provisional application 63/232,041, filed on Aug. 11, 2021.
Claims priority of provisional application 63/140,111, filed on Jan. 21, 2021.
Claims priority of provisional application 63/027,166, filed on May 19, 2020.
Claims priority of provisional application 62/926,723, filed on Oct. 28, 2019.
Claims priority of provisional application 62/578,824, filed on Oct. 30, 2017.
Prior Publication US 2024/0072825 A1, Feb. 29, 2024
Int. Cl. H03M 7/00 (2006.01); G06N 20/00 (2019.01); H03M 7/30 (2006.01)
CPC H03M 7/3059 (2013.01) [G06N 20/00 (2019.01); H03M 7/6005 (2013.01)] 10 Claims
OG exemplary drawing
 
1. A system for encrypted data compression, comprising:
a computing device comprising a processor and a memory;
a stream conditioner comprising a plurality of programming instructions stored in the memory which, when operating on the processor, causes the computing device to:
receive an input data stream comprising a plurality of data blocks;
analyze the input data stream to:
determine real frequencies of data blocks within the input data stream;
identify data blocks whose real frequencies deviate from ideal frequencies by more than a configured conditioning threshold;
generate a conditioned data stream having the same length as the input data stream by:
applying a conditioning rule to the identified data blocks to generate conditioned data blocks;
using the remaining data blocks from the input data stream unchanged; and
arranging the conditioned data blocks and unchanged data blocks in positions corresponding to their original positions in the input data stream;
create an error stream through sequential XOR operations, wherein:
for each position in the input data stream:
performing, a logical XOR operation between the data block in the input data stream and the corresponding data block in the conditioned data stream wherein the XOR result at each position directly forms the corresponding position of the error stream, such that the error stream is composed of the sequential XOR results; and
send the conditioned data stream and the error stream as output.