   How hard would it be to break this simple encrypt scheme which doesn't increase
  the packet size of any information beyond the initial Setup packet.ExampleSetup String 2|99|49"/My/Name/Is/Bob/I/am/21/"cbJ^bK2J6bb3L3b:b2Jb?>bcSimple break test Setup String 2|70|0vuGFMuv= ?Writing Code, one line at a time.[edited by - Asharlin on February 17, 2004 6:34:41 PM][edited by - Asharlin on February 17, 2004 6:34:58 PM]
  When breaking encryption, you typically look at a large number of packets (an entire session) and run statistics on that. It usually becomes apparent what the encryption is.Once the mechanism is known, if there is a clear-text key exchange in the preamble, a sniffer can be written that doesn''t need to break anything; it''ll just decode the same way that the receiving end would.Encryption and security is HARD and IMPORTANT. There are professionals that do it, have it reviewed by their peers and scientists around the world, and then release packages that handles all this for you. Use those packages, rather than rolling your own -- if you don''t, you might as well save the time and use nothing. ;quote:Use those packages, rather than rolling your own -- if you don''t, you might as well save the time and use nothing. Yep.  The latter being more appropriate for typical gaming applications.  You might want to encrypt login data or credit card transactions, but normal game data shouldn''t need encryption.  Honestly, if you program your game protocol in such a way that the data needs to be kept secret from the player, it shouldn''t be sent on the network in the first place.  This is always your first line of defense - don''t send the data.  In the event you decide to send the data anyways, use basic, very fast obfuscation techniques that will deter the average joe from hacking it.  The most knowlegable/skilled/determined hacker will always manage to get the data, so going to extremes in an effort to prevent it is futile and costly.  The key is preventing the ''typical'' guy from doing it. ;  AES encryption doesn''t change the data size, and is supposed to be pretty good (and fast too). ;  I might add that the easiest way of figuring out the encryption, if you have the actual client executable available, is to disassemble the executable. The algorithm/code will be right in there. 