Hacking Game Concept: Comments appreciated.

Started by
12 comments, last by -JetSirus- 17 years, 9 months ago
To BBHudson: That's the line I need to walk. My idea for that would be to have the speed of the decrypting depend on the power of the players in-game computer. It should never take longer than 5 mins. The idea is the player should never have 5 mins to spare, as someone will be activly tracing them. Also, I would like to 'display' the process so the player can see the decryption as it takes place. Meybey even have it pause from time to time needing player input.
------------------This is so stupid!
Advertisement
I would suggest looking into the "blue sky" hacking game series. They (in my opinion) managed to merge realism, a sense of multiplayer, and fun into a nice little package. I do hope you complete your idea though, if you could complete this in a satisfactory condition, it would indeed become one of the better hacking games on the internet at the moment.

As for simulating multiplayer, why not add a simple IRC chat window into the game? Allow the players to talk while playing, It would give people a better chance to "roleplay" being a hacker, if they could hold conversations with thier friends where they discuss their current hacks to take over the government, while they are performing them.
Quote:Original post by -JetSirus-
To BBHudson: That's the line I need to walk. My idea for that would be to have the speed of the decrypting depend on the power of the players in-game computer. It should never take longer than 5 mins. The idea is the player should never have 5 mins to spare, as someone will be activly tracing them. Also, I would like to 'display' the process so the player can see the decryption as it takes place. Meybey even have it pause from time to time needing player input.


It shouldn't be too difficult to "emulate" a few algorithms in the decryption process. All such algorithms are based upon prime factorization of a large modulus (terms such as "128-bit encryption" refer to the size of the modulus used; a 128-bit number has approximately 38 digits in decimal notation). There are three main 'modern' algorithms used for factorization: elliptic curve method (ECM), quadratic sieve, and number field sieve. Each of these has a specific size range where they are most useful (in general the ECM is fastest when the modulus is small, the quadratic sieve is best for a medium modulus, and when the modulus is very large, the number field sieve is more appropriate). This could be incorperated very easily into your game, as your character could learn the faster algorithms at different points, enabling him to decrypt certain information faster. This could also involve some input from the player as he would have to know which algorithm to use at what point.

If you do a wikipedia search for each of ECM, quadratic sieve and number field sieve (wiki is actually very good for these sorts of algorithms) there should be a simple formula that detirmines the expected time taken to factorize a modulus of x number of digits. Obviously you wouldn't want to use the exact times, but you could make it more realistic by having for instance the ECM take an appropriate amount of time longer than the NFS against particularly large moduli. As a quick note, most bank sites these days use 1024-bit encryption, which equates to having around a 310 digit modulus (in decimal). If you are having decryption time to be in minutes, then make encryption instantaneous. Encryption is basically done by producing two large prime numbers (then multiplying them together to create the modulus); I made a program in C++ during the 2nd year of Uni that produced large primes, and creating a 100-digit prime (that would be used for somewhere around 664-bit encryption) took literally seconds, so bear in mind that the encryption process is significantly faster than breaking a code.

Finally, for emulating a "better" PC, you should know that algorithms used in encryption/decryption are entirely reliant on processor speed. In particular, upgrading a PCs memory would not increase the speed of an encryption process, whereas a more powerful processor would be significantly faster (numbers used in 1024-bit encryption - though large in numeric terms - take only 1/8th of a kilobyte in memory, and since top of the range modern PCs often come with a Gb or more of memory, this is a truely insignificant amount).

[Edited by - BBHudson on July 16, 2006 5:27:46 PM]
BBHudson
Thanks for the input, that will acutally help alot. I was originally going to look into a making a small program that encrypted things using a blowfish algorithm to give myself and idea of how one would break it.
------------------This is so stupid!

This topic is closed to new replies.

Advertisement