Verifiable cloud outsourcing inner product function encryption method

By introducing a verifiable cloud outsourcing intra-generated function encryption method in the cloud computing environment, and using bilinear group generation master public and private key pairs to encrypt and upload data and function vectors, the problem of verification of cloud server return calculation results is solved, efficient calculation and verification is achieved, and overhead is reduced.

CN119766425AActive Publication Date: 2025-04-04XIDIAN UNIV
View PDF 11 Cites 0 Cited by

Patent Information

Application Number
CN202411762963.5
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-12-03
Publication Date
2025-04-04
Estimated Expiration
2044-12-03

AI Technical Summary

Technical Problem

The prior art is difficult to effectively verify the calculation results returned by cloud servers in a cloud computing environment, and the high interaction and computing overhead brought by interactive proof technology affects the computing and verification efficiency.

Method used

A verifiable cloud outsourcing internal product function encryption method is proposed. The master public-private key pair is generated through the bilinear group initialized by the system. The data owner and the user encrypt and upload the data and function vectors to the cloud server. The cloud server performs intermediate value calculations, and the data user decrypts the internal product results, and the data owner verifies the correctness of the intermediate value.

Benefits of technology

It reduces the computing overhead of data users, avoids the interaction overhead during the verification process, improves the computing and verification efficiency, and ensures the correctness of the results and the protection of data privacy.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119766425A_ABST
    Figure CN119766425A_ABST
Patent Text Reader

Abstract

The invention relates to a verifiable cloud outsourcing inner product function encryption method. The method comprises the following steps: generating a main public and private key pair through a bilinear group; the data owner uploads encrypted data obtained according to the main public key to the cloud server; the data user obtains a function decryption key from the key generation center through the function vector, and uploads a function vector ciphertext to the cloud server; the cloud server performs intermediate value calculation on the encrypted data and the function vector ciphertext, and returns the calculated data and the calculated function vector ciphertext to the data user; the data user decrypts the intermediate value by using the function decryption key to obtain an inner product result; the data owner performs verification by using the inner product result, and accepts the verification if the verification is passed; and if the verification is not passed, refusing. According to the method, the safety of cloud storage data is ensured, the interactive overhead in the verification process is avoided, the calculation overhead of a data user and the generation probability of malicious behaviors are reduced, the calculation and verification efficiency is improved, and the verification effectiveness is ensured.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of encryption technology, and in particular to a verifiable cloud outsourcing inner product function encryption method. Background Art

[0002] The popularity of the Internet and the increasing number of users and devices online, as well as the widespread use of mobile devices and the Internet of Things, have significantly increased the frequency of data generation. With the rapid advancement of computer hardware and network technology, especially the maturity of virtualization technology, resource sharing and utilization of centralized data centers have become feasible. At the same time, due to the surge in data volume, enterprises are in urgent need of flexible solutions to store and process this data. Cloud computing technology reduces the capital expenditure of enterprises through a pay-as-you-go model and promotes the concentration of resources on core businesses. In addition, the trend of globalization and remote work has prompted enterprises to access data and applications anytime and anywhere. Cloud computing just meets this demand and has promoted the innovation of service models such as infrastructure as a service, platform as a service, and software as a service, providing developers and enterprises with flexible tools and services, thereby accelerating the development and deployment of applications and services. However, with the popularization of cloud computing technology, the data security issues it brings are becoming increasingly prominent. Since cloud environments usually involve multiple users and devices, data may be at risk of being intercepted or tampered with during transmission and storage. In addition, the unclear division of responsibilities between cloud service providers and users may lead to security vulnerabilities. Users have relatively limited control over the cloud environment. Unauthorized access may lead to the leakage of user sensitive information, and users can only passively accept and believe that the cloud returns the correct calculation data. However, some unscrupulous cloud service providers may calculate and return incorrect results in order to reduce their own computing costs. Cloud platforms may also face calculation errors caused by malicious attacks or system crashes. In addition, with the continuous changes in data protection regulations, ensuring compliance has also become a major challenge. In recent years, with the continuous follow-up of policies, cloud computing has gradually grown from the basic stage and achieved phased progress. Cloud computing has also become a key development industry and ushered in new development prospects. Therefore, how to ensure that cloud computing results can be effectively verified while ensuring the security of cloud data has become a new and challenging problem in the field of secure computing.

