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 . |
|