# Could ECDH-OPRF-PSI support private information retrieval？

Alice：has $$x=(x_1，x_2,...x_m)$$

Bob: has $$(y_1,m_1),...,(y_n,m_n)$$

For this, Alice wants to get some message from Bob, but does not want bob to know which one she gets

• Bob generate random $$a \in Z_q$$$$cid_i=H(y_i^b),c_i=AES_{enc}(y_i^b, m_i),\forall i \in n$$
• Bob send all $$(cid_i,c_i)$$ to alice
• Alice generate random $$b \in Z_q$$，compute $$choose_j=x_j^b$$
• Alice send $$choose_j$$ to Bob
• Bob compute $$choose_j^a=x_j^{ab}$$,send to alice
• Alice get $$x_j^{a}$$ and $$cid_j=H(x_j^a)$$, if $$x_j=y_i, cid_j=cid_i$$， Alice can decrypt $$m_i=AES_{dec}(c_j,x_j^a)$$

Is this approach secure, or do I need to introduce additional constraints?

Moreover, can I incorporate the OPRF portion from RA2018 or KKRT, in which Bob shares the appropriate key with Alice in this manner, while Alice only obtains the information she can query for? For example, if Alice queries for x1 and x2, she won't receive anything beyond m1 and m2

• Hi there. I've improved the formatting of the post using Markdown syntax and MathJax notation. But I'm not sure with "c_yi", I hope you can edit it in with exactly what you intend. Commented Oct 12, 2023 at 5:19
• There seems to be something wrong with your title. Conceptatlly, OPRF is equivalent to OT in the context of PSI. Moreover, your implementation is built from a classical OPRF instance which based on OMGDH problem. Commented Oct 12, 2023 at 7:10
• Thank you for your assistance; I have revised the description. Commented Oct 12, 2023 at 7:30