基于Oblivious PRFs的不经意传输协议(OT)

编程入门 行业动态 更新时间:2024-10-18 23:32:35

基于Oblivious PRFs的不经意<a href=https://www.elefans.com/category/jswz/34/1739776.html style=传输协议(OT)"/>

基于Oblivious PRFs的不经意传输协议(OT)

Oblivious PRFs

OPRF protocol

令 F F F是定义在 ( K , X , Y ) (K,X,Y) (K,X,Y)上的带密钥的安全 P R F PRF PRF。协议的双方是发送者(拥有 k k k)和接收者(拥有 x x x),协议有如下性质,

  1. 接收者可以学习到 y : = F ( k , x ) y:=F(k,x) y:=F(k,x)
  2. 接收者无法学习到其他点 x ′ ≠ x x'\neq x x′​=x的函数值。
  3. 发送者无法学习到关于 x x x的任何信息。

一种基于CDH的实例

K = Z q K=Z_q K=Zq​, G G G是生成元为 g g g的素数 q q q阶循环群。令 F : K × X → Y F: K \times X \rightarrow Y F:K×X→Y是如下形式的 P R F PRF PRF,
F ( k , x ) : = H ′ ( x , H ( x ) k ) F(k,x) := H'(x,H(x)^k) F(k,x):=H′(x,H(x)k)
其中 H : X → G H:X \rightarrow G H:X→G, H ′ : X × G → Y H': X \times G \rightarrow Y H′:X×G→Y都是基于 R O M ROM ROM的Hash函数。

发送者的私钥为 k ← R Z q k \leftarrow_R Z_q k←R​Zq​,公钥为 u = g k ∈ G u=g^k \in G u=gk∈G。接收者要计算点 x ∈ X x \in X x∈X的函数值。协议如下:

  1. 接收者选择 ρ ← R Z q \ { 0 } \rho \leftarrow_R Z_q \backslash\{0\} ρ←R​Zq​\{0} 和 τ ← R Z q \tau \leftarrow_R Z_q τ←R​Zq​,计算 v ← H ( x ) ρ ⋅ g τ ∈ G v \leftarrow H(x)^\rho \cdot g^\tau \in G v←H(x)ρ⋅gτ∈G,发送 v v v给发送者
  2. 发送者计算 w ← v k ∈ G w \leftarrow v^k \in G w←vk∈G,发送 w w w给接收者
  3. 接收者计算 y ← H ′ ( x , ( w ⋅ u − τ ) 1 / ρ ) ∈ Y y \leftarrow H'(x,(w\cdot u^{-\tau})^{1/\rho}) \in Y y←H′(x,(w⋅u−τ)1/ρ)∈Y

安全性:在恶意发送者存在的情况下, τ \tau τ是均匀的导致 v ∈ G v \in G v∈G是均匀的,上述协议是安全的。在恶意接收者存在的情况下,在one more Diffie-Hellman assumption下(敌手学习某些 ( v , w : = v α ) (v,w:=v^\alpha) (v,w:=vα)对,然后挑战者发送一些 v v v,敌手同时正确计算出所有的 w = v α w=v^\alpha w=vα的概率可忽略),上述协议是安全的。

基于OPRF的OT协议

令 F F F是定义在 ( K p r f , [ n ] , K ) (K_{prf},[n],K) (Kprf​,[n],K)上的的 P R F PRF PRF,令 Π \Pi Π是计算 F F F的OPRF协议,再令 ( E , D ) (E,D) (E,D)是定义在 ( K , M , C ) (K,M,C) (K,M,C)上的对称加密方案。

发送者拥有 m 1 , ⋯ , m n ∈ M m_1,\cdots,m_n \in M m1​,⋯,mn​∈M,接收者希望获得 m i m_i mi​。OT协议的流程为:

  1. 发送者选择 k ← R K p r f k \leftarrow_R K_{prf} k←R​Kprf​,自行计算 k i ← F ( k , i ) k_i \leftarrow F(k,i) ki​←F(k,i),然后计算 c i ← R E ( k i , m i ) c_i \leftarrow_R E(k_i,m_i) ci​←R​E(ki​,mi​),最后发送 C : = ( c 1 , ⋯ , c n ) C:=(c_1,\cdots,c_n) C:=(c1​,⋯,cn​)给接收者
  2. 接收者根据索引 i i i,利用协议 Π \Pi Π和发送者交互,计算出 k i = F ( k , i ) k_i = F(k,i) ki​=F(k,i),最后输出 m i ← D ( k i , c i ) m_i \leftarrow D(k_i,c_i) mi​←D(ki​,ci​)

上述协议中,发送者只需执行 1 1 1次第一步,接收者可以执行 l l l次第二步来获取至多 l l l个不同的消息。

安全性:在恶意发送者存在的情况下,根据OPRF协议的安全性,发送者无法学习到关于 i i i的任何信息,上述OT协议是安全的。在恶意接收者存在的情况下,根据OPRF协议的安全性,接收者至多解密 l l l个消息(这里 l l l是协议第二步的执行次数),上述OT协议是安全的。

更多推荐

基于Oblivious PRFs的不经意传输协议(OT)

本文发布于:2024-02-06 03:18:54,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1745660.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:传输协议   Oblivious   PRFs   OT

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!