[0003] Cryptography, as an important research direction in the field of information security, can create conditions for a secure and reliable cloud computing environment. Most existing technologies use interactive proof technology to achieve privacy data authentication. Although this technology can effectively protect data privacy, it will bring non-negligible high interaction and computing overheads, and the verification process is too cumbersome. Summary of the invention

[0004] In order to solve the above problems existing in the prior art, the present invention provides a verifiable cloud outsourcing inner product function encryption method.

[0005] According to a first aspect of an embodiment of the present invention, a verifiable cloud outsourcing inner product function encryption method is provided, the method comprising:

[0006] Generate the master public-private key pair through the bilinear group obtained by system initialization;

[0007] The data owner uploads the encrypted data to the cloud server; wherein the encrypted data is obtained according to the master public key in the master public-private key pair;

[0008] The data user obtains the function decryption key in the key generation center through the function vector, and uploads the function vector ciphertext to the cloud server; wherein the function vector ciphertext is obtained by encrypting the function vector;

[0009] The cloud server performs intermediate value calculation on the encrypted data and the function vector ciphertext, and returns the intermediate value to the data user;

[0010] The data user decrypts the intermediate value using the function decryption key to obtain an inner product result;

[0011] The data owner verifies the intermediate value using the inner product result, and accepts the inner product result if the verification passes; and rejects the inner product result if the verification fails.

[0012] Optionally, the bilinear group in, They all represent multiplicative cyclic groups of prime order p and satisfy the mapping e: g1 means The generator of g2 represents The generator of gT represents The generator of the master public-private key pair is (mpk, mmsk), where the master public key Master private key mmsk = (s, t), vector vector Vector s=(s1,...,s i , ..., s l ), vector t=(t1,...,t i , ..., t l ), Representation in finite fields The l-dimensional vector space on .

[0013] Optionally, the data owner uploads the encrypted data to the cloud server, including:

[0014] The data owner selects a random value α and a random value t; wherein the random value Representing a finite field The non-zero elements in the random value t=g1 α ;

[0015] The ciphertext C is obtained according to the random value α and the message vector x. A ; Wherein, the message vector Representation in finite fields l-dimensional vector space on ;

[0016] The data owner randomly selects a message vector x′ and a random value r; wherein the message vector The random value

[0017] The ciphertext C′ is obtained according to the message vector x′ and the random value r A , verification vector vx and random value w;

[0018] The data owner signs the verification vector vx using the signature private key to obtain the signature σ of the verification vector vx vx ;

[0019] The ciphertext C A , the ciphertext C′ A , the random value t, the verification vector vx, the random value w and the signature σ of the verification vector vx vx The encrypted data is uploaded to the cloud server.

[0020] Optionally, the signature public-private key pair is (spk, ssk), the signature public key spk = (spk1, spk2), and the sub-public key spk1 = g2 a , child private key spk2 = g1 b , signature private key ssk = (a, b), random number Random Numbers

[0021] Optionally, the data user obtains a function decryption key from a key generation center through a function vector, and uploads the function vector ciphertext to the cloud server, including:

[0022] The data user sends a function vector y to the key generation center; wherein the function vector Representation in finite fields l-dimensional vector space on ;

[0023] The key generation center generates a function decryption key sk corresponding to the function vector y for the data user y ;

[0024] The key generation center decrypts the function key sk y Return to the data user;

[0025] The data user selects a random value β and uses the random value β to encrypt the function vector y to obtain the function vector ciphertext C B ; Wherein, the random value Representing a finite field The non-zero elements in ;

[0026] The function vector ciphertext C B Upload to the cloud server.

[0027] Optionally, the cloud server performs intermediate value calculation on the encrypted data and the function vector ciphertext, which is expressed as follows:

[0028]

[0029]

[0030]

[0031]

[0032] Among them, CC, dC, CC' and dC' represent the intermediate values, C A,i Represents ciphertext C A The i-th element in C B,i Represents the function vector ciphertext C B The i-th element in C′ A,i Represents the ciphertext C′ A The i-th element in is a random value Random Values Representing a finite field The non-zero elements in x i represents the i-th element in the message vector x, the message vector x′ i represents the i-th element in the message vector x′, the message vector y i represents the i-th element in the function vector y, the function vector

