Passwords

保護短密碼

  • December 21, 2014

我認為真正安全的密碼應該是 AES 128 密鑰。如果這個密鑰是 base 64 編碼的,我可以替換其中的 4 個隨機字節以使其不可用,除非你知道哪些字節被替換了以及被替換了什麼。

該過程將是這樣的:

  1. 生成密鑰:[²ú·0ýóQS%ô6
  2. base64 對其進行編碼以使其可讀:iVuy+rcw/fNRU56AiiX0Ng==
  3. 替換它的4個隨機字節iVuy+icw/fNRG5oAiiJ0Ng==
  4. 我會記得 4 個字節是什麼,即密碼
  5. 電腦會記住更改了哪些字節(在本例中:13、6、19、15)以及更改的順序

我的問題是:如果你掌握了原件,猜出正確的鑰匙會有多困難(嘗試多少次)。

另一種問這個問題的方法是:密鑰需要多長時間才能使僅更改 4 個隨機字節變得困難(用超級電腦猜測數十年)。

我想有一個簡單的數學公式來計算這個。但我不知道。

謝謝您的支持

對手有

  • 使用您的密鑰加密的密文;
  • 密鑰的副本 $ k $ 字節被擦除;和
  • 其中的知識 $ k $ 字節已被擦除。

攻擊者可以嘗試解密密文並及時決定解密是否有意義 $ T $ .

要找到密鑰,對手只需要做 $ 2^{8k} $ 試用解密,總時間成本為 $ 2^{8k} T $ .

關鍵是通常沒有明智的方法來製作 $ T $ 大的。

因此,當 $ k $ 是 $ 4 $ ,這顯然很容易。

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