主权项 |
1. A method for comparing two sets of private data without revealing the data, the method comprising the steps of:
computing, using a first computer by a first party, a first private matrix (A1) according to the equation A1=d1·d1T where d1 is a non-zero first private data expressed as a column vector and d1T is its corresponding transpose; finding, a first eigenvalue (λd1) and a corresponding unity normalized first eigenvector (Vd1) of the first private matrix (A1); computing, using a second computer by a second party, a second private matrix (A2) according to the equation A2=d2·d2T where d2 is a non-zero second private data expressed as a column vector and d2T is its corresponding transpose; finding a second eigenvalue (λd2) and a corresponding unity normalized second eigenvector (Vd2) of the second private matrix (A2); computing, using the first computer and the second computer, a non-zero bisector vector (x) in the equation (d1·d1T+d2·d2T)x=λd1Vd1+λd2Vd2 by exchanging encrypted matrix d1·d1T; encrypted vector λd1Vd1; encrypted matrix d2·d2T; and encrypted vector λd2Vd2 respectively, without the first party or the second party revealing d1, λd1, Vd1, d2, λd2 or Vd2; determining whether or not (1) an angular deviation between the first eigenvector (Vd1) and the second eigenvector (Vd2) is within a threshold, or (2) a distance between Vd1 and Vd2 is within the threshold, wherein:
if the determining within the threshold is satisfied, the first private data and second private data are deemed sufficiently similar;if the determining within the threshold is un satisfied, the first private data and second private data are deemed dissimilar. |