| title | Yao protocol |
|---|---|
| parent | Protocols |
| has_children | true |
| nav_order | 2 |
The protocol consists of 6 steps as follows:
-
The underlying function (e.g., in the millionaires' problem, comparison function) is described as a Boolean circuit with 2-input gates. The circuit is known to both parties. This step can be done beforehand by a third-party.
-
Alice garbles (encrypts) the circuit. We call Alice the garbler.
-
Alice sends the garbled circuit to Bob along with her encrypted input.
-
Bob through oblivious transfer receives Alice's encrypted circuit and input. In terms of the definition from above, Bob is the receiver and Alice the sender at this oblivious transfer.
-
Bob evaluates (decrypts) the circuit and obtains the encrypted outputs. We call Bob the evaluator.
-
Alice and Bob communicate to learn the output.