具有加密和密码保护的Python网络通信

时间:2014-12-31 10:20:18

标签: python encryption https

我想创建一个python程序,它可以与另一台机器上运行的另一个python程序通信。他们应该通过网络进行沟通对我来说,使用BasicHTTPServer非常简单。我只需将我的消息指向http:// server2:port / my / message,server2可以根据该消息“/ my / message”执行所需的任何操作。它也非常节省时间,因为我不必每隔X秒检查一次文件或类似的东西。 (我的另一个想法是通过ssh将文本文件放到远程服务器然后读取该文件..)

缺点是,这不受密码保护且未加密。我想同时拥有这两者,但仍然保持传输消息的简单。

正在通信的机器互相认识,我可以将密钥文件放在所有这些机器上。

我也偶然发现了扭曲,但看起来相当复杂。另外gevent看起来太复杂了gevent.ssl.SSLsocket,因为我必须检查消息和东西的字节长度..

有关于如何设置此类内容的简单示例吗?

2 个答案:

答案 0 :(得分:1)

您应该考虑使用HTTPS,因为它可以完成您想要的工作。

好的部分是您不需要更改代码,因为双方之间的连接是加密的。缺点是你必须设置一个带有HTTP证书的服务器(互联网上有很多资源),你有时需要(取决于你的实现)接受这个证书才能成功连接。

当然,您可以将其与使用受密码保护的文件结合使用。

答案 1 :(得分:0)

如果您将密钥文件分发到所有节点没有问题......

只需将您的邮件投入AES,然后像移动未加密的邮件一样移动输出......

另一方面...解密,处理明文,就像之前处理过的消息一样......