[0033] Optionally, the data user uses the function decryption key to decrypt the intermediate value to obtain an inner product result, including:

[0034] The data user uses the function to decrypt the key sk y The intermediate value dC and the intermediate value dC′ are calculated with the random value β to obtain the intermediate value d1, the intermediate value d2 and the intermediate value d′2;

[0035] An inner product result is obtained according to the intermediate value d1, the intermediate value d2, the intermediate value d'2, the intermediate value CC and the intermediate value CC'.

[0036] Optionally, the data owner verifies the intermediate value using the inner product result, and accepts the inner product result if the verification passes; and rejects the inner product result if the verification fails, including:

[0037] The data user uses the signature public key spk of the data owner to perform signature verification on the intermediate value;

[0038] When the intermediate value passes the signature verification, the data user verifies the intermediate value using the inner product result, and accepts the inner product result if the verification passes; otherwise, the inner product result is rejected.

[0039] The technical solution provided by the present invention may include the following beneficial effects:

[0040] Through the above technical solution, while ensuring the security of cloud storage data and avoiding the interaction overhead in the verification process, the advantages of unlimited storage and computing power of cloud servers are utilized to greatly reduce the computing overhead of data users. At the same time, the function of verifying the calculation results of cloud servers is met, which can greatly reduce the probability of malicious behavior, avoid the interaction overhead in the verification and proof process, greatly improve the calculation and verification efficiency, and ensure the effectiveness of verification.

[0041] Other features and advantages of the present invention will be described in detail in the following detailed description. BRIEF DESCRIPTION OF THE DRAWINGS

[0042] The accompanying drawings are used to provide a further understanding of the present invention and constitute a part of the specification. Together with the following specific embodiments, they are used to explain the present invention but do not constitute a limitation of the present invention. In the accompanying drawings:

[0043] Figure 1 The present invention is a flowchart of a verifiable cloud outsourcing inner product function encryption method according to an exemplary embodiment. DETAILED DESCRIPTION

[0044] In order to facilitate the understanding of the scheme of the present invention, the relevant state of the prior art and the inventive concept of the present invention are first briefly described.

[0045] With the rapid development of information technology and the explosive growth of data volume, cloud computing has emerged. It originated from the demand for efficient computing resources and convenient services. It manages computing resources centrally and provides them to users through the Internet, breaking the geographical and time constraints. However, with the widespread application of cloud computing, the security issues of cloud data have become increasingly prominent. Since the data is stored on cloud servers, the original data owner loses control of the uploaded data and faces risks such as data leakage, illegal access, and tampering. At the same time, users with limited computing power entrust complex computing tasks to the cloud to assist users in achieving efficient data cloud outsourcing computing with its powerful storage space and computing power. However, for important data calculation results to be returned, the cloud server may return random error data in order to reduce its own computing consumption. In addition, there is a possibility of computing errors in the cloud server. Therefore, how to ensure the confidentiality and integrity of the data uploaded to the cloud server while verifying whether the results returned by the cloud server are correct has become a key requirement in the cloud outsourcing computing scenario. Therefore, we propose a verifiable cloud outsourcing inner product function encryption algorithm. This algorithm not only greatly reduces the computing overhead of data users, but also can effectively verify the correctness of the computing data returned by the cloud server. Moreover, since the verification process of most of the current verifiable inner product function encryption schemes usually uses interactive proof technology, although this technology can ensure the verification and protection of privacy information without obtaining sensitive data, most of the interactive proof processes will lead to high complexity and computational cost, making the algorithm process not concise enough.

[0046] In addition to the loopholes in the verification function of the existing technology, that is, malicious actors can escape the verification process by returning special calculated values, resulting in the scheme not meeting the accuracy of the verification result. In the process of achieving verifiability, most of the currently proposed verifiable inner product function encryption schemes will use interactive proof modules to implement related functions. Although this technology can ensure the security of private data, the interactive proof process used by most schemes will bring additional high interaction costs and computing overhead.

