Finite-Field

Shamir 秘密分享 GF(p) 或 GF(2^8)

  • September 11, 2016

我正在實施 Shamir 的秘密共享計劃,但我遇到了概念上的障礙。在 Shamir 的論文“如何分享一個秘密”中,他創建了一個階 p 的有限域,其中 p 是一個大於秘密和共享數量的素數。我理解為什麼需要這樣做以確保股票的平均分配。然而,在我見過的幾乎所有實現中,都使用了 GF(256)。我知道這在技術上是可以的,因為它仍然是 GF(p^k),但為什麼這比只使用素數場更可取?在素數領域,只需要模運算,但使用 GF(256),你最終會編寫更多的程式碼,而且不那麼直覺。

我知道這在技術上是可以的,因為它仍然是 GF(p^k),但為什麼這比只使用素數場更可取?

它們具有同等的安全性;然而好的一面 $ GF(2^8) $ 是一切最終都是一個整數字節。我們可以使用(比如說) $ GF(257) $ ,但是當共享最終將略大於 1 個字節時,因此如果我們對一個隨機字節集的秘密進行編碼,則共享最終會使用更多空間。

如果我們使用三元電腦,我們可能會最終使用類似的東西 $ GF(3^6) $ ,因為那將是偶數個三重奏。

使用 GF(256),您最終會編寫更多程式碼

沒有那麼多; 大多數電腦語言支持 $ GF(256) $ 加法作為標準運算符,乘法/除法可以用兩個表和幾行程式碼來完成。

將此與進行模組化劃分所需的邏輯進行比較。

至於“遠不那麼直覺”,那取決於您對有限域的經驗;我覺得它非常直覺。

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