Secure outsourcing batch computing method based on semi-homomorphic encryption and double-server architecture

Through a secure outsourcing batch calculation method based on semi-homomorphic encryption and dual-server architecture, the problem of inefficient computing efficiency of large-scale data sets in the prior art is solved, and efficient negative integer calculation and data privacy protection are achieved.

CN120498634APending Publication Date: 2025-08-15XIDIAN UNIV
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202510663849.5
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-05-21
Publication Date
2025-08-15

AI Technical Summary

Technical Problem

Existing encryption calculation methods cannot efficiently process batch operations of large-scale data sets, especially linear operations such as matrix multiplication. There is a limitation that intermediate results are inaccessible, high storage requirements, and it is difficult to support iterative calculations. The existing solutions only support positive integers and are difficult to process negative numbers or other types of data.

Method used

The secure outsourcing batch calculation method based on semi-homomorphic encryption and dual-server architecture is adopted to encrypt data using public keys and distribute private key shares to cloud computing platforms and computing service providers. Combined with batch multiplication and square operations, dual-servers collaboratively perform secure calculations to ensure that the data remains encrypted at all times.

Benefits of technology

It significantly improves computing efficiency, supports encryption calculations of negative integers, expands the scope of application, and ensures data privacy through the threshold Paillier encryption scheme to avoid data leakage.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120498634A_ABST
    Figure CN120498634A_ABST
Patent Text Reader

Abstract

The invention provides a safe outsourcing batch calculation method based on semi-homomorphic encryption and a double-server architecture, and the privacy of image data is ensured by combining secret sharing and homomorphic encryption technologies. The method comprises the following steps that: a data owner (DO) encrypts pk of original data by using a public key, generates an encrypted data set # imgabs0 # and respectively sends the encrypted data set # imgabs0 # to a cloud computing platform (CP) and a computing service provider (CSP), and each party only masters part of private keys sk1 and sk2; the two servers cooperatively execute secure batch multiplication SBMUL and secure batch square calculation SBSQU, and data is always in a ciphertext state # imgabs1 #, so that efficient calculation is realized on the premise of ensuring data privacy. The scheme breaks through the limitation that an existing method can only process natural numbers or data prone to leakage, and the calculation and communication efficiency is remarkably improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of information security technology, and in particular to a secure outsourced batch computing method based on semi-homomorphic encryption and a dual-server architecture. Background Art

[0002] With the widespread adoption of cloud computing and outsourced computing, data privacy and computational security are becoming increasingly prominent. Existing encryption methods mostly employ homomorphic encryption (HE). Fully homomorphic encryption (FHE) can perform arbitrary arithmetic operations on encrypted data, but its computational and storage overhead are very high. While semi-homomorphic encryption (PHE) exhibits good performance for specific operations, most existing schemes can only process natural numbers and often present security risks.

[0003] Existing outsourced computing protocols have more or less the following defects: they are unable to efficiently handle batch operations on large-scale data sets, especially linear operations such as matrix multiplication; there is a limitation that intermediate results are inaccessible, making it difficult to support iterative calculations; the storage requirements are too high, resulting in inefficient storage of encrypted data; some solutions only support positive integers and have difficulty processing negative numbers or other types of data.

[0004] Therefore, the existing technology requires an efficient and secure computing method that can perform batch encryption calculations in an outsourced computing environment and ensure the privacy of data and the accuracy of calculations. Summary of the Invention

[0005] To address the challenges of existing technologies, this paper proposes a secure outsourced batch computing method based on semi-homomorphic encryption and a dual-server architecture. This approach aims to overcome technical limitations such as the inability to efficiently process large datasets and excessive storage requirements. This solution supports batch multiplication and squaring operations on encrypted integers, not just natural numbers. By employing a dual-server architecture, computational efficiency is significantly improved, while data privacy is ensured during the computation process through secure protocols.

[0006] The technical solution of the present invention is achieved as follows:

[0007] A secure outsourcing batch computing method based on semi-homomorphic encryption and a dual-server architecture includes the following steps:

[0008] Step 1: The data owner (DO) uses the public key pk to encrypt the data to be processed and generate an encrypted data set The encrypted data set includes a plurality of encrypted data elements

[0009] Step 2: The data owner will encrypt the dataset Transmit to the cloud computing platform (CP), and send the private key share sk1 of the key to the CP, and send the other part of the private key share sk2 to the computing service provider (CSP);

[0010] Step 3: The CSP performs a batch multiplication operation (SBMUL) according to the instruction of the CP, which is used to perform a calculation operation of multiplying the data elements in the encrypted data set by the specified encryption constant;

