我正在創建一個服務器,它可以在Web上存儲包含應用程序設置的Cookie。服務器將接受任何數據,但我想先加密所有設置,然後再將它們存儲在cookie中,並在讀取它們時將其解密。因此,我可以存儲非常敏感的數據,例如帳戶用戶名& Cookie中的密碼和服務器無法對其執行任何操作。Javascript - 使用密碼加密數據的最佳方法
我現在的問題是:在客戶端使用JavaScript密碼加密這些數據的最佳方式是什麼?什麼是最安全的?
我需要一些代碼,我可以嵌入到我的網站並從那裏使用它。
我正在創建一個服務器,它可以在Web上存儲包含應用程序設置的Cookie。服務器將接受任何數據,但我想先加密所有設置,然後再將它們存儲在cookie中,並在讀取它們時將其解密。因此,我可以存儲非常敏感的數據,例如帳戶用戶名& Cookie中的密碼和服務器無法對其執行任何操作。Javascript - 使用密碼加密數據的最佳方法
我現在的問題是:在客戶端使用JavaScript密碼加密這些數據的最佳方式是什麼?什麼是最安全的?
我需要一些代碼,我可以嵌入到我的網站並從那裏使用它。
我建議在你的JavaScript代碼中使用AES加密。有關圖書館和鏈接,請參閱Javascript AES encryption。您遇到的麻煩是挑選僅在客戶端可用的密鑰。也許你可以提示用戶?或者將未發送到服務器的一些客戶端系統信息散列在一起。
好的,太棒了!我認爲這就是我所搜索的;) – 2011-04-25 20:44:22
編輯:誤解了你的問題。看看這個問題,而不是:
這並不是OP所要求的。 – 2011-04-25 20:34:44
好的,重讀了OP的問題幾次,我承認錯誤地理解了他的問題。我認爲我的鏈接到類似的老問題應該值得你刪除你的-1,但:) – Hubro 2011-04-25 20:37:58
@Codemonkey ...我沒有投票...別人沒有 – 2011-04-25 20:38:59
你可以嘗試用密碼Vernam Cypher。
基本上你使用密碼作爲密鑰,然後XOR字符串來加密密碼。這也可以逆轉。
這裏是一個維基百科頁面這種類型的加密http://en.wikipedia.org/wiki/XOR_cipher
示例代碼
function encrypt(key, value) {
var result="";
for(i=0;i<value.length;++i)
{
result+=String.fromCharCode(key[i % key.length]^value.charCodeAt(i));
}
return result;
}
function decrypt()
{
var result="";
for(i=0;i<value.length;++i)
{
result+=String.fromCharCode(key[i % key.length]^value.charCodeAt(i));
}
return result;
}
我沒有測試過這一點,但它可能關閉。你會注意到加密和解密功能應該是相同的
[SSL](http://en.wikipedia.org/wiki/Ssl)... – 2011-04-25 20:35:27