混淆電路協議快速入門

混淆電路介紹

一、介紹

混淆電路是一種密碼學協議,由姚期智教授在80年代針對安全計算所提出的概念。其效果就是,當幾個通信方需要一起輸入某些數據,然後通過同一個函數計算出一個結果。但是通信的各方都不希望其他人知道自己的輸入是什麼,此時利用混淆電路協議即可完成目的。本文將簡單介紹混淆電路的協議內容。

二、基本協議內容

  1. 基本交互

在這裏插入圖片描述

  1. 混淆電路的生成

對於基本的電路,真值表如下:

img

然後給每一種輸入輸出對應一種密鑰,可以理解爲是一種映射,將原來的0/1輸入輸出對應到一個其他的標籤(可以是整數、字符串等)上。

img

真正發送過去的真值表還要再經過一個加密和一次混淆(也就是行換位置)

img

img

  1. 混淆電路的解密

Bob在接收到混淆電路後開始解密。Alice發送混淆電路的過程中也將Alice輸入對應的密鑰發送給Bob(Bob此時並不會發現Alice的真實輸入是什麼)。同時Alice也把Bob可以選擇的輸入對應的密鑰都發給了Bob,此時需要運行不經意傳輸協議,可以使得Bob從所有可能輸入對應的密鑰中選擇自己輸入對應的密鑰,且不會讓Alice知道Bob的選擇。Bob得到密鑰後對混淆電路真值表進行解密即可得到混淆電路的輸出。

  1. 不經意傳輸的適用

可以參考有關不經意傳輸的文章,我的上一篇文章不經意傳輸協議快速入門

注意不經意傳輸應該不止一次通信,所以最上面基本交互的那種圖像只是一個基本的示意,不代表真正的傳輸交互輪數。

三、參考網頁鏈接

  1. 混淆電路介紹(三)混淆電路原理

  2. 混淆電路Garbled Circuit介紹

  3. 混淆電路(Garbled circuits)快速入門

  4. 多方安全計算-混淆電路

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章