communication costs for both parties are directly related to the number of gates in the circuit. By carefully integrat-ing the subtraction and comparison computations, and by avoiding the need to propagate indices, we provide a circuit that uses dramatically fewer gates than prior work.
Retrieval phase (Section 6). Our most novel contribution is a new backtracking technique that allows oblivious recov-ery of the record pi corresponding to the closest matching vector vi . Separating this retrieval step from the match-ing phase turns out to be more efficient that computing matching-plus-retrieval as one larger garbled circuit. The reason is simple: the record information can be quite large, and so including the records directly in the garbled circuit would dramatically increase the complexity and cost of the computation. Our main insight is to use the intermediate wire labels, a by-product of evaluating the garbled circuit in the matching phase, to efficiently perform oblivious re-trieval.
We have implemented our protocols to build an effi-cient privacy-preserving fingerprint-matching system. For the underlying matching algorithm we could have used the same PCA (principal component analysis) technique used in several privacy-preserving face-recognition sys-tems [5, 20]; however, this would have required a projection phase in addition to the distance-computation phase which would degrade performance. Instead, we use the Finger-Code technique [7] (also used by Barni et al. [1]), which only requires secure computation of Euclidean distances.
Aspects of our implementation are described in each of the relevant sections, and we report on the overall performance of the system in Section 7.