[0011] Step 4: The CSP performs a batch square operation (SBSQU) according to the instruction of the CP to perform the square of the data elements in the encrypted data set;

[0012] Step 5: The cloud platform and computing service provider jointly complete the secure batch calculation and return the encrypted calculation results.

[0013] As a further optimization of the above solution, the public key pk=(N, g), wherein N=qp, g=N+1, and q and p are arbitrarily selected large prime numbers.

[0014] As a further optimization of the above scheme, the original data is and in is a constant,

[0015] As a further optimization of the above scheme, converting floating point numbers into integer fractions is to split the encrypted number field into The representative data is the area where the original data is positive. It represents the area where the original data is negative.

[0016] As a further optimization of the above scheme, the encryption formula is: in is a random number.

[0017] As a further optimization of the above scheme, the decryption formula is also included: in sk=lcm(p-1, q-1), 0≤μ≤N.

[0018] As a further optimization of the above solution, in step 2, the decryption process includes the following steps:

[0019] Step 21, Partial decryption phase: CP and CSP independently use their private key shares sk i , i∈[1,2], for the ciphertext Perform partial decryption operation to generate intermediate value [X] i , specifically:

[0020] Step 22, threshold combination decryption phase: recover the plaintext X by jointly calculating the two intermediate values [X]1 and [X]2, specifically: X←TDec([X]1, [X]2)=L(X1·X2mod N 2 ).

[0021] As a further optimization of the above solution, in step 3, the steps for calculating the batch multiplication operation (SBMUL) are as follows:

[0022] Step 31: CP initializes encryption value Set the base δ←2 shift , and generate a random number array r = {r1, r2, ..., r n}, where each r i is a σ-bit random number;

[0023] Step 32: For the input vector Each ciphertext element in CP performs operations in represents homomorphic multiplication, represents homomorphic addition;

[0024] Step 33, CP uses private key sk1 to Perform partial decryption and get And [X]1, and Sent to CSP, where is the encrypted number being multiplied;

[0025] Step 34, CSP uses private key sk2 to Perform partial decryption to obtain And recover the plaintext X←TDec([X]1, [X]2) by decryption;

[0026] Step 35: CSP extracts the components of X from low to high bits, and executes for each i∈[n,1] and update Finally, the ciphertext product set Return CP;

[0027] Step 36: CP for each Perform an action in Represents homomorphic subtraction, and finally outputs the batch product result

[0028] As a further optimization of the above scheme, in step 4, the batch square operation (SBSQU) steps are as follows:

[0029] Step 41: The computing party CP initializes a random number array r←{r1, r2, ..., r n}, where each r i is a randomly selected value; for each ciphertext element Perform the operation:

[0030] Step 42: CP performs homomorphic multiplication accumulation on the ciphertext sequence according to the power of the base δ to generate the aggregated ciphertext CP uses the private key share sk1 to Perform partial decryption to obtain and will and [C]1 is sent to CSP;

[0031] Step 43: CSP uses sk2 to decrypt Recover the plaintext C←TDec([C]1, [C]2) by decryption;

[0032] Step 44: CSP decomposes the plaintext C one by one, and calculates for each i∈[1,n]: And encrypt its square value Return the result value set to CP;

[0033] Step 45: CP performs the following operations on each returned ciphertext: Final output batch square results

[0034] Compared with the prior art, the present invention achieves the following beneficial effects:

[0035] (1) The present invention proposes a secure outsourcing batch computing method based on semi-homomorphic encryption and a dual-server architecture. Compared with existing solutions, the present invention greatly improves the efficiency of batch computing by processing multiple encrypted data in parallel.

[0036] (2) The adopted threshold Paillier encryption scheme ensures that the data always remains encrypted during the calculation process, avoiding the risk of data leakage.

[0037] (3) Unlike traditional encryption schemes that only support positive integers, the present invention can support encryption calculations of negative integers, expanding the scope of application. BRIEF DESCRIPTION OF THE DRAWINGS

[0038] Figure 1 This is a working principle diagram of a secure outsourced batch computing method based on semi-homomorphic encryption and a dual-server architecture provided by an embodiment of the present invention;

[0039] Figure 2 This is an interactive diagram of a secure outsourced batch computing method based on semi-homomorphic encryption and a dual-server architecture provided by an embodiment of the present invention. DETAILED DESCRIPTION

