Passwords
保護短密碼
我認為真正安全的密碼應該是 AES 128 密鑰。如果這個密鑰是 base 64 編碼的,我可以替換其中的 4 個隨機字節以使其不可用,除非你知道哪些字節被替換了以及被替換了什麼。
該過程將是這樣的:
- 生成密鑰:
[²ú·0ýóQS%ô6
- base64 對其進行編碼以使其可讀:
iVuy+rcw/fNRU56AiiX0Ng==
- 替換它的4個隨機字節
iVuy+icw/fNRG5oAiiJ0Ng==
- 我會記得 4 個字節是什麼,即密碼
- 電腦會記住更改了哪些字節(在本例中:13、6、19、15)以及更改的順序
我的問題是:如果你掌握了原件,猜出正確的鑰匙會有多困難(嘗試多少次)。
另一種問這個問題的方法是:密鑰需要多長時間才能使僅更改 4 個隨機字節變得困難(用超級電腦猜測數十年)。
我想有一個簡單的數學公式來計算這個。但我不知道。
謝謝您的支持
對手有
- 使用您的密鑰加密的密文;
- 密鑰的副本 $ k $ 字節被擦除;和
- 其中的知識 $ k $ 字節已被擦除。
攻擊者可以嘗試解密密文並及時決定解密是否有意義 $ T $ .
要找到密鑰,對手只需要做 $ 2^{8k} $ 試用解密,總時間成本為 $ 2^{8k} T $ .
關鍵是通常沒有明智的方法來製作 $ T $ 大的。
因此,當 $ k $ 是 $ 4 $ ,這顯然很容易。