OT ⇒ OT extension (IKNP)
Statement
In the random-oracle model, base oblivious transfers of -bit strings, stretched to bits with the hash as a generator, yield any polynomial number of 1-out-of-2 transfers of -bit strings secure against semi-honest adversaries, with hash evaluations and bits of communication — IKNP03.
Sketch
The receiver, with choice bits , samples a uniform matrix ; the sender samples . In base transfers with the roles reversed, the sender obtains, for each column , the column if and if , so the -th row of its matrix is . It sends for , and the receiver outputs . The value masking the other message stays hidden because is uniform and unknown to the receiver — IKNP03.
\begin{algorithm}
\algname{Algorithm}
\caption{IKNP extension, transfer $i$}
\begin{algorithmic}
\State Receiver: $t_i \gets$ row $i$ of $T$
\Comment{After the base transfers the sender holds $q_i = t_i \oplus r_i s$}
\State Sender: $y_i^0 \gets x_i^0 \oplus H(i, q_i)$; $y_i^1 \gets x_i^1 \oplus H(i, q_i \oplus s)$
\State Receiver: \Return $y_i^{r_i} \oplus H(i, t_i)$
\end{algorithmic}
\end{algorithm}
Notes
- Efficiency: after public-key transfers, each extended transfer costs a constant number of hash evaluations and bits of communication — IKNP03.
- Without a random oracle, Beaver’s extension needs only a one-way function, but uses its code — Bea96.
- Malicious security adds only a small overhead to the semi-honest protocol — KOS15.