對不起,如果這個問題被問到,但我還沒有找到確切的問題。我有HTML格式的文本正在提交。我知道有SSL的SSL,但我不想購買證書。是否有可能以某種方式加密表單數據?我正在考慮兩件事:保護HTTP流量免受嗅探
- 通過javascript散列表格數據 - 事實上,我只想發送密碼,所以我不需要知道它的起源價值。
- RSA - 不確定它是否可以在JavaScript中實現。 你會建議什麼?任何其他變體?
對不起,如果這個問題被問到,但我還沒有找到確切的問題。我有HTML格式的文本正在提交。我知道有SSL的SSL,但我不想購買證書。是否有可能以某種方式加密表單數據?我正在考慮兩件事:保護HTTP流量免受嗅探
無論您執行哪種瀏覽器端加密,都需要使用加密密鑰 - 攻擊者才能使用這種加密密鑰。因此,儘管您的密碼將被加密給臨時觀察者,但針對有針對性的攻擊沒有額外的安全措施。
散列在這種情況下是無用的,因爲散列版本的密碼成爲用於授權/註冊用戶的密碼。
此問題的唯一解決方案是SSL證書 - 它們非常便宜!
http://en.gandi.net/ssl/grid(無友情鏈接)
你甚至可以使用一個self-signed certificate(如果你可以教育你的用戶相信會出現瀏覽器警告)。由於自簽名證書沒有「證書頒發機構」來證明證書是合法採購的(而不是由遠程主機在man-in-the-middle attack中提供),因此瀏覽器(和用戶)在解僱證書時非常喧賓奪主他們是「不安全的」。
有一個在Matasano Security在JavaScript安全的好文章:
安全交付的Javascript到瀏覽器是一個雞生蛋蛋的問題。
瀏覽器Javascript對密碼學是敵對的。
Javascript的「view-source」透明度是虛幻的。
直到這些問題得到解決,Javascript並不是一個嚴肅的加密研究環境,並且因此而受到影響。
標準(和btw唯一)的方式是https。你可以使用自己的證書啓用SSL,不需要購買SSL證書。但是,瀏覽器可能會警告訪問者證書尚未由已知授權機構簽署。
「但我不想購買證書」,如果我知道服務所有者會像您一樣推理 - 我絕不會使用與該人相關的任何服務。 – Anders
要免費完成此操作,請使用自簽名證書。也許有人可以寫一個答案來解釋如何。 –