Secret-Sharing

在特定的單調訪問結構中分配份額

  • April 28, 2017

考慮6個人, $ A,B,C,D,E,F $ 和一個秘密。建構一個方案,使以下人的子集能夠檢索秘密:

三名球員 $ {A,B,C,D} $

兩名球員 $ {A,E,F} $

兩名球員 $ {B,C,D} $ 與該組中的至少一名球員一起 $ {A,E, F} $ .

我想知道如何分發 $ 6 $ 在這些人之間共享,因此只有當三個共享(即三個門檻值)時才能獲得秘密。我嘗試了很多選擇,但似乎總是有一個未經授權的子集可以訪問導致其無法工作的秘密。例如,如果我標記共享 $ 1,2,3,4,5,6 $ 並按如下方式分發它們:

$ A - 1 $

$ B- 2 $

$ C - 3 $

$ D - 6 $

$ E - 2,5 $

$ F - 3,4 $

然後是未經授權的集合 $ {D,F} $ 例如將擁有三個共享並且能夠恢復秘密。有沒有辦法分發它們,以便只有授權的子集才能訪問秘密?

好吧,我能看到表示此訪問結構的最簡單方法是:

  • 選擇三個隨機值 $ r_1, r_2, r_3 $
  • 使用秘密生成門檻值 2 秘密共享方案 $ S $ (在哪裡 $ S $ 是最終的秘密),其股份是 $ \alpha_1, \alpha_2, \alpha_3 $
  • 用秘密生成一個獨立的門檻值 2 秘密共享方案 $ r_3 $ , 其股份為 $ \beta_1, \beta_2, \beta_3 $ .

然後,

  • $ A $ 得到 $ \alpha_1 $ , $ r_3 \oplus S $
  • $ B $ 得到 $ r_1 $ , $ \beta_1 $
  • $ C $ 得到 $ r_2 $ , $ \beta_2 $
  • $ D $ 得到 $ r_1 \oplus r_2 \oplus S $ , $ \beta_3 $
  • $ E $ 得到 $ \alpha_2 $ , $ r_3 \oplus S $
  • $ F $ 得到 $ \alpha_3 $ , $ r_3 \oplus S $

很容易看出任何允許的子集都可以恢復 $ S $ (例如對於子集 $ A, B, C $ ,他們共同知道 $ \beta_1 $ 和 $ \beta_2 $ ,這使他們能夠恢復 $ r_3 $ ; 與 $ r_3 \oplus S $ 給他們 $ S $ )。應該相當清楚的是,不在訪問結構內的任何子集都不會獲得關於 $ S $ .

這並沒有回答要提出的確切問題;它似乎確實解決了您試圖解決的問題。

引用自:https://crypto.stackexchange.com/questions/46940