加密:在javascript和python中模拟SSL

前端之家收集整理的这篇文章主要介绍了加密:在javascript和python中模拟SSL前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

因为中国防火墙已经阻止谷歌appengine的https端口.因此,我希望通过javascript和python模拟安全套接字层来保护我的用户信息不会被那些ISP和GFW捕获.

我的计划:

>握手:

浏览器请求服务器,服务器生成加密密钥k1,解密密钥k2,向浏览器发送k1.
浏览器生成加密密钥k3,并解密密钥k4,将k3发送到服务器.

>浏览:

在会话期间,浏览器用k1加密数据并发送到服务器,服务器用k2解密.服务器用k3加密数据并响应浏览器,浏览器用k4解密.

请弄清楚我的错误.

如果是的话,我的问题是

>如何生成密钥对
javascript和python,都在那里
一些图书馆?
>如何加密和解密数据
javascript和python,都在那里
一些图书馆?

最佳答案
您有一个基本问题,即SSL的JavaScript实现没有内置的根证书来建立信任,这使得无法阻止中间人攻击.您从站点提供的任何证书(包括根证书)都可能被拦截并由间谍替换.

请注意,这是一个基本限制,而不是SSL工作方式的特殊性.所有加密安全性都依赖于建立共享密钥.与主流浏览器一起部署的根证书提供了由证书颁发机构(CA)建立的信任网络的入口点,使您能够与已知的第三方建立共享密钥.这些证书不是AFAIK,可直接访问JavaScript代码.它们仅用于建立安全(例如,https)连接.

猜你在找的JavaScript相关文章