由於中國防火牆已阻止谷歌appengine的https端口。所以我想通過javascript和python來模擬安全套接字層,以保護我的用戶信息不會被那些ISP和GFW捕獲。加密:在JavaScript和Python中模擬SSL
我的計劃:
- 握手:
瀏覽器請求服務器,服務器生成一個加密關鍵k1和解密密鑰K2,K1發送給瀏覽器。 瀏覽器生成加密密鑰k3,並解密密鑰k4,將k3發送給服務器。
- 瀏覽:
在會議期間,與K1瀏覽器對數據進行加密併發送至服務器,服務器解密用K2。服務器用k3加密數據並響應瀏覽器,用k4解密瀏覽器。
請找出我的錯誤。
如果它是正確的,我的問題是
- 如何生成一個密鑰對 的JavaScript和Python,還有 一些圖書館?
- 如何加密和解密數據在 javascript和python,有沒有 一些庫?
我認爲開源算法是可以的,有一些加密,即使你知道加密密鑰,但你不能解密它,並且你不能從加密密鑰中獲得解密密鑰。 – 2010-10-20 11:37:55
不,問題是馬塞洛所說的,是什麼阻止中國的邪惡防火牆成爲一名中間人,並將一個完全不受保護的版本扔給你的客戶?或者發送他們自己的公鑰(因爲他們有他們的私鑰,他們可以解密所有內容)。使用SSL,您可以從頭開始安裝一對或根CA,客戶端使用它們來確保公鑰真的屬於正確的地址。當你試圖通過JavaScript來做到這一點,那麼你不能再驗證你的對手,並且打開一個大的安全漏洞。 – Onkelborg 2010-10-20 11:43:02
只適用於我自己的網站,不適用於廣泛使用。 – 2010-10-20 11:57:09