Passwords

是否有客戶端程序對 HTML 頁面進行加密並在寫入正確密碼時進行解碼?

  • November 20, 2016

我想知道是否有一種簡單的方法可以做到這一點:

  • 創建一個完整的 HTML 頁面
  • 加密文本內容(圖像不重要)
  • 詢問使用者一些密碼
  • 使用加密密碼檢查密碼if(hash(userPassword)==hasedPassword)) return true;
  • 如果密碼正確,它將對其進行解碼並顯示內容。

所有這些都在使用者端,而不是伺服器端。因為這個我會使用javascript。

有什麼好的實現嗎?

如果您將網頁的文本內容加密到 HTML5 本地儲存、IndexedDB 或作為 hex/base64 字元串嵌入網頁中,那麼您可以嘗試使用 TripleSec 之類的方法,它會獲取您的密碼,執行 PBKDF 並解密內容.

或者,您可以使用眾多 JavaScript 庫 CryptoJS、SJCL 等之一併自己手動完成。

您應該在文件系統或瀏覽器擴展中將程式碼作為本地 .html 文件執行。不要錯誤地執行從伺服器提供的 JavaScript 程式碼,因為您的安全性只會與 HTTP/HTTPS 連接一樣強,並且容易受到 MITM 的攻擊。甚至 HTTPS對某些攻擊者也不安全。

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