US 12,381,714 B2
Data compression and encryption algorithm
Dana Shapira, Modiin (IL); and Shmuel Tomi Klein, Rehovot (IL)
Assigned to ARIEL SCIENTIFIC INNOVATIONS LTD., Ariel (IL); and BAR-ILAN RESEARCH AND DEVELOPMENT COMPANY LTD., Ramat Gan (IL)
Appl. No. 17/794,979
Filed by ARIEL SCIENTIFIC INNOVATIONS LTD., Ariel (IL); and BAR-ILAN RESEARCH AND DEVELOPMENT COMPANY LTD., Ramat Gan (IL)
PCT Filed Jan. 24, 2021, PCT No. PCT/IL2021/050073
§ 371(c)(1), (2) Date Jul. 24, 2022,
PCT Pub. No. WO2021/149060, PCT Pub. Date Jul. 29, 2021.
Claims priority of provisional application 62/965,170, filed on Jan. 24, 2020.
Prior Publication US 2023/0086206 A1, Mar. 23, 2023
Int. Cl. H04L 9/08 (2006.01); H03M 7/40 (2006.01); H04L 9/30 (2006.01)
CPC H04L 9/0825 (2013.01) [H03M 7/40 (2013.01); H04L 9/3073 (2013.01)] 12 Claims
OG exemplary drawing
 
1. A system comprising:
at least one hardware processor; and
a non-transitory computer-readable storage medium having stored thereon program instructions, the program instructions executable by the at least one hardware processor to:
receive, as input, data comprising a plurality of data elements,
construct a Huffman tree coding representation of said input data based on a known encryption key, wherein said Huffman tree comprises nodes that are compression codes having compression code lengths corresponding to respective occurrence probabilities of said data elements, and wherein said encryption key specifies a subset of said nodes to be selected for an encryption process,
select said subset of nodes in said Huffman tree for said encryption process, based on said encryption key,
apply, to each sub-tree of said Huffman tree that is rooted at one of said nodes in said subset, a specified transformation, based on said encryption key,
generate an output data file based, at least in part, on applying said encryption key on said encryption process; and
wherein said specified transformation is a level-swap transformation, comprising applying swaps to one or more pairs of adjacent nodes within a same level of the Huffman tree, wherein said one or more pairs of adjacent nodes are not siblings.