Research Article

Minutiae Matching with Privacy Protection Based on the Combination of Garbled Circuit and Homomorphic Encryption

Algorithm 1

Euclidean-distance ( , ).
Input: the encrypted template
from Bob, and query minutiae from Alice
Output: Alice gets the blind squared-distance bd and blind direction bo between
and .
(1)  Bob chooses , , , , concatenates them as strings:
   , …, ,
  where .
   For , …, , he computes ,
  where , and so forth
  and , , , , . He sends these cipher texts to Alice.
(2)  Alice decrypts ,…, and obtains ,
   and by parsing into , , ,
   and bit chunks respectively. And:
   (i)   For , …, and , …, , she calculates .
  (ii)   She pads zeros before each and ,
       constructs the bit strings: and , where .
       She then concatenates these strings together respectively: , …,
       , , …, ,
      where and are both bit values, and are both bit values,
      and .
  (iii)    For , …, , she computes and , transfers them to Bob.
(3)  Bob receives the cipher texts. Then:
   (i)   For ,…, and , …, , he computes .
  (ii)   He chooses , , , pads a zero before each number,
         concatenates each numbers as strings with respect to :
         , …, , and computes
        , …, .
  (iii)   For ,…, and ,…, , he computes
         and sends them to Alice.
(4)  Alice receives and decrypts , , . Then:
  (i)     For , …, , she unpacks each by parsing it into bit chunks to obtain
        , …, , …, , …, , where .
  (ii)   For , …, and , …, , she computes the blind squared-distance
         and the blind orientation difference
        between and each .