Secure Webservice Communication

Started by
1 comment, last by SurfingNerd 10 years ago

Hello,

i am Using C# and WCF to develop the communication between Clients and Servers.

I know that i can apply cryptography to the communication channel,

but is there a way to secure it so noone can access it, only the game clients ?

For my current understanding thats not possible, because even if i use some password authentication method, those can easily be hacked. (reverse engeneering assembly and so on)

I want to ensure that no Bot-players are destroying the game experience of the normal gamers.

Advertisement

I want to ensure that no Bot-players are destroying the game experience of the normal gamers.


You do not know who is sending your server network packets from the other end. You can only assume that those packets are the intention of the player, malicious or not, tied to the identity used to authenticate the connection.

This means that, to weed out bots, you either have to design the gameplay such that bots aren't particularly good, or you have to analyze the actual commands/results gotten, to try to catch bots as outliers in some kind of statistical analysis.

It helps if you charge dollars or some other value (dogecoins? :-) for each account, because that makes the cost of being banned for being a bot higher.

Finally: WCF is not designed for gameplay-type connections. If your game is slow-paced and turn-based, like chess or Monopoly, it may still work OK. In general, it may have significant data size overhead, it may have messaging latency overhead, and it may expose your server to remote RPC attacks, depending on how well you manage to secure it.
enum Bool { True, False, FileNotFound };

thanks for confirmtion that is not possible to secure it that way.

Yeah i am doing a round based game, and i think the package size overhead will not make any troubles, since i will have only ~ 2 packages to transmit in a second. but i will keep an eye on packet sizes and try to minimizing them with using different protocols, since the game is developed for mobile plattfroms using MonoGame.

This topic is closed to new replies.

Advertisement