Modular-Arithmetic

組/欄位中的文件塊

  • January 12, 2018

我正在閱讀 Shacham 和 Waters 撰寫的關於緊湊的可檢索性證明的論文。在這篇論文第 3 頁第 1.1 節下的第一行中,作者指出一個編碼文件被分成n 個塊 $ m_1,m_2…m_n \in Z_p $ 對於一些大素數 p

我無法理解,就程式而言,在組/欄位中擁有一大塊文件數據究竟意味著什麼。在同一頁上,他們提到了一個等式:

$ σ_i = f_k(i) + αm_i \in Z_p $

這有什麼價值 $ m_i $ 在這個等式中。是每個塊中的字節數/位數嗎?什麼值 $ m_i $ 如果我必須計算這個,我會接受嗎 $ σ_i $ 在等式中?sigma的計算值在於素數階群 $ Z_p $ .

我不確定我是否在正確的論壇上發布了這個問題,但是我無法在堆棧溢出中得到任何評論,因此我將它發佈到了一個我發現與之密切相關的論壇。任何幫助都是有價值的。

謝謝並恭祝安康

您必須以這樣的方式拆分文件,以使每個塊都小於素數 $ p $ 你正在使用。之後你有 $ n $ 這樣的塊。

你計算 $ \sigma_i $ 對於每個塊,所以 $ i \in {1,2,…,n} $ 和 $ m_i $ 表示塊號 $ i $

例子:

假設你在外地工作 $ Z_p $ 和 $ p=2^{255}-19 $ (例如在 Curve25519 中使用)並且您的文件是 254 字節或 $ 254 \times 8 $ 位長。在實踐中,您可以將其拆分為(最多)254 位的塊 $ 2^{254} \ll 2^{255}-19 $ . 您可以將文件分成 8 個部分,每個 254 位長。所以你有了 $ n $ =8,並且每個 $ m_1,m2,m3,m4,m5,m6,m7,m8 $ 是文件中的各個塊。

範例 2:

假設你在外地工作 $ Z_p $ 和 $ p=2^8+1 $ 你的文件有 5 個字節長。您可以將其拆分為 8 位塊 $ 2^8 \lt 2^8+1 $ . 所以你有5個這樣的部分 $ n=5 $ 和 $ m1,m2,m3,m4,m5 $ 是文件中的各個字節。

請注意,第二個範例絕不安全,因為目標欄位太小。

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