Patent ID: 8271796

Claim:
An apparatus for computing a measure of the similarity of two original strings of characters, each original string being known by only one of a number of participants, in such a way that the information which can be learned about either of the strings by any party is explicitly quantified and limited, the apparatus comprising: a plurality of participants; each participant of said plurality of participants comprising a computing device equipped with: a processor for numerical computation; a memory for storage of data; an interface for communicating with the computing device of the other participants; and a set of stored instructions for executing a series of steps, wherein each step comprises one participant of said plurality of participants receiving a message from another participant of said plurality of participants, wherein each participant performs a first computation with the data in the message received together with additional existing data to generate first resultant data which is stored and performs a second computation with the data in the message received together with said additional existing data to generate second resultant data which is formed into a message transmitted to another participant; and a display for displaying said first resultant data; wherein the set of instructions is arranged such that: each participant generates a binary matrix, with a first participant generating Ma and a second participant generating Mb, with the number of rows equal to at least the number of characters in their respective string, and with the number of columns equel to at least the number of characters in an alphabet from which the characters of their original string are drawn, such that, for each character in the original string, there corresponds a row in the matrix with a nonzero element in the column corresponding to the ordinal number of the character which is within the ordered alphabet from which the original string is drawn.