跳转到内容

不经意传输

维基百科,自由的百科全书

不经意传输(英语:Oblivious transfer)是密码学中的一类协议,实现了发送方将潜在的许多信息中的一个传递给接收方,但对接收方所接收信息保持未知状态。

不经意传输的第一种形式是由迈克尔·拉宾 (科学家)在1981年提出的。[1]这种形式的不经意传输发送方会有 1/2 的概率将消息发送给接收方,而发送方不知道接收方是否接收到该消息。

这种不经意传输方案基于RSA加密算法。1-2不经意传输是一种更为常用的不经意传输方案,这种方案被Oded Goldreich英语Oded_Goldreich亞伯拉罕·藍波Shimon Even英语Shimon_Even发展成为安全多方计算协议。[2]一般被称为 “1-n不经意传输”,在这种协议下用户仅能获得数据库中的一个元素,而服务器不知道用户查询了哪一个元素。不经意传输是私有信息检索的加强版本。

Claude_Crépeau英语Claude_Crépeau指出,迈克尔·拉宾的不经意传输等同于1-2不经意传输。[3]

进一步的工作表明,不经意传输是密码学中的一个基本而重要的问题,被认为是该领域的关键问题之一,对于安全多方计算来说是完整的实现。[4]

1–2 不經意傳輸協定

[编辑]

1-2 不經意傳輸協定中,發送方 Alice 有兩個訊息 m0m1,並希望確保接收方只知道其中一個。接收者 Bob 有一個位元 b,希望在 Alice 不知道 b 的情況下接收 mb。 Even-Goldreich-Lempel 協定 (作者部分歸功於 Silvio Micali)是普遍性的,但可以使用 RSA 加密實作如下。

Alice Bob
計算 私密 公開 公開 私密 計算
準備送出的訊息
生成 RSA 密鑰對,並且將公鑰送給 Bob 接收公鑰
產生兩個隨機訊息 接收隨機訊息
中選擇的值。產生隨機數
用隨機訊息混淆進行加密後送給 Alice
此兩者其中之一會等同,但 Alice 並不知道是哪一個
送出兩個訊息給 Bob 接收兩個訊息
因為 Bob 知道它之前選擇的 是哪一個,它能夠解密出

参考

[编辑]
  1. ^ 迈克尔·拉宾. How to exchange secrets by oblivious transfer. (PDF). [1981-05-20]. (原始内容 (PDF)存档于2021-11-23) (英语). 
  2. ^ S. Even, O. Goldreich, and A. Lempel. A Randomized Protocol for Signing Contracts (PDF). [1985-06]. (原始内容 (PDF)存档于2022-01-21) (英语). 
  3. ^ Claude_Crépeau英语Claude_Crépeau. Equivalence between two flavours of oblivious transfer (PDF). [1988] (英语). 
  4. ^ Joe Kilian. Founding Cryptography on Oblivious Transfer (PDF). [1988] (英语).