[0047] The purpose of the present invention is to introduce a new verification method into the cloud outsourcing inner product function encryption process in view of the above-mentioned deficiencies in the prior art, and to propose a verifiable cloud outsourcing inner product function encryption method to solve the technical problem.

[0048] Figure 1 is a flowchart of a verifiable cloud outsourcing inner product function encryption method according to an exemplary embodiment. Figure 1 As shown, the method includes the following steps.

[0049] S101. Generate a master public-private key pair using the bilinear group obtained through system initialization.

[0050] Optionally, input the security parameter λ, the bilinear group in, Both represent multiplicative cyclic groups of prime order p and satisfy the mapping g1 means The generator of g2 represents The generator of g T express The generator of the master public and private key pair is (mpk, msk), where the master public key Master private key msk = (s, t), vector vector Vector s=(s1,...,s i , ..., s l ), vector t=(t1,...,t i , ..., t l ), Representation in finite fields The system master public / private key pair is (mpk, msk), msk=(s, t); the public key mpk is publicly sent to the data owner and data user, and the master private key msk is kept secretly by the key generation center.

[0051] S102. The data owner uploads the encrypted data to the cloud server; wherein the encrypted data is obtained based on the master public key in the master public-private key pair.

[0052] Optionally, S102 may include:

[0053] The data owner selects random values ​​α and t; where the random values Representing a finite field The non-zero elements in the random value t=g1 α ;

[0054] According to the random value α and the message vector x, the ciphertext C is obtained A ; Among them, the message vector Representation in finite fields l-dimensional vector space on ;

[0055] The data owner randomly selects a message vector x′ and a random value r; where the message vector Random Values

[0056] Obtain the ciphertext C' based on the message vector x' and the random value r A , verification vector vx and random value w;

[0057] The data owner signs the verification vector vx using the signature private key and obtains the signature σ of the verification vector vx vx ;

[0058] The ciphertext C A , ciphertext C′ A , random value t, verification vector vx, random value w and signature σ of verification vector vx vx Uploaded to the cloud server as encrypted data.

[0059] It can be understood that the message vector x=(x1, x2..., x l ), ciphertext Message vector x′=(x′1, x′2, ..., x′ l ), ciphertext Verification vector vx = (vx1, vx2, ..., vx l )={rx i -x′ i} i∈[l] , random value w = g T r .

[0060] Optionally, the signature public-private key pair is (spk, ssk), the signature public key spk = (spk1, spk2), and the sub-public key spk1 = g2 a , child private key spk2 = g1 b , signature private key ssk = (a, b), random number Random Numbers Hash functions

[0061] Understandably, random selection Execute the following signature algorithm to sign the vector vx:

[0062]

[0063] In the process of calculating the hash function, vx can be expressed as vx1||vx2||...||vx l And it is required that the data owner always uses the same random number sr to sign the vector.

[0064] S103. The data user obtains the function decryption key in the key generation center through the function vector, and uploads the function vector ciphertext to the cloud server; wherein the function vector ciphertext is obtained by encrypting the function vector.

[0065] Optionally, S103 may include: the data user sends a function vector y to the key generation center; wherein the function vector Representation in finite fields l-dimensional vector space on ;

[0066] The key generation center generates the function decryption key sky corresponding to the function vector y for the data user;

[0067] The key generation center decrypts the function key sk y Return to the data user;

[0068] The data user selects a random value β and uses the random value β to encrypt the function vector y to obtain the function vector ciphertext C B ; Among them, the random value Representing a finite field The non-zero elements in ;

[0069] The function vector ciphertext C B Upload to the cloud server.

[0070] It is understandable that the function decryption key Ciphertext

[0071] S104. The cloud server calculates the intermediate value of the encrypted data and the function vector ciphertext, and returns the intermediate value to the data user.

[0072] Optionally, the cloud server performs intermediate value calculation on the encrypted data and the function vector ciphertext, which is expressed as follows:

[0073]

[0074]

[0075]

[0076]

[0077] Among them, CC, dC, CC' and dC' represent intermediate values, C A,i Represents ciphertext C A The i-th element in C B,i Represents the function vector ciphertext C B The i-th element in C′ A,i Represents the ciphertext C′ A The i-th element in is a random value Random Values Representing a finite field The non-zero elements in x i represents the i-th element in the message vector x, the message vector x′ irepresents the i-th element in the message vector x′, the message vector y i represents the i-th element in the function vector y, the function vector After obtaining the intermediate value, the cloud server calculates the intermediate value CC, dC, CC', dC' as well as t, vx, w and signature σ vx Return to the data user.