[0040] In order to make the objectives, technical solutions and advantages of the present invention more clearly understood, the technical solutions in the embodiments of the present invention will be clearly and completely described below in conjunction with the accompanying drawings in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without making creative efforts shall fall within the scope of protection of the present invention.

[0041] like Figure 1 、 Figure 2 As shown, this embodiment provides a secure outsourcing batch computing method based on semi-homomorphic encryption and a dual-server architecture, including the following steps:

[0042] Step 1. Initialization and Data Encryption: The data owner (DO) first selects two large prime numbers q and p, calculates the modulus N = qp, and calculates sk = lcm(p-1, q-1). The public key pk = (N, g) is selected, where N = qp and g = N+1. The data owner generates a random number and encrypts the original data using the following formula:

[0043] Experimental output: The initial encrypted data X(encrypted) is: 384799260509106394641771856500908514289140903740375915211164979511116375362601956307958483957202122202353966272097770091389567496663149218274395218182522 9811897525014304898835480006911515639032166015925587980354392041749265921048018162405642250653419770976343444578265283326625009288492051716998010949908953

[0045] Step 2: The data owner will encrypt the dataset Transmit to the cloud computing platform (CP), and send the private key share sk1 of the key to the CP, and send the other part of the private key share sk2 to the computing service provider (CSP);

