Cryptography: Oblivious Transfer with at most one transfer? I am trying find a transfer method for this problem. Suppose Alice and Bob both has access to a function $\text{F}$ with two parameters. $\text{F}(x,y)$ randomly returns $p$ to alice and $q$ to Bob  such that $x\times y=p \oplus q$. Now as per rules of Oblivious Transfer, Alice has $s_0$ and $s_1$ and Bob has $c$. Bob wants to learn $Sc$. The catch is alice can transfer at most one bit in total to bob, that means they can communicate just once. How can Bob learn $Sc$ using this function?
The obvious approach is to help Bob learn $s_0 \oplus (s_0 \oplus s_1) \times c$, presumably using $F$ to help him learn this information.  So, here is the natural protocol:


Alice and Bob invoke $F$.  Alice provides the input $s_0 \oplus s_1$, Bob provides the input $c$.  Alice learns $p$ and Bob learns $q$, where we are guaranteed that $p \oplus q = (s_0 \oplus s_1) \times c$.
Alice sends $p \oplus s_0$ to Bob.


Notice that, with this information Bob can compute $s_c$.  I leave it as an exercise to you how to do that.

Also, notice that Bob learns only one of $s_0,s_1$.  I leave it to you as an exercise to prove that.

Finally, notice that if $F$ does not disclose anything about its inputs to either part, then Alice does not learn anything about Bob's bit $c$.