Imagine Alice is applying for a new job. Alice has an idea of the minimum salary that she is willing to accept—let's call this value
A. Bob, the hiring manager for a company that Alice is applying to, also has a number in mind: the maximum acceptable salary that he is willing to pay to fill the position—let's call this value
- Bob wants be sure that at least
B >= Ais true before spending the time to interview Alice.
- Bob does not want Alice to know the exact value of
B, because then she would be in a superior position to negotiate a salary as close to
- Alice would also like to know if
B >= Ais true, for the same reasons as Bob.
- Likewise, Alice does not want Bob to know the exact value of
A, because then Bob would be in a superior position to negotiate a salary as close to
I'm curious if there is a known cryptographic protocol that would allow Alice and Bob to exchange some information and conclusively determine the result of
B >= A, without revealing any information about the actual value of
B to Alice or the value of
A to Bob.
- The use of a third party is not allowed.
- Ignore the fact that the repeated use of such an algorithm with different values of
Awould allow Alice could learn the approximate value of
B. Assume that neither party is allowed to change their value.
Does such an algorithm exist? If not, is such a solution even possible?