Secret-Sharing

有沒有辦法先合併秘密然後再拆分它們?

  • October 6, 2018

Shamir’s Secret Sharing 允許將一個秘密拆分為多個共享,以便以後可以對其進行重構。

有沒有辦法做相反的事情?我們可以先將一些秘密組合起來,然後再將它們分解成原始形式嗎?更清楚的是:給定兩個字元串,我想將它們“打包”成一個秘密,然後將它們拆分為各自的字元串。(我不確定這在文學中是如何稱呼的。)

我能想到的最簡單的解決方案是將所有秘密連接起來並儲存它們的相對位置,然後根據它們的位置進行字元串拆分。這樣就太幼稚了,沒有空間優勢。

在資訊論層面上,如果您希望能夠恢復原始輸入,則無法獲得比串聯更短的結果:如果有 $ k $ 從一組共享 $ 2^{x} $ 元素(表示為 $ x $ 位數組),一個單射函式至少需要 $ (2^{x})^k = 2^{xk} $ 不同的函式值,這至少需要 $ xk $ 少量。如果組合不同份額的函式具有較短的函式值,則它不是單射的,您無法恢復原始份額。

但是,由於所選字元串具有特定的位表示,您可能可以使用編碼來節省空間,例如Huffman 程式碼等。

您可能能夠以某種方式選擇您的共同秘密和共享,其中共享不可壓縮太多,但共同秘密是。

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