2014-07-18 82 views
1

所以,在我的想象中,有一個只有一個主密碼的簡單算法,讓我們說一個素數「p」,我必須記住它。只使用網站和p的地址,算法必須生成一個唯一的密碼。即使你知道算法,但至少幾乎不可能猜出p的值。如果您知道網站A的密碼和算法,也無法猜測網站B的密碼。我需要這種算法的原因是:我有不同的密碼,只能記住一個數字。還有在同一個網站上有多個帳戶的問題,但我認爲修改算法很容易。我認爲這會對很多用戶有用。您推薦哪種算法用於爲每個網站生成唯一密碼的實際用途?

+1

它是一個42位的素數? – devnull

回答

2

這聽起來像HMAC的用途。它是一種標準,可以加密密碼強的哈希(如SHA1),並具有接受「密鑰」以及哈希數據的能力。實際上,它通常只是將哈希的初始狀態更改爲密鑰,而不是已知的常量(例如零)。

在通常的密碼假設下,只有攻擊者擁有密鑰以及要散列的數據。

在這裏,你的主密碼成爲關鍵,而該網站的域名(或其他任意標籤)就是被散列。結果是您的每個站點密碼。

1

這基本上是加密,不是嗎?您有一個主密鑰,您加密網站的名稱,並且生成的密文成爲您的密碼。

這實際上將是脆弱的,如果人們能得到你的密碼的副本 - 已知會使用相同的密鑰使它更容易分析多個cyphertexts。並且已知純文本(網站的名稱)也使分析/打破更容易。

+0

如果你從地址(比如它的CRC32校驗和)中派生出一個鹽本身,那麼可以減少第一個漏洞。另一個只能通過一個安全的商店得到幫助。 – biziclop

相關問題