Passwords

在這種情況下可能有多少個密碼?

  • June 27, 2020

密碼字元串由 26 個字元 A..Z 中的一個或多個組成,可以是任意長度 $ 1 $ 至 $ 8 $ 人物。在這種情況下可能有多少個密碼?

  • 根據我的計算,應該是 $ 2^{26}\times8! $ , 這是對的嗎?
  • 對於一個 1 字元的密碼,一個只能放 $ 26 $ 不同的字元
  • 對於一個 2 字元密碼,一個只能放 $ 26^2 $ 不同的字元
  • 對於一個 3 字元密碼,一個只能放 $ 26^3 $ 不同的字元
  • 對於一個 8 字元的密碼,一個只能放 $ 26^8 $ 不同的字元

簡而言之,認為每個盒子可以包含給定字母表中的多少個字母,並將盒子中的值相乘。最後,總結它們。

$$ \sum_{i=1}^8 26^i = \frac{26^9-1}{26-1}-1 $$

公式的名稱是一個數的連續冪之和

$$ \sum_{i=0}^n a^i = \dfrac{a^{n+1} -1}{a-1} $$

和 $ -1 $ 自從 $ i=0 $ 這裡不是一個案例。


更新:更一般的情況;

假設您要建構一個 Web 應用程序並希望確定密碼的安全級別。這裡有一個計算器;

  • 假設字母表有 $ l $ 字母,
  • $ m $ 數字,和
  • $ p $ 非字母數字。

如果我們將密碼設置為至少要求;

  • $ n_m $ 數字
  • $ n_p $ 非字母數字,有
  • passords 的長度$$ min \geq n_k+n_a \geq 6,\text{and} $$
  • $ max > min $ , 然後

什麼是密碼空間, $ \mathcal{S} $ ?

$$ \mathcal{S} = m^{n_m} + p^{n_p} + \sum_{i=1}^{max - ({n_m} + {n_p})} (l+m+p)^i $$

在這些假設下,讓

  • $ l = 26 $
  • $ m = 10 $
  • $ p = 20 $
  • $ min = 6 $
  • $ max=20 $
  • $ n_m=2 $
  • $ n_p =1 $ ,那麼我們有;

$$ \mathcal{S}{6:20} = 10^2 + 20 + \sum{i=1}^{17} (56)^i = 533361663473057950558105648760 $$

$ \mathcal{S}_{6:20} $ 有 99 位二進制形式。

如果最大值是;

  • $ 6 \text{ then } S = 178928 $
  • $ 7 \text{ then } S = 10013424 $
  • $ 8 \text{ then } S = 10013424 $
  • $ 9 \text{ then } S = 560745200 $
  • $ 10\text{ then } S = 31401724656 $ 是 35 位的。

WolframAlpha計算器;

m^{n_m} + p^{n_p} + sum (l+m+p)^i, i=1 to (max - (n_m + n_p))

不,這是不正確的。因為我認為這是家庭作業。我不會提供完整的答案。

$ 2^{26} $ 建議 26 個二元選擇。但事實並非如此。

$ 8! $ 建議任意排序 8 個字元。

您所擁有的是 8 種不同的長度,您可以將每個長度的組合數相加。

注意字母可以重複自己;您可以獨立選擇字母。

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