Cryptanalysis

密鑰的熵

  • November 8, 2016

假設一個 $ 1000 $ 一次性密本中使用的位密鑰不是隨機均勻生成的。

  1. 假設第一個值 $ 5 $ 位是 $ 0 $ , 和另外一個 $ 995 $ 位是隨機生成且均勻分佈的(每個位都有值 $ 0 $ 和 $ 1 $ 有機率 $ 0.5 $ ),密鑰的熵是多少?
  2. 假設密鑰的每一位都是隨機生成但有值的 $ 0 $ 有機率 $ 0.54 $ . 密鑰的熵是多少?

我不知道如何開始上面的兩個問題。對於第 1 部分,我使用熵公式$$ -\sum_{x \in X}{P(x) \log_2 P(x)} $$但我不知道我應該讓什麼 $ X $ 是。誰能指導我?

編輯:香農熵的可加性證明

目標:如果 $ X $ 和 $ Y $ 是獨立的隨機變數,那麼 $ H(X,Y) = H(X)+H(Y) $

證明:因為 $ X $ 和 $ Y $ 是獨立的隨機變數,我們有 $$ P(X=x)=\sum_{y \in Y}{P(X=x,Y=y)} $$ $$ P(Y=y)=\sum_{x \in X}{P(X=x,Y=y)} $$

問題:上述方程是否需要獨立於 $ X $ 和 $ Y $ ? 如果它們不是獨立的,這些方程仍然正確嗎?

由於位是獨立生成的,因此密鑰的熵是各個位的熵的總和。以下計算使用機會 $ P(x) $ 零或一位。

  1. 前 5 位是常數,因此熵為 0。

其他的都是無偏的,每個都有 1 位熵。 $ P(0)=P(1)=0.5 $ .

$ -2\cdot(0.5 \cdot \log_2(0.5))= -log_2(0.5) = -log_2(2^{-1}) = 1 $

總共有 995 位熵。 2. 對於每一位,使用公式 $ P(0)=0.54 $ 和 $ P(1)=0.46 $

$ -\sum_{x \in X}{P(x)\cdot \log_2(P(x))} = -(0.54 \cdot \log_2(0.54) + 0.46 \cdot \log_2(0.46)) \approx 0.9954 $

總共有 995.4 位的熵。

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