Encryption

使用替代 shamir 的秘密共享

  • April 21, 2020

我想知道以下作為秘密共享(shamir)的替代方案:假設為了獲得對某些理論系統的訪問權限,我們將在系統上保存秘密,我們將通過以下方式監控所有訪問嘗試:每個參與者都會得到一個不同的“秘密”,系統會檢查條件是否有效。

例如:如果 5 名參與者中有 3 名來自 1 級,或者一名來自 1 級,一名來自 2 級等。

從密碼學上講,它的缺點是什麼?這不是更簡單的方法而不是 shamirs 秘密共享嗎?

如果您能以數學方式向我解釋,那對我的幫助最大,這樣我就可以理解如何以及為什麼更好地理解這些詞。

感謝您幫助我更好地理解它。

如果您有一個相互信任的第三方,那麼密碼學中的許多問題(如果不是全部)都可以變得“微不足道” 。這個論點是這樣的:

  • 多方計算可以將密碼學中的許多(如果不是全部)原語描述為聯合計算某些功能
  • 在存在相互信任的第三方的情況下,MPC 變得微不足道(這是“理想與真實”證明策略的基礎)
  • 如果給定一個相互信任的第三方,則可以安全地實現任何可以使用多方計算實現的功能

如您所述,實施訪問控制只是與相互信任的第三方實施訪問控制。如果您認為這存在於您的情況中,那麼您可以通過使用它來提高效率。但是,如果您“錯了”,並且有人設法破壞了您的伺服器,那麼您將“失去一切”。

請注意,這在某種程度上已經是秘密共享的情況。通常秘密共享方案可以寫成兩個函式: $ \mathsf{MakeShares} $ 和 $ \mathsf{Reconstruct} $ . 如果正在執行的伺服器 $ \mathsf{Reconstruct} $ 協議在重建過程中被破壞,你“失去了一切”(在幼稚的 Shamir 的秘密共享下)。

你(基本上)建議實施 $ \mathsf{Reconstruct} $ 與有狀態的受信任第三方。您甚至可以通過讓您的伺服器首先對秘密執行 Shamir 的秘密共享,然後使用某種任意編碼“重命名”Shamir 的共享(您將其“儲存”在伺服器上的表中以便以後能夠撤消)來明確這一點。但是由於您的解決方案需要正確重建的狀態,因此如果您的伺服器遭到破壞,您會立即“失去一切”。

您的算法無法替代 Shamir 的另一個應用是協議參與者互不信任時。必須有人“擁有所有股份”才能實現訪問控制,如果沒有自然人選,那麼您的協議將無法正常工作,但 Shamir 仍然可以。

話雖如此,為了實現所有參與者都屬於同一組織的訪問控制,由於存在相互信任的第三方,您可以使用非加密技術(例如您的)。

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