Live data from Hacker News

The Awful Anti-Pirate System That Will Probably Work

jeff-vogel.blogspot.com

21–30 of 123 posts

Re: The Awful Anti-Pirate System That Will Probably Work

#21
post #15
post #7

1. Make your own, free saved game server and alter the application code to use it. This means a lot of work and expense, both to duplicate Ubisoft's game saving code and to set up and maintain the servers. Won't happen. I'm not even a very good game hacker, and I've done much more dramatic things. It's really not a huge deal. People have reverse-engineered entire online game protocols in order to have their own unoff…

3. Hack the game to not need to save games on a remote server. This means a hacker has to figure out the saved game format, somehow jam into the application new code to write the saved data and new code to read it, TEST IT, and get it to work. In most of the cases, there is no need to figure out the game format. Just read the binary data sent to the server and save it. Usually save game files are not that large and I…

They could (probably have) limit that approach too by signing the data (as already suggested) or encrypting it with different keys for sending / receiving.

Re: The Awful Anti-Pirate System That Will Probably Work

#23
post #9

Or you could just disable the save game feature and then run it inside a virtual windows machine where you just save the state of the machine. =)

It's a 'checkpoint' system. Save game or not, the game is constantly checking with Ubisoft's servers - if it can't talk to them it just boots you out. The save thing is a bit of a red herring.

Re: The Awful Anti-Pirate System That Will Probably Work

#24
post #2

Honestly, I believe people shouldn't be pirating videogames at all. And most gamers actually don't. So nobody's going to hate them. On the other hand, I think no one's planning to do the same thing for MS Office in the nearest future, that would be insane.

The reason they will be hated is aptly summarized in this (though that's for DVDs, but same principle): http://www.geek.com/wp-content/uploads/2010/02/piratedvd.jpg

Re: The Awful Anti-Pirate System That Will Probably Work

#25

You missed Option 4, which is what will actually happen: 4. Make it easy to set up your own local game server and alter the hosts file on your machine to point to it. That is dead easy to do. I actually did it for the game FantasticContraption, not to steal it (it's well worth ten bucks. go try it: http://www.fantasticcontraption.com/ ), but because their server is so hopelessly overloaded at peak times that the game…

While I agree that this is probably what will happen, it is probably not going be as easy as you make it seem. There is a very good chance that in this case the entire conversation with the server will be encrypted. In order to emulate this, the encryption will have to be broken. That's hard enough as it is, and you also don't really know what the plaintext is.

Re: The Awful Anti-Pirate System That Will Probably Work

#26
post #9

Or you could just disable the save game feature and then run it inside a virtual windows machine where you just save the state of the machine. =)

I'm not sure if a virtual machine (VM ware player) allows you to have direct access to your graphics hardware. I think VMware workstation allows you to use the hosts video card. But is only supports acceleration for OpenGL.

Besides, this makes justifying PC gaming and the PC as a games platform even more difficult. Especially considering that the xbox 360 and Playstation 3 have already had this game for a while and don't have this DRM system.

Shame, seems like a good game.

Re: The Awful Anti-Pirate System That Will Probably Work

#27
post #7

1. Make your own, free saved game server and alter the application code to use it. This means a lot of work and expense, both to duplicate Ubisoft's game saving code and to set up and maintain the servers. Won't happen. I'm not even a very good game hacker, and I've done much more dramatic things. It's really not a huge deal. People have reverse-engineered entire online game protocols in order to have their own unoff…

This is assuming the game is complete, what if the server is sending back parts of the game in response to state saving. For instance, perhaps some of the AI is running remotely. This could explain dropping out of the game: the game is unable to continue.

Re: The Awful Anti-Pirate System That Will Probably Work

#28
post #7

1. Make your own, free saved game server and alter the application code to use it. This means a lot of work and expense, both to duplicate Ubisoft's game saving code and to set up and maintain the servers. Won't happen. I'm not even a very good game hacker, and I've done much more dramatic things. It's really not a huge deal. People have reverse-engineered entire online game protocols in order to have their own unoff…

the original binary doesn't need to be modified in any way It's easy for Ubisoft to also force the binary to be cracked: have the client request the server sign a random token with its private key, and verify it with a public key embedded into the client. This way a third party server could only be written if the client was also cracked to either change the key or remove the check.

True.

It's a loss for them either way -- if Ubisoft goes out of their way to add this feature, the effort required by the crackers is proportionally smaller.

I tend to think most of the draconian copyrape is actually internal political maneuvering at these large publishers. Ways for one department to counter another's with figures "look! After implementing xxx DRM scheme in order to prevent loss from copyright infringers in market yyy, total predicted sales volume was not met by zzz! In addition, piracy rates remained at or above zzz1! This proves that our console-focused sales track etc etc" Kind of like how the digital distribution from EA for Crysis actually did not work at all, probably on purpose, for various reasons pertaining to retail and corporate in-fighting (my theory, anyway.)

Re: The Awful Anti-Pirate System That Will Probably Work

#29
post #27
post #7

1. Make your own, free saved game server and alter the application code to use it. This means a lot of work and expense, both to duplicate Ubisoft's game saving code and to set up and maintain the servers. Won't happen. I'm not even a very good game hacker, and I've done much more dramatic things. It's really not a huge deal. People have reverse-engineered entire online game protocols in order to have their own unoff…

This is assuming the game is complete, what if the server is sending back parts of the game in response to state saving. For instance, perhaps some of the AI is running remotely. This could explain dropping out of the game: the game is unable to continue.

They could do that. Run some portions of the game on the server, which would remove some of the game logic from the client, making any sort of crack to require adding back in instead of simply stripping out logic.

They probably will not do anything non-trivial for this. It costs money to run servers, and they would have to run much more powerful servers in order to be running game logic for each player. That would eat into revenue, and this game is not even subscription-based.

Re: The Awful Anti-Pirate System That Will Probably Work

#30
post #25

You missed Option 4, which is what will actually happen: 4. Make it easy to set up your own local game server and alter the hosts file on your machine to point to it. That is dead easy to do. I actually did it for the game FantasticContraption, not to steal it (it's well worth ten bucks. go try it: http://www.fantasticcontraption.com/ ), but because their server is so hopelessly overloaded at peak times that the game…

While I agree that this is probably what will happen, it is probably not going be as easy as you make it seem. There is a very good chance that in this case the entire conversation with the server will be encrypted. In order to emulate this, the encryption will have to be broken. That's hard enough as it is, and you also don't really know what the plaintext is.

Many of the major game protocols are not only encrypted, but are extremely complex and irregular. They're absolutely no fun to reverse.
Post reply on HN