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 B.
- 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 toBas possible. - 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 toAas possible.
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 additional information about the actual value of B to Alice or the value of A to Bob.
Caveats:
- 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 ofB. Assume that neither party is allowed to change their value.
Does such an algorithm exist? If not, is such a solution even possible?