Data information security protection method and system
By generating the second public and private keys in the asymmetric encryption algorithm and hiding information, the problem of reducing security of asymmetric encryption algorithms under the threat of quantum computing in the prior art is solved, and higher data information security is achieved and pass security.
Patent Information
- Application Number
- CN202411301157.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-09-18
- Publication Date
- 2024-12-27
- Estimated Expiration
- Not applicable · inactive patent
AI Technical Summary
When existing asymmetric encryption algorithms face the threat of quantum computing, their security is reduced and there is a risk of brute force cracking, making it difficult to effectively protect the security of data and information.
Based on the public and private keys generated by the asymmetric encryption algorithm, random mathematical problems are calculated separately, the second public and second private keys are generated, and the mathematical function is converted into hash hash values through the hash algorithm. Save it in the basic database and use information hiding technology to disguise and hide it to ensure the security of the encryption and decryption process.
It improves the security of data information, prevents espionage from obtaining private keys through brute force calculations, enhances the security of asymmetric encryption algorithms, reduces human intervention, and ensures the security of data information transmission.
Smart Images

Figure CN119203230A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to cryptography technology and data information security technology, and in particular to a data information security protection method and system. Background Art
[0002] Data and information security plays an important role in the new generation of information technology, and plays a vital role in the infrastructure security, privacy protection, business competitiveness and national security of the new generation of information technology. However, data and information security also has many challenges in the new generation of information technology, and needs to face the challenges of big data, artificial intelligence, the Internet of Things, the increase in network attacks and brute force cracking of quantum computing in the new generation of information technology.
[0003] There are many ways to improve data information security, the most important of which is to strengthen the security of asymmetric cryptographic algorithms, because the transmission of data information in the network is mainly protected by asymmetric cryptographic algorithms; therefore, increasing the security of asymmetric cryptographic algorithms will inevitably improve data information security.
[0004] Asymmetric encryption algorithms generate two keys: a public key and a private key. Each user's public key and private key form a pair of keys. If data is encrypted with a public key, it can only be decrypted with the corresponding private key. Because two different keys are used for encryption and decryption, the algorithm is called an asymmetric encryption algorithm.
[0005] Existing asymmetric encryption algorithms include: RSA, ECC (elliptic curve cryptography), Elgamal and backpack algorithm, among which the most commonly used encryption algorithms are RSA, ECC and Elgamal. For example, RSA and ECC asymmetric encryption algorithms are used in blockchain; asymmetric encryption algorithms play an important role in the security of network communications.
[0006] Therefore, it is relatively safe to encrypt data through asymmetric encryption algorithms. However, with the continuous advancement of science and technology, especially the emergence of quantum computers, asymmetric encryption algorithms are facing the threat of quantum computing, and the security of asymmetric encryption algorithms is constantly decreasing.
[0007] At the same time, with the development of new generation information technology, many methods for adding asymmetric cryptographic algorithms have emerged, which have improved the security of asymmetric cryptographic algorithms to a certain extent; for example: a method for enhancing the security of an asymmetric encryption algorithm with application number 2023112852552, on the basis of the original asymmetric encryption algorithm, keeps the private key generated by the original asymmetric encryption algorithm confidential, and uses the second private key generated by a mathematical function for decryption; the specific process is: the public key and private key generated by the asymmetric encryption algorithm are regarded as the first public key and the first private key, and the first public key and the first private key are combined by the mathematical function ω=g(μ, v); the mathematical function ω=g(μ, v) is hashed, and the hash value is regarded as the second private key, and the second private key is only saved by the user corresponding to the first private key to prevent information leakage during the user input of the first private key; the mathematical function ω=g(μ, v) for hashing calculation is used to generate a second private key address, and the generated second private key address is hidden in the basic database through information hiding technology; when encrypting, the first public key generated by the asymmetric encryption algorithm is used to generate a second private key address. The plaintext is encrypted with the key μ, and the encrypted ciphertext generates a ciphertext address, which is not disclosed to anyone, and the generated ciphertext address is hidden in the basic database through information hiding technology; when decrypting, the user enters the second private key, the blockchain will automatically lock the second private key address, and obtain the user's first private key v through the second private key address, the first private key v locks the ciphertext address generated by the encryption process of the asymmetric encryption algorithm through the user's first public key μ, decrypts the ciphertext information in the ciphertext address, and thus obtains the plaintext information; but this method still has significant defects; if the thief obtains the user's first public key information, the corresponding first private key information of the user can be obtained through quantum computing brute force cracking, and then the user's first public key and first private key are calculated by obtaining all the mathematical functions of the computer system, and the hash values of each mathematical function are calculated, and the information of the sender user is obtained by continuously trying to input the hash values of different mathematical functions, so as to achieve the purpose of stealing secrets; therefore, it is still necessary to improve the present invention so that the data information protected by the asymmetric encryption algorithm is more secure. Summary of the invention
[0008] The purpose of the present invention is to overcome the above problems existing in the prior art and to greatly improve the technical effect thereof on the basis of the original technology; for this purpose, the present invention provides a data information security protection method, the method comprising:
[0009] First, a basic database is established, wherein the basic database is used to hide important encrypted information;
[0010] Generate a pair of keys of the user through an asymmetric encryption algorithm, wherein the keys include a public key and a private key, wherein the public key is regarded as the first public key of the user, and the private key is regarded as the first private key of the user;
[0011] A one-step random math problem calculation is performed on the first public key and the first private key of the user respectively; the random math problem is a randomly selected math problem, one math problem includes the first public key of the user, and the other math problem includes the first private key of the user; the one-step random math problem calculation on the first public key and the first private key of the user respectively includes: both math problems are random math functions generated by a computer system, which are: ω=g(μ) and λ=f(v), wherein μ in the math function ω=g(μ) is regarded as the first public key obtained by an asymmetric encryption algorithm, v in the math function λ=f(v) is regarded as the first private key obtained by an asymmetric encryption algorithm, and ω and λ are respectively the results obtained by substituting the first public key and the first private key into the two math functions;
[0012] Obtain hash values of two mathematical functions respectively, and use the obtained hash values as the user's second public key and second private key respectively; save the mathematical functions ω=g(μ) and λ=f(v) for hash calculation respectively into the basic database, generate the second public key address and the second private key address, make the second public key public in the network, and hide and disguise the second public key address and the second private key address by using information hiding technology;
[0013] During encryption, the sending user queries and obtains the second public key of the receiving user, and inputs the data information to be encrypted and the second public key of the receiving user into the computer system. The computer system will automatically lock the second public key address of the user, obtain the first public key of the receiving user through the second public key address, and encrypt the data information to be encrypted by the sending user through the corresponding asymmetric encryption algorithm through the first public key to obtain the ciphertext information; hide the ciphertext information in the basic database through information hiding technology; obtain the first public key of the receiving user through the second public key address: the computer system locks the second public key address of the receiving user through the locked The second public key address information, find the mathematical function ω=g(μ) hidden in the basic database through the second public key address, verify the mathematical function ω=g(μ) of the second public key address, verify whether the hash value converted by the mathematical function ω=g(μ) is the same as the second public key of the recipient user, if the same, extract μ in the mathematical function ω=g(μ) as the first public key of the recipient user; after hiding the ciphertext information in the basic database, generate the ciphertext address corresponding to the ciphertext information, and save the generated ciphertext address in the basic database, and hide and disguise the ciphertext address through information hiding technology;
[0014] During decryption, the receiving user obtains the plaintext information by inputting the second private key of the receiving user; the decryption includes: during decryption, the receiving user inputs the second private key, and the system automatically decrypts; the system automatically decrypts including: firstly locking the second private key address of the receiving user, verifying the mathematical function λ=f(v) of the second private key address, verifying whether the hash value converted by the mathematical function λ=f(v) is the same as the second private key of the receiving user, if the same proves that the second private key input by the user is correct, then extracting the first private key of the receiving user in the mathematical function λ=f(v) as v; locking the ciphertext address generated after being encrypted by the first public key of the receiving user by using the obtained first private key v of the receiving user, decrypting the ciphertext information in the ciphertext address by the decryption process of the asymmetric encryption algorithm, finally obtaining the plaintext information, and feeding back the obtained plaintext information to the receiving user.
[0015] Furthermore, the basic database includes: all data collected before the computer system is run; the data in the basic database will continue to increase over time, thereby increasing the security of hidden information.
[0016] Furthermore, the respectively obtaining hash values of the two mathematical functions and using the obtained hash values as the user's second public key and second private key respectively include: performing hash calculations on the mathematical functions ω=g(μ) and λ=f(v) respectively through a hash algorithm, converting the mathematical functions into hash values, and treating the obtained hash values as the user's second public key and second private key respectively; the respectively performing hash calculations on the mathematical functions ω=g(μ) and λ=f(v) refers to performing hash calculations on the entire functional formula of the mathematical function, rather than only performing hash calculations on the mathematical function results ω and λ.
[0017] Furthermore, the second public key is continuously updated; during each encryption, the computer system automatically locks the second public key address of the recipient user, and when the first public key of the recipient user is obtained through the second public key address, the original second public key is updated, and the corresponding second public key address is updated at the same time, and the original second public key and the second public key address are deleted to increase the security of the encryption process; the updating of the original second public key includes: randomly performing a step of random mathematical calculation on the first public key of the recipient user ω1=g1(μ), wherein μ in the mathematical function ω1=g1(μ) is non The first public key of the receiving user is obtained by the symmetric encryption algorithm, ω1 is the result obtained by substituting the first public key of the receiving user into the mathematical function; the hash value of the mathematical function ω1=g1(μ) is obtained, and the obtained hash value is used as the new second public key of the receiving user; the hash-calculated mathematical function ω1=g1(μ) is saved in the basic database, a new second public key address of the receiving user is generated, and the original second public key and second public key address are deleted; the newly generated second public key is made public in the network, and the newly generated second public key address is hidden and disguised through information hiding technology.
[0018] In addition, the present invention also provides a data information security protection system, which is used to implement the data information security protection method described above, and the system includes: a database generation unit; a key generation unit; an encryption unit; and a decryption unit; the database generation unit is used to establish a basic database, and the computer system generates the basic database by collecting all data before operation and data updated after operation; the key generation unit is used to generate a user's first public key and a first private key, as well as a user's second public key and a second private key, and is used to update the recipient user's second public key during encryption; the encryption unit is used to encrypt the sender user's data information, and the encryption process is completed in the computer system ; The computer system locks the user's second public key address through the recipient user's second public key, obtains the recipient user's first public key in the second public key address, encrypts the sender user's data information through the first public key to generate ciphertext information, and establishes a corresponding ciphertext address; the decryption unit is used to decrypt the ciphertext information of the sender user in the computer system, and feeds back the decrypted plaintext information to the recipient; the computer system locks the recipient user's second private key address through the recipient user's second private key, obtains the recipient user's first private key in the second private key address, then locks the corresponding ciphertext address, decrypts the ciphertext information in the ciphertext address, obtains the plaintext information, and feeds back the plaintext information to the recipient user.
[0019] The beneficial effects of the present invention are:
[0020] 1) The encryption method of the present invention generates a first public key and a first private key based on an asymmetric encryption algorithm, and the user obtains a second public key and a second private key respectively, and the second public key and the second private key are both obtained through a hash algorithm. Due to the irreversibility of the hash algorithm, the security of the user's first public key and the first private key is guaranteed, thereby increasing the security of data information.
[0021] 2) Compared with the invention of a method for enhancing the security of an asymmetric encryption algorithm with application number 2023112852552, the present invention also protects the first public key information to prevent the eavesdropper from obtaining the user's first private key by brute force calculation of the first public key, and then achieving the purpose of stealing secrets by calculating and attempting to input all mathematical functions; therefore, the present invention further improves the security of the protected data information.
[0022] 3) The encryption and decryption processes of the present invention are all completed on the computer, reducing human intervention. As long as the computer is in a safe environment, the security of data information transmission can be guaranteed. BRIEF DESCRIPTION OF THE DRAWINGS
[0023] Figure 1 :Flowchart of a data information security protection method of the present invention.
[0024] Figure 2 : Schematic diagram of the encryption and decryption process of the present invention.
[0025] Figure 3 : A schematic diagram of a data information security protection system of the present invention. DETAILED DESCRIPTION
[0026] The specific embodiments of the present invention are described in detail below in conjunction with the accompanying drawings; it should be understood that the specific embodiments given here are only used to illustrate and explain the present invention and cannot be used to limit the present invention.
[0027] like Figure 1As shown, it is a flow chart of a data information security protection method of the present invention, and the flow chart includes: step S100, first, establish a basic database, and the basic database is used to hide important encrypted information; step S101, generate a pair of keys of the user through an asymmetric encryption algorithm, the key includes a public key and a private key, the public key is regarded as the first public key of the user, and the private key is regarded as the first private key of the user; step S102, perform a step of random math problem calculation on the first public key and the first private key of the user respectively; the random math problem is a randomly selected math problem, one math problem includes the first public key of the user, and the other math problem includes the first public key of the user. The method includes the user's first private key; step S103, respectively obtain the hash values of the two mathematical functions, and use the obtained hash values as the user's second public key and second private key respectively; the mathematical functions ω=g(μ) and λ=f(v) for hash calculation are respectively saved in the basic database, and the second public key address and the second private key address are generated, and the second public key is made public in the network, and the second public key address and the second private key address are hidden and disguised by information hiding technology; step S104, when encrypting, the sending user queries and obtains the receiving user's second public key, and sends the data information to be encrypted and the receiving user's second public key to the receiving user. The computer system automatically locks the second public key address of the user, obtains the first public key of the receiving user through the second public key address, and encrypts the data information that the sending user needs to encrypt with the corresponding asymmetric encryption algorithm through the first public key to obtain the ciphertext information; hides the ciphertext information in the basic database through information hiding technology; step S105, when decrypting, the receiving user obtains the plaintext information by inputting the second private key of the receiving user; the decryption includes: when decrypting, the receiving user inputs the second private key, and the system automatically decrypts; the system automatically decrypts including: first The second private key address of the receiving user is locked, and the mathematical function λ=f(v) of the second private key address is verified to verify whether the hash value converted by the mathematical function λ=f(v) is the same as the second private key of the receiving user. If they are the same, it proves that the second private key input by the user is correct, and then the first private key of the receiving user in the mathematical function λ=f(v) is extracted as v; the ciphertext address generated after being encrypted by the first public key of the receiving user is locked by the obtained first private key v of the receiving user, and the ciphertext information in the ciphertext address is decrypted by the decryption process of the asymmetric encryption algorithm, and finally the plaintext information is obtained, and the obtained plaintext information is fed back to the receiving user.
[0028] In the above embodiment, specifically, a basic database is first established; a pair of keys of the user is generated by an asymmetric encryption algorithm, the keys include a public key and a private key, the public key is regarded as the first public key of the user, and the private key is regarded as the first private key of the user; a one-step random math problem calculation is performed on the first public key and the first private key of the user respectively; wherein one math problem includes the first public key of the user, and the other math problem includes the first private key of the user; the hash values of the two mathematical functions are respectively obtained, and the obtained hash values are respectively used as the second public key and the second private key of the user; the mathematical functions ω=g(μ) and λ=f(v) for hash calculation are respectively saved in the basic database, and the second public key address and the second private key address are correspondingly generated, the second public key is made public in the network, and the second public key address and the second private key address are hidden and disguised by information hiding technology; when encrypting data information, the sending user queries and obtains the second public key of the receiving user, and inputs the data information to be encrypted and the second public key of the receiving user into the computer system, the computer system will automatically lock the second public key address of the user, and obtain the second public key address through the second public key address. The first public key of the receiving user is obtained, and the data information to be encrypted by the sending user is encrypted by the corresponding asymmetric encryption algorithm through the first public key to obtain the ciphertext information; the ciphertext information is hidden in the basic database through the information hiding technology; when decrypting the data information, the corresponding receiving user obtains the plaintext information by inputting the second private key of the receiving user; specifically, when decrypting, the receiving user inputs the second private key, and the system automatically decrypts; the automatic decryption of the system includes: firstly locking the second private key address of the receiving user, verifying the mathematical function λ=f(v) of the second private key address, verifying whether the hash value converted by the mathematical function λ=f(v) is the same as the second private key of the receiving user, if the same proves that the second private key input by the user is correct, then extracting the first private key of the receiving user in the mathematical function λ=f(v) as v; locking the ciphertext address generated after being encrypted by the first public key of the receiving user through the obtained first private key v of the receiving user, decrypting the ciphertext information in the ciphertext address through the decryption process of the asymmetric encryption algorithm, finally obtaining the plaintext information, and feeding back the obtained plaintext information to the receiving user.
[0029] Step S100, first, establish a basic database, wherein the basic database is used to hide important encrypted information.
[0030] Specifically, any appropriate method is used to create a basic database, such as using MySQL and SQL Server to create a database; the data in the basic database will be continuously updated and increased over time, thereby increasing the security of hidden information.
[0031] In the above embodiment, specifically, the data in the basic database is set to prohibit any other user from accessing it, and only the computer system performs self-checking to avoid the risk of hidden information being leaked.
[0032] Step S101, generating a pair of keys of the user through an asymmetric encryption algorithm, wherein the keys include a public key and a private key, wherein the public key is regarded as the first public key of the user, and the private key is regarded as the first private key of the user.
[0033] Specifically, the asymmetric encryption algorithm is any secure asymmetric encryption algorithm. The asymmetric encryption algorithm forms a pair of keys, which include a public key and a private key. Usually, the public key is used for encryption and the private key is used for decryption; or the private key is used for signing and the public key is used to verify the signature; the present invention uses the user public key generated by the asymmetric encryption algorithm as the first public key, and the generated user private key as the first private key, and the first public key is disclosed to the public.
[0034] In the above embodiments, for ease of understanding, the RSA encryption algorithm and the ECC (elliptic curve encryption algorithm) are first selected to specifically illustrate the embodiments of the present invention.
[0035] The process of generating public and private keys using the RSA encryption algorithm:
[0036] 1) Generate two large prime numbers p and q randomly using RSA1024;
[0037] 2) Calculate n = pq, Destroy p and q;
[0038] 3) Randomly select one The numbers e that are mutually prime, that is
[0039] 4) Find a number d such that e and d combined satisfy ed
[0040] 5) Generate a public key of (n, e) and a private key of (n, d).
[0041] The process of generating public and private keys using ECC (elliptic curve cryptography):
[0042] a) Select an elliptic curve Ep(a, b) and take a point on the elliptic curve as the base point P;
[0043] b) Select a large number k as the private key and generate a public key Q=kP.
[0044] The user's public key and private key are generated by the above-mentioned asymmetric encryption algorithms RSA and ECC, that is, the first public key and the first private key of the present invention are generated.
[0045] Step S102, performing a random math problem calculation on the user's first public key and first private key respectively; the random math problem is a randomly selected math problem, one math problem includes the user's first public key, and the other math problem includes the user's first private key.
[0046] Specifically, the random math problem is any mathematical function that meets the requirements of the problem, and two mathematical functions are randomly selected to include the user's first public key and first private key respectively; the mathematical functions are randomly generated, and the system needs to continuously expand the form and number of mathematical functions, thereby increasing the security of the encryption method of the present invention for data information protection.
[0047] In the above embodiment, specifically, a method for calculating a user's first public key and a first private key in one step of random math problems is performed: both math problems are random math functions generated by a computer system, which are: ω=g(μ) and λ=f(v), respectively, wherein μ in the math function ω=g(μ) is regarded as the first public key obtained by an asymmetric encryption algorithm, and v in the math function λ=f(v) is regarded as the first private key obtained by an asymmetric encryption algorithm, and ω and λ are the results obtained by substituting the first public key and the first private key into the two math functions, respectively.
[0048] Preferably, taking the RSA encryption algorithm as an example, the randomly generated mathematical function is: μ is regarded as the first public key obtained by the RSA encryption algorithm, that is, μ=(n, e), and v is regarded as the first private key of the RSA encryption algorithm, that is, v=(n, d); the two random functions ω=g(μ) and λ=f(v) are functions including the first public key μ=(n, e) and the first private key v=(n, d), respectively.
[0049] Preferably, the functional relationship satisfying the above-mentioned can be: η1=h1(μ) and η2=h2(v), where μ=(n, e), v=(n, d), η1 and η2 are both binary functions, that is, the functional relationship is: η1=h1(n, e) and η2=h2(n, d) respectively.
[0050] In the above embodiment, preferably, taking the ECC encryption algorithm as an example, the randomly generated mathematical function is: μ is regarded as the first public key obtained by the ECC encryption algorithm, that is, μ=Q; v is regarded as the first private key obtained by the ECC encryption algorithm, that is, v=k; the random functions ω=g(μ) and λ=f(v) are functions including factors μ and v.
[0051] Preferably, assuming that the coordinates of point Q are (a, b), the two functional relationships satisfying the above conditions are: and Among them, μ = Q, v = k, then i1(μ) is a binary function, i2(v) is a univariate function, that is, the functional relationship can be expressed as: and
[0052] In the above embodiment, preferably, it should be noted that the functions ω=g(μ), λ=f(v), η1=h1(μ), η2=h2(v), and Any function in is not required to be a function of a specified number of factors. It only requires that the random function contains the first public key μ or the first private key v. For example, the random functions can be expressed as: ω1=g1(μ, x, y, ...) and ω2=g2(v, x, y, ...). It can be seen that the random functions ω1=g1(μ, x, y, ...) and ω2=g2(v, x, y, ...) respectively include other factors besides the first public key μ and the first private key v.
[0053] Step S103, respectively obtain hash values of the two mathematical functions, and use the obtained hash values as the user's second public key and second private key respectively; save the mathematical functions ω=g(μ) and λ=f(v) for hash calculation into the basic database respectively, generate a second public key address and a second private key address, publish the second public key in the network, and hide and disguise the second public key address and the second private key address through information hiding technology.
[0054] In the above embodiment, specifically, the mathematical functions ω=g(μ) and λ=f(v) are hashed respectively by a hash algorithm, the mathematical functions are converted into hash values, and the obtained hash values are regarded as the second public key and the second private key of the user respectively; the hashing of the mathematical functions ω=g(μ) and λ=f(v) refers to hashing the entire mathematical function formula, rather than only hashing the mathematical function results ω and λ.
[0055] In the above embodiment, preferably, the SHA256 hash algorithm is used to perform hash calculations on the mathematical functions ω=g(μ) and λ=f(v), respectively, and the two mathematical functions are converted into 64-bit hash values, respectively, and the corresponding two hash values are respectively regarded as the user's second public key and second private key.
[0056] In the above technical solution, the SHA256 hash algorithm is an irreversible encryption algorithm of the hash algorithm. This type of encryption algorithm also includes: MD5, SHA-1, etc.; the hash algorithm is a hash function. The hash algorithm can convert a string of characters of any length into a hash value of fixed length, and it is easier to convert characters into hash values. It is impossible to calculate the original string in reverse through the hash value. Therefore, the calculation of the hash value is irreversible.
[0057] After obtaining the hash value of the mathematical function, the mathematical functions ω=g(μ) and λ=f(v) for hash calculation are saved in the basic database, and the corresponding second public key address and second private key are generated. The second public key address and the second private key address are hidden through camouflage technology such as digital watermark.
[0058] Step S104, when encrypting, the sending user queries and obtains the second public key of the receiving user, and inputs the data information to be encrypted and the second public key of the receiving user into the computer system. The computer system will automatically lock the second public key address of the user, obtain the first public key of the receiving user through the second public key address, and encrypt the data information to be encrypted by the sending user through the first public key using the corresponding asymmetric encryption algorithm to obtain the ciphertext information; the ciphertext information is hidden in the basic database through information hiding technology.
[0059] Specifically, the method for obtaining the first public key of the recipient user through the second public key address is as follows: the computer system finds the mathematical function ω=g(μ) hidden in the basic database through the locked second public key address information, verifies the mathematical function ω=g(μ) of the second public key address, verifies whether the hash value converted by the mathematical function ω=g(μ) is the same as the second public key of the recipient user, and if they are the same, extracts μ in the mathematical function ω=g(μ) as the first public key of the recipient user; after hiding the ciphertext information in the basic database, generates the ciphertext address corresponding to the ciphertext information, and saves the generated ciphertext address in the basic database, and hides and disguises the ciphertext address through information hiding technology.
[0060] In the above embodiment, specifically, the second public key is continuously updated; during each encryption, the computer system automatically locks the second public key address of the recipient user, and when the first public key of the recipient user is obtained through the second public key address, the original second public key is updated, and the corresponding second public key address is updated at the same time, and the original second public key and the second public key address are deleted to increase the security of the encryption process; the updating of the original second public key includes: randomly performing a step of random mathematical problem calculation on the first public key of the recipient user ω1=g1(μ), wherein the mathematical function ω1=g1(μ) Wherein μ is the first public key of the receiving user obtained by the asymmetric encryption algorithm, ω1 is the result obtained by substituting the first public key of the receiving user into the mathematical function; the hash value of the mathematical function ω1=g1(μ) is obtained, and the obtained hash value is used as the new second public key of the receiving user; the hash-calculated mathematical function ω1=g1(μ) is saved in the basic database, a new second public key address of the receiving user is generated, and the original second public key and second public key address are deleted; the newly generated second public key is published in the network, and the newly generated second public key address is hidden and disguised through information hiding technology.
[0061] like Figure 2 As shown: is a schematic diagram of the encryption and decryption process of the present invention; specifically, as Figure 2 The encryption process shown is as follows: first, the data information sender user obtains the second public key of the receiver user through appropriate means, and inputs the data information to be encrypted and the second public key of the receiver user into the computer system. The computer system will automatically lock the user's second private key address, find the mathematical function ω=g(μ) hidden in the basic database through the second public key address, verify the mathematical function ω=g(μ) of the second public key address, and verify whether the hash value converted by the mathematical function ω=g(μ) is the same as the second public key of the receiver user. If they are the same, μ in the mathematical function ω=g(μ) is extracted as the first public key of the receiver user; the data information to be encrypted by the sender user is encrypted by the corresponding asymmetric encryption algorithm through the obtained first public key to obtain the ciphertext information; the encrypted ciphertext information generates a ciphertext address, and the generated ciphertext address is saved in the basic database through information hiding technologies such as digital watermarking for hiding and disguise.
[0062] Preferably, this embodiment is specifically described through the encryption process of the RSA encryption algorithm and the ECC encryption algorithm in the asymmetric encryption algorithm.
[0063] First, the encryption process of the RSA encryption algorithm and the ECC encryption algorithm needs to be explained in detail:
[0064] The encryption process of the RSA encryption algorithm is as follows: the sender user inputs the second public key hash value of the receiver user and the data information to be encrypted into the computer system, and then the computer system encrypts the data information according to the encryption process described above; specifically, the encryption process is composed of the encryption algorithm function: c = m e modn encrypts the plaintext information, where m is the plaintext information, c is the encrypted ciphertext information, and (n, e) is the first public key of the recipient user automatically obtained by the computer system.
[0065] The encryption process of the ECC encryption algorithm is as follows: the first public key Q of the receiving user generated by the ECC encryption algorithm is obtained through the above method, the computer system encodes the data information to be encrypted to a point M on Ep(a, b), and generates a random integer r, and generates ciphertext information through the encryption function: C={rΡ,Μ+rQ}, where P is the base point and C is the generated ciphertext information.
[0066] In the above embodiment, specifically, the sending user inputs the second public key of the RSA encryption algorithm or the ECC encryption algorithm and the plaintext information to be encrypted into the computer system, and the computer system encrypts and generates ciphertext information by itself, generates a ciphertext address through the ciphertext information, and saves the ciphertext address to the basic database through information hiding technologies such as digital watermarking.
[0067] Step S105, during decryption, the receiving user obtains the plaintext information by inputting the second private key of the receiving user; the decryption includes: during decryption, the receiving user inputs the second private key, and the system automatically decrypts; the system automatically decrypts including: firstly locking the second private key address of the receiving user, verifying the mathematical function λ=f(v) of the second private key address, verifying whether the hash value converted by the mathematical function λ=f(v) is the same as the second private key of the receiving user, if the same proves that the second private key input by the user is correct, then extracting the first private key of the receiving user in the mathematical function λ=f(v) as v; locking the ciphertext address generated by the encryption of the first public key of the receiving user by the obtained first private key v of the receiving user, decrypting the ciphertext information in the ciphertext address by the decryption process of the asymmetric encryption algorithm, finally obtaining the plaintext information, and feeding back the obtained plaintext information to the receiving user.
[0068] Specifically, after the computer system saves the generated ciphertext address to the basic database, it will generate a program for decryption based on the hidden ciphertext address. The program is that the computer system sends a decrypted link to the recipient user; after the recipient user receives the link, he enters the second private key, and the system automatically decrypts it to directly obtain the plaintext information.
[0069] like Figure 2 As shown: is a schematic diagram of the encryption and decryption process of the present invention; specifically, as Figure 2 The decryption process shown is as follows: first, after the receiving user receives the decryption link sent by the computer system, he inputs the second private key of the receiving user, and the system will perform an automatic decryption program; the method of automatic decryption by the system is as follows: first, the second private key address of the user is locked by the second private key of the receiving user, and the mathematical function λ=f(v) of the second private key address is verified to verify whether the second private key entered by the receiving user is correct; if the second private key entered by the receiving user is correct, the first private key v of the receiving user is obtained by the mathematical function; then, the ciphertext address generated by encrypting the data information with the first public key μ of the receiving user is locked by the first private key v of the receiving user, and the plaintext information is obtained by decrypting the ciphertext information in the ciphertext address; the plaintext information refers to the data information that the sending user needs to send.
[0070] In the above embodiment, preferably, the method for verifying whether the second private key entered by the receiving user is correct is: calculating whether the hash value of the mathematical function λ=f(v) saved by the second private key address is the same as the second private key entered by the receiving user. If they are the same, it proves that the second private key entered by the user is correct, and the first private key v of the receiving user is directly derived through the mathematical function λ=f(v).
[0071] In the above technical solution, by verifying that the hash value of the mathematical function λ=f(v) is different from the second private key of the recipient user, it is proved that the second private key input by the user is incorrect or an eavesdropper has impersonated the recipient to steal secrets, and the system automatic decryption program is stopped.
[0072] In the above technical solution, the ciphertext address generated by encrypting the first public key μ of the recipient user is locked by obtaining the first private key v of the recipient user, and the ciphertext information in the ciphertext address is extracted and decrypted to finally obtain the corresponding plaintext information.
[0073] Preferably, for ease of understanding, this embodiment specifically describes the decryption process of the RSA encryption algorithm and the ECC encryption algorithm in the present invention.
[0074] First, the decryption process of the conventional RSA encryption algorithm and the ECC encryption algorithm should be explained.
[0075] The decryption process of the RSA encryption algorithm is:
[0076] Through the decryption algorithm function: m = c d modn decrypts the ciphertext information to obtain the plaintext information, where m is the plaintext information, c is the ciphertext information, and (n, d) is the first private key of the receiving user.
[0077] The decryption process of the ECC encryption algorithm is:
[0078] Through the decryption algorithm: M+rQ-k(rP)=M, where P is the base point, K is the first private key, Q is the first public key (Q=kP), r is a random integer, and M is the point on the elliptic curve Ep where the plaintext information is encoded. By decoding M, the plaintext information can be obtained.
[0079] Preferably, the decryption process of the RSA encryption algorithm in this embodiment is: taking the second private key address as η2=h2(v) as an example, where v=(n, d), λ is a binary function, and the ciphertext address is c=m e modn, then (n, e) in the ciphertext address is the user's first public key, m is the plaintext information, and c is the ciphertext information.
[0080] In the above embodiment, preferably, the process of using the second private key to perform RSA encryption algorithm decryption is:
[0081] The receiving user inputs the second private key. First, the receiving user's second private key locks the second private key address and extracts the mathematical function η2=h2(v) of the second private key address, where v is the first private key; then, the mathematical function η2=h2(v) is converted into a hash value, and the hash value converted by the mathematical function is compared to see whether it is the same as the second private key input by the receiving user. If they are the same, it proves that the second private key input by the receiving user is correct. If they are not the same, it proves that the second private key input by the receiving user is incorrect. If the second private key input by the receiving user is correct, the receiving user's first private key v(n, d) is obtained according to the mathematical function form. The ciphertext address generated by encrypting the first public key μ(n, e) of the receiving user is locked in the basic database by the obtained first private key v(n, d) of the receiving user, and the ciphertext information c in the ciphertext address is extracted. The ciphertext information c is decrypted by the decryption process of the RSA encryption algorithm. The decryption process function of the RSA encryption algorithm is: m=c d modn, the obtained m is the plaintext information, and the system feeds back the plaintext information m to the receiving user.
[0082] Preferably, the decryption process of the ECC encryption algorithm in this embodiment is: using the second private key address as For example, v = k, k is the first private key of the ECC encryption algorithm, i2(v) is a unary function, that is
[0083] In the above embodiment, preferably, the process of using the second private key to perform ECC encryption algorithm decryption is:
[0084] The receiving user enters the second private key. First, the receiving user's second private key locks the second private key address and extracts the mathematical function of the second private key address. k is the first private key; then the mathematical function Convert it into a hash value, and compare whether the hash value converted by the mathematical function is the same as the second private key input by the recipient user. If they are the same, it proves that the second private key input by the recipient user is correct; if they are different, it proves that the second private key input by the recipient user is incorrect. If the second private key input by the recipient user is correct, the first private key k of the recipient user is obtained according to the calculation process in the form of the mathematical function.
[0085] In the above embodiment, preferably, the ciphertext address generated by encrypting the first public key Q of the recipient user is locked in the basic database by obtaining the first private key k of the recipient user, the ciphertext information C={rΡ, Μ+rQ} in the ciphertext address is extracted, and the plaintext information is encoded to the point M on Ep(a, b) through the decryption process Μ+rQ-k(rP)=Μ of the ECC encryption algorithm, the plaintext information is obtained by decoding the point M, and finally the plaintext information is fed back to the user.
[0086] In the above embodiment, it should be pointed out that the computer system obtains the second public key and the second private key through mathematical functions, generates the second public key and the second private key address, and the automatic encryption and decryption process is completed by setting up corresponding smart contracts.
[0087] like Figure 3 As shown: is a schematic diagram of a data information security protection system of the present invention; the system in the schematic diagram is used to implement the encryption and encryption process of data transmission of the above-mentioned method, and realize the secure transmission of data information; the schematic diagram includes: a database generation unit S200; a key generation unit S300; an encryption unit S400; a decryption unit S500; specifically: the database generation unit S200 is used to establish a basic database, and the computer system generates the basic database by collecting all data before operation and data updated after operation; the key generation unit S300 is used to generate a first public key and a first private key of a user, as well as a second public key and a second private key of a user, and is used to update the second public key of the receiving user during encryption; the encryption unit S400 is used to encrypt the sending user The data information is encrypted, and the encryption process is completed in the computer system; the computer system locks the second public key address of the user through the second public key of the recipient user, obtains the first public key of the recipient user in the second public key address, encrypts the data information of the sender user through the first public key to generate ciphertext information, and establishes a corresponding ciphertext address; the decryption unit S500 is used to decrypt the ciphertext information of the sender user in the computer system, and feeds back the decrypted plaintext information to the recipient; the computer system locks the second private key address of the recipient user through the second private key of the recipient user, obtains the first private key of the recipient user in the second private key address, then locks the corresponding ciphertext address, decrypts the ciphertext information in the ciphertext address, obtains the plaintext information, and feeds back the plaintext information to the recipient user.
[0088] It should be understood that the above-mentioned embodiments are one or more embodiments of the present invention, and there are many other embodiments and variations thereof based on the present invention; the variations and modifications made by ordinary technicians in this industry through the present invention without making pioneering innovations all fall within the scope of protection of the present invention.
Claims
1. A data information security protection method, characterized in that: The method comprises the following steps: First, a basic database is established, wherein the basic database is used to hide important encrypted information; Generate a pair of keys of the user through an asymmetric encryption algorithm, wherein the keys include a public key and a private key, wherein the public key is regarded as the first public key of the user, and the private key is regarded as the first private key of the user; Performing a random math problem calculation on the first public key and the first private key of the user respectively; the random math problem is a randomly selected math problem, one math problem includes the first public key of the user, and the other math problem includes the first private key of the user; The step of performing a random math problem calculation on the first public key and the first private key of the user includes: both math problems are random math functions generated by a computer system, which are: ω=g(μ) and λ=f(v), wherein μ in the math function ω=g(μ) is regarded as the first public key obtained by the asymmetric encryption algorithm, v in the math function λ=f(v) is regarded as the first private key obtained by the asymmetric encryption algorithm, and ω and λ are the results obtained by substituting the first public key and the first private key into the two math functions; Obtain hash values of two mathematical functions respectively, and use the obtained hash values as the user's second public key and second private key respectively; save the mathematical functions ω=g(μ) and λ=f(v) for hash calculation respectively into the basic database, generate the second public key address and the second private key address, make the second public key public in the network, and hide and disguise the second public key address and the second private key address by using information hiding technology; During encryption, the sending user queries and obtains the second public key of the receiving user, and inputs the data information to be encrypted and the second public key of the receiving user into the computer system. The computer system will automatically lock the second public key address of the user, obtain the first public key of the receiving user through the second public key address, and encrypt the data information to be encrypted by the sending user through the corresponding asymmetric encryption algorithm through the first public key to obtain the ciphertext information; hide the ciphertext information in the basic database through information hiding technology; obtain the first public key of the receiving user through the second public key address: the computer system locks the second public key address of the receiving user through the locked The second public key address information, find the mathematical function ω=g(μ) hidden in the basic database through the second public key address, verify the mathematical function ω=g(μ) of the second public key address, verify whether the hash value converted by the mathematical function ω=g(μ) is the same as the second public key of the recipient user, if the same, extract μ in the mathematical function ω=g(μ) as the first public key of the recipient user; after hiding the ciphertext information in the basic database, generate the ciphertext address corresponding to the ciphertext information, and save the generated ciphertext address in the basic database, and hide and disguise the ciphertext address through information hiding technology; During decryption, the receiving user obtains the plaintext information by inputting the second private key of the receiving user; the decryption includes: during decryption, the receiving user inputs the second private key, and the system automatically decrypts; the system automatically decrypts including: firstly locking the second private key address of the receiving user, verifying the mathematical function λ=f(v) of the second private key address, verifying whether the hash value converted by the mathematical function λ=f(v) is the same as the second private key of the receiving user, if the same proves that the second private key input by the user is correct, then extracting the first private key of the receiving user in the mathematical function λ=f(v) as v; locking the ciphertext address generated after being encrypted by the first public key of the receiving user by using the obtained first private key v of the receiving user, decrypting the ciphertext information in the ciphertext address by using the decryption process of the asymmetric encryption algorithm, finally obtaining the plaintext information, and feeding back the obtained plaintext information to the receiving user.
2. A data information security protection method according to claim 1, characterized in that: The basic database includes: all data collected before the computer system is put into operation; the data in the basic database will continue to increase over time, thereby increasing the security of hidden information.
3. A data information security protection method according to claim 1, characterized in that: The method of respectively obtaining hash values of two mathematical functions and using the obtained hash values as the user's second public key and second private key includes: performing hash calculations on the mathematical functions ω=g(μ) and λ=f(v) respectively through a hash algorithm, converting the mathematical functions into hash values, and treating the obtained hash values as the user's second public key and second private key respectively; the method of respectively performing hash calculations on the mathematical functions ω=g(μ) and λ=f(v) refers to performing hash calculations on the entire mathematical function formula, rather than only performing hash calculations on the mathematical function results ω and λ.
4. A data information security protection method according to claim 1, characterized in that: The second public key is continuously updated; each time encryption is performed, the computer system automatically locks the second public key address of the recipient user, and when the first public key of the recipient user is obtained through the second public key address, the original second public key is updated, and the corresponding second public key address is updated at the same time, and the original second public key and the second public key address are deleted to increase the security of the encryption process; the updating of the original second public key includes: randomly performing a step of random math calculation on the first public key of the recipient user ω1=g1(μ), wherein μ in the mathematical function ω1=g1(μ) is asymmetric The first public key of the receiving user is obtained by the encryption algorithm, ω1 is the result of substituting the first public key of the receiving user into the mathematical function; the hash value of the mathematical function ω1=g1(μ) is obtained, and the obtained hash value is used as the new second public key of the receiving user; the hash-calculated mathematical function ω1=g1(μ) is saved in the basic database, a new second public key address of the receiving user is generated, and the original second public key and second public key address are deleted; the newly generated second public key is made public in the network, and the newly generated second public key address is hidden and disguised through information hiding technology.
5. A data information security protection system, characterized in that: The system is used to implement a data information security protection method as described in claim 1, and the system includes: a database generation unit; a key generation unit; an encryption unit; and a decryption unit; the database generation unit is used to establish a basic database, and the computer system generates the basic database by collecting all data before operation and data updated after operation; the key generation unit is used to generate a user's first public key and a first private key, as well as a user's second public key and a second private key, and is used to update the recipient's second public key during encryption; the encryption unit is used to encrypt the data information of the sender user, and the encryption process is completed in the computer system; the computer system receives The second public key of the sending user is used to lock the second public key address of the user, and the first public key of the receiving user in the second public key address is obtained, the data information of the sending user is encrypting by the first public key to generate ciphertext information, and a corresponding ciphertext address is established; the decryption unit is used to decrypt the ciphertext information of the sending user in the computer system, and feed back the decrypted plaintext information to the receiving party; the computer system locks the second private key address of the receiving user by the second private key of the receiving user, obtains the first private key of the receiving user in the second private key address, then locks the corresponding ciphertext address, decrypts the ciphertext information in the ciphertext address, obtains the plaintext information, and feeds back the plaintext information to the receiving user.
Citation Information
Cited By
Method for accurately pairing multiple robots
CN120602102A
