Data compression and encryption methods
The method maps data to prime numbers for simultaneous compression and encryption, preserving database organization, addressing inefficiencies in conventional methods by ensuring data integrity and speed in large database transfers.
Patent Information
- Application Number
- JP2025523089
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2022-10-31
- Filing Date
- 2023-10-27
- Publication Date
- 2026-01-09
AI Technical Summary
Conventional compression and encryption methods operate separately, lacking a unified approach for simultaneously compressing and encrypting data, which can lead to inefficiencies and potential data loss during transfer.
A method that maps data to prime numbers, preserving their organization, to create encrypted compression keys and a dual encrypted master key, using trapdoor functions for simultaneous compression and encryption without altering the original database.
Enables efficient and secure transfer of data by adding a layer of encryption to compression and vice versa, ensuring data integrity and speed in processing large databases.
Smart Images

Figure 2026500891000001_ABST
Abstract
Description
[Technical Field]
[0001] FIELD OF THE DISCLOSURE The present disclosure generally relates to methods for compressing data and encrypting data. [Background technology]
[0002] Over the years, multiple theories have emerged for compressing and / or encrypting data. With regard to compression, prior art has focused on mathematical manipulation of databases. For example, "lossy compression" reduces the amount of data by removing unnecessary information or information deemed less important. "Lossless compression" reduces bits by identifying and eliminating statistical redundancies without losing information. With regard to encryption, prior art is generally categorized into two types: Asymmetric encryption works with a public and private key; and Symmetric encryption works by transferring the private key. The private key is sent via a separate channel, for example, an email sent before a meeting. Summary of the Invention [Problem to be solved by the invention]
[0003] It is known that conventional compression and encryption methods can operate separately to transfer compressed and / or encrypted data over the Internet. This application is directed to methods relating to both compression and encryption, and the methods can be used for any type of database. [Means for solving the problem]
[0004] The compression and simultaneous or contemporaneous encryption methods described herein can be used with any database having bytes, characters, digits, hexadecimal numbers, or any other type of unit used to represent thoughts, images, or sounds. The database may contain any data and may be of any size. Furthermore, the database may contain photos, videos, text, voice, or any other type of information.
[0005] The method includes grouping data by application and then organizing the data into one or more blocks of data. The prime numbers are organized into one or more blocks of non-contiguous prime numbers. The organization of the prime numbers is preserved. The one or more blocks of data are aligned with respect to the one or more blocks of prime numbers. The method includes mapping positional redundancy of the one or more blocks of data to the one or more blocks of prime numbers.
[0006] One or more encrypted compression keys are derived or created after mapping positional redundancy of blocks of data to blocks of prime numbers. The organization of the stored prime numbers is used in deriving the encrypted compression key D and / or the encrypted organization key O. The dual encrypted master key M may be formed by merging the encrypted compression key D and the encrypted organization key O. The methods disclosed herein include purging the original database before transferring any of the encrypted compression key D, the encrypted organization key O, or the dual encrypted master key M.
[0007] The present invention does not modify the database or irrevocably delete any portions of the database before transfer. Instead, the mapping of positional redundancy of data to prime numbers and preservation of the organization of prime numbers allows for the creation or derivation of an encrypted compression key, an encrypted organization key, or a master key. The method maps the database to prime numbers and then uses the properties of the prime numbers to create one or more keys that can be mathematically inverted. The method also provides a mechanism for simultaneously compressing and encrypting the database.
[0008] The disclosed method essentially adds a layer of encryption to compression and a layer of compression to encryption. Encryption and compression are achieved by mapping data to prime numbers and preserving the organization of the prime numbers. Double encryption and compression are achieved through the use of a trapdoor or one-way function in both the compression and encryption portions of the method. Unique to the disclosed method, the trapdoor function provides a protected path for creating one or more keys. That is, the trapdoor function protects the creation of either the encrypted compression key, the encrypted compression organization key, or the double encrypted compression master key.
[0009] The method disclosed herein, which includes organizing raw data into blocks of data, organizing prime numbers into blocks of non-contiguous prime numbers, aligning the blocks of data with respect to the blocks of prime numbers, preserving the organization of the prime numbers, and mapping positional redundancy of the blocks of data with respect to the blocks of prime numbers, is believed to provide an improvement over the prior art and forms the basis for other method steps disclosed in this application. Similarly, adding encryption to a compression process, adding compression to an encryption process, and adding a trapdoor function, all of which incorporate mapping and organization steps, are also believed to distinguish over the prior art.
[0010] The functional keys described herein, including the encrypted compression key and the double encrypted compressed master key, have functional parts. Larger blocks of databases require more time to process. As described in more detail, functional part 1 may be used for smaller databases, and functional parts 2 and 3 may be used for larger databases to check accuracy and speed up the process if necessary.
[0011] These and other aspects of the present invention will become apparent from the following detailed description of the embodiments and the appended claims, taken in conjunction with the drawings. [Brief explanation of the drawings]
[0012] [Figure 1] FIG. 1 illustrates in block diagram form the present invention's method for encrypting, compressing, decompressing, and decrypting a database. [Figure 2] FIG. 1 illustrates in block diagram form the grouping of databases by application. [Figure 3] FIG. 1 illustrates in block diagram form the organization of a database into blocks grouped by application. [Figure 4] FIG. 1 illustrates in block diagram form the organization of prime numbers, the mapping of positional redundancy, and the organization of stored prime numbers. [Figure 5] FIG. 2 illustrates in block diagram form an embodiment of a method used to generate Part 1 of an encrypted compression key D. [Figure 6] FIG. 2 illustrates in block diagram form an embodiment of a method used to generate part 2 of encrypted compression key D. [Figure 7] FIG. 10 illustrates in block diagram form an embodiment of a method used to generate part 3 of encrypted compression key D. [Figure 8] FIG. 2 illustrates in block diagram form an embodiment of a method used to generate a final compression key D and part 1 of a doubly encrypted master key M. [Figure 9] FIG. 2 illustrates in block diagram form an embodiment of a method used to generate part 2 of final keys D and M. [Figure 10] FIG. 10 illustrates in block diagram form an embodiment of a method used to generate part 3 of the final keys D and M. [Figure 11] FIG. 1 illustrates, in block diagram form, an embodiment of a method used to reverse a final key D and an organizational key O that includes keys M and D. [Figure 12] FIG. 1 illustrates in block diagram form an embodiment of a method used to reverse parts 2 and 3 of final keys M and D. [Figure 13] FIG. 2 illustrates in block diagram form an embodiment of a method used to reverse part 1 of a first key for keys M, D, and O. [Figure 14] FIG. 1 illustrates in block diagram form an embodiment of a method used to reverse parts 2 and 3 of the first key for keys D and M to recreate the database. [Figure 15] 1 illustrates in block diagram form a communication system in accordance with the present invention; [Figure 16] FIG. 10 shows an example of a sine wave applied to the data described in paragraphs 0053 and 0057. DETAILED DESCRIPTION OF THE INVENTION
[0013] Reference will now be made to the drawings, in which an embodiment of the method of the present invention is shown. It will be apparent to those skilled in the art that various modifications and variations can be made in the present invention without departing from the scope of the invention. It is intended that the present invention cover such modifications and variations as come within the scope of the appended claims and their equivalents.
[0014] 1 shows in block diagram form a schematic diagram 10 of the present invention. The methods described herein can be generally summarized as follows. a. The method of the present invention is directed to the simultaneous or contemporaneous encryption and compression of selected databases. Database, as used herein, refers to bits, bytes, characters, digits, hexadecimal numbers, or any other type of unit used to represent thoughts, images, or sounds. A database may contain any data and may be of any size. A database may include photographs, video, text, voice, or any other type of information. As shown at 100 in Figures 1 and 2, the method begins by grouping data by application and then organizing the data into one or more blocks of data as shown in Figure 3. b. The prime numbers are organized into a matrix with respect to blocks of non-contiguous prime numbers, as shown at 200 in Figures 1 and 4. The organization of the prime numbers may be preserved. One or more blocks of data are aligned with respect to the one or more blocks of prime numbers. The next step of the method involves mapping positional redundancy of one or more blocks of data with respect to the one or more blocks of prime numbers. c. The present invention does not modify the database or irrevocably delete any part of the database before transfer. Instead, as shown in Figure 1, keys (300-800) are created, the original database is deleted before transfer (900), the prime numbers associated with the mappings are recreated after transfer (1000-1200), and the database is recreated (1300). d. One or more encrypted compression keys are derived or created after positional redundancy mapping of blocks of data to blocks of prime numbers. Furthermore, the organization of the stored prime numbers is used in deriving an encrypted compression key D and an encrypted organization key O. A dual encrypted master key M is formed by merging the encrypted compression key D and the encrypted organization key O. The present invention provides for simultaneous or contemporaneous compression and encryption of any database.
[0015] 2 and 3 are block diagrams (100) illustrating a database organized into blocks grouped by data use. This method step can be illustrated using a typical database associated with a photo frame. The frame is a JPEG file of a photo of the inside of a house, and is therefore named "Home Photo."
[0016] Home photos are already compressed files. The methods described herein work regardless of the raw data or any redundancy. Therefore, it does not matter whether the data is numerical, contained in raw photos, compressed photos, or any other type of database.
[0017] Generally, a color image file contains four sets of pixel values: one red, one green, one blue, and one labeled "A." The pixel values are commonly referred to as "RGB" numbers. The parameter "A" refers to alpha, the transparency channel. For a 24-bit color image, each color set contains pixel (RGB) values ranging from 0 to 255.
[0018] Because the file contains three channels, with each RGB number ranging from 0 to 255, the database is grouped to maintain its natural structure. Each channel is separated and placed in its own column, thus creating a sub-database with three columns. An index is added to the structure; the first 10 RGB numbers are explicitly shown.
[0019] [Table 1]
[0020] [Table 2]
[0021] Figure 3 further illustrates step 100 of method 10. Because home photo files are naturally grouped into RGB numbers ranging from 0 to 255, Figure 3 shows how the database may be further organized. In this example, each color is separated into a separate database, which is then organized into blocks of data, such as blocks of 10 or columns of 10 numbers. The table below shows the data for the red column (100 RGB numbers) organized into blocks of 10 numbers each.
[0022] [Table 3]
[0023] In the above example, the number in the top left (202) is the pixel value for the red component of the top left pixel of the image. The number below the top left number (205) is the pixel value for the red component of the adjacent pixel (adjacent in the same row). So in the above example, the 100 numbers shown are the pixel values for the red component of the first 100 pixels in the first row of the image. The next block is the next 100 pixels. The remaining data for the image is organized in a similar manner.
[0024] 4 illustrates steps 200 of method 10. The method organizes raw data into one or more blocks of data as described above, organizes prime numbers into one or more blocks of non-contiguous prime numbers (204), preserves the organization of the prime numbers (206), and maps positional redundancy of the blocks of data to the blocks of prime numbers (208). As shown, the organization of the prime numbers is used in creating the mapped prime number blocks and in creating the organization key O.
[0025] A first encryption of the original data occurs at this point in the method. A positional redundancy mapping of the original database to a database of prime numbers associates individual prime numbers with each position. Reversing the protocol is performed by taking the prime product of each group, all groups, or combination, and dividing this number by each prime number in the associated block, group, or combination. Because prime factorization is difficult, the inclusion of scrambling of the organization in the method provides encryption for the original data.
[0026] As an example, the table below presents a database of prime numbers organized in a zigzag pattern. The organization of the prime numbers differs from the organization of the data, and follows this pattern:
[0027] [Table 4]
[0028] Each column of data is arranged in a block, and this structure is used to map positional redundancy. A diagram of the positional redundancy mapping of block 1 of the original database to block 1 of the prime database is shown below. The following is just one example of positional redundancy mapping.
[0029] [Table 5]
[0030] At this point in the method, the stored compilation of prime numbers ("data") is encrypted and may now be compressed. The "data" may be compressed and turned into a key, such as key D. The key (D) created by the method is automatically encrypted. Furthermore, the key created has an automatic trapdoor or one-way function that is part of the formation of the encrypted compression key D. A second, related trapdoor function is used in the creation of the encrypted compilation key O. Furthermore, a trapdoor function is used in the combination of keys D and O to form a double encrypted compression master key M. The two keys D and O may be merged to form the double encrypted compression master key M. The flexibility provided by the method of the present invention allows for other embodiments of the present invention.
[0031] 4, 206 illustrates the organization of the stored prime numbers and the creation of an organization key (O). This embodiment uses a small set of prime numbers and equates the set of prime numbers to factors identified below, defining these factors.
[0032]
number
[0033] Steps 300 of Figure 5 show the method steps involved in forming Part 1 of the encrypted compression key D. Figure 5 shows how encrypted data can be compressed using a trapdoor (one-way) function. Figure 5 shows how multiple Part 1s or "first keys" are generated using the trapdoor direct derivation method. The general method is to equate grouped prime numbers to the following factors:
[0034]
number
[0035] Parts 2 and 3 of the Encrypted Compression Key D add additional data as needed to accurately derive the prime numbers in the database. Each part can be used alone or together to compress the data. Parts 2 and 3 of the Encrypted Compression Key D aid in the speed of determining the correct prime numbers, as will be discussed in more detail below.
[0036] The method described herein begins by grouping data by application and then organizing the data into one or more blocks of data. Prime numbers are organized into one or more blocks of non-contiguous prime numbers. The one or more blocks of data are aligned with respect to the one or more blocks of prime numbers. Positional redundancy of the blocks of data is then mapped to the blocks of prime numbers, and the organization of the prime numbers is preserved before or after the mapping step. After these steps, an encrypted compression key D is created based on the mapping of positional redundancy of the blocks of data to the prime numbers. Additionally, the method is directed to creating an encrypted organization key O and a dual encrypted master key M formed by simultaneously or contemporaneously merging the encrypted compression key D with / into the encrypted organization key O.
[0037] The creation or generation of the part 1 version of the encrypted compression key is shown in step group 300 of Figure 5, including steps 302, 304, 306, 308, 310, 312, 314, 316, 318, and 320. For purposes of explanation and definition with respect to Figure 5, mapping an organized block of data to an organized block of prime numbers results in a prime product. Dividing the prime product by a prime number results in a prime quotient.
[0038] 6 illustrates the creation or generation of the part 2 version of the encrypted compression key D in steps 402, 404, 406, 408, and 410 of step group 400. The general method is further described as well as how the lookup table is generated to allow the process to proceed smoothly and efficiently.
[0039] An example of the method described herein is presented as follows: A table is created consisting of 10 columns (each named Block 1, Block 2, etc.). Each block consists of 799027 prime numbers. The table was used to compress 71912439 digits. For illustrative purposes, data from red RGB237 compressed from Block 1 of the table is presented.
[0040] The total prime product for block 1 was equal to 2.49E^6142993. The data for red 237 in block 1 contained only 5 RGB numbers or 15 digits. Given the small amount of data, this RGB is typically compressed using only part 1. This example simplifies the numbers and illustrates the process used for potentially larger blocks.
[0041] Below, the data for red RGB237, block 1, is presented as follows:
[0042] [Table 6]
[0043] The purpose of Part 2 of the encryption compression key is to provide a mechanism for determining the exact prime product. This may be accomplished by method steps that include rounding the scientific notation form of the prime product. For example, if the rounded prime product for RGB237 is 9.0E38, this number may be approximated to the actual prime product by adding the following to the rounded prime product:
[0044] [Table 7]
[0045] Therefore, only 72 numbers need to be searched to find the exact prime product. In this example, the basic process is simplified by dividing the prime product for each group by the total prime product of all groups and converting the result to scientific notation.
[0046] In the example, the method divides the prime product of red 237 by the prime product of the block of primes used. In this case, the prime product for this block was 2.4E+6142993. The result of the calculation is: Prime product of red 237 / prime product of blocks = 9.72E+38 / 2.4E+6142993 =3.90588915E-6142955
[0047] In step 406 of Figure 6, the rounded guess is 3.0E-6142955. Given the block prime product, the exponent of the rounded guess is simply the difference between the exponents of the block prime and the result of the above calculation. Therefore, the rounded guess is corrected to 3.0E-24 (6142979-6142955).
[0048] The error amount and error percentage are calculated in step 408 of Figure 6. The result of the above calculations is subtracted from the rounded guess value as follows: Amount of error: (3.90588915E^-6142955)-(3.0E^-6142955)=0.90588915 Error percentage: %Error = Amount of Error / Key = .90588915 / 3.0 = 30.196305%
[0049] At this point, Part 2 is 32430196305. Inversion provides the prime product, which can then be repeated to find the correct final solution. The protocol must search through 30159 possibilities to find the correct prime product. To find the correct number, each possibility must be checked against Part 1 of the code. Dividing a prime product involving one of the primes in the set by any one of the primes in the RGB237 set returns an integer. Therefore, a tag is added to the error code that identifies the smallest prime number in the set. In this case, the index number is 350004. The protocol first divides each of the 30159 possibilities above by the prime number associated with index 350004 (58886741). If a match is found, the protocol divides the match against the entire set and checks the result against Part 1 until the correct prime product is found. Part 3, as described below, further narrows the search.
[0050] In step 410 of FIG. 6, key part 2 is set to 32430196305 plus the index of 350004 (32430196305350004). For example, this process results in no more than 30 digits for key parts 1 and 2. Therefore, the method described in this example can be used to compress duplicate data of over 300 digits and still achieve a high compression ratio. For example, in a large database that holds only one frame of data, key parts 1 and 2 can hold up to approximately 940 digits without the compression ratio dropping below 10%. In this example, the block size was 799027. Assuming three RGB numbers, the amount of data compressed by each block is 2397081 digits (799027 * 3). A 10% compression ratio leaves room for 239708 digits. If a key for each RGB number is obtained, the code for each key can range up to 940 (239708 / 255).
[0051] 7 discloses method steps 502, 504, 506, and 508 500 for creating or generating part 3 of an encrypted compression key D. Steps 500 show how part 3 is generated using a direct derivation method. Part 3 of the encrypted compression key can be used to derive the prime products needed for inversion or to speed up the inversion of parts 1 and 2.
[0052] As disclosed in FIG. 7, the steps of the method map the actual energy or quantum mechanism that each prime number and each repeated digit position holds along the number line.
[0053] Referring again to the RGB204 example, a simple example is provided below: Step 502 of Figure 7 places each block of data along a number line using the following method: The table below provides only the index, RGB number, and associated prime number in a block of 10 prime numbers.
[0054] [Table 8]
[0055] If the above data were presented along a number line, the data would appear as follows:
[0056] [Table 9]
[0057] In step 504 of Figure 7, the method applies a wave function to the block of data. A wave is applied to each overlapping set of numbers, in this example, the RGB numbers. The wave gives definition to the pattern of RGB numbers that produces the prime product of each subgroup or overlap. The wave pattern used in this example was a sine wave, but any type of wave pattern or similar function can be used to describe the energy carried by the position of the numbers. Below is an example of applying a sine wave to the above data:
[0058] In step 506, the wave is analyzed and each vertex of the wave is turned into a function or formula that describes the start and end positions of the overlapping RGB numbers and their position along the number line. In this example, the code is turned to convey the start of the data at index 3, a run of two numbers, a separation of two index numbers, and a final run of two numbers.
[0059] Several mathematical formulations may be used to encode the wave function associated with part 3. Method steps include any mathematical formulation that is used to place the result in the key, derive or check the prime product, and then use this number to locate redundancy. Finally, in step 508, the mapping result data is set as part 3 of the key.
[0060] FIG. 8 shows steps 600 for creating or generating part 1 of the final key D or M. Method steps 602, 604, 606, 608, 610, 612, and 614 described in FIG. 8 are repetitions and complements of the method steps described in FIG. 5. FIG. 5 relates to the formation of the encrypted compression key D. FIG. 4 refers to the storage of prime numbers and the creation of the encrypted organization key O. The organization of prime numbers is used in both the derivation of the encrypted compression key D and the encrypted organization key O. The double encrypted master key M, referenced at 614 in FIG. 8, is formed by merging the encrypted compression key D and the encrypted organization key O. This provides simultaneous or contemporaneous compression and encryption for any database.
[0061] For illustrative purposes with respect to FIG. 8, the first key digit is essentially iteratively processed through a method that reduces the remaining digits to 10 (digits 0-9) and adds the necessary codes to check the accuracy of the derivation.
[0062] Using this example, step 602 of Figure 8 involves organizing multiple first keys into a string of digits ranging from 0 to 9, with values separated by a common bit. The first keys may also be arranged in standard lengths for coding purposes.
[0063] Using this example again, in step 604, the digits are mapped through a matrix of prime numbers as described above. In step 606, the method separates the data into 10 data sets for each duplicate digit. In step 608, a lookup table is utilized to determine the factors required for part 1 of the final key. In step 610, collisions are resolved and the significant digits of the final number are determined. In step 612, the encryption compression key (D) is derived. Finally, in step 614, part 1 of the final key is set.
[0064] Figure 9 shows steps 700 including steps 702, 704, 706, 708, and 710. Figure 9 shows how the method generates part 2 of the final key D or M. The steps of Figure 9 are essentially a repetition of the method described with respect to Figure 6.
[0065] In step 702, again using this example, the method derives the prime products of each of the final 10 subgroups (digits 0-9). In step 704, the prime quotients of each subgroup are derived. In step 706, the results are rounded to significant figures and an error percentage is derived. In steps 708 and 710, part 2 of the final key is established.
[0066] Figure 10 shows steps 800 including steps 802, 804, 806, and 808. Figure 10 shows the creation or generation of part 3 of the final key D or M using the direct derivation method. In step 802, a subgroup of prime numbers is examined and arranged in number line form as previously described. In step 804, a wave function is applied to the data and the data is encoded to record the positions of the prime numbers within the data set. In step 806, the wave crests are analyzed and gaps in the range are encoded into variables. In step 808, the variables are combined and set as part 3 of the key.
[0067] The encrypted compression key D and the organization key O can be merged, applied, or combined into a dual encrypted master key M. Both keys (D and O) are compressed using the compression derivation method described herein, in which an automatically executed trapdoor function is used to create the encrypted compression key D and a second trapdoor function is used to create the compressed organization key O. The master key M includes both the encrypted compression key D and the encrypted compression organization key O, as well as the use of a unique trapdoor function that results from mapping data to prime numbers and preserving the organization of the primes.
[0068] The process of combining keys D and O may involve the use of asymmetric or symmetric processes. The use of asymmetric encryption in the present method results in the creation of public and private master keys (M-public and M-private). In essence, "double encryption" occurs as a result of the mapping of data to prime numbers and preservation of the organization of prime numbers, which, combined with a trapdoor function, allows for the simultaneous or contemporaneous combining or merging of a compression method to one of the alternative encryption processes.
[0069] The compressed encryption key D and master key M include one or more parts, e.g., part 1, 2, or 3. In smaller databases, the keys D and M may include only one part, while in larger databases, an additional part or parts may be included. The use of parts strengthens the keys D and M in terms of speed and accuracy.
[0070] The method disclosed herein compresses by derivation instead of mathematical manipulation, since mathematical manipulation can result in data loss. A feature of this method is that the original database is deleted in its entirety before transfer, and then recreated after transfer with little loss of information. The method uses prime numbers to map or organize a database, even a disordered or random database, and then recreates or derives the database using properties of prime numbers. The prime numbers are not used to mathematically alter the database. Rather, they are used to identify the location of redundant elements in the database and scramble and encrypt the database.
[0071] The method disclosed herein uses a novel approach to prime factorization. Instead of directly computing the prime factorization solution, the disclosed method uses a derivation method that relies on the three-part key described above. The key parts provide the mechanism to reverse the method and recreate the database. Part 1 of the key mathematically equates the prime numbers to factors, which are converted into a compression key. Part 2 reverses the method using rounded guesses and error percentages. Part 3 maps the energy or quantum mechanics of the actual patterns generated by each subgroup of primes and the prime products associated with the primes. Thus, Part 3 maps the energy or pattern of the factorization and places the result in a key that is communicated throughout the process. This speeds up the process and improves accuracy in compressing large databases.
[0072] Figure 11 shows step group 1000, including steps 1002, 1004, 1006, 1008, 1010, 1012, 1014, and 1016. Figure 11 shows how the method may begin the process of reversing the key of M, D, or O to obtain the original database. The method first reverses the final key using the derivation formula. In step 1002, the method begins the process of reversing part 1 of the key and separating parts 2 and 3.
[0073] The reversal method in this example begins in step 1002 by using the private key decryption function (D=Z^F mod O) and the method described above to reveal the keys D and O.
[0074] In step 1004, the organization key O is reversed and the stored organization structure is revealed to derive the encrypted compression key D. In step 1006, the organization is used to set the block organization needed to reverse key D.
[0075] In step 1008, the key D is inverted using the following direct derivation formula:
[0076]
number
[0077] The process proceeds from steps 1010 to 1016 to reconstruct the first key for each of one or more blocks of data. The first keys are grouped in the same order as originally held by the database. If the database is large and the block of prime numbers used is large, the process utilizes parts 2 and 3 of the final key to derive the prime product for each subgroup. Figure 11 is applicable to reversing part 1 of the keys for M, D, and O.
[0078] Figure 12 shows step group 1100, including steps 1102, 1104, 1106, 1108, 1110, and 1114. Figure 12 shows reversing parts 2 and 3 of the final key D or M. In step 1102, an error amount is derived by multiplying the rounded key by the error percentage. In step 1104, a temporary new key is obtained by adding the rounded key plus the error amount. In step 1106, an estimate of the subgroup prime product is derived by multiplying the total prime product by the temporary new key.
[0079] In step 1108, part 3 of the key is utilized to define the prime numbers to be included in the search for the final solution. In step 1110, the estimate of the subgroup prime product is divided by the index of the first prime product in the set, and then all of the prime numbers identified in the search set are divided until an integer is obtained from the calculation.
[0080] Figure 13 is a schematic diagram of the interaction of steps 1200, 1300, and 1400 for the purpose of reversing part 1 of key M, D, or O. Steps 1200 include steps 1202, 1204, 1206, 1208, 1210, 1212, and 1214. Steps 1200, 1300, and 1400 show how the method reverses the first key to obtain the original database. Figure 13 is essentially a repeat of Figure 11.
[0081] In step 1202, key part 1 is separated from parts 2 and 3. In step 1204, the organization key O is reversed, revealing the organization used to derive the encrypted compression key D. In step 1206, the organization is used to set the block organization needed to reverse key D.
[0082] In step 1208, the encrypted compression key D is inverted using the following direct derivation formula:
[0083]
number
[0084] In steps 1210, 1212, and 1214, the groups and blocks of prime data are reconstructed, and if parts 2 or 3 are not present, the mapping of the data is reversed and the database is recreated.
[0085] Figure 14 is a schematic diagram of the interaction of steps 1300 and 1400 to reverse parts (2) and (3) of key M or D. Figure 14 illustrates reversing parts 2 and 3 of a first key, if they exist. In step 1302, an error amount is derived by multiplying the rounded key by the error percentage. In step 1304, a temporary new key is obtained by adding the error amount to the rounded key. In step 1306, an estimate of the subgroup prime product is derived by multiplying the total prime product by the temporary new key.
[0086] In step 1308, part 3 of the key is utilized to define the prime numbers to be included in the search for the final solution. In step 1310, the estimate of the subgroup prime product is divided by the index of the first prime number in the set, and then by all prime numbers identified in the set until an integer is obtained from the calculation. The possible prime products are compared to part 1 of the code. If the two sums match, the subgroup prime product is identified.
[0087] The database can be recreated by using the index to identify the location of each duplicate within the database. Because neither the number of databases nor the duplicates themselves have increased, the database can be recreated exactly.
[0088] FIG. 15 illustrates an example of a computing system that can be used to compress and encrypt files, such as image files, in accordance with the principles described herein. The system may be a computer connected to a network, including a local area network and / or a wide area network. The system may be a client or a server. As illustrated in FIG. 15, the system may be any suitable type of processor-based unit, such as a personal computer, a workstation, a server, a handheld computing device, a phone, a tablet, or a dedicated device. The system may include, for example, one or more of an input device 1420, an output device 1430, one or more processors 1410, storage 1440, software 1450, and a communication device 1460. The input device 1420 and the output device 1430 may generally correspond to those described above and may be connectable to or integrated with the computer.
[0089] The input device(s) 1420 may be any suitable device that provides input, such as a touchscreen, a keyboard or keypad, a mouse, or a voice recognition device. The output device(s) 1430 may include any suitable device that provides output, such as a display, a touchscreen, a haptic device, a virtual / augmented reality display, or a speaker.
[0090] Storage 1440 may be any suitable device that provides storage, e.g., electrical, magnetic, or optical memory, including RAM, cache, hard drive, removable storage disk, or other non-transitory computer-readable medium. Communications device 1460 may include any suitable device capable of sending and receiving signals over a network, e.g., a network interface chip or device. The components of the computing system may be connected in any suitable manner, e.g., via a physical bus or wirelessly.
[0091] The processor 1410 may be any suitable processor or combination of processors, including a central processing unit (CPU), a graphics processing unit (GPU), a field programmable gate array (FPGA), and an application specific integrated circuit (ASIC). The software 1450 stored in the storage 1440 and executable by the one or more processors 1410 may include, for example, programming that embodies the functionality of the present disclosure (e.g., as embodied in a device such as those described above). The software 1450 may include one or more programs executed by the one or more processors 1410 to perform one or more of the steps of the methods claimed herein.
[0092] The method disclosed herein begins by organizing a selected source database into one or more blocks of data, as described. The disclosed method can be used with any database, including databases containing photographs, video, text, voice, or any other type of information. The next step is to organize prime numbers into blocks of non-contiguous prime numbers and align the blocks of data with the blocks of prime numbers, as described. Mapping the positional redundancy of the blocks of data to the blocks of prime numbers is a key step in the method. Preserving the organization of the prime numbers is also important, and this step can occur either before or after the mapping step. In essence, data is mapped to prime numbers based on the location of redundant data in the dataset. The properties of the prime numbers are then used to create a unique key that can be mathematically reversed. Encryption is performed automatically by mapping the data to prime numbers and preserving the organization of the prime numbers.
[0093] The above method steps form the basis of a method because they enable the creation or derivation of an encrypted compression key D as well as the creation or derivation of an encrypted compression organization key O. The above method steps also form the basis of a method for creating a dual encrypted master key M. A trapdoor function arises from the basic method steps: the merging or integration of a unique compression formula that automatically encrypts with a known encryption formula to create the master key M. Thus, the method simultaneously adds encryption to the compression process and compression to the encryption process, and uses the trapdoor function to enable the merging or integration of the encrypted compression key D with the encrypted compression organization key O to form the dual encrypted compression master key M.
[0094] The stored organization of prime numbers is uniquely used for a number of functions. The stored organization of prime numbers is used in forming encrypted compression key D and is also used in forming encrypted compression organization key O. Similarly, a trapdoor function is generated in forming encrypted compression key D and a second trapdoor function is generated and used in forming encrypted compression organization key O. By using the trapdoor function in conjunction with the stored organization of prime numbers, encrypted organization key O is simultaneously or contemporaneously merged or combined with encrypted compression key D to create dual encrypted compression master key M.
[0095] The master key M can be doubly encrypted by applying either known asymmetric encryption or modifications of known symmetric encryption, as described. The use of asymmetric encryption results in the creation of public and private master keys (M-public and M-private). The use of asymmetric encryption in forming the encrypted compression organization key O and master key M eliminates the need for passwords. As previously mentioned, the encrypted compression key D and master key M also include one or more parts, i.e., parts 1, 2, and 3, to provide enhancements in terms of speed and accuracy.
[0096] A preferred method for organizing raw data to be grouped by use is to arrange the data in a matrix of columns and rows in data of known size without changing the arrangement order. Mapping the positional redundancy of a block of data to a block of prime numbers preferably means mapping the position of each duplicate element in the block of data to the elements of the organized block of prime numbers. Organizing prime numbers into blocks of non-contiguous prime numbers means organizing the prime numbers as either increasing, decreasing, or non-duplicating. Preserving the organization of prime numbers preferably means converting the organization of prime numbers into a number from which the organization can be derived. A trapdoor function as referred to in this specification means a one-way function.
[0097] The foregoing description has been set forth with reference to specific embodiments for purposes of explanation. However, the illustrative description above is not intended to be exhaustive or to limit the invention to the precise form disclosed. Many modifications and variations are possible in light of the above teachings. The embodiments were chosen and described in order to best explain the principles of the technology and its practical application, thereby enabling those skilled in the art to optimally utilize the technology and various embodiments, with various modifications as suited to the particular applications envisioned.
[0098] Although the present disclosure and examples have been fully described with reference to the accompanying drawings, it should be noted that various changes and modifications will become apparent to those skilled in the art, and such changes and modifications are to be understood as being included within the scope of the present disclosure and examples as defined by the claims.
Claims
1. Organizing the original database into one or more blocks of data; organizing the prime numbers into one or more blocks of non-contiguous prime numbers; aligning one or more blocks of said data to one or more blocks of said prime numbers; mapping positional redundancy of one or more blocks of said data to one or more blocks of said prime numbers; preserving said arrangement of prime numbers before or after position redundancy mapping; creating an encryption / compression key within which encryption and compression occur simultaneously or contemporaneously; transferring the encrypted compression key; reversing and decompressing the encrypted compression key; Reproducing the original database; encryption and compression methods, including
2. 10. The encryption and compression method of claim 1, further comprising, after grouping the original database by application, organizing the database into one or more blocks of data.
3. 2. The encryption and compression method of claim 1, further comprising deleting the original database before transferring the encryption and compression key.
4. 4. The encryption and compression method of claim 3, further comprising providing one or more parts of the encryption compression key to accelerate compression and improve accuracy of the compression for databases of various sizes.
5. 4. The method of encryption and compression of claim 3, further comprising generating an encrypted and compressed organization key before transferring said encrypted and compressed key.
6. 6. The method of encryption and compression of claim 5, further comprising: transferring said encrypted, compressed, organization key together with said encrypted, compression key; reversing and decompressing said encrypted, compressed, organization key and said encrypted, compression key; and recreating said original database.
7. 7. The encryption and compression method of claim 6, further comprising, after grouping the original database by application, organizing the database into one or more blocks of data.
8. 7. The method of encryption and compression of claim 6, further comprising generating at least one double encrypted compressed master key by merging the encrypted compression key and the encrypted compressed organization key.
9. 9. The encryption and compression method of claim 8, further comprising providing one or more parts of the dual encryption compression master key to accelerate compression and improve accuracy of the compression for databases of various sizes.
10. 9. The method of encryption and compression of claim 8, further comprising forming the dual encrypted compression master key in part using either asymmetric encryption or symmetric encryption.
11. generating an encryption compression key based on the original database; deleting the original database; transferring the encrypted compression key; reversing and decompressing the encrypted compression key; Reproducing the original database; encryption and compression methods, including
12. 12. The method of encryption and compression of claim 11, further comprising: organizing the original database into one or more blocks of data; organizing prime numbers into one or more blocks of non-contiguous prime numbers; aligning the one or more blocks of data to the one or more blocks of prime numbers; mapping positional redundancy of the one or more blocks of data to the one or more blocks of prime numbers; preserving the organization of prime numbers before or after positional redundancy mapping; and causing both encryption and compression to occur simultaneously or contemporaneously on the encryption / compression key.
13. 13. The encryption and compression method of claim 12, further comprising: after grouping the original database by application, organizing the original database into one or more blocks of data.
14. 12. The method of encryption and compression of claim 11, further comprising generating an encrypted, compressed, organization key prior to transferring the encrypted, compressed key; transferring the encrypted, compressed organization key together with the encrypted, compressed key; and reversing and decompressing the encrypted, compressed organization key and the encrypted, compressed key.
15. 15. The method of encryption and compression of claim 14, further comprising generating at least one double encrypted compressed master key by merging the encrypted compression key and the encrypted compressed organization key.
16. 9. The encryption and compression method of claim 8, further comprising using a trapdoor function when creating the encrypted compression key, when creating the encrypted compressed organization key, and when creating the double encrypted compressed master key.
17. 16. The encryption and compression method of claim 15, further comprising using a trapdoor function when generating the encrypted compression key, when generating the encrypted compression organization key, and when generating the double encrypted compression master key.