US2025068395A1PendingUtilityA1

Inner Products with Secure Multi-Party Computations

Assignee: SEDICII INNOVATIONS LTDPriority: Feb 28, 2022Filed: Feb 28, 2023Published: Feb 27, 2025
Est. expiryFeb 28, 2042(~15.6 yrs left)· nominal 20-yr term from priority
H04L 2209/04H04L 2209/46G06F 7/582H04L 9/0894
29
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

A secure multiparty computation method permits the computation of an inner product of a pair of secret vectors. The vectors are transformed and blinded using various blinding factors with the transforms of the vectors being according to a discrete linear transform for which Parseval's theorem holds. Shares of the transformed, blinded vectors are distributed to computing nodes which each calculate shares of a result without access to the secrets, and the result shares can be combined to generate the inner product of the original vectors.

Claims

exact text as granted — not AI-modified
1 . A method of performing a multi-party computation by a network of data processors, said data processors comprising first and second dealer nodes, a plurality of M computing nodes, and at least one result node, the method comprising:
 (a) providing the first dealer node with a random vector A having components (A 0 , A 1 , . . . , A M−1 ) all of which are non-zero;   (b) providing the second dealer node with an inverse vector A −1  having components (A 0   −1 , A 1   −1 , . . . , A M−1   −1 ), such that for each i∈{0, . . . , M−1}, the product A i ·A i   −1 =1;   (c) the first dealer node computing a first transformed vector X=(X 0 , X 1 , . . . , X M−1 ) of a first private input vector x=(x 0 , x 1 , . . . , x M−1 ), according to a discrete linear transform for which Parseval's theorem holds;   (d) the first dealer node computing a first blinded vector U=(U 0 , U 1 , . . . , U M−1 ) as U=A∘X where the operator ∘ represents the Hadamard product;   (e) the second dealer node computing a second transformed vector Y=(Y 0 , Y 1 , . . . , Y M−1 ) of a second private input vector y=(y 0 , y 1 , . . . , y M−1 ), according to said discrete linear transform;   (f) the second dealer node computing a second blinded vector V=(V 0 , V 1 , . . . , V M−1 ) as V=A −1 ∘Y where the operator ∘ represents the Hadamard product;   (g) the first dealer sending the i-th component U i  of the first blinded vector U to the i-th computing node for each i∈{0, . . . , M−1};   (h) the second dealer sending the i-th component V i  of the second blinded vector V to the i-th computing node for each i∈{0, . . . , M−1};   (i) for each j∈{0, . . . , (M−1)}, the j-th computing node:
 calculating from its received components U j  and V j  a result share 
   
       
         
           
             
               
                 
                   R 
                   j 
                 
                 = 
                 
                   
                     1 
                     M 
                   
                   ⁢ 
                   
                     
                       U 
                       j 
                     
                     · 
                     
                       V 
                       j 
                     
                   
                 
               
               , 
             
           
         
         
            and 
           sending the result share R j  to one or more of the one or more result nodes; 
         
         (j) said one or more result nodes calculating, from the M received result shares R j  for j∈{0, . . . , M−1}, the inner product of the first and second private input vectors x, y as: 
       
       
         
           
             
               
                 〈 
                 
                   x 
                   , 
                   y 
                 
                 〉 
               
               = 
               
                 
                   ∑ 
                   
                     j 
                     = 
                     0 
                   
                   
                     M 
                     - 
                     1 
                   
                 
                 
                   R 
                   j 
                 
               
             
           
         
       
     
     
         2 . The method according to  claim 1 , wherein the first and second dealer nodes generate the first and second private input vectors x and y of dimension M, respectively, as expansions of original unexpanded private input vectors x orig  and y orig  of dimension N, respectively, where N<M, and where: 
       
         
           
             
               
                 
                   x 
                   orig 
                 
                 = 
                 
                   ( 
                   
                     
                       x 
                       0 
                     
                     , 
                     
                       x 
                       1 
                     
                     , 
                     … 
                         
                     , 
                     
                       x 
                       
                         N 
                         - 
                         1 
                       
                     
                   
                   ) 
                 
               
               ⁢ 
               
 
               
                 
                   y 
                   orig 
                 
                 = 
                 
                   ( 
                   
                     
                       y 
                       0 
                     
                     , 
                     
                       y 
                       1 
                     
                     , 
                     … 
                         
                     , 
                     
                       y 
                       
                         N 
                         - 
                         1 
                       
                     
                   
                   ) 
                 
               
               ⁢ 
               
 
               
                 x 
                 = 
                 
                   ( 
                   
                     
                       x 
                       0 
                     
                     , 
                     
                       x 
                       1 
                     
                     , 
                     … 
                         
                     , 
                     
                       x 
                       
                         N 
                         - 
                         1 
                       
                     
                     , 
                     
                       x 
                       N 
                     
                     , 
                     … 
                         
                     , 
                     
                       x 
                       
                         M 
                         - 
                         1 
                       
                     
                   
                   ) 
                 
               
               ⁢ 
               
 
               
                 y 
                 = 
                 
                   ( 
                   
                     
                       y 
                       0 
                     
                     , 
                     
                       y 
                       1 
                     
                     , 
                     … 
                         
                     , 
                     
                       y 
                       
                         N 
                         - 
                         1 
                       
                     
                     , 
                     
                       y 
                       N 
                     
                     , 
                     … 
                         
                     , 
                     
                       y 
                       
                         M 
                         - 
                         1 
                       
                     
                   
                   ) 
                 
               
             
           
         
         and where the components x N , . . . , x M−1  and y N , . . . , y M−1  are chosen such that: 
       
       
         
           
             
               
                 
                   ∑ 
                   
                     i 
                     = 
                     N 
                   
                   
                     M 
                     - 
                     1 
                   
                 
                 
                   
                     x 
                     i 
                   
                   · 
                   
                     y 
                     i 
                   
                 
               
               = 
               0 
             
           
         
       
     
     
         3 . The method according to  claim 1 , wherein the steps of providing the first and second dealers with the random vectors A and A −1  comprise both dealers operating a pseudo-random number generator in sync to generate the components of vector A, and the second dealer node calculating A −1  from the vector A. 
     
     
         4 . The method according to  claim 1 , wherein the steps of providing the first and second dealers with the random vectors A and A −1  comprise a trusted third party node communicating vector A to the first dealer node and either vector A or vector A −1  to the second dealer node. 
     
     
         5 . The method according to  claim 1 , wherein the steps of providing the first and second dealers with the random vectors A and A −1  comprise communicating either vector A or vector A −1  cryptographically to at least one of the first and second dealer nodes. 
     
     
         6 . The method according to  claim 1 , wherein the vector A is {1, 1, . . . , 1}. 
     
     
         7 . The method according to  claim 1 , wherein the private input vectors have integer components and arithmetical operations are performed modulo a prime number p. 
     
     
         8 . The method according to  claim 1 , wherein the discrete linear transform for which Parseval's theorem holds is selected from:
 the Number Theoretic Transform (NTT);   the Fermat Number Transform (FNT);   the Mersenne Number Transform (MNT);   the Discrete Fourier Transform;   the Z-Transform;   the Discrete Hartley Transform;   the Discrete Wavelet Transform with arbitrary orthogonal wavelet bases, such as Haar, Daubechies, Simlets, Coiflets, Meyer, Morlet and Gaussian wavelet families.   
     
     
         9 . The method according to  claim 1 , wherein the discrete linear transform is not the null function. 
     
     
         10 . The method according to  claim 1 , wherein the discrete linear transform is not the identity function. 
     
     
         11 . The method according to  claim 1 , wherein the private input vectors have real or complex number components.

Join the waitlist — get patent alerts

Track US2025068395A1 — get alerts on status changes and closely related new filings.

We store only your email — no account needed. See our privacy policy.