Using keychain to store high scores and power ups

I'm wanting a more secure way to store high scores and power ups like stars/coins than using UserDefaults (which I believe can be altered by end user). I've seen the keychain mentioned as an alternative and after reading a little about it I get the impression it's main purpose is for storing passwords.

1, Is it ok to use the keychain for this purpose? 2, How much data can you realistically store? 3, Is it ok to write many changes to it very quickly, eg. Several times a second? 4, I believe there's many open source classes to deal with the keychain. Which is the best to use?

Thanks

Answers


Maybe this thread helps: How to secure NSUserDefaults?

They mention Secure-NSUserDefaults ctagory but I haven't used it yet. Though thanks for the question, that reminded me to use keychain in my apps too!


Instead of storing highscores into a place where they don't belong, you might consider hashing them. If you read the highscore again, also compare the hash with a recalculated one. If they don't match, the highscore has been tampered with and you can blame the player for trying to cheat. The hashing algorithm can be something very sophisticated like SHA, or you can think of a simpler one yourself. I suppose it doesn't have to be too bullet proof for game scores.


Need Your Help

Crop/trim a JPG file with empty space with Java

java image crop

Is there a framework which is able to remove the white space (rectangular) of an image. We create Image Thumbnails from technical drawings which are unfortunately in PDF format. We convert the PDF ...

Scrum Project Managment w/ Trac Integration

project-management agile scrum trac

Currently we use Trac to manage all of our tickets (bugs, enhancements, and new projects). It lacks a nice ability to map out the projects, releases and do time estimations. Is there a good scrum p...