Hash

是否有可以用鉛筆和紙執行的加密雜湊函式?

  • November 12, 2013

想像一下,我本月要註冊第 99 個新網站。我以某種方式獲取了我的密鑰(我在錢包裡的卡片上)和網站的域名,並將它們都輸入了某種算法(可能是 HMAC?),然後將生成的雜湊輸入到“密碼”中系統資料庫的欄位。

後來,我在圖書館,我想登錄那個特定的網站,但我沒有手機,圖書館的電腦被鎖定,所以我無法安裝任何新軟體,所以我想要“手動”重建該密碼。

  • 使用 Kerckhoffs 原理並假設每個人都知道我正在使用的雜湊算法是否合理,並假設每個人都知道我使用完全相同的雜湊算法和完全相同的安全密鑰用於我的所有 99 個網站?這個月報名了嗎?
  • 如果以某種方式,即使網站 1 到 98 的系統管理員都合謀並相互共享我給每個人的“密碼”(並且他們知道我正在使用的算法),那將是很好的雜湊值足夠安全找到網站 99 的密碼比暴力破解一個隨機的 8 個字元的密碼更難。
  • 如果不知何故,即使所有 99 位系統管理員一起密謀並共享我給每個人的“密碼”,雜湊值也足夠安全,恢復我的密鑰比暴力破解隨機 16 個字元的密碼更難。
  • 我必須寫下並放在錢包裡的卡片上並保密的秘密資訊量應該比簡單地為 100 個網站中的每一個都編一個新的隨機 10 個字元的密碼並將域名和新密碼添加到卡片。(也許 256 位資訊是合理的?也許編碼為 80 個十進制數字或 55 個小寫字母或 20 個 Diceware 單詞?)。
  • 我在圖書館一個相對私密的隔間裡——我可以在便簽本上寫東西,操作我的一副紙牌,也許在一個 5 功能計算器上做一些計算,從我的副本中查找一段“” The Good Soldier Schweik”,每個人都知道我總是隨身攜帶,等等。但不是執行電腦程序。(假設我吃了任何可能洩露秘密資訊的便簽)。這應該比“是否有可以僅使用紙和筆計算而不會洩漏任何有關明文的任何資訊的加密雜湊函式? ”因為我可以寫下秘密資訊。

是否有任何符合這些標準的紙筆算法?

我不認為手動執行此操作是正確的方法。鉛筆和紙系統是不可靠的,因為人類不像機器人那樣擅長成為機器人!計算安全 MAC 的大部分工作都非常單調,在此過程中的任何地方出現一個錯誤,都可能完全破壞您認為擁有的任何安全性。

如果您的圖書館電腦可以訪問網路,那麼它執行 Javascript 的可能性非常大。Javascript 足以解決這個問題。

只需創建一個包含一些 Javascript 的靜態 HTML。您有兩個帶有一個按鈕的 HTML 輸入欄位。當您點擊時,它會計算 $ HMAC(site,password) $ 使用 SHA-256 或其他東西,然後將結果編碼為可列印字元。

存在鍵盤記錄器等問題,獲取您的主密碼,但他們可以像您手動執行計算一樣輕鬆地偷偷拍攝您!

當機器從根本上不受信任時,部署的對策是有限度的。但是,您可以通過簡單地通過下拉框逐個字元地輸入主密碼來減輕鍵盤記錄器的攻擊。

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