Artificial intelligence quantum-resistant encryption method and device
The data encryption method employs AI quantum-resistant encryption by integrating signature codes generated from noise vectors into ciphertext, addressing vulnerabilities in existing methods and significantly enhancing data security.
Patent Information
- Application Number
- JP2024518388
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Priority Date
- 2021-09-24
- Filing Date
- 2021-12-17
- Publication Date
- 2025-04-16
- Estimated Expiration
- 2041-12-17
AI Technical Summary
Existing data encryption methods, such as prefix and postfix methods, are vulnerable to inference by third parties, allowing them to leak personal and trade secret information due to regularities in the encryption process.
A data encryption method using artificial intelligence quantum-resistant encryption, which involves encrypting plaintext data, applying noise vectors to an AI platform to generate signature codes, and then integrating these codes into the ciphertext to obscure regularities and prevent inference.
The method effectively prevents third-party inference of encryption information and enhances security by removing regularities in the encryption process, thereby protecting personal and trade secret data.
Smart Images

Figure 0007663785000001 
Figure 0007663785000002 
Figure 0007663785000003
Abstract
Description
[Technical field]
[0001] The present invention relates to a method and apparatus for encrypting data using artificial intelligence quantum-resistant cryptography. [Background technology]
[0002] In recent years, with the rapid development and explosive growth of information and communication technology, the amount of data has increased and become more complex. As a result, "big data" has been presented as a solution to efficiently analyze data within a given time. However, in a big data environment that processes large volumes of data, there is a risk that personal information will be leaked and that individuals' privacy and human rights will be violated. In addition, in corporate systems or transactions between companies that exchange and manage a large amount of information, there is a risk that not only customer personal information but also internal trade secrets will be leaked. To prevent this, many companies encrypt data containing personal information or content related to internal trade secrets and generate and use ciphertext data.
[0003] As a method for encrypting such data, there are two commonly used methods, the Prefix method and the Postfix method, in which information related to encryption is included in the prefix or suffix of the encrypted data.
[0004] However, since the above encryption method is a commonly used method in the encryption process, it is possible for a third party to make inferences based on the location of the encrypted data. In particular, information about the encryption may be leaked due to patterns that appear in the repetitive encryption process, which may ultimately result in the leakage of personal information and trade secrets that individuals and companies are trying to protect.
[0005] Therefore, a new method is needed that breaks away from the existing Prefix and Postfix methods and incorporates encryption information into the ciphertext data, while at the same time eliminating the regularities that appear during the encryption process, making third-party inference impossible. Summary of the Invention [Problem to be solved by the invention]
[0006] The present invention has been made in consideration of the above circumstances, and an object of the present invention is to provide a data encryption method and device using artificial intelligence quantum-resistant cryptography.
[0007] However, the problems to be solved by the present invention are not limited to the problems described above, and other problems may exist. [Means for solving the problem]
[0008] In order to solve the above-mentioned problems, a data encryption method performed by an apparatus according to the present invention includes a step of encrypting plaintext data based on an encryption key to generate first ciphertext data, a step of applying a periodically extracted noise vector to an artificial intelligence-based generation model to generate first and second signature codes, respectively, and a step of applying the first and second signature codes to the first ciphertext data to generate second ciphertext data, and the step of generating the first signature code includes a step of generating a first ciphertext data by applying a predetermined conversion formula to a character type required for generating the first signature code. and determining an exchange position, and generating, as the first signature code, an existing encrypted character present at the exchange position in the first ciphertext data and a first character obtained by operating the said character in a previously set manner, and generating the second signature code by determining a type and an insertion position of a second character used as the second signature code according to the conversion formula, and generating the second ciphertext data by exchanging the existing encrypted character present at the exchange position in the first ciphertext data with the first character, and inserting the second character at the insertion position in the first ciphertext data.
[0009] In addition, the generating step of the first signature code and the second signature code may include the steps of: periodically extracting the noise vector every time m (where m is a natural number) pieces of plaintext data are encrypted; encoding the periodically extracted noise vector based on the artificial intelligence based generation model to generate a plurality of first input values and second input values; converting the first input value into the first signature code based on the conversion equation; and converting the second input value into the second signature code based on the conversion equation.
[0010] Further, the conversion formula may include a pre-set signature code conversion table, and the first signature code conversion step may include a step of determining a type of character corresponding to the first input value and a replacement position of the character in the first ciphertext data based on the signature code conversion table, a step of confirming an existing encrypted character existing at the determined replacement position among the encrypted characters in the first ciphertext data, and a step of generating a first character by operating the confirmed existing encrypted character and the determined character in a pre-set manner, and the second ciphertext data generation step may generate the second ciphertext data by replacing the generated first character with the replacement position in the first ciphertext data.
[0011] The swap position determination step may include the steps of: attaching the noise vector to a first position of the first ciphertext data; and determining the swap position based on the first input value and length information of the first ciphertext data.
[0012] Furthermore, the operation of the already set method may include any one of four arithmetic operations performed on the character order determined in the signature code conversion table and the order of the existing encrypted characters existing at the exchange position in the first ciphertext data, and the first character may be a character having an order resulting from performing any one of the four arithmetic operations on the order of the existing encrypted characters and the determined character order.
[0013] Also, the conversion formula may include a pre-set signature code conversion table, and the second signature code conversion step may determine a second character corresponding to the second input value and an insertion position of the second character in the first encrypted data based on the signature code conversion table, and the second ciphertext data generation step may insert the determined second character into the determined insertion position in the first ciphertext data.
[0014] Furthermore, the conversion formula may include a pre-set signature code conversion table, and may further include a step of periodically updating the second ciphertext data based on the signature code conversion table, and the step of updating the second ciphertext data may include periodically changing a character sequence in the signature code conversion table, and changing the first signature code or the second signature code in the second ciphertext data based on the signature code conversion table in which the character sequence has been changed, to update the second ciphertext data.
[0015] In addition, the artificial intelligence-based generative model may be re-learned by periodically changing distribution information of the noise vector, and the second ciphertext data may be periodically updated based on the re-learned artificial intelligence-based generative model.
[0016] Further, an apparatus according to the present invention for solving the above-mentioned problems includes a memory, an acquisition unit for acquiring plaintext data, and a processor for encrypting the plaintext data based on an encryption key to generate first ciphertext data, applying a periodically extracted noise vector to an artificial intelligence-based generation model to generate a first signature code and a second signature code, respectively, and applying the first signature code and the second signature code to the first ciphertext data to generate the second ciphertext data, wherein the processor generates the first signature code by converting a text required for generating the first signature code according to a previously set conversion formula. and generating, as the first signature code, an existing encrypted character existing at the exchange position in the first ciphertext data and a first character obtained by calculating the said character in a previously set method; when generating the second signature code, determining a type and insertion position of a second character to be used as the second signature code by the conversion formula; and when generating the second ciphertext data, replacing the existing encrypted character existing at the exchange position in the first ciphertext data with the first character and inserting the second character at the insertion position in the first ciphertext data.
[0017] A computer program according to another aspect of the present invention for solving the above-mentioned problems can be stored on a computer-readable recording medium to cause a hardware computer to execute a data encryption method using artificial intelligence-based quantum-resistant cryptography.
[0018] Further details of the invention are contained in the detailed description and the drawings. Effect of the Invention
[0019] According to the present invention described above, data relating to encrypted information contained in ciphertext data cannot be inferred or recognized by a third party.
[0020] In addition, the security of ciphertext data can be strengthened by removing irregularities that appear during the encryption process through an AI-based encryption process and periodically updating the ciphertext data.
[0021] The effects of the present invention are not limited to those mentioned above, and other effects not mentioned will be clearly understood by those skilled in the art from the following description. [Brief description of the drawings]
[0022] [Figure 1a] 1 is a schematic diagram illustrating a data encryption device using an artificial intelligence-based quantum-resistant cryptography according to the present invention; [Figure 1b] 1 is an exemplary diagram illustrating an artificial intelligence-based encryption code generation model according to the present invention; [Diagram 2] 1 is a flow chart illustrating a method for encrypting data using quantum-resistant cryptography based on artificial intelligence according to the present invention; [Diagram 3] 4 is an exemplary diagram showing encrypting plaintext data including personal information into a first ciphertext using an encryption key according to the present invention; FIG. [Figure 4] 2 is a schematic flow diagram of a method for generating a first signature code and a second signature code according to the present invention; [Diagram 5] FIG. 4 is an exemplary diagram showing a method for periodically extracting a noise vector according to the present invention; [Figure 6a] FIG. 2 is an exemplary diagram illustrating an artificial intelligence-based generation model according to the present invention; [Figure 6b] 1 is an exemplary diagram showing encoding a noise vector using an artificial intelligence-based generative model according to the present invention; [Figure 6c] 1 is an exemplary diagram showing encoding a noise vector using an artificial intelligence-based generative model according to the present invention; [Figure 7a] 1 is an exemplary diagram showing a method for encoding a noise vector to generate a first input value and a second input value according to the present invention; [Figure 7b] 1 is an exemplary diagram showing a method for encoding a noise vector to generate a first input value and a second input value according to the present invention; [Figure 8a]4 is an exemplary diagram showing a method for generating characters constituting a first signature code and a second signature code according to the present invention; FIG. [Figure 8b] 4 is an exemplary diagram showing a method for generating characters constituting a first signature code and a second signature code according to the present invention; FIG. [Figure 9] FIG. 4 is a procedure diagram illustrating an outline of a method for generating second ciphertext data according to the present invention. [Figure 10a] FIG. 13 is an exemplary diagram showing how to determine exchange positions in first ciphertext data for each character constituting a first signature code according to the present invention. [Figure 10b] FIG. 4 is a diagram showing a character type code table according to the present invention. [Figure 10c] FIG. 13 is an exemplary diagram showing how to determine insertion positions in the first ciphertext data for each character constituting the second signature code according to the present invention. [Figure 11] FIG. 13 is an exemplary diagram showing generating second ciphertext data based on a noise value, a first signature code, and a second signature code according to the present invention. [Figure 12] 11 is an exemplary diagram showing an example of generating second ciphertext data by further using length information of first ciphertext data and a signature code identification key according to the present invention. FIG. [Figure 13] FIG. 4 is a flow chart illustrating a method for decrypting second encrypted data according to the present invention. [Figure 14] FIG. 13 is an exemplary diagram showing a method for updating second ciphertext data through adjustment of a signature code conversion table according to the present invention. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0023] The advantages and features of the present invention, as well as the methods for achieving them, will become apparent from the following detailed description of the embodiments in conjunction with the accompanying drawings. However, the present invention is not limited to the embodiments disclosed below, and may be realized in various different forms. However, the embodiments are provided to complete the disclosure of the present invention and to allow those skilled in the art to fully understand the scope of the present invention, and the present invention is defined only by the scope of the claims.
[0024] The terms used in this specification are for the purpose of describing the embodiments and are not intended to limit the present invention. In this specification, the singular includes the plural unless otherwise specified. The terms "comprises" and / or "comprising" used in this specification do not exclude the presence or addition of one or more other components other than the components mentioned. The same reference numerals throughout this specification refer to the same components, and "and / or" includes each and every combination of one or more of the components mentioned. Even if "first", "second", etc. are used to describe various components, it is understood that these components are not limited by these terms. These terms are used simply to distinguish one component from another component. Therefore, it goes without saying that the first component mentioned below may also be the second component within the technical spirit of the present invention.
[0025] Unless otherwise defined, all terms (including technical and scientific terms) used in this specification are used as meanings commonly understood by ordinary skilled artisans in the technical field to which the present invention belongs. Furthermore, terms defined in commonly used dictionaries are not interpreted ideally or excessively unless clearly and specifically defined.
[0026] Traditionally, many companies and security firms have used the Prefix or Postfix method to encrypt plaintext data, including personal information, to generate ciphertext data, and then include information about the encryption context (encryption key, encryption algorithm, etc.) in the prefix or suffix of the ciphertext data.
[0027] However, because these encryption methods are commonly used for encryption these days, a third party can easily infer that encryption information is included in the prefix or suffix of the ciphertext or encrypted data, even though they do not participate or intervene in the encryption process. In other words, the Prefix and Postfix encryption methods currently have security flaws.
[0028] In order to solve this problem, the present invention inserts encryption context information into ciphertext data, not into its prefix or suffix. In addition, an artificial intelligence-based generation model is used to generate characters or codes containing encryption context information so that a third party cannot infer patterns. Hereinafter, an embodiment of the present invention will be described in detail with reference to the accompanying drawings.
[0029] FIG. 1a is a schematic configuration diagram of a data encryption device 10 using artificial intelligence-based quantum-resistant cryptography according to the present invention, and FIG. 1b is an exemplary diagram illustrating an artificial intelligence-based encryption code generation model according to the present invention.
[0030] Referring to Fig. 1a, device 10 includes a memory 13, a retriever 12, and a processor 11. However, in some embodiments, device 10 may include fewer or more components than those shown in Fig. 1a. Here, device 10 is a computing device and may correspond to a server device.
[0031] First, the acquisition unit 12 can receive an input of plaintext data including personal information from a user. Alternatively, the acquisition unit 12 can receive an arbitrary noise vector for generating a first input value and a second input value from a user, or can acquire an arbitrary noise vector within a preset noise vector network.
[0032] Meanwhile, the processor 11 can encrypt plaintext data based on an encryption key to generate first ciphertext data, and can encode an arbitrary noise vector based on an artificial intelligence-based generative model to generate a first input value and a second input value.
[0033] Thereafter, the processor 11 can convert the first input value into a first signature code and convert the second input value into a second signature code based on a pre-established signature code conversion table.
[0034] Then, the processor 11 can replace or insert the first signature code and the second signature code into the first ciphertext data to generate second ciphertext data.
[0035] The memory 13 can store algorithms related to artificial intelligence-based generative models, encryption keys used in the encryption process, encryption algorithms, and the like.
[0036] Here, the signature code including the first signature code and the second signature code may be a unique encryption code generated through the artificial intelligence-based generation model of the present invention.
[0037] Hereinafter, the subject performing data encryption can be understood to be the device 10 using the AI-based generative model operated by the user as described above, but is not limited thereto. Meanwhile, the device 10 can be understood to be a server computer operated by the user performing data encryption, but is not limited thereto.
[0038] In the following, the operation of the processor 11 will be seen to be identical to that of the device 10 .
[0039] FIG. 2 is a flow chart illustrating a method for encrypting data using an encryption code generation model based on artificial intelligence according to the present invention.
[0040] First, referring to FIG. 2, the processor 11 can encrypt input plaintext data based on an encryption key to generate first ciphertext data (S110).
[0041] Specifically, when the processor 11 receives plaintext data including personal information from a user, it can encrypt the plaintext data using a pre-set encryption key or by applying a one-way or two-way encryption algorithm.
[0042] For example, the encryption algorithm may be SHA512, AES256, SEED128, ARIA256, etc., but is not limited thereto, and any encryption algorithm known in the technical field to which the present invention pertains may be used. In this case, the first ciphertext may include, in addition to the plaintext, specification information regarding the encrypted plaintext, such as an encryption algorithm method, a key index, etc.
[0043] FIG. 3 is an exemplary diagram showing encrypting plaintext data including personal information into a first ciphertext using an encryption key according to the present invention.
[0044] Referring to FIG. 3, when plaintext data including personal information regarding a specific person's name, "Hong Gil-dong," is input by a user, the processor 11 encrypts the plaintext data according to a predetermined encryption algorithm to generate the first ciphertext data, "B2wDfsDfADSFBf4A4SF6DG77SsAdf8kjdGWdg."
[0045] Meanwhile, referring again to FIG. 2, the processor 11 can generate the first ciphertext data, and then apply a periodically extracted noise vector to an artificial intelligence-based generative model to generate a first signature code and a second signature code, respectively (S120).
[0046] Here, when generating the first and second signature codes, the processor 11 may generate the first and second signature codes using the same noise vector for plaintext data belonging to the same period.
[0047] Specifically, the processor 11 determines the type of character and the replacement position required to generate the first signature code according to a previously set conversion formula, and generates, as the first signature code, an existing encrypted character present at the replacement position in the first ciphertext data and a first character obtained by calculating the character according to a previously set method.
[0048] Moreover, the processor 11 can determine the type and insertion position of the second character used as the second signature code by the conversion formula.
[0049] More specifically, the processor 11 can extract a noise vector on the system in which the device 10 is installed, but is not limited thereto, and can also receive information on any noise vector from a user through the acquisition unit 12.
[0050] Meanwhile, in one embodiment of the present invention, the noise vector can be extracted based on random numbers generated based on system information of the computer, i.e., the hardware. For example, random numbers generated based on the temperature of the hardware, the time, etc. can be used as the noise vector. For this purpose, the memory 13 can store a program for generating any random number.
[0051] The extracted noise vector may be used to generate a signature code. Specifically, the processor 11 may input the noise vector to an artificial intelligence-based generative model to generate a first input value and a second input value, and convert the first input value and the second input value into a first signature code and a second signature code, respectively.
[0052] Hereinafter, the method of generating the first and second signature codes in step S120 will be described in detail with reference to FIGS. 4 to 8b.
[0053] FIG. 4 is a schematic procedure diagram for a method of generating a first signature code and a second signature code according to the present invention, FIG. 5 is an exemplary diagram showing periodically extracting a noise vector according to the present invention, FIGS. 6a and 6b are exemplary diagrams showing encoding a noise vector using an artificial intelligence-based generative model according to the present invention, FIGS. 7a and 7b are exemplary diagrams showing encoding a noise vector according to the present invention to generate a first input value and a second input value, and FIGS. 8a and 8b are exemplary diagrams showing a method of generating each character constituting the first signature code and the second signature code according to the present invention.
[0054] First, referring to FIG. 4, the noise vector can be periodically extracted every time m pieces of plaintext data (where m is a natural number) are encrypted (S121).
[0055] 5, when m is assumed to be 2, the processor 11 can extract the same noise vector from the plaintext data 1 input first and the plaintext data 2 input second to generate a signature code. Specifically, when plaintext data 1 is input, the processor 11 can extract the noise vector 1 to generate a signature code, and then store information about the noise vector 1 in the memory 13. Then, when plaintext data 2 is input, the processor 11 does not extract a new noise vector, but extracts information about the noise vector 1 used when generating the first signature code or the second signature code of the plaintext data 1, and generates the first signature code or the second signature code based on the information.
[0056] Similarly, the same noise vector 2 can be used to generate the first or second signature code for the third input plaintext data 3 and the fourth input plaintext data 4, and the same noise vector 3 can be used to generate the fifth input plaintext data 5 and the sixth input plaintext data 6. That is, the same noise vector can be used for plaintext data belonging to the same period.
[0057] Continuing to refer to FIG. 4, the processor 11 may generate a plurality of first and second input values by encoding the periodically extracted noise vector based on an artificial intelligence based generative model (S122).
[0058] Specifically, the noise vector may be encoded using an AI-based generative model. For example, the noise vector may be converted into a binary vector through one-hot encoding, but is not limited thereto. Meanwhile, the above-mentioned noise vector encoding process uses an AI-based generative model (black box), which has the effect of preventing a third party from inferring or recognizing the regularity inherent in the process of encoding the noise vector.
[0059] Referring to FIG. 6a, the quantum-resistant encryption source technology (Dynamic Signature) according to the present invention can form a maximally complex plane using neural network output that can utilize a position selection method independent of the character type.
[0060] 6b, the processor 11 can generate an arbitrary noise vector obtained through one-hot encoding based on the first artificial intelligence-based generative model (Black Box) into four binary vectors, [0100000000], [0010000000], [0000000010], and [0000010000]. Although not explicitly shown in the drawing, to generate the four binary vectors, the processor 11 can extract four arbitrary vectors.
[0061] 6c, the processor 11 can generate an arbitrary noise vector obtained through one-hot encoding based on a second artificial intelligence-based generative model (Black Box) into four binary vectors, [0000010000], [0100000000], [0000000010], and [0000000100]. Although not explicitly shown in the drawing, to generate the four binary vectors, the processor 11 can extract four arbitrary vectors.
[0062] Meanwhile, after encoding the noise vector, the processor 11 can generate the first input value and the second input value.
[0063] For example, referring to Fig. 7a, the processor 11 may encode a noise vector into four one-hot vectors based on an artificial intelligence-based generative model, and then generate a first input value based on the one-hot vectors. Referring to Fig. 4, the processor 11 may convert each one-hot vector into a respective digit, and generate a first input value composed of the converted digits. Referring to Fig. 4, a first input value of "1285" may be generated based on four binary vectors, [0100000000], [0010000000], [0000000010], and [0000010000].
[0064] In this case, the processor 11 can generate the first input value with each number converted from each one-hot vector based on the input order of the noise vectors or the generation order of the one-hot vectors generated by encoding the noise vectors. For example, the "1" generated by converting [0100000000], which is the first generated vector among the four vectors [0100000000], [0010000000], [0000000010], and [0000010000], corresponds to the first digit value of the first input value.
[0065] Referring to Fig. 7b, the processor 11 may encode the noise vector into four one-hot vectors based on an artificial intelligence-based generation model, and then generate a second input value based on the one-hot vectors. Referring to Fig. 4, the processor 11 may convert each one-hot vector into a respective digit, and generate a second input value composed of the converted digits. Referring to Fig. 4, the processor 11 may generate a second input value of "5187" based on four binary vectors [0000010000], [0100000000], [0000000010], and [0000000100].
[0066] In this case, the processor 11 can generate the first input value by converting each one-hot vector into a number based on the input order of the noise vectors or the generation order of the one-hot vectors generated by encoding the noise vectors. For example, the "5" generated by converting [0000010000], which is the first vector generated among the four vectors [0000010000], [0100000000], [0000000010], and [0000000100], corresponds to the first digit value of the second input value.
[0067] 4, the processor 11 may convert the first input value into the first signature code based on the conversion formula (S123), where the conversion formula may include a pre-established signature code conversion table.
[0068] More specifically, the processor 11 can determine the type of character corresponding to the first input value and the replacement position of the character in the first ciphertext data based on the signature code conversion table.
[0069] Then, the processor 11 can check the existing encrypted character present at the determined replacement position among the encrypted characters in the first ciphertext data, and generate a first character by operating the confirmed existing encrypted character and the determined character in a previously set manner.
[0070] Referring to FIG. 8a, the processor 11 can determine the type of character corresponding to the first input value based on the first input value and the signature code conversion table.
[0071] Here, assuming that the total number of characters constituting the signature code conversion table is 30, the character corresponding to the first digit 1 of the first input value 1285 can be determined as follows: First, the order in which the characters to be converted are positioned in the signature code conversion table is determined by the following equation 1.
[0072] [Number 1] Number of first input values to be converted / (sum of numbers that make up the first input value) × total number of characters that make up the signature code conversion table + result value of previous digit value of number of first input values to be converted
[0073] That is, in the case of the first input value 1285, which is the first digit 1, it can be converted to the second character (1 / (1+2+8+5)×30=2) in the signature code conversion table, which is “0”.
[0074] In this same manner, the second digit 2 of the first input value 1285 can be converted to the sixth character "4" in the signature code conversion table, the third digit 8 of the first input value 1285 can be converted to the twenty-first character "J" in the signature code conversion table, and the last character 5 of the first input value can be converted to the thirtyth character "S" in the signature code conversion table. In this manner, each digit constituting the first input value can be converted to a respective letter, number, symbol, etc.
[0075] Here, the signature code conversion table may refer to a conversion table in which letters, numbers, symbols, etc. constituting a signature code are arranged based on predefined non-overlapping order information.
[0076] Then, processor 11 can generate each of the first characters constituting the first signature code by calculating the existing encrypted characters 2, D, 7, d and the characters 0, 4, J, S present at the exchange position in the first ciphertext data in a previously set manner.
[0077] 10a and 10b, the exchange positions can be determined to be 2, 7, 24, and 36 in the first ciphertext data. Then, Fig. 10a and Fig. 10b will be described in detail later.
[0078] Here, the operation of the previously set method may include any one of four arithmetic operations performed on the character order determined in the signature code conversion table and the order of existing encrypted characters existing at the exchange position in the first ciphertext data.
[0079] The first character may be a character having a sequence resulting from performing any one of an operation on the existing encrypted character sequence and the determined character sequence.
[0080] As an example, the processor 11 may perform addition on the character order (2nd, 7th, 24th, 36th) determined in the signature code conversion table through a previously set operation and the order (2nd, 13th, 7th, 39th) of the existing encrypted characters existing at the exchange position in the first ciphertext data, and determine the order (4th, 20th, 31st, 75th) corresponding to the execution result.
[0081] Then, the processor 11 can refer to the character type code table of Fig. 10b for the corresponding sequence to confirm each of the first characters 4, R, V, and D constituting the first signature code. At this time, if the corresponding sequence exceeds the number of characters in the character type code table, the processor 11 can return to the beginning of the table and perform sequential calculations to confirm the first character.
[0082] Still referring to FIG. 4, the processor 11 may convert the second input value into the second signature code based on the conversion formula (S124).
[0083] Specifically, referring to Fig. 8b, the processor 11 can determine each character constituting the second signature code corresponding to the second input value based on the second input value and the signature code conversion table. Assuming that the total number of characters constituting the signature code conversion table is 30, the processor 11 can determine the second signature code character corresponding to 5, which is the first digit of the second input value 5187, as follows: The processor 11 can determine the order in which the characters to be converted are located in the signature code conversion table based on the number 1.
[0084] That is, in the case of the first digit 5 of the second input value 5187, it is converted to "5", which is the seventh character (5 / (5+1+8+7)×30=7) in the signature code conversion table.
[0085] In this same manner, the second digit 1 of the second input value 5187 is converted to the eighth character "6" in the signature code conversion table, the third digit 8 of the first input value 5187 is converted to the 12th character "A" in the signature code conversion table, and the last character 7 of the first input value is converted to the 22nd character "K" in the signature code conversion table. That is, the second signature code is generated as "56AK." In this manner, each digit constituting the second input value is converted to each letter, number, or symbol constituting the second signature code.
[0086] Meanwhile, as an example of the present invention, the AI-based generative model may be pre-trained based on noise vectors in a network with a multimodal distribution. That is, by pre-training based on noise vectors in a network with a multimodal distribution, instead of noise vectors in a network with a general normal distribution, the complexity of the feature space of the result value of the AI-based generative model can be increased.
[0087] In addition, during the pre-learning process, the predictability of parameters of a third-party AI model can be reduced by using drop-out of some hidden layers (hidden states) of the AI-based generative model and distillation learning techniques, thereby preventing parameter imitation.
[0088] In addition, pre-learning can be performed according to weighting values of an AI-based generative model that has already been set by the user.
[0089] Further referring to FIG. 2, once the processor 11 generates the first signature code and the second signature code, it can replace or insert the first signature code, the second signature code and a noise vector into the first ciphertext data to generate the second ciphertext data (S130).
[0090] A specific method for generating the second ciphertext data will be described below with reference to FIGS.
[0091] FIG. 9 is a flow chart illustrating a method for generating second ciphertext data according to the present invention, FIGS. 10a and 10c are exemplary diagrams illustrating determining replacement positions and insertion positions in the first ciphertext data for each character constituting the first signature code and the second signature code according to the present invention, respectively, and FIG. 11 is an exemplary diagram illustrating generating second ciphertext data based on a noise value and the first and second signature codes.
[0092] 9, in one embodiment of the present invention, a noise vector is added to a first position of the first ciphertext data (S131). Here, the first position may correspond to the beginning or the end of the first ciphertext data. Preferably, the noise vector is added to the end of the first ciphertext data according to the Postfix method.
[0093] More specifically, the extracted noise vectors can be converted into bytes and appended to the end of the first ciphertext data. If four noise vectors are extracted, the four noise vectors can be converted into bytes and appended to the first ciphertext data in the order in which they were extracted by the Postfix method.
[0094] Further referring to FIG. 9, processor 11 can determine the replacement or insertion positions of each character in the first ciphertext data based on the first input value, the second input value and length information of the first ciphertext data (S132).
[0095] Specifically, the processor 11 can generate replacement and insertion positions where the respective letters, numbers or symbols constituting the first signature code and the second signature code are replaced or inserted within the first ciphertext.
[0096] As an example of the present invention, the replacement or insertion positions of the signature code may be determined by the ratio method described above.
[0097] For example, referring to FIG. 10a, the replacement position of the first character 4 of the first signature code is determined by the following Equation 2.
[0098] [Number 2] The number of first input values that determine the exchange position / (the sum of the numbers that make up the first input value) × the length of the first ciphertext data + the result of the previous digit value of the number of first input values that determine the exchange position
[0099] That is, 4 is swapped to the second position (1 / (1+2+8+5)×37 = 2) in the first ciphertext data. Calculating the swap positions of the remaining characters R, V, and D that make up the signature code in this way, R is determined to be swapped to the 7th position in the first ciphertext data, V to be swapped to the 24th position, and D to be swapped to the 36th position in the first ciphertext data.
[0100] Referring to FIG. 10c, first, the insertion position of the first character of the second signature code, 5, is determined by Equation 2 above.
[0101] That is, 5 is inserted at the 9th position (5 / (5+1+8+7)×37=9) in the first ciphertext data. When the insertion positions of the remaining characters 6, A, and K that make up the signature code are calculated in this way, 6 is determined to be inserted at the 11th position in the first ciphertext data, A at the 25th position, and K at the 37th position in the first ciphertext data.
[0102] In this case, in the process of calculation using the above-mentioned formulas 1 and 2, the processor 11 can determine the order of the character positions to be converted and the insertion positions in the signature code conversion table with a maximum value less than the values calculated by the formulas 1 and 2.
[0103] Further referring to FIG. 9, once the swap and insertion positions of each character constituting the first signature code and the second signature code are determined, the characters can be swapped or inserted into the determined swap and insertion positions (S133).
[0104] 11, first, as described above, in step S131, the processor 11 may append a value related to a noise vector, "0011001", to the first ciphertext data by the Postfix method. Specifically, the processor 11 may append a value related to a noise vector to the end of the existing first ciphertext data.
[0105] Then, in step S132, the processor 11 may replace or insert the "4", "R", "V", and "D" constituting the first signature code and the "5", "6", "A", and "K" constituting the second signature code into or from the first ciphertext data according to the determined replacement and insertion positions, respectively. Thus, the processor 11 generates "B4wDfsRfA5DS6FBf4A4SF6DG7VSAsAdf8kjdGWDgK011001", which is the second ciphertext data in which the noise vector and the signature code are replaced or inserted into the first ciphertext data "B2wDfsDfADSFBf4A4SF6DG77SsAdf8kjdGWdg".
[0106] On the other hand, as described above, the plaintext data in the same period generates the same signature code using the same noise vector. However, in the process of generating the second ciphertext data, the replacement or insertion positions of the letters, numbers, and symbols constituting the first signature code or the second signature code, which are determined, are based on the length of the first ciphertext data. Therefore, even if the plaintext data in the same period uses the same first signature code or the second signature code, the length information to be replaced or inserted into each first ciphertext data is different according to the first ciphertext data generated by each plaintext data.
[0107] FIG. 12 is an example diagram illustrating how second ciphertext data is generated by further using the first ciphertext data length information.
[0108] As an example of the present invention, the above-mentioned step S130 may generate the second ciphertext data by attaching information on the length of the first ciphertext data to a second position of the first ciphertext data. Specifically, the second ciphertext data may be generated based on the length information of the first ciphertext data. In this case, the second position to which the length information of the first ciphertext data is attached is determined so as not to overlap with the first position to which the noise vector is attached. That is, once a value related to the noise vector is attached to the first ciphertext data by the Postfix method, information on the length of the first ciphertext data may be attached to the first ciphertext data by the Prefix method.
[0109] That is, as described above, the plaintext data in the same period are generated as second ciphertext data based on the same signature code generated by the same noise vector, and therefore the same signature code identification key is added to each of the second ciphertext data corresponding to the plaintext data in the same period.
[0110] 12, it can be seen that after the noise vector is attached, the length information of the first ciphertext data is further attached to the data in which the characters of the first signature code and the second signature code are replaced or inserted. Also, as described above, the length information of the first ciphertext data is inserted at a position that does not overlap with the value related to the noise vector. Specifically, it can be seen that the length information of the first ciphertext data is attached to the beginning of the first ciphertext data, and the value related to the noise vector is attached to the end of the first ciphertext data.
[0111] Meanwhile, as an example of the present invention, although not clearly shown in the drawings, the plaintext data encryption method may further include a step of setting length information of the signature code in advance. In this case, the step of generating the first input value and the second input value (S120) may generate the first input value and the second input value by extracting an arbitrary noise vector by the number of noise vectors corresponding to the length information.
[0112] Specifically, as described above, one noise vector is encoded into one one-hot vector by the artificial intelligence-based generation model. Referring to FIG. 5, the first input value and the second input value generated based on four one-hot vectors are composed of four-digit numbers. Also, the first signature code is composed of a number of characters corresponding to the number of digits of the first input value, and the second signature code is composed of a number of characters corresponding to the number of digits of the second input value. Therefore, the number of characters constituting the first signature code and the second signature code, i.e., the length of the first signature code, ultimately corresponds to the number of digits of the first input value, and the length of the second signature code corresponds to the number of digits of the second input value. Therefore, when the user sets in advance the length information of each of the first signature code and the second signature code to be replaced or inserted into the first ciphertext data, the processor 11 extracts the noise vectors by the number corresponding to the set length information to generate the first input value and the second input value, respectively.
[0113] For example, when the length information of the signature code is set to 10, the processor 11 extracts 10 noise vectors, encodes each of the noise vectors to generate 10 one-hot vectors, and then generates a first input value and a second input value each consisting of a 10-digit number.
[0114] Hereinafter, a method for decrypting the second encrypted data to restore the plaintext data will be described with reference to FIG.
[0115] FIG. 13 is a flow chart illustrating a method for decrypting second encrypted data according to the present invention.
[0116] 13, the processor 11 extracts a noise vector from the second ciphertext data (S150), and applies the noise vector to an artificial intelligence-based generative model to generate a first signature code and a second signature code (S160).
[0117] After generating the first signature code and the second signature code, the processor 11 removes each character that has been replaced or inserted into the second ciphertext data based on the first signature code and the second signature code to restore the first ciphertext data (S170), and then decrypts the first ciphertext data based on the encryption key to generate the plaintext data (S180).
[0118] At this time, in the step of generating the first signature code and the second signature code (S160), the processor 11 may generate the first input value and the second input value by encoding a noise vector extracted from the second ciphertext data based on an artificial intelligence-based generation model.
[0119] The processor 11 can convert the first input value and the second input value into the first signature code and the second signature code, respectively, based on the previously set signature code conversion table and the previously set character type code table.
[0120] As described above, the second ciphertext data may include information about the noise vectors used to generate the first and second signature codes.
[0121] Therefore, when the processor 11 extracts the noise vector and inputs it into an artificial intelligence-based generative model to generate second ciphertext data, it can generate a first signature code and a second signature code that are identical to the replaced or inserted first signature code and second signature code.
[0122] To this end, as one example of the present invention, filter information of an artificial intelligence-based generative model is stored in memory 13 so that the first signature code and the second signature code that are identical to the first signature code and the second signature code used in the encryption step can be generated.
[0123] Meanwhile, the characters replaced or inserted in the second ciphertext data are removed based on the generated first signature code and second signature code to restore the first ciphertext data.
[0124] 11, the processor 11 can remove the characters of the first signature code "4RVD" and the second signature code "56AK" that are replaced or inserted in the second ciphertext data "B4wDfsRfA5DS6FBf4A4SF6DG7VSAsAdf8kjdGWDgK011001" and restore the first ciphertext data "B2wDfsDfADSFBf4A4SF6DG77SsAdf8kjdGWdg". After restoring the data to the first ciphertext data, the processor 11 can extract the encryption key corresponding to the encryption key reference value from the memory 13. The processor 11 can decrypt the first ciphertext data using the extracted encryption key to generate the plaintext data, thereby completing the decryption.
[0125] Also, as one example of the present invention, in the case of second ciphertext data to which the length information of the above-mentioned first ciphertext data is attached, the processor 11 can remove the first signature code and the second signature code that have been replaced or inserted into the second ciphertext data based on the length information of the first ciphertext data and a noise vector.
[0126] Specifically, the processor 11 can extract a noise vector attached to a first position, for example, the end, of the second ciphertext data, and apply it to an artificial intelligence-based generative model to calculate a first input value and a second input value.
[0127] The processor 11 can generate each character constituting the first signature code and the second signature code based on the first input value, the second input value and the already stored signature code conversion table. The processor 11 can also extract the second position of the second ciphertext data, for example, length information of the first ciphertext data attached to the beginning, and determine the replacement or insertion positions of each character constituting the first signature code and the second signature code that are replaced or inserted in the second ciphertext data based on the first value and the length information of the first ciphertext data.
[0128] Then, the processor 11 can restore the second ciphertext data to the first ciphertext data by replacing or removing the respective characters from the determined replacement or insertion positions.
[0129] Meanwhile, as another example of the present invention, the processor 11 may perform decryption based on a caching method. Specifically, the processor 11 may map and store preset n (n is a natural number) noise vectors and signature codes, extract the noise vectors from the second ciphertext data, and extract the first signature code and the second signature code corresponding to the extracted noise vectors from the memory.
[0130] Then, the processor 11 can remove the characters constituting the first signature code and the second signature code included in the second ciphertext data by using the first signature code and the second signature code, thereby enabling the processor 11 to perform the decryption process more quickly.
[0131] Meanwhile, the preset n noise vectors may be periodically changed depending on the frequency of the noise vectors by a user providing encryption and decryption services, but is not limited thereto.
[0132] On the other hand, by periodically updating the second ciphertext data, it is possible to eliminate the possibility of deciphering the second ciphertext data and prevent the plaintext data from leaking.
[0133] A method for periodically updating the second ciphertext data will be described below.
[0134] FIG. 14 is an exemplary diagram showing a method of updating second ciphertext data through changing a signature code conversion table according to the present invention.
[0135] First, the processor 11 can ultimately update the second ciphertext data by periodically changing the first signature code and the second signature code that are exchanged or inserted in the second ciphertext data.
[0136] Although not clearly shown in the drawings, as an example of the present invention, the encryption method and the decryption method using the artificial intelligence-based generative model described above may further include a step of periodically updating the second ciphertext data based on a signature code conversion table. In this case, the step of updating the second ciphertext data may include periodically adjusting a character sequence in the signature code change table, and changing the first signature code and the second signature code in the second ciphertext data based on the adjusted signature code conversion table to update the second ciphertext data.
[0137] Referring to FIG. 14, it can be seen that the first and second signature codes for the same first input value 1285 and second input value 5187 are generated differently depending on the adjustment of the character sequence in the signature code conversion table.
[0138] As an example, the second signature code generated based on the first signature code conversion table is "56AK", whereas the second signature code generated based on the second signature code conversion table is "orP9".
[0139] In addition, it can be seen that the second ciphertext data generated by replacing or inserting the first signature code and the second signature code are also different. In this way, the second ciphertext data can be updated by changing the first signature code and the second signature code.
[0140] The first and second signature codes correspond to the first and second input values, respectively. Therefore, in order to update the second ciphertext data through the change of the signature code conversion table, the same first and second input values must be used. Therefore, as an example of the present invention, the processor 11 can extract noise vectors attached to the second ciphertext data and generate the first and second input values through an artificial intelligence-based generative model.
[0141] On the other hand, as one example of the present invention, in the above-mentioned step of updating the second ciphertext data, the second ciphertext data belonging to the same cycle can be updated collectively.
[0142] Meanwhile, as another example of the present invention, the second encrypted data may be updated based on re-learning of an artificial intelligence-based generative model.
[0143] Specifically, in relation to pre-learning of an AI-based generative model, after periodically changing distribution information of noise vectors, the AI-based generative model is re-learned and weights of the hidden layer (Hidden State) of the generative model are adjusted. Then, based on the adjusted weights, a new first input value (hereinafter, "1-1 input value") and a new second input value (hereinafter, "2-1 input value") are generated. Then, the 1-1 input value and the 2-1 input value are converted into a new first signature code (hereinafter, "1-1 signature code") and a new second signature code (hereinafter, "2-1 signature code"), and the 1-1 signature code and the 2-1 signature code are replaced or inserted into the first ciphertext data to periodically update the second ciphertext data.
[0144] That is, if the method of updating the second ciphertext data through the adjustment of the signature code conversion table described above is performed based on the same first input value and second input value, the method of updating through re-learning the AI-based generative model can be performed based on a first input value different from the first input value and a second input value different from the second input value used when generating the ciphertext. Meanwhile, filter information and information on the weights of the hidden layer of the AI-based generative model obtained through re-learning are stored in the memory 13 of the device 10.
[0145] However, as an example of the present invention, the step of updating the second ciphertext data described above can be performed after the step of decrypting the second ciphertext data.
[0146] Meanwhile, in the above description, steps S110 to S180 may be further divided into additional steps or combined into fewer steps according to the embodiment of the present invention. Also, some steps may be omitted, and the order of steps may be changed, as necessary. Also, even if omitted, the contents of FIG. 1 described below can be applied to the AI-based encryption and decryption methods of FIG. 2 to FIG. 11.
[0147] The AI-based encryption and decryption method according to the present invention described above can be implemented as a program (or application) and stored in a computer-readable recording medium in order to be executed by a computer, which is hardware.
[0148] The above-mentioned program may include code coded in a computer language such as C, C++, JAVA, Ruby, machine language, etc., which is read by the processor (CPU) of the computer through the device interface of the computer so that the computer can read the program and execute the method realized by the program. Such code may include functional code related to functions defining functions necessary to execute the method, and may include control code related to execution procedures necessary for the processor of the computer to execute the function according to a predetermined procedure. In addition, such code may further include memory reference-related code for referring to a location (address) of the internal or external memory of the computer where additional information or media necessary for the processor of the computer to execute the function should be referenced. Furthermore, if the processor of the computer needs to communicate with any other remote computer or server to execute the function, the code may further include communication-related code for how to communicate with any other remote computer or server using a communication module of the computer, and what information or media should be sent or received during communication.
[0149] The storage medium means a medium that stores data semi-permanently and can be read by a device, rather than a medium that stores data for a short time such as a register, cache, memory, etc. Specific examples of the storage medium include, but are not limited to, ROM, RAM, CD-ROM, magnetic tape, floppy disk, optical data storage device, etc. That is, the program can be stored in various recording media on various servers to which the computer can be connected, or various recording media on the user's computer. Also, the medium can be distributed among computer systems connected by a network and store computer-readable code in a distributed manner.
[0150] The above description of the present invention is for illustrative purposes only, and those skilled in the art will understand that the present invention can be easily modified into other specific forms without changing the technical idea or essential features of the present invention. Therefore, the above-described embodiments should be understood as illustrative in all respects and not limiting. For example, each component described as a single type can be implemented in a distributed manner, and similarly, each component described as a distributed type can be implemented in a combined form.
[0151] The scope of the present invention is defined by the claims set forth below rather than the above detailed description, and all modifications and variations that fall within the meaning and scope of the claims and their equivalents should be construed as being included within the scope of the present invention.
Claims
1. 1. A data encryption method performed by an apparatus, comprising: encrypting the plaintext data based on the encryption key to generate first ciphertext data; applying the periodically extracted noise vector to an artificial intelligence based generation model to generate a first signature code and a second signature code, respectively; applying the first signature code and the second signature code to the first ciphertext data to generate second ciphertext data; The generating step of the first signature code includes determining a type of a character and a replacement position required for generating the first signature code according to a conversion formula that has been previously set, and generating a first character by calculating an existing encrypted character that exists at the replacement position in the first ciphertext data and the character according to a previously set method as the first signature code; The generating step of the second signature code includes determining a type and an insertion position of a second character to be used as the second signature code according to the conversion formula; A data encryption method using artificial intelligence quantum-resistant cryptography, characterized in that the second ciphertext data generation step generates the second ciphertext data by replacing an existing encrypted character existing at the replacement position in the first ciphertext data with the first character, and inserting the second character at the insertion position in the first ciphertext data.
2. The first signature code and the second signature code generating step include: extracting the noise vector periodically every time m pieces of plaintext data (where m is a natural number) are encrypted; encoding the periodically extracted noise vector based on the artificial intelligence based generative model to generate a plurality of first input values and a plurality of second input values; converting the first input value into the first signature code based on the conversion formula; converting the second input value into the second signature code based on the conversion formula; 2. The data encryption method using the artificial intelligence quantum-resistant cryptography according to claim 1, further comprising:
3. The conversion formula includes a pre-established signature code conversion table, The first signature code conversion step includes: determining a type of character corresponding to the first input value and a replacement position of the character in the first ciphertext data based on the signature code conversion table; identifying an existing encrypted character present at the determined replacement position among the encrypted characters in the first ciphertext data; generating a first character by computing the confirmed existing encrypted character and the determined character in a preset manner; The second ciphertext data generating step includes: A data encryption method using artificial intelligence quantum-resistant cryptography as described in claim 2, characterized in that the generated first character is exchanged for the exchange position in the first ciphertext data to generate the second ciphertext data.
4. The exchange position determination step includes: appending the noise vector to a first location of the first ciphertext data; determining the exchange position based on the first input value and length information of the first ciphertext data; 4. The data encryption method using the artificial intelligence quantum-resistant cryptography according to claim 3, further comprising:
5. The calculation of the previously set method is as follows: the method includes performing any one of four arithmetic operations on the order of characters determined in the signature code conversion table and the order of the existing encrypted characters present at the exchange position in the first ciphertext data, The data encryption method using artificial intelligence quantum-resistant cryptography according to claim 3, wherein the first character is a character having an order resulting from performing one of an operation on an existing encrypted character order and a determined character order.
6. The conversion formula includes a pre-established signature code conversion table, The second signature code conversion step includes: determining a second character corresponding to the second input value and an insertion position of the second character in the first ciphertext data based on the signature code conversion table; The second ciphertext data generating step includes:
3. The data encryption method using artificial intelligence quantum-resistant cryptography according to claim 2, further comprising inserting the determined second character into the determined insertion position in the first ciphertext data.
7. The conversion formula includes a pre-established signature code conversion table, The method further includes periodically updating the second ciphertext data based on the signature code conversion table, The step of updating the second ciphertext data includes: periodically changing the character arrangement in the signature code conversion table; The data encryption method using artificial intelligence quantum-resistant cryptography as described in claim 1, characterized in that the second ciphertext data is updated by changing the first signature code or the second signature code in the second ciphertext data based on the signature code conversion table in which the character arrangement has been changed.
8. The artificial intelligence-based generative model is The distribution information of the noise vector is periodically changed and re-learned; The second ciphertext data is 2. The data encryption method according to claim 1, wherein the data encryption method is periodically updated based on a retrained AI-based generative model.
9. Memory, An acquisition unit that acquires plaintext data; a processor that encrypts plaintext data based on an encryption key to generate first ciphertext data, applies a periodically extracted noise vector to an artificial intelligence-based generation model to generate a first signature code and a second signature code, respectively, and applies the first signature code and the second signature code to the first ciphertext data to generate the second ciphertext data, The processor, When generating the first signature code, a type of character and a replacement position required for generating the first signature code are determined according to a conversion formula that has been set in advance, and an existing encrypted character that exists at the replacement position in the first ciphertext data and a first character that is obtained by performing a calculation on the character according to a method that has been set in advance are generated as the first signature code; determining a type and an insertion position of a second character to be used as the second signature code by the conversion formula when generating the second signature code; A data encryption device using artificial intelligence quantum-resistant cryptography, characterized in that, when generating the second ciphertext data, an existing encrypted character existing at the exchange position in the first ciphertext data is replaced with the first character, and the second character is inserted at the insertion position in the first ciphertext data to generate the second ciphertext data.
10. A computer program stored on a computer-readable recording medium that causes a computer to execute the data encryption method using artificial intelligence quantum-resistant cryptography according to any one of claims 1 to 8.
Citation Information
Patent Citations
System, device and method for distributing and managing electronic data, and system, device and method for processing encryption
JP2002132365A
Apparatus and method for protecting documents, apparatus and method for verifying the authenticity of documents by using encrypted information generated by said method, and documents protected by said encrypted information
JP2004523155A
Character code encryption processing program and method
JP2007065253A
Combinatorial combiner encryption method
JP2010515083A