【发布时间】:2014-04-19 16:22:20
【问题描述】:
我有两个应用程序:
- 提供用户友好界面的客户端
- 负责处理客户端所有实际功能的服务器。
使用我的应用程序的人显然使用客户端,而服务器应用程序驻留在服务器计算机上,两个应用程序使用 TCP 进行通信。
我的客户端应用程序中有一些高级功能,只有通过登录支付月费才能使用。
现在,我的问题如下: 我怎样才能防止一个人下载客户端应用程序,支付一个月的费用只是为了检查服务器发送给客户端的 TCP 数据包,然后创建他们自己的应用程序来一遍又一遍地将该响应发送给客户端以绕过登录?
有什么方法可以防止服务器发送给客户端的数据被运行客户端的人读取?某种加密?
【问题讨论】:
-
您是否使用了任何类型的加密技术?
-
还没有.. 我应该吗?我以为加密只是用来阻止窃听。
-
我认为这对您的情况会有所帮助。未经授权的人不会知道加密技术或解密它的密钥。所以他将无法正确生成响应。
-
但是如果客户端必须解密它..发送用户确实有权访问的加密数据仍然会变成同样的权利吗?客户端只会将其解密并将其作为有效的登录响应读取。
标签: c# networking encryption client-server protection