[0046] Step 3: Batch multiplication operation: CP performs batch multiplication operation and generates a random mask array r = {r1, r2, ..., r n After performing the homomorphic operation to obtain the intermediate encrypted result, the intermediate value is partially decrypted and sent to the CSP. The CSP further decrypts the plaintext using the private key portion sk2, performs a multiplication operation with the specified number, and returns the encrypted result through the homomorphic operation. The CP removes the mask and finally obtains the ciphertext result of the batch multiplication.

[0047] Experimental output:

[0048] Random mask r: 512

[0049] The intermediate ciphertext value after the homomorphic operation is: 381919101344125923542544971429216176275126036033775010408276083755863597949617256060757317239684895844239884835171140050147245505618963181681455810330383 3468780281409959535123210773505900777492781327346603052458973852924088297774730387076604610099573519533570838787096884681215554279013688412093276043006635

[0051] The final ciphertext value after mask removal is: 572300518687999140111233222910934707099659632867540769673059001406352046632656237823013545624743426066399340477788447731195154110302478706558315731867775 920823215839354092479693200996055521042370355894364050688183334568893054124718071609135081256765914501293876663268910268918447857702245795289430439067306

[0053] Step 4, batch square operation: CP initializes random mask array r = {r1, r2, ..., r n}, mask each data element to generate an aggregate ciphertext, partially decrypt it to obtain an intermediate value, and send it to the CSP; the CSP further decrypts it to obtain the plaintext of each element, performs the square operation, and encrypts the result and returns it to the CP; the CP then performs a homomorphic operation to remove the mask to obtain the ciphertext result of the batch square;

[0054] Experimental output:

[0055] The intermediate ciphertext value after the batch square operation is: 580530223606193115878015907554040460314047850017298040526567114407704901687369548250722199728013568316165626451274036595258101702263265838356493541977736 535948920733119508908195790704981844844911138697437851276806735118768676929305756419690537554944111734264560528310111821377405749757089075914160342000120

[0057] The final square ciphertext value is: 147492926940023610814220046890949382872233846031546880669678342868497052893866583772478968938006843514046500842226415870021753276028931051810245229359920 7390147509222690557775649069943404768510631067249142178613873475150602534909410245187246124113228605296466399796921726398615063500734943237756909539326004

[0059] Step 5: Joint decryption: CP and CSP each use their own private key shares to perform partial decryption, generating intermediate values [X]1 and [X]2. They then jointly decrypt the final ciphertext using the threshold combination decryption formula to obtain the plaintext data.

[0060] Experimental output:

[0061] The CP partial decryption result X1 is: 535992564516588616797997116562289270241101285649528376456336350014626212116835186305507149665395626457703689918689161178340953821782293196969814869636666 248174101214816392298260757869762249262692693534656451178935953001549836857480839766383215399721920484442495831582426135109942549925729013869148721454068

[0063] The CSP partial decryption result X2 is: 247407114980340798125628262541850537740540215766351808763894020231043581403422680605767625956054560331261009825907689851339432219147104347844948947093037 0072888994409089188451571205071785221245725502700027251495698901670220906127790629798215207964715736251526094603057557546868603534625748553675593997440463

[0065] The final plaintext data after joint decryption is: 553730562

[0066] Based on the disclosure and teachings of the above description, those skilled in the art may also make changes and modifications to the above embodiments. Therefore, the present invention is not limited to the specific embodiments disclosed and described above, and modifications and variations of the present invention should also fall within the scope of protection of the claims of the present invention. In addition, although certain specific terms are used in this description, these terms are only for convenience of description and do not constitute any limitation to the present invention.

Claims

1. A secure outsourcing batch computing method based on semi-homomorphic encryption and dual-server architecture, characterized in that: The following steps are involved: Step 1: The data owner (DO) uses the public key pk to encrypt the data to be processed and generate an encrypted data set The encrypted data set includes a plurality of encrypted data elements Step 2: The data owner will encrypt the dataset Transmit to the cloud computing platform (CP), and send the private key share sk1 of the key to the CP, and send the other part of the private key share sk2 to the computing service provider (CSP); Step 3: The CSP performs a batch multiplication operation (SBMUL) according to the instruction of the CP, which is used to perform a calculation operation of multiplying the data elements in the encrypted data set by the specified encryption constant; Step 4: The CSP performs a batch square operation (SBSQU) according to the instruction of the CP to perform the square of the data elements in the encrypted data set; Step 5: The cloud platform and computing service provider jointly complete the secure batch calculation and return the encrypted calculation results.

2. A secure outsourcing batch computing method based on semi-homomorphic encryption and dual-server architecture according to claim 1, characterized in that: The public key pk=(N, g), wherein N=qp, g=N+1, and q and p are arbitrarily selected large prime numbers.

3. The secure outsourcing batch computing method based on semi-homomorphic encryption and dual-server architecture according to claim 1 is characterized in that: The original data is χ← <x1,x2,…,x n >, and in is a constant, 4. A secure outsourcing batch computing method based on semi-homomorphic encryption and dual-server architecture according to claim 1, characterized in that: The encryption formula is: in is a random number.

5. The secure outsourcing batch computing method based on semi-homomorphic encryption and dual-server architecture according to claim 1 is characterized in that: The decryption formula is: in sk=lcm(p-1,q-1), 0≤μ≤N.

6. A secure outsourcing batch computing method based on semi-homomorphic encryption and dual-server architecture according to claim 4, characterized in that: In step 2, the decryption process includes the following steps: Step 21, Partial decryption phase: CP and CSP independently use their private key shares sk i , i∈[1,2], for the ciphertext Perform partial decryption operations to generate intermediate values [X]i, specifically: Step 22, threshold combination decryption phase: recover the plaintext X by jointly calculating the two intermediate values [X]1 and [X]2, specifically: X←TDec([X]1, [X]2)=L(X1·X2mod N 2 ).

7. The secure outsourcing batch computing method based on semi-homomorphic encryption and dual-server architecture according to claim 1 is characterized in that: In step 3, the steps for calculating the batch multiplication operation (SBMUL) are as follows: Step 31: CP initializes encryption value Set the base δ←2 shift , and generate a random number array r = {r1, r2, ..., r n }, where each r i is a σ-bit random number; Step 32: For the input vector Each ciphertext element in CP performs operations in represents homomorphic multiplication, represents homomorphic addition; Step 33, CP uses private key sk1 to Perform partial decryption and get And [X]1, and Sent to CSP, where is the encrypted number being multiplied; Step 34, CSP uses private key sk2 to Perform partial decryption to obtain And recover the plaintext X←TDec([X]1, [X]2) by decryption; Step 35: CSP extracts the components of X from low to high bits, and executes for each i∈[n,1] and update Finally, the ciphertext product set Return CP; Step 36: CP for each Perform an action in Represents homomorphic subtraction, and finally outputs the batch product result 8. The secure outsourcing batch computing method based on semi-homomorphic encryption and dual-server architecture according to claim 1 is characterized in that: In step 4, the batch square operation (SBSQU) steps are as follows: Step 41: The computing party CP initializes a random number array r←{r1, r2, ..., r n }, where each r i is a randomly selected value; for each ciphertext element Perform the operation: Step 42: CP performs homomorphic multiplication accumulation on the ciphertext sequence according to the power of the base δ to generate the aggregated ciphertext CP uses the private key share sk1 to Perform partial decryption to obtain and will and [C]1 is sent to CSP; Step 43: CSP uses sk2 to decrypt Recover the plaintext C←TDec([C]1, [C]2) by decryption; Step 44: CSP decomposes the plaintext C one by one, and calculates for each i∈[1,n]: And encrypt its square value Return the result value set to CP; Step 45: CP performs the following operations on each returned ciphertext: Final output batch square results