CN108777614B - Encryption and decryption device and encryption and decryption method based on general hash function - Google Patents
Encryption and decryption device and encryption and decryption method based on general hash function Download PDFInfo
- Publication number
- CN108777614B CN108777614B CN201810741522.5A CN201810741522A CN108777614B CN 108777614 B CN108777614 B CN 108777614B CN 201810741522 A CN201810741522 A CN 201810741522A CN 108777614 B CN108777614 B CN 108777614B
- Authority
- CN
- China
- Prior art keywords
- matrix
- hash function
- generator
- key
- taking
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/0643—Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
- H04L9/0825—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y04—INFORMATION OR COMMUNICATION TECHNOLOGIES HAVING AN IMPACT ON OTHER TECHNOLOGY AREAS
- Y04S—SYSTEMS INTEGRATING TECHNOLOGIES RELATED TO POWER NETWORK OPERATION, COMMUNICATION OR INFORMATION TECHNOLOGIES FOR IMPROVING THE ELECTRICAL POWER GENERATION, TRANSMISSION, DISTRIBUTION, MANAGEMENT OR USAGE, i.e. SMART GRIDS
- Y04S40/00—Systems for electrical power generation, transmission, distribution or end-user application management characterised by the use of communication or information technologies, or communication or information technology specific aspects supporting them
- Y04S40/20—Information technology specific aspects, e.g. CAD, simulation, modelling, system security
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Power Engineering (AREA)
- Storage Device Security (AREA)
Abstract
The application provides an encryption and decryption device and an encryption and decryption method based on a general hash function. The encryption and decryption device comprises: a discretized normal distribution generator, a key generator and an encryption/decryption device; the discretized normal distribution generator is used for generating normal distribution and obtaining random variables according to the normal distribution; the key generator is used for generating a private key S and a public key A by using at least one general hash function; the encrypting/decrypting device is used for outputting encrypted ciphertext according to the public key A and the ciphertext to be encrypted or outputting decrypted ciphertext according to the private key S and the ciphertext to be decrypted. By the method and the device, the storage and calculation complexity can be greatly reduced.
Description
Technical Field
The application relates to the technical field of data encryption and decryption, in particular to an encryption and decryption device and an encryption and decryption method based on a general hash function.
Background
With the vigorous development of internet technology, the importance of communication security is increasing. In many cases, both parties wish to communicate securely using a common channel. For example, when a user submits an account number and password to an online banking, the user wishes that the information be kept secret during the transfer process, i.e., cannot be eavesdropped by any third party. The encryption method currently being widely used is the public key encryption method, and the security of such a method is based on the algorithmic complexity of certain mathematical problems. However, with the development of technology, particularly the development of quantum computers, the security of public key encryption methods has been compromised. Therefore, development of a more secure and reliable encryption method against quantum computation is needed.
The cryptographic method which can still keep safe under the condition of possessing a quantum computer, namely a post quantum cryptography method, has been widely paid attention at home and abroad. Currently, governments of various countries have actively advanced standards for quantum cryptography. Post quantum cryptography focuses mainly on four types of methods: hash-based (hash-based) cryptography methods, code-based (code-based) cryptography methods, multivariate (multi-variable) cryptography methods, and lattice-based (lattice-based) cryptography methods. Among these, the most interesting is currently the grid-based cryptography method.
In the implementation of the trellis-based cryptography method, one of the core steps is to generate a very large (e.g., 10kbit x 10 kbit) random matrix, which is used in encryption and decryption. Thus, this approach necessarily introduces a large amount of memory requirements and high computational complexity requirements. Thus, in fact, storage and computation complexity has become a bottleneck for the current post quantum cryptography approach to widespread use.
Disclosure of Invention
In view of this, the present application provides an encryption and decryption device and an encryption and decryption method based on a general hash function, so that storage and computation complexity can be greatly reduced.
The technical scheme of the application is realized specifically as follows:
an encryption and decryption apparatus, the apparatus comprising: a discretized normal distribution generator, a key generator and an encryption/decryption device;
the discretized normal distribution generator is used for generating a normal distributionAnd according to the normal distribution +.>Obtaining a random variable;
the key generator is used for generating a private key S and a public key A by using at least one general hash function;
the encrypting/decrypting device is used for outputting encrypted ciphertext according to the public key A and the ciphertext to be encrypted or outputting decrypted ciphertext according to the private key S and the ciphertext to be decrypted.
Preferably, the key generator includes: an S matrix generator, a general hash function generator, an E matrix generator and a key device;
the S matrix generator is used for uniformly distributing the S matrix generator from the integer ring Z q Taking up an n×l matrix to generateThe S matrix is used as a private key S;
the general hash function generator is used for generating a general hash function and taking the general hash function asA matrix;
the E matrix generator is used for distributing according to normal stateFrom an integer ring Z q Taking a matrix of l multiplied by m to generate an E matrix;
the key device is used for performing key generation according to an S matrix,And calculating the matrix and the E matrix to obtain a public key A.
Preferably, the key generator includes: a general hash function generator,A matrix generator, an E-matrix generator, and a key locker;
the general hash function generator is used for generating a general hash function, taking the general hash function as an S matrix and taking the S matrix as a private key S;
the saidMatrix generator for generating a matrix of integers from an integer ring Z in a uniformly distributed manner q Taking up an n×m matrix to generateA matrix;
the E matrix generator is used for distributing according to normal stateFrom an integer ring Z q Taking a matrix of l multiplied by m to generate an E matrix;
the key device is used for performing key generation according to an S matrix,And calculating the matrix and the E matrix to obtain a public key A.
Preferably, the key generator includes: an S matrix generator,A matrix generator, a generic hash function generator, and a keyer;
the S matrix generator is used for uniformly distributing the S matrix generator from the integer ring Z q Taking an n multiplied by l matrix, generating an S matrix, and taking the S matrix as a private key S;
the saidMatrix generator for generating a matrix of integers from an integer ring Z in a uniformly distributed manner q Taking up an n×m matrix to generateA matrix;
the general hash function generator is used for generating a general hash function and taking the general hash function as an E matrix;
the key device is used for performing key generation according to an S matrix,And calculating the matrix and the E matrix to obtain a public key A.
Preferably, the key generator includes: an S matrix generator, a first general hash function generator, a second general hash function generator and a key locker;
the S matrix generator is used for uniformly distributing the S matrix generator from the integer ring Z q Taking an n multiplied by l matrix, generating an S matrix, and taking the S matrix as a private key S;
the first general hash function generator is used for generating a first general hash function and taking the first general hash function as a first general hash functionA matrix;
the second general hash function generator is used for generating a second general hash function, and the second general hash function is used as an E matrix;
the key device is used for performing key generation according to an S matrix,And calculating the matrix and the E matrix to obtain a public key A.
Preferably, the key generator includes: a third generic hash function generator, a first generic hash function generator, a second generic hash function generator, and a keyer;
the third general hash function generator is used for generating a third general hash function, taking the third general hash function as an S matrix and taking the S matrix as a private key S;
the first general hash function generator is used for generating a first general hash function and taking the first general hash function as a first general hash functionA matrix;
the second general hash function generator is used for generating a second general hash function, and the second general hash function is used as an E matrix;
the key device is used for performing key generation according to an S matrix,And calculating the matrix and the E matrix to obtain a public key A.
The application also provides an encryption and decryption method based on the general hash function, which comprises the following steps:
generating a normal distribution using a discretized normal distribution generatorAnd according to the normal distribution +.>Obtaining a random variable;
calculating in a key generator by using at least one general hash function to generate a private key S and a public key A;
inputting the public key A and the original text to be encrypted into an encryptor, and outputting the encrypted ciphertext; or, the private key S and the ciphertext to be decrypted are input into a decryptor, and the decrypted original text is output.
Preferably, the generating a normal distribution using a discretized normal distribution generator, and obtaining the random variable according to the normal distribution includes:
generating a mean value of 0 and standard deviation using a discretized normal distribution generatorAnd discretized normal distribution with q as parameter +.>
From normal distributionTaking out a random variable x;
performing modulo operation on the random variable x and 1 to obtain a remainder r;
and rounding the product of the remainder r and q to obtain a random variable.
Preferably, the calculating in the key generator using at least one general hash function, generating the private key S and the public key a includes:
from the integer ring Z in a uniformly distributed manner q Taking an n multiplied by l matrix to obtain an S matrix; where n is a security parameter and l is the length of the bit vector to be encrypted;
generating a general hash function, and taking the general hash function asA matrix;
according to normal distributionFrom an integer ring Z q Taking a matrix of l multiplied by m to obtain an E matrix; wherein m is the length of the ciphertext;
according to S matrix,The matrix and the matrix E are calculated to obtain an intermediate matrix B;
according to intermediate matrix B andand calculating a matrix to obtain a public key A, and taking the S matrix as a private key S.
Preferably, the calculating in the key generator using at least one general hash function, generating the private key S and the public key a includes:
generating a general hash function, and taking the general hash function as an S matrix;
from the integer ring Z in a uniformly distributed manner q Taking up an n×m matrix to obtainA matrix; wherein n is a security parameter, and m is the length of the ciphertext;
according to normal distributionFrom an integer ring Z q Taking a matrix of l multiplied by m to obtain an E matrix; where l is the length of the bit vector to be encrypted;
according to S matrix,The matrix and the matrix E are calculated to obtain an intermediate matrix B;
according to intermediate matrix B andand calculating a matrix to obtain a public key A, and taking the S matrix as a private key.
Preferably, the calculating in the key generator using at least one general hash function, generating the private key S and the public key a includes:
from the integer ring Z in a uniformly distributed manner q Taking an n multiplied by l matrix to obtain an S matrix; where n is a security parameter and l is the length of the bit vector to be encrypted;
from the integer ring Z in a uniformly distributed manner q Taking up an n×m matrix to obtainA matrix; wherein m is the length of the ciphertext;
generating a general hash function, and taking the general hash function as an E matrix;
according to S matrix,The matrix and the matrix E are calculated to obtain an intermediate matrix B;
according to intermediate matrix B andand calculating a matrix to obtain a public key A, and taking the S matrix as a private key.
Preferably, the calculating in the key generator using at least one general hash function, generating the private key S and the public key a includes:
from the integer ring Z in a uniformly distributed manner q Taking an n multiplied by l matrix to obtain an S matrix; where n is a security parameter and l is the length of the bit vector to be encrypted;
generating a first general hash function, using the first general hash function asA matrix;
generating a second general hash function, and taking the second general hash function as an E matrix;
according to S matrix,The matrix and the matrix E are calculated to obtain an intermediate matrix B;
according to intermediate matrix B andand calculating a matrix to obtain a public key A, and taking the S matrix as a private key.
Preferably, the calculating in the key generator using at least one general hash function, generating the private key S and the public key a includes:
generating a third general hash function, and taking the third general hash function as an S matrix;
generating a first general hash function, using the first general hash function asA matrix;
generating a second general hash function, and taking the second general hash function as an E matrix;
according to S matrix,The matrix and the matrix E are calculated to obtain an intermediate matrix B;
according to intermediate matrix B andand calculating a matrix to obtain a public key A, and taking the S matrix as a private key.
Preferably, the intermediate matrix B is calculated according to the following formula:
wherein the symbol "t" mentioned above represents the transpose of the matrix.
Preferably, the public key a is calculated according to the following formula:
preferably, the general hash function is a toprilz hash matrix.
Preferably, the inputting the public key a and the original text to be encrypted into the encryptor, and outputting the encrypted ciphertext includes:
generating a binary m-dimensional vector x in a uniformly distributed manner;
the encryption device encrypts the original text v to be encrypted by using the public key A and the m-dimensional vector x, thereby outputting the encrypted ciphertext c.
Preferably, the original text v to be encrypted is encrypted by the following formula to obtain encrypted ciphertext c:
wherein 0 is an n-dimensional zero vector; the c is shaped likeIs a vector of (a).
Preferably, the inputting the public key a and the original text to be encrypted into the encryptor, and outputting the encrypted ciphertext includes:
obtaining an l-dimensional vector w in a decryptor according to a private key S and a ciphertext c to be decrypted;
and decoding the l-dimensional vector w, and taking the decoded vector w as the decrypted original text.
Preferably, the vector w is obtained by the following formula:
wherein I is an identity matrix of l×l.
Preferably, the decoding of the l-dimensional vector w includes:
the following is performed for each bit of the l-dimensional vector w: .
Calculating the value of the current bit;
decoding a current bit to 0 when the distance between the value of the bit and 0 is less than the distance between the value of the bit and q/2; otherwise, the bit is decoded to 1.
As can be seen from the above, in the encryption and decryption device and the encryption and decryption method based on the general hash function in the present application, the general hash function (e.g., toeplitz hash matrix) is used to replace the random matrix, so as to calculate the private key S and the public key a, so that the storage amount of the generated public key a becomes smaller, thereby greatly reducing the storage and calculation complexity, solving the application bottleneck of the post quantum cryptography method, and enhancing the practicability of the post quantum cryptography algorithm.
Drawings
Fig. 1 is a schematic structural diagram of an encryption and decryption device in an embodiment of the present application.
FIG. 2 is a flowchart of an encryption and decryption method based on a general hash function in an embodiment of the present application.
Detailed Description
In order to make the technical scheme and advantages of the present application more apparent, the present application will be described in further detail with reference to the accompanying drawings and specific embodiments.
Fig. 1 is a schematic structural diagram of an encryption and decryption device in an embodiment of the present application, as shown in fig. 1, where the encryption and decryption device in the present application includes: a discretized normal distribution generator 11, a key generator 12, and an encryptor/decryptor 13;
the discretized normal distribution generator 11 is used for generating a normal distributionAnd according to the normal distributionObtaining a random variable i;
the key generator 12 is configured to generate a private key S and a public key a using at least one generic hash function;
the encrypter/decryptor 13 is configured to output encrypted ciphertext according to the public key a and the ciphertext to be encrypted, or output decrypted ciphertext according to the private key S and the ciphertext to be decrypted.
In the encryption and decryption device, the key generator uses the general hash function to replace a very large random matrix in the prior art so as to generate the private key S and the public key A, so that the storage amount of the generated public key A becomes smaller, the storage and calculation complexity can be greatly reduced, the application bottleneck of a post quantum cryptography mode is solved, and the practicability of the post quantum cryptography mode is enhanced.
In addition, preferably, in a specific embodiment of the present application, the key generator may include: an S matrix generator, a general hash function generator, an E matrix generator and a key device;
the S matrix generator is used for uniformly distributing the S matrix generator from the integer ring Z q Taking an n multiplied by l matrix, generating an S matrix, and taking the S matrix as a private key S;
the general hash function generator is used for generating a general hash function and taking the general hash function asA matrix;
the E matrix generator is used for distributing according to normal stateFrom an integer ring Z q Taking a matrix of l multiplied by m to generate an E matrix;
the key device is used for performing key generation according to an S matrix,And calculating the matrix and the E matrix to obtain a public key A.
In addition, preferably, in another embodiment of the present application, the key generator may include: a general hash function generator,A matrix generator, an E-matrix generator, and a key locker;
the general hash function generator is used for generating a general hash function, taking the general hash function as an S matrix and taking the S matrix as a private key S;
the saidMatrix generator for generating a matrix of integers from an integer ring Z in a uniformly distributed manner q Taking up an n×m matrix to generateA matrix;
the E matrix generator is used for distributing according to normal stateFrom an integer ring Z q Taking a matrix of l multiplied by m to generate an E matrix;
the key device is used for performing key generation according to an S matrix,And calculating the matrix and the E matrix to obtain a public key A.
In addition, preferably, in a specific embodiment of the present application, the key generator may include: an S matrix generator,A matrix generator, a generic hash function generator, and a keyer;
the S matrix generator is used for uniformly distributing the S matrix generator from the integer ring Z q Taking an n multiplied by l matrix, generating an S matrix, and taking the S matrix as a private key S;
the saidMatrix generator for generating a matrix of integers from an integer ring Z in a uniformly distributed manner q Taking up one nMatrix of x m, generateA matrix;
the general hash function generator is used for generating a general hash function and taking the general hash function as an E matrix;
the key device is used for performing key generation according to an S matrix,And calculating the matrix and the E matrix to obtain a public key A.
In addition, preferably, in a specific embodiment of the present application, the key generator may include: an S matrix generator, a first general hash function generator, a second general hash function generator and a key locker;
the S matrix generator is used for uniformly distributing the S matrix generator from the integer ring Z q Taking an n multiplied by l matrix, generating an S matrix, and taking the S matrix as a private key S;
the first general hash function generator is used for generating a first general hash function and taking the first general hash function as a first general hash functionA matrix;
the second general hash function generator is used for generating a second general hash function, and the second general hash function is used as an E matrix;
the key device is used for performing key generation according to an S matrix,And calculating the matrix and the E matrix to obtain a public key A.
In addition, preferably, in a specific embodiment of the present application, the key generator may include: a third generic hash function generator, a first generic hash function generator, a second generic hash function generator, and a keyer;
the third general hash function generator is used for generating a third general hash function, taking the third general hash function as an S matrix and taking the S matrix as a private key S;
the first general hash function generator is used for generating a first general hash function and taking the first general hash function as a first general hash functionA matrix;
the second general hash function generator is used for generating a second general hash function, and the second general hash function is used as an E matrix;
the key device is used for performing key generation according to an S matrix,And calculating the matrix and the E matrix to obtain a public key A.
In addition, in the technical scheme of the application, an encryption and decryption method based on a general hash function is also provided.
FIG. 2 is a flowchart of an encryption and decryption method based on a general hash function in an embodiment of the present application.
As shown in fig. 2, the encryption and decryption method based on the general hash function in the embodiment of the application includes the following steps:
step 21, generating a normal distribution using a discretized normal distribution generatorAnd according to the normal distributionObtaining a random variable i.
In the technical solution of the present application, the above step 21 may be implemented using various implementation methods. The following describes in detail the technical solution of the present application by taking one implementation manner as an example.
For example, in a preferred embodiment of the present application, the step 21 may include the following steps:
step 211, generating a mean value of 0 and standard deviation of 0 by using a discretized normal distribution generatorAnd discretized normal distribution with q as parameter +.>
Where q is a prime number and is located in the interval [10,20 ]. P.m.logn. Wherein n is a security parameter, m is the length of ciphertext, and p is the value range of the original text.
In addition, in the case of the optical fiber,
step 212, from normal distributionThe random variable x is taken out.
In step 213, the modulo operation is performed on the random variable x and 1 to obtain a remainder r.
For example, preferably, in this step, an operation may be performed: r=x mod 1.
For example, 0.3=1.3 mod 1; or, 0.1= -0.9mod 1, etc.
In step 214, the product of the remainder r and q is rounded to obtain a random variable i.
For example, preferably, in this step, an operation may be performed: i= [ r·q ]. Wherein [ (i) represents rounding operation ].
Through the steps 211 to 214, a normal distribution can be generatedAnd from the normal distribution +.>The random variable i is fetched.
At step 22, a calculation is performed in the key generator using at least one generic hash function, generating a private key S and a public key a.
In the prior art, it was generally necessary to use 3 large (e.g., 10kbit x 10 kbit) random matrices to generate the private key S and the public key a. In the technical solution of the present application, instead of using all large random matrices to generate the private key S and the public key a, at least one general hash function is used to replace the large random matrices in the prior art to generate the private key S and the public key a, and even all general hash functions (e.g., 3 general hash functions are used to replace the large 3 random matrices) may be used to generate the private key S and the public key a, so that the storage amount of the generated public key a becomes smaller, thereby significantly reducing the storage and computation complexity in the post quantum cryptography method.
Step 23, inputting the public key A and the original text to be encrypted into an encryptor, and outputting the encrypted ciphertext; or, the private key S and the ciphertext to be decrypted are input into a decryptor, and the decrypted original text is output.
In the technical scheme of the application, after the private key S and the public key A are obtained, the public key A and the original text to be encrypted can be input into an encryptor, and the original text to be encrypted is encrypted by using the public key A in the encryptor, so that the encrypted ciphertext is output. Alternatively, the private key S and the ciphertext to be decrypted may be input to the decryptor, where the ciphertext to be decrypted is decrypted using the private key S, so as to output the decrypted ciphertext.
In addition, in the technical solution of the present application, the above step 22 may be implemented using a variety of specific implementation methods. The following describes the technical solution of the present application in detail by taking several specific implementation manners thereof as examples.
Detailed description of the preferred embodiments A general purpose hash function is used as the hash functionThe matrix generates a private key S and a public key a.
For example, in a preferred embodiment of the present application, the step 22 may include the following steps:
step 221a, to uniformly divideThe manner of the cloth being from an integer ring Z q And (5) taking an n multiplied by l matrix to obtain an S matrix.
Where n is the security parameter and l is the length of the bit vector to be encrypted.
Step 221b, generating a general hash function, and using the general hash function as the general hash functionA matrix.
Preferably, in a specific embodiment of the present application, the generic hash function may be a toplitz (Toeplitz) hash matrix.
Step 221c, according to normal distributionFrom an integer ring Z q And taking a matrix of l multiplied by m to obtain an E matrix.
Where m is the length of the ciphertext. For example, m= (12+6c) n logn.
Step 221d, according to S matrix,And calculating the matrix and the matrix E to obtain an intermediate matrix B.
For example, in a preferred embodiment of the present application, the intermediate matrix B may be calculated according to the following formula:
wherein the symbol "t" mentioned above represents the transpose of the matrix.
Step 221e, according to intermediate matrix B andand calculating a matrix to obtain a public key A, and taking the S matrix as a private key S.
For example, in a preferred embodiment of the present application, the public key A may be calculated according to the following formula:
it will thus be appreciated that by the steps 221 a-221 e described above, a common hash function may be used to generate the private key S and the public key A.
In a second embodiment, a general hash function is used as an S matrix to generate the private key S and the public key a.
For example, in a preferred embodiment of the present application, the step 22 may include the following steps:
in step 222a, a generic hash function is generated, using the generic hash function as an S-matrix.
Step 222b, from the integer ring Z in a uniformly distributed manner q Taking up an n×m matrix to obtainA matrix.
Where n is a security parameter and m is the length of the ciphertext. For example, m= (12+6c) n logn.
Step 222c, according to normal distributionFrom an integer ring Z q And taking a matrix of l multiplied by m to obtain an E matrix.
Where l is the length of the bit vector to be encrypted.
Step 222d, according to S matrix,And calculating the matrix and the matrix E to obtain an intermediate matrix B.
For example, in a preferred embodiment of the present application, the intermediate matrix B may be calculated according to the following formula:
step 222e, according to intermediate matrix B andand calculating a matrix to obtain a public key A, and taking the S matrix as a private key.
For example, in a preferred embodiment of the present application, the public key A may be calculated according to the following formula:
it will thus be appreciated that by the steps 222 a-222 e described above, a generic hash function may be used to generate the private key S and the public key A.
In a third embodiment, a general hash function is used as the E matrix to generate the private key S and the public key a.
For example, in a preferred embodiment of the present application, the step 22 may include the following steps:
step 223a, from the integer ring Z in a uniformly distributed manner q And (5) taking an n multiplied by l matrix to obtain an S matrix.
Where n is the security parameter and l is the length of the bit vector to be encrypted.
Step 223b, from the integer ring Z in a uniformly distributed manner q Taking up an n×m matrix to obtainA matrix.
Where m is the length of the ciphertext. For example, m= (12+6c) n logn.
In step 223c, a generic hash function is generated, using the generic hash function as an E-matrix.
Step 223d, according to S matrix,And calculating the matrix and the matrix E to obtain an intermediate matrix B.
For example, in a preferred embodiment of the present application, the intermediate matrix B may be calculated according to the following formula:
step 223e, according to intermediate matrix B andand calculating a matrix to obtain a public key A, and taking the S matrix as a private key.
For example, in a preferred embodiment of the present application, the public key A may be calculated according to the following formula:
it will thus be appreciated that by the steps 223 a-223 e described above, a common hash function may be used to generate the private key S and the public key A.
In a fourth embodiment, two general hash functions are used to generate the private key S and the public key a.
For example, in a preferred embodiment of the present application, the step 22 may include the following steps:
step 224a, from the integer ring Z in a uniformly distributed manner q And (5) taking an n multiplied by l matrix to obtain an S matrix.
Where n is the security parameter and l is the length of the bit vector to be encrypted.
Step 224b, generating a first generic hash function, using the first generic hash function asA matrix.
Preferably, in a specific embodiment of the present application, the generic hash function may be a toplitz (Toeplitz) hash matrix.
In step 224c, a second generic hash function is generated, using the second generic hash function as an E-matrix.
Step 224d, according to the S matrix,And calculating the matrix and the matrix E to obtain an intermediate matrix B.
For example, in a preferred embodiment of the present application, the intermediate matrix B may be calculated according to the following formula:
step 224e, based on intermediate matrix B andand calculating a matrix to obtain a public key A, and taking the S matrix as a private key.
For example, in a preferred embodiment of the present application, the public key A may be calculated according to the following formula:
it will thus be appreciated that by the steps 224 a-224 e described above, two general hash functions may be used to generate the private key S and the public key a.
In the fourth embodiment, two general hash functions are used to replace the prior artMatrix and E matrix to generate private key S and public key a. In the solution of the application, it is also possible to use two general hash functions to replace the S matrix and the E matrix in the prior art, or to replace +.>The matrices and S matrices to generate the private key S and the public key A, the implementation can be referred to in the first embodimentFourth, so that they will not be described in detail herein.
In a fifth embodiment, three general hash functions are used to generate the private key S and the public key a.
For example, in a preferred embodiment of the present application, the step 22 may include the following steps:
in step 225a, a third generic hash function is generated, using the third generic hash function as an S-matrix.
Preferably, in a specific embodiment of the present application, the generic hash function may be a toplitz (Toeplitz) hash matrix.
Step 225b, generating a first general purpose hash function, using the first general purpose hash function asA matrix.
In step 225c, a second generic hash function is generated, using the second generic hash function as an E-matrix.
Step 225d, according to S matrix,And calculating the matrix and the matrix E to obtain an intermediate matrix B.
For example, in a preferred embodiment of the present application, the intermediate matrix B may be calculated according to the following formula:
step 225e, based on intermediate matrix B andand calculating a matrix to obtain a public key A, and taking the S matrix as a private key.
For example, in a preferred embodiment of the present application, the public key A may be calculated according to the following formula:
it will thus be appreciated that through steps 225 a-225 e described above, three general purpose hash functions may be used to generate private key S and public key A.
In addition, in the technical solution of the present application, the above step 23 may be implemented using a variety of specific implementation methods. The following describes the technical scheme of the present application in detail by taking two specific implementation manners as examples.
Specific embodiment six:
for example, in a preferred embodiment of the present application, the inputting the public key a and the original text to be encrypted into the encryptor, and outputting the encrypted ciphertext may include the following steps:
in step 231a, a binary m-dimensional vector x is generated in a uniformly distributed manner.
In the technical scheme of the application, x is a bold font and is used for representing the vector.
For example, the m-dimensional vector x may be expressed as: x++0, 1} m 。
In step 231b, the encryption device encrypts the original text v to be encrypted using the public key a and the m-dimensional vector x, thereby outputting the encrypted ciphertext c.
For example, in a preferred embodiment of the present application, the original text v to be encrypted may be encrypted by the following formula to obtain the encrypted ciphertext c:
wherein 0 is an n-dimensional zero vector. The c is shaped likeIs a vector of (a).
The encrypted ciphertext c may be obtained through steps 231a and 231b described above.
Specific embodiment seven:
for example, in a preferred embodiment of the present application, the inputting the private key S and the ciphertext to be decrypted into the decryptor, and outputting the decrypted ciphertext may include the following steps:
in step 232a, the decryptor obtains the l-dimensional vector w according to the private key S and the ciphertext c to be decrypted.
For example, in one embodiment of the present application, the vector w may be obtained by the following formula:
wherein I is an identity matrix of l×l.
In step 232b, the l-dimensional vector w is decoded, and the decoded vector w is used as the decrypted original text.
For example, in a preferred embodiment of the present application, the decoding of the l-dimensional vector w includes:
the following is performed for each bit of the l-dimensional vector w: .
Calculating the value of the current bit;
decoding a current bit to 0 when the value of the bit is closer to 0 (i.e., the distance between the value of the current bit and 0 is less than the distance between the value of the current bit and q/2); otherwise, the bit is decoded to 1.
Thus, it can be seen that the decrypted text can be obtained through the steps 232a and 232b described above.
In summary, in the technical solution of the present application, a general hash function (for example, a Toeplitz hash matrix) is used to replace the random matrix, so as to calculate the private key S and the public key a, so that the storage amount of the generated public key a becomes smaller, thereby greatly reducing the complexity of storage and calculation, solving the application bottleneck of the post quantum cryptography, and enhancing the practicability of the post quantum cryptography algorithm.
The foregoing description of the preferred embodiments of the application is not intended to be limiting, but rather to enable any modification, equivalent replacement, improvement or the like to be made within the spirit and principles of the application.
Claims (21)
1. An encryption and decryption apparatus, comprising: a discretized normal distribution generator, a key generator and an encryption/decryption device;
the discretized normal distribution generator is used for generating a normal distributionAnd according to said normal distribution +.>Obtaining a random variable;
the key generator is used for distributing according to the normal stateAnd generating a private key S and a public key a using at least one generic hash function, comprising: according to S matrix->The matrix and the matrix E are calculated to obtain an intermediate matrix B; according to intermediate matrices B and->The matrix is calculated to obtain a public key A, and the S matrix is used as a private key S; wherein (1)>The matrix is a first general hash function, or +.>The matrix being distributed in a uniform manner from an integer ring Z q An n x m matrix obtained above; the S matrix is distributed uniformly from the integer ring Z q The n multiplied by l matrix obtained in the previous step, or the S matrix is a third general hash function; the E matrix is according to normal distribution +.>From an integer ring Z q The matrix of l multiplied by m obtained above, or the E matrix is a second general hash function; wherein n is a security parameter, m is the length of ciphertext, and l is the length of bit vector to be encrypted;
the encrypting/decrypting device is used for outputting encrypted ciphertext according to the public key A and the ciphertext to be encrypted or outputting decrypted ciphertext according to the private key S and the ciphertext to be decrypted.
2. The apparatus of claim 1, wherein the key generator comprises: an S matrix generator, a general hash function generator, an E matrix generator and a key device;
the S matrix generator is used for uniformly distributing the S matrix generator from the integer ring Z q Taking an n multiplied by l matrix, generating an S matrix, and taking the S matrix as a private key S;
the general hash function generator is used for generating a first general hash function and taking the first general hash function asA matrix;
the E matrix generator is used for distributing according to normal stateFrom an integer ring Z q Taking a matrix of l multiplied by m to generate an E matrix;
the key device is used for performing key generation according to an S matrix,And calculating the matrix and the E matrix to obtain a public key A.
3. The apparatus of claim 1, wherein the key generator comprises: a general hash function generator,A matrix generator, an E-matrix generator, and a key locker;
the general hash function generator is used for generating a third general hash function, taking the third general hash function as an S matrix and taking the S matrix as a private key S;
the saidMatrix generator for generating a matrix of integers from an integer ring Z in a uniformly distributed manner q Taking up an n m matrix to generate +.>A matrix;
the E matrix generator is used for distributing according to normal stateFrom an integer ring Z q Taking a matrix of l multiplied by m to generate an E matrix;
the key device is used for performing key generation according to an S matrix,And calculating the matrix and the E matrix to obtain a public key A.
4. The apparatus of claim 1, wherein the key generator comprises: an S matrix generator,A matrix generator, a generic hash function generator, and a keyer;
the S matrix generator is used for uniformly distributing the S matrix generator from the integer ring Z q Taking an n multiplied by l matrix, generating an S matrix, and taking the S matrix as a private key S;
the A matrix generator is used for uniformly distributing the whole number ring Z q Taking an n multiplied by m matrix to generate an A matrix;
the general hash function generator is used for generating a second general purposeA hash function, using the second general hash function as an E matrix to replace the normal distributionFrom an integer ring Z q Taking a matrix of l multiplied by m to obtain an E matrix;
the key device is used for performing key generation according to an S matrix,And calculating the matrix and the E matrix to obtain a public key A.
5. The apparatus of claim 1, wherein the key generator comprises: an S matrix generator, a first general hash function generator, a second general hash function generator and a key locker;
the S matrix generator is used for uniformly distributing the S matrix generator from the integer ring Z q Taking an n multiplied by l matrix, generating an S matrix, and taking the S matrix as a private key S;
the first general hash function generator is used for generating a first general hash function and taking the first general hash function as a first general hash functionA matrix;
the second general hash function generator is used for generating a second general hash function, and taking the second general hash function as an E matrix to replace the E matrix according to normal distributionFrom an integer ring Z q Taking a matrix of l multiplied by m to obtain an E matrix;
the key device is used for performing key generation according to an S matrix,And calculating the matrix and the E matrix to obtain a public key A.
6. The apparatus of claim 1, wherein the key generator comprises: a third generic hash function generator, a first generic hash function generator, a second generic hash function generator, and a keyer;
the third general hash function generator is used for generating a third general hash function, taking the third general hash function as an S matrix and taking the S matrix as a private key S;
the first general hash function generator is used for generating a first general hash function and taking the first general hash function as a first general hash functionA matrix;
the second general hash function generator is used for generating a second general hash function, and taking the second general hash function as an E matrix to replace the E matrix according to normal distributionFrom an integer ring Z q Taking a matrix of l multiplied by m to obtain an E matrix;
the key device is used for performing key generation according to an S matrix,And calculating the matrix and the E matrix to obtain a public key A.
7. An encryption and decryption method based on a general hash function is characterized in that the method comprises the following steps:
generating a normal distribution using a discretized normal distribution generatorAnd according to said normal distribution +.>Obtaining a random variable;
according to the normal distribution in the key generatorAnd performing computation using at least one general hash function to generate a private key S and a public key a, comprising: according to S matrix->The matrix and the matrix E are calculated to obtain an intermediate matrix B; according to intermediate matrices B and->The matrix is calculated to obtain a public key A, and the S matrix is used as a private key S; wherein (1)>The matrix is a first general hash function, or +.>The matrix being distributed in a uniform manner from an integer ring Z q An n x m matrix obtained above; the S matrix is distributed uniformly from the integer ring Z q The n multiplied by l matrix obtained in the previous step, or the S matrix is a third general hash function; e matrix is distributed according to normal stateFrom an integer ring Z q The matrix of l multiplied by m obtained above, or the E matrix is a second general hash function; wherein n is a security parameter, m is the length of ciphertext, and l is the length of bit vector to be encrypted;
inputting the public key A and the original text to be encrypted into an encryptor, and outputting the encrypted ciphertext; or, the private key S and the ciphertext to be decrypted are input into a decryptor, and the decrypted original text is output.
8. The method of claim 7, wherein the using a discretized normal distribution generator generates a normal distributionAnd according to the normal distribution +.>Obtaining random variables, including:
generating a mean value of 0 and standard deviation using a discretized normal distribution generatorAnd discretized normal distribution with q as parameter +.>
From normal distributionTaking out a random variable x;
performing modulo operation on the random variable x and 1 to obtain a remainder r;
and rounding the product of the remainder r and q to obtain a random variable.
9. The method of claim 7, wherein the step of distributing in a key generator is based on the normal distributionAnd performing computation by using at least one general hash function to generate a private key S and a public key A, and further comprising the following steps performed before the intermediate matrix B is obtained by computation according to the S matrix, the A matrix and the E matrix:
from the integer ring Z in a uniformly distributed manner q Taking an n multiplied by l matrix to obtain an S matrix;
generating a first general hash function, using the general hash function asA matrix;
according to normal distributionFrom an integer ring Z q A matrix of l x m is taken up,and E matrix is obtained.
10. The method of claim 7, wherein the step of distributing in a key generator is based on the normal distributionAnd using at least one general hash function to perform computation to generate a private key S and a public key A, further comprising the steps ofThe matrix and the E matrix are calculated to obtain an intermediate matrix B, and the following steps are executed:
generating a third general hash function, and taking the general hash function as an S matrix;
from the integer ring Z in a uniformly distributed manner q Taking up an n×m matrix to obtainA matrix;
according to normal distributionFrom an integer ring Z q And taking a matrix of l multiplied by m to obtain an E matrix.
11. The method of claim 7, wherein the step of distributing in a key generator is based on the normal distributionAnd using at least one general hash function to perform computation to generate a private key S and a public key A, further comprising the steps ofThe matrix and the E matrix are calculated to obtain an intermediate matrix B, and the following steps are executed:
from the integer ring Z in a uniformly distributed manner q Taking an n multiplied by l matrix to obtain an S matrix;
from the integer ring Z in a uniformly distributed manner q Taking up an n×m matrix to obtainA matrix;
generating a second general hash function as an E matrix to replace the normal distributionFrom an integer ring Z q And a step of taking an l×m matrix to obtain an E matrix.
12. The method of claim 7, wherein the step of distributing in a key generator is based on the normal distributionAnd using at least one general hash function to perform computation to generate a private key S and a public key A, further comprising the steps ofThe matrix and the E matrix are calculated to obtain an intermediate matrix B, and the following steps are executed:
from the integer ring Z in a uniformly distributed manner q Taking an n multiplied by l matrix to obtain an S matrix;
generating a first general hash function, using the first general hash function asA matrix;
generating a second general hash function as an E matrix to replace the normal distributionFrom an integer ring Z q And a step of taking an l×m matrix to obtain an E matrix.
13. The method of claim 7, wherein the step of distributing in a key generator is based on the normal distributionAnd using at least one general hash function to perform computation to generate a private key S and a public key A, further comprising the steps ofThe matrix and the E matrix are calculated to obtain an intermediate matrix B, and the following steps are executed:
generating a third general hash function, and taking the third general hash function as an S matrix;
generating a first general hash function, using the first general hash function asA matrix;
generating a second general hash function as an E matrix to replace the normal distributionFrom an integer ring Z q And a step of taking an l×m matrix to obtain an E matrix.
14. The method according to any of the claims 9 to 13, characterized in that the intermediate matrix B is calculated according to the following formula:
wherein the symbol "t" represents a transpose of the matrix.
15. The method of claim 14, wherein the public key a is calculated according to the formula:
16. the method according to any one of claims 9 to 13, characterized in that:
the generic hash function is a toprilz hash matrix.
17. The method of claim 8, wherein inputting the public key a and the original text to be encrypted into the encryptor, and outputting the encrypted ciphertext comprises:
generating a binary m-dimensional vector x in a uniformly distributed manner;
the encryption device encrypts the original text v to be encrypted by using the public key A and the m-dimensional vector x, thereby outputting the encrypted ciphertext c.
18. The method of claim 17, wherein the desired encrypted ciphertext v is encrypted by:
wherein 0 is an n-dimensional zero vector; the c is shaped likeIs a vector of (a).
19. The method of claim 8, wherein inputting the public key a and the original text to be encrypted into the encryptor, and outputting the encrypted ciphertext comprises:
obtaining an l-dimensional vector w in a decryptor according to a private key S and a ciphertext c to be decrypted;
and decoding the l-dimensional vector w, and taking the decoded vector w as the decrypted original text.
20. The method of claim 19, wherein the vector w is obtained by the formula:
wherein I is an identity matrix of l×l.
21. The method of claim 19, wherein decoding the l-dimensional vector w comprises:
the following is performed for each bit of the l-dimensional vector w:
calculating the value of the current bit;
decoding a current bit to 0 when the distance between the value of the bit and 0 is less than the distance between the value of the bit and q/2; otherwise, the bit is decoded to 1.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810741522.5A CN108777614B (en) | 2018-07-05 | 2018-07-05 | Encryption and decryption device and encryption and decryption method based on general hash function |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810741522.5A CN108777614B (en) | 2018-07-05 | 2018-07-05 | Encryption and decryption device and encryption and decryption method based on general hash function |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108777614A CN108777614A (en) | 2018-11-09 |
CN108777614B true CN108777614B (en) | 2023-08-18 |
Family
ID=64031156
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810741522.5A Active CN108777614B (en) | 2018-07-05 | 2018-07-05 | Encryption and decryption device and encryption and decryption method based on general hash function |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108777614B (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109379178B (en) * | 2018-11-15 | 2022-01-11 | 成都卫士通信息产业股份有限公司 | Encryption and decryption device construction method, system, medium and equipment |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011002810A (en) * | 2009-05-19 | 2011-01-06 | Hitachi Ltd | Encryption device, program, encryption system, and encryption method |
CN102393890A (en) * | 2011-10-09 | 2012-03-28 | 广州大学 | Crypto chip system for resisting physical invasion and side-channel attack and implementation method thereof |
WO2012077818A1 (en) * | 2010-12-10 | 2012-06-14 | 国立大学法人豊橋技術科学大学 | Method for determining conversion matrix for hash function, hash-type approximation nearest neighbour search method using said hash function, and device and computer program therefor |
CN104350701A (en) * | 2012-05-31 | 2015-02-11 | 诺基亚公司 | Secured wireless communications |
CN104506313A (en) * | 2015-01-19 | 2015-04-08 | 中国人民解放军国防科学技术大学 | Quantum secret key distribution privacy amplification method supporting large-scale dynamic changes |
CN105071929A (en) * | 2015-07-15 | 2015-11-18 | 清华大学 | Postprocessing method for quantum key distribution |
CN106452788A (en) * | 2016-10-17 | 2017-02-22 | 清华大学 | Quantum information authentication apparatus and method |
CN106452791A (en) * | 2016-11-11 | 2017-02-22 | 浙江神州量子网络科技有限公司 | Quantum digital signature method for untrusted center |
CN106533673A (en) * | 2016-12-08 | 2017-03-22 | 浙江神州量子网络科技有限公司 | Privacy amplification method suitable for multi-party quantum communication |
CN107645376A (en) * | 2016-07-22 | 2018-01-30 | 北京大学 | A kind of long code private key amplification method being used in continuous variable quantum key distribution |
CN108139888A (en) * | 2015-07-29 | 2018-06-08 | 洛斯阿拉莫斯国家安全有限责任公司 | Quantum random number generators |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101351012B1 (en) * | 2009-12-18 | 2014-01-10 | 한국전자통신연구원 | Method and apparatus for authentication user in multiparty quantum communications |
EP2891267B1 (en) * | 2012-08-30 | 2022-04-06 | Triad National Security, LLC | Multi-factor authentication using quantum communication |
JP6165638B2 (en) * | 2014-01-08 | 2017-07-19 | 株式会社東芝 | Quantum communication device, quantum communication method and program |
-
2018
- 2018-07-05 CN CN201810741522.5A patent/CN108777614B/en active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011002810A (en) * | 2009-05-19 | 2011-01-06 | Hitachi Ltd | Encryption device, program, encryption system, and encryption method |
WO2012077818A1 (en) * | 2010-12-10 | 2012-06-14 | 国立大学法人豊橋技術科学大学 | Method for determining conversion matrix for hash function, hash-type approximation nearest neighbour search method using said hash function, and device and computer program therefor |
CN102393890A (en) * | 2011-10-09 | 2012-03-28 | 广州大学 | Crypto chip system for resisting physical invasion and side-channel attack and implementation method thereof |
CN104350701A (en) * | 2012-05-31 | 2015-02-11 | 诺基亚公司 | Secured wireless communications |
CN104506313A (en) * | 2015-01-19 | 2015-04-08 | 中国人民解放军国防科学技术大学 | Quantum secret key distribution privacy amplification method supporting large-scale dynamic changes |
CN105071929A (en) * | 2015-07-15 | 2015-11-18 | 清华大学 | Postprocessing method for quantum key distribution |
CN108139888A (en) * | 2015-07-29 | 2018-06-08 | 洛斯阿拉莫斯国家安全有限责任公司 | Quantum random number generators |
CN107645376A (en) * | 2016-07-22 | 2018-01-30 | 北京大学 | A kind of long code private key amplification method being used in continuous variable quantum key distribution |
CN106452788A (en) * | 2016-10-17 | 2017-02-22 | 清华大学 | Quantum information authentication apparatus and method |
CN106452791A (en) * | 2016-11-11 | 2017-02-22 | 浙江神州量子网络科技有限公司 | Quantum digital signature method for untrusted center |
CN106533673A (en) * | 2016-12-08 | 2017-03-22 | 浙江神州量子网络科技有限公司 | Privacy amplification method suitable for multi-party quantum communication |
Non-Patent Citations (1)
Title |
---|
量子密钥分配后处理概述;李默等;《密码学报》;20150415(第02期);第118-120页 * |
Also Published As
Publication number | Publication date |
---|---|
CN108777614A (en) | 2018-11-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8300828B2 (en) | System and method for a derivation function for key per page | |
WO2001030020A1 (en) | Variable length key encrypting system | |
US5696826A (en) | Method and apparatus for encrypting and decrypting information using a digital chaos signal | |
CN105025024B (en) | One kind is based on no certificate conditions proxy re-encryption System and method for | |
US20080165965A1 (en) | Method of two strings private key (symmetric) encryption and decryption algorithm | |
CN113711564A (en) | Computer-implemented method and system for encrypting data | |
CN109474425A (en) | A method of length derivative key is arbitrarily designated based on the acquisition of multiple shared keys | |
Mewada et al. | Classification of efficient symmetric key cryptography algorithms | |
CN114826590B (en) | Packet mode encryption method, packet mode decryption method, packet mode encryption device, packet mode decryption device and packet mode decryption equipment | |
CN115643007A (en) | Key negotiation updating method | |
CN109088721B (en) | Entrustable uncovering and encrypting method | |
CN108777614B (en) | Encryption and decryption device and encryption and decryption method based on general hash function | |
CN117114959B (en) | Image encryption method based on key feedback mechanism of multi-parameter one-dimensional chaotic system | |
CN108494554B (en) | Data symmetric encryption method based on double plaintexts | |
Zimmermann | Cryptography for the Internet | |
Kumar et al. | Hybridization of Cryptography for Security of Cloud Data | |
CN112668042B (en) | File encryption method | |
CN112149166B (en) | Unconventional password protection method and intelligent bank machine | |
Kaur et al. | Multiphase and multiple encryption | |
CN110061832B (en) | Method for realizing symmetric cipher algorithm using Chinese character as cipher | |
Popli | DNA Cryptography: A Novel Approach for Data Security Using Genetic Algorithm | |
CN112422278A (en) | Byte-oriented random multi-table replacement encryption and decryption method | |
CN114430549A (en) | White box encryption and decryption method and device suitable for wireless communication | |
Haithem et al. | Intelligent TRIPLE DES with N Round Based on Genetic Algorithm | |
CN114244552B (en) | Data encryption transmission method and device based on block chain |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |