Author |
Message |
kzar Newbie
Joined: Jun 18 2006 Posts: 3 Offline
|
Posted: Sun Jun 18, 2006 1:10 pm Post subject: Continuum client encryption |
 |
|
|
|
Hi, sorry if this is a commonly asked question but I couldn't find out by searching. I have been reading about continuum and asss and subspace and pritik etc recently and if I understand right at the moment all that protects subspace from cheaters is the encryption in continuum which is hidden behind some clever anti debugger tricks. My question is, if continuum connects to asss then surely asss must use the same encryption, but asss is opensource so how is the encryption protected? Thanks |
|
Back to top |
|
 |
CypherJF I gargle nitroglycerin

Gender: Joined: Aug 14 2003 Posts: 2582 Location: USA Offline
|
Posted: Sun Jun 18, 2006 2:05 pm Post subject: |
 |
|
|
|
The encryption routines are closed-source libraries which are built/compiled by grelminar and distributed in the distribution.
I, personally, have wondered how long it'd take someone to use reflection to utilize these libraries in their own applications. _________________ Performance is often the art of cheating carefully. - James Gosling |
|
Back to top |
|
 |
kzar Newbie
Joined: Jun 18 2006 Posts: 3 Offline
|
Posted: Sun Jun 18, 2006 2:36 pm Post subject: |
 |
|
|
|
Thanks for the reply. Sorry if it sounds stupid but what do you meen by
"to use reflection to utilize these libraries in their own applications."
do you meen look at how asss uses the library and then use them in your own in the same way?
Thanks |
|
Back to top |
|
 |
Dr Brain Flip-flopping like a wind surfer

Age:39 Gender: Joined: Dec 01 2002 Posts: 3502 Location: Hyperspace Offline
|
Posted: Sun Jun 18, 2006 3:41 pm Post subject: |
 |
|
|
|
CypherJF wrote: | I, personally, have wondered how long it'd take someone to use reflection to utilize these libraries in their own applications. |
That'd only work if they wanted to run a server. _________________ Hyperspace Owner
Smong> so long as 99% deaths feel lame it will always be hyperspace to me |
|
Back to top |
|
 |
CypherJF I gargle nitroglycerin

Gender: Joined: Aug 14 2003 Posts: 2582 Location: USA Offline
|
Posted: Sun Jun 18, 2006 3:53 pm Post subject: |
 |
|
|
|
Eh, I'm sure there are people out there willing to give it a shot.  |
|
Back to top |
|
 |
kzar Newbie
Joined: Jun 18 2006 Posts: 3 Offline
|
Posted: Sun Jun 18, 2006 3:57 pm Post subject: |
 |
|
|
|
Dr Brain wrote: | [..]
That'd only work if they wanted to run a server. |
Is that because the encryption used to send packets from the client is different from the encryption used to send packets from the server?
Edit:
Also I am curious, why do the encrypt and decrypt functions need a player structure?
int (*Encrypt)(Player *p, byte *pkt, int len);
Also I understand that this is a function that returns an integer and take a player structure pointer, a pointer to the packet and its length but I dont understand what the (*Encrypt) bit meens. Could you tell me what it does?
Thanks |
|
Back to top |
|
 |
Dr Brain Flip-flopping like a wind surfer

Age:39 Gender: Joined: Dec 01 2002 Posts: 3502 Location: Hyperspace Offline
|
Posted: Sun Jun 18, 2006 5:41 pm Post subject: |
 |
|
|
|
kzar wrote: | Is that because the encryption used to send packets from the client is different from the encryption used to send packets from the server? |
Yes, but with enough access to the code, someone could engineer a working client side encryption, so it needs to remain obscure.
kzar wrote: | Also I am curious, why do the encrypt and decrypt functions need a player structure? |
I don't know off the top of my head, but it's probably a boring reason.
kzar wrote: | int (*Encrypt)(Player *p, byte *pkt, int len);
Also I understand that this is a function that returns an integer and take a player structure pointer, a pointer to the packet and its length but I dont understand what the (*Encrypt) bit meens. Could you tell me what it does? |
That's a function pointer. C structs don't have methods like C++ does, so the solution is to put a pointer to the function inside the struct. |
|
Back to top |
|
 |
Smong Server Help Squatter

Joined: 1043048991 Posts: 0x91E Offline
|
Posted: Mon Jun 19, 2006 7:14 am Post subject: |
 |
|
|
|
If you want each player to use a different key for encryption, you need to know which player you are dealing with. So the player is given to you when you encrypt/decrypt. |
|
Back to top |
|
 |
|