[0078] S105. The data user uses the function decryption key to decrypt the intermediate value and obtain the inner product result.

[0079] Optionally, S105 may include:

[0080] The data user uses the function to decrypt the key sk y The intermediate value dC and the intermediate value dC′ are calculated with the random value β to obtain the intermediate value d1, the intermediate value d2 and the intermediate value d′2;

[0081] The inner product result is obtained according to the intermediate value d1, the intermediate value d2, the intermediate value d'2, the intermediate value CC and the intermediate value CC'.

[0082] It is understandable that the data user uses the function to decrypt the key sk y And the random value β is operated on the returned intermediate value:

[0083]

[0084]

[0085]

[0086] The data user uses the intermediate values ​​CC and CC' returned by the cloud server to perform operations with the calculation results of the intermediate values ​​d1, d2, and d'2, and after performing a discrete logarithm operation, the inner product calculation result <x, y> can be obtained:

[0087]

[0088]

[0089] S106. The data owner verifies the intermediate value using the inner product result. If the verification passes, the inner product result is accepted; if the verification fails, the inner product result is rejected.

[0090] Optionally, S106 may include:

[0091] The data user uses the signature public key spk of the data owner to verify the signature of the intermediate value;

[0092] When the intermediate value passes the signature verification, the data user uses the inner product result to verify the intermediate value. If the verification passes, the inner product result is accepted; if the verification fails, the inner product result is rejected.

[0093] It can be understood that the data user uses the signature public key spk of the data owner to verify the signature σ through the following equation vx If the equation holds, the signature verification is successful and subsequent operations are performed; otherwise, the signature verification fails and the data user directly refuses to accept the result.

[0094]

[0095] Using the inner product result and the returned verification vector vx and random value w, the data user calculates the following two equations:

[0096] TIP1=w <x,y> / IP'=g T r<x,y> / g T <x′,y> ;

[0097] TIP2=g T <vk,y> ;

[0098] The data user verifies whether the results TIP1 and TIP2 are equal. If they are equal, the inner product result is accepted; otherwise, the inner product result is rejected.

[0099] The present invention considers the data security issues uploaded by the data owner in the cloud computing scenario, encrypts the data before the data owner uploads the data, and the data user also encrypts the function vector before uploading it, while ensuring the hiding of the original data vector and the function vector. The intermediate result of the inner product value calculation is handed over to the cloud server for execution, which greatly reduces the computing overhead of the data user and fully reflects the advantages of cloud computing technology. At the same time, the encryption scheme ensures that the cloud server cannot obtain any valid information from the calculated intermediate value, ensuring the data privacy in the overall cloud computing process; the data owner encrypts an additional message vector to the cloud, based on the indistinguishability of the encryption algorithm, after obtaining the function vector request submitted by the data user, the cloud server can only perform the corresponding intermediate value operation and cannot distinguish the data information, which can effectively verify the correctness of the intermediate value calculated by the cloud server, avoiding the interaction overhead between the data user and the cloud server in the verification process, and greatly improving the efficiency.

[0100] Moreover, the application prospect of the present invention is good. With the rapid development of information technology, cloud computing has become the mainstream solution for data storage and processing. However, the accompanying data security and privacy protection issues have become increasingly prominent, especially in the context of increasing requirements for data security by enterprises and individuals, the importance of data encryption technology has become increasingly prominent. As an emerging encryption technology, the verifiable cloud outsourced inner product function encryption scheme shows broad market prospects by virtue of its unique advantages in data protection and result verification.

[0101] The Verifiable Cloud Outsourced Inner Product Function Encryption Scheme aims to ensure the secure encryption of data in a cloud computing environment while allowing users to verify the correctness of the results processed by the cloud server. This scheme involves inner product operations, which is the sum of multiple data vectors, and is commonly used in fields such as machine learning and data analysis. By combining inner product operations with encryption technology, users can not only use the powerful computing power of cloud services while protecting data privacy, but also verify the accuracy of the results at any time to avoid data leakage and loss caused by mistakes or malicious behavior of cloud service providers.

[0102] In the financial industry, a large amount of sensitive data, such as customer information and transaction records, is involved, so the need for data encryption is extremely urgent. Financial institutions can use the verifiable inner product function encryption scheme to conduct big data analysis and risk assessment without worrying about data leakage. This scheme can improve the accuracy of risk management while protecting user privacy, thereby providing more reliable data support for financial decision-making.

[0103] The healthcare sector also faces the challenge of data privacy protection. The sensitivity of medical data makes encryption an important requirement of the medical industry. Hospitals and medical institutions can use verifiable encryption solutions to conduct clinical research and health management without leaking patient privacy. Researchers can conduct large-scale data analysis without accessing original medical records to find potential disease patterns and promote the advancement of medical research.

[0104] In the field of smart manufacturing, collaboration and data sharing between devices are crucial. Through verifiable encryption solutions, manufacturers can ensure the security of production data processing in the cloud and verify the integrity of the data at any time. This not only helps optimize the production process and improve production efficiency, but also reduces potential risks caused by data leakage.

[0105] Looking ahead to the market, as data security and privacy protection regulations continue to improve, enterprises are increasingly demanding compliance. The verifiable cloud outsourcing inner product function encryption solution fits this trend perfectly, providing a solution that can both ensure data privacy and meet compliance requirements. Market research institutions predict that the cloud security market will grow at a compound annual growth rate of more than 20% in the next few years and is expected to reach tens of billions of dollars. In this process, solutions based on verifiable encryption technology will occupy an increasingly important position, especially in the context of the widespread application of technologies such as machine learning and artificial intelligence. The demand for data security and privacy protection will continue to rise, driving the market demand for this encryption solution.

[0106] As the digital transformation of enterprises accelerates, more and more companies are migrating their businesses to the cloud, which not only improves computing efficiency but also places higher demands on data security. In this context, encryption solutions with verifiable characteristics will become an important consideration for enterprises when choosing cloud services. For relevant enterprises, actively exploring and implementing verifiable encryption solutions will be the key to improving competitiveness and market share.

[0107] In short, the verifiable cloud outsourcing inner product function encryption scheme is gradually becoming an important guarantee for data security in the field of cloud computing with its unique technical advantages and wide application scenarios. With the continuous expansion of market demand and the increasingly stringent data privacy protection regulations, this technology is expected to occupy an important market position in future development. If enterprises can keep up with this trend in time, they will be invincible in the fierce market competition.

[0108] The preferred embodiments of the present invention are described in detail above in conjunction with the accompanying drawings. However, the present invention is not limited to the specific details in the above embodiments. Within the technical concept of the present invention, a variety of simple modifications can be made to the technical solution of the present invention, and these simple modifications all belong to the protection scope of the present invention.

[0109] It should also be noted that the various specific technical features described in the above specific embodiments can be combined in any suitable manner without contradiction. In order to avoid unnecessary repetition, the present invention will not further describe various possible combinations.

[0110] In addition, various embodiments of the present invention may be arbitrarily combined, and as long as they do not violate the concept of the present invention, they should also be regarded as the contents disclosed by the present invention.

Claims

1. A verifiable cloud outsourcing inner product function encryption method, characterized in that: The method comprises: Generate the master public-private key pair through the bilinear group obtained by system initialization; The data owner uploads the encrypted data to the cloud server; wherein the encrypted data is obtained according to the master public key in the master public-private key pair; The data user obtains the function decryption key in the key generation center through the function vector, and uploads the function vector ciphertext to the cloud server; wherein the function vector ciphertext is obtained by encrypting the function vector; The cloud server performs intermediate value calculation on the encrypted data and the function vector ciphertext, and returns the intermediate value to the data user; The data user decrypts the intermediate value using the function decryption key to obtain an inner product result; The data owner verifies the intermediate value using the inner product result, and accepts the inner product result if the verification passes; and rejects the inner product result if the verification fails.

2. The verifiable cloud outsourcing inner product function encryption method according to claim 1, characterized in that: The bilinear group in, Both represent multiplicative cyclic groups of prime order p and satisfy the mapping g1 means The generator of g2 represents The generator of g T express The generator of the master public-private key pair is (mpk, msk), where the master public key Master private key msk = (s, t), vector vector Vector s=(s1,...,s i , ..., s l ), vector t=(t1,...,t i , ..., t l ), Representation in finite fields The l-dimensional vector space on .

3. The verifiable cloud outsourcing inner product function encryption method according to claim 1, characterized in that: The data owner uploads the encrypted data to the cloud server, including: The data owner selects a random value α and a random value t; wherein the random value Representing a finite field The non-zero elements in the random value t=g1 α ; The ciphertext C is obtained according to the random value α and the message vector x. A ; Wherein, the message vector Representation in finite fields l-dimensional vector space on ; The data owner randomly selects a message vector x′ and a random value r; wherein the message vector The random value The ciphertext C′ is obtained according to the message vector x′ and the random value r A , verification vector vx and random value w; The data owner signs the verification vector vx using the signature private key to obtain the signature σ of the verification vector vx vx ; The ciphertext C A , the ciphertext C′ A , the random value t, the verification vector vx, the random value w and the signature σ of the verification vector vx vx The encrypted data is uploaded to the cloud server.

4. The verifiable cloud outsourcing inner product function encryption method according to claim 3, characterized in that: The signature public and private key pair is (spk, ssk), the signature public key spk = (spk1, spk2), and the sub-public key spk1 = g2 a , child private key spk2 = g1 b , signature private key ssk = (a, b), random number Random Numbers 5. The verifiable cloud outsourcing inner product function encryption method according to claim 1, characterized in that: The data user obtains the function decryption key from the key generation center through the function vector, and uploads the function vector ciphertext to the cloud server, including: The data user sends a function vector y to the key generation center; wherein the function vector Representation in finite fields l-dimensional vector space on ; The key generation center generates a function decryption key sk corresponding to the function vector y for the data user y ; The key generation center decrypts the function key sk y Return to the data user; The data user selects a random value β and uses the random value β to encrypt the function vector y to obtain the function vector ciphertext C B ; Wherein, the random value Representing a finite field The non-zero elements in ; The function vector ciphertext C B Upload to the cloud server.

6. The verifiable cloud outsourcing inner product function encryption method according to claim 2, characterized in that: The cloud server performs intermediate value calculation on the encrypted data and the function vector ciphertext, which is expressed as follows: Among them, CC, dC, CC′ and dC′ represent the intermediate values, C A,i Represents ciphertext C A The i-th element in C B,i Represents the function vector ciphertext C B The i-th element in C′ A,i Represents the ciphertext C′ A The i-th element in is a random value Random Values Representing a finite field The non-zero elements in x i represents the i-th element in the message vector x, the message vector x′ i represents the i-th element in the message vector x′, the message vector yi represents the i-th element in the function vector y.

7. The verifiable cloud outsourcing inner product function encryption method according to claim 6, characterized in that: The data user decrypts the intermediate value using the function decryption key to obtain an inner product result, including: The data user uses the function to decrypt the key sk v The intermediate value dC and the intermediate value dC′ are calculated with the random value β to obtain the intermediate value d1, the intermediate value d2 and the intermediate value d′2; An inner product result is obtained according to the intermediate value d1, the intermediate value d2, the intermediate value d'2, the intermediate value CC and the intermediate value CC'.

8. The verifiable cloud outsourcing inner product function encryption method according to claim 1, characterized in that: The data owner verifies the intermediate value using the inner product result, and accepts the inner product result if the verification passes; If the verification fails, the inner product result is rejected, including: The data user uses the signature public key spk of the data owner to perform signature verification on the intermediate value; When the intermediate value passes the signature verification, the data user verifies the intermediate value using the inner product result, and accepts the inner product result if the verification passes; otherwise, the inner product result is rejected.

Citation Information

Patent Citations

  • Message-based and key-dependent privacy data encryption method

    CN106534092A

  • A searchable public key encryption method supporting inner product operations

    CN109325361A

  • An encrypted image retrieval method supporting multiple keys

    CN109543061A

  • Ciphertext retrieval system and method, computer equipment and storage medium

    CN115309861A

  • Decentralized data aggregation sharing method and system based on secure inner product calculation

    CN115765980A