如何正确加密TCP数据,以便邪恶的客户端无法读取/解密它

时间:2012-09-05 16:46:23

标签: security encryption tcp client client-server

我会更好地解释我的问题。

我有一个连接到Python服务器的C#客户端,这个客户端应该在建立连接时向服务器发送(只需一次)一些数据,这些数据不应该被篡改。

我不知道加密技术,但是我读了一些算法,比如RSA,其中公钥用于加密数据,私钥用于解密。

我想尝试做的是创建一对密钥并将公钥发送到客户端,使用此密钥加密数据并将加密数据发送到服务器,我认为使用这种方式数据不能被解密或被篡改,每个连接的客户端都有一对不同的密钥。 这可能吗?我一直在寻找,但我真的不明白RSA是如何工作的。 关于如何做到这一点的任何想法?

1 个答案:

答案 0 :(得分:2)

一个非常简单的答案:不要尝试创建自己的协议,而是使用SSL(或者更确切地说是TLS)。特别是如果你不确定如何实现这一点。您可以使用自己签名(因而无偿)的证书。