• Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
  • Asset Store
  • Get Unity

UNITY ACCOUNT

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account
  • Blog
  • Forums
  • Answers
  • Evangelists
  • User Groups
  • Beta Program
  • Advisory Panel

Navigation

  • Home
  • Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
    • Blog
    • Forums
    • Answers
    • Evangelists
    • User Groups
    • Beta Program
    • Advisory Panel

Unity account

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account

Language

  • Chinese
  • Spanish
  • Japanese
  • Korean
  • Portuguese
  • Ask a question
  • Spaces
    • Default
    • Help Room
    • META
    • Moderators
    • Topics
    • Questions
    • Users
    • Badges
  • Home /
avatar image
0
Question by Reeceg · Aug 11, 2014 at 01:37 AM · gamehacking

Best way to make it harder to crack

Now i know that its impossible to make a game uncrackable all i want is the best way to make it hard for them if someones going to hack my game i at lest make it a fun challenge for them

Comment
Add comment · Show 13
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users
avatar image Kiwasi · Aug 11, 2014 at 01:52 AM 3
Share

Best way to make you game uncrackable is to install it on a single computer with no network connection inside of a electromagnetically sealed room.

You probably should lock the door too.

avatar image Reeceg · Aug 11, 2014 at 01:58 AM 0
Share

Lol your right but i don't want it uncrackable i just want to make it hard for them to do it. theres probably no way to do this but i just thought i would ask the experts.

avatar image Kiwasi · Aug 11, 2014 at 02:13 AM 0
Share

I'm no expert on security, but the general idea is to validate everything important to security server side. Nothing important should be accessible to the client.

avatar image Reeceg · Aug 11, 2014 at 02:16 AM 0
Share

so i would put important things (e.g money script) in a separate folder to the rest and lock that folder

avatar image WhoRainZone1 · Aug 11, 2014 at 02:49 AM 2
Share

I think doing your own encryption/decryption for data is good, especially for network stuff.. people also have to bother with that problem when trying to crack then.

avatar image thornekey · Aug 11, 2014 at 02:51 AM 2
Share

People are going to try to hack it and crack it regardless of how much security you put in place. And they will almost 100% of the time get through. But you can still encrypt it to add an extra layer.

avatar image Reeceg · Aug 11, 2014 at 03:00 AM 0
Share

thank you

avatar image Kiwasi · Aug 11, 2014 at 03:08 AM 2
Share

People are going to try to hack it and crack it regardless of how much security you put in place.

This assumes your game is worth cracking. I would focus on making a game worth hacking first.

avatar image thornekey · Aug 11, 2014 at 03:19 AM 0
Share

This assumes your game is worth cracking. I would focus on making a game worth hacking first.

Exactly. Focus on the right things. If you release your game; then worry about security.

Currently, I am working on a multiplayer game. I am storing my account details and items, etc, in player prefs.. I will later store them in a database - because right now.. security doesnt matter..

Good luck with your project, work hard on it, then patch it up with sec.

avatar image tanoshimi · Aug 11, 2014 at 05:45 AM 2
Share

@WhoRainZone1 - I'm not quite sure what you meant by "doing your own encryption/decryption", but co$$anonymous$$g up with your own encryption method is a really bad idea. Shannon's maxim (which, in turn, is based on $$anonymous$$erckhoff's Principle) states that in designing a secure system, you should assume that the enemy already knows all the details of the system - security "through" obscurity is not security at all.

@Reeceg - I have to agree with the other commentators - if you plan to distribute your game in any way then it will always be hackable. Rather than wasting effort trying to prevent the inevitable, concentrate on constantly innovating and improving your game - that way you're guaranteed to always be one step ahead of the hackers.

As for having some "fun" with hackers (who, let's face it, are generally just a bunch of teenage kids anyway), read this: http://www.greenheartgames.com/2013/04/29/what-happens-when-pirates-play-a-game-development-simulator-and-then-go-bankrupt-because-of-piracy/

avatar image Kiwasi · Aug 11, 2014 at 06:08 AM 0
Share

@tanoshimi. That link was awesome. Re$$anonymous$$ds me of the old red alert game that used to blow up all of your buildings at key points if it detected piracy.

Pre-hacking your own work may actually be a decent strategy.

avatar image WhoRainZone1 · Aug 11, 2014 at 01:27 PM 0
Share

tanoshimi - I get you point, absolutely. It's purpose is to serve as an additional "security layer". $$anonymous$$erckhoff's principle sure does apply here, but it won't harm to do your own encryption as a additional step. At least it doesn't make the cracker's life easier.

avatar image HarshadK · Aug 11, 2014 at 01:32 PM 0
Share

At least it doesn't make the cracker's life easier.

And so does yours. :-P

1 Reply

· Add your reply
  • Sort: 
avatar image
4
Best Answer

Answer by HarshadK · Aug 11, 2014 at 06:47 AM

One of the base tools in the arsenal of a software hacker is a Hex Editor using which they crack the standalone/application.

Use of License Keys is one of the basic ways to make sure legitimate users are only able to play your game. But a cracker can easily find out and remove the loop from your code which looks for a Licence Key. Finding the loop from the assembly code is the tricky part but then all you need is to put a 'NOP' call.

One of the counter measure that makes crackers sweat is to have multiple checks for license key at various places in your game like after game loads, before the gameplay begins.

Use of Application.genuine is also a basic way to ensure the code is not tampered with. But this method does not guarantee of 100% success to work on all platforms and hardwares. And it also does not ensure guarantee against patches.

Encryption is also one of the ways to add an extra layer of security. You can store all your game data using encryption to reduce the tampering of your data. You can also use shadowing technique (the one used by Unix to store passwords).

The list goes on and on and on...

As everyone said in their comments under the question, it is best to put your efforts in making a quality game to provide your users with a quality experience rather than making the hackers sweat or giving them a fun in breaking your game (They are not your customers anyway).

Comment
Add comment · Show 1 · Share
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users
avatar image CHPedersen · Aug 11, 2014 at 08:05 AM 0
Share

Great info! I didn't know anything about how hackers crack games. Now I know at least a little. :)

Your answer

Hint: You can notify a user about this post by typing @username

Up to 2 attachments (including images) can be used with a maximum of 524.3 kB each and 1.0 MB total.

Welcome to Unity Answers

If you’re new to Unity Answers, please check our User Guide to help you navigate through our website and refer to our FAQ for more information.

Before posting, make sure to check out our Knowledge Base for commonly asked Unity questions.

Check our Moderator Guidelines if you’re a new moderator and want to work together in an effort to improve Unity Answers and support our users.

Follow this Question

Answers Answers and Comments

24 People are following this question.

avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image

Related Questions

getting udp package info inside unity (GlovePIE) 0 Answers

Connecting an object to 2 others 1 Answer

Enemies Problem 1 Answer

How to set the best time and save it? 1 Answer

Trigger Pause Screen when escape key is pressed? 0 Answers


Enterprise
Social Q&A

Social
Subscribe on YouTube social-youtube Follow on LinkedIn social-linkedin Follow on Twitter social-twitter Follow on Facebook social-facebook Follow on Instagram social-instagram

Footer

  • Purchase
    • Products
    • Subscription
    • Asset Store
    • Unity Gear
    • Resellers
  • Education
    • Students
    • Educators
    • Certification
    • Learn
    • Center of Excellence
  • Download
    • Unity
    • Beta Program
  • Unity Labs
    • Labs
    • Publications
  • Resources
    • Learn platform
    • Community
    • Documentation
    • Unity QA
    • FAQ
    • Services Status
    • Connect
  • About Unity
    • About Us
    • Blog
    • Events
    • Careers
    • Contact
    • Press
    • Partners
    • Affiliates
    • Security
Copyright © 2020 Unity Technologies
  • Legal
  • Privacy Policy
  • Cookies
  • Do Not Sell My Personal Information
  • Cookies Settings
"Unity", Unity logos, and other Unity trademarks are trademarks or registered trademarks of Unity Technologies or its affiliates in the U.S. and elsewhere (more info here). Other names or brands are trademarks of their respective owners.
  • Anonymous
  • Sign in
  • Create
  • Ask a question
  • Spaces
  • Default
  • Help Room
  • META
  • Moderators
  • Explore
  • Topics
  • Questions
  • Users
  • Badges