So In my app (iOS), you have to register in order to use the service (a food service).  But in order to change details about your account (username, password, and email), you have to reenter your password.  Except for if the user logged out, this is the only time you need your password to use the app.  So I was wondering, since the user basically never uses their password, and its likely they would forget it the one time they might need it, is it ok if I store their password to their local device (in NSUserDefaults)?Since their password would only be on their local device, it doesn't seem like a security risk.  If the app was hacked, the only password they could get would be their own.Further, I was planning on just storing it as a string (no encryption).  Would it make a difference if I hashed it or encrypted it before saving the password to their defaults?Thanks in Advance.
Saving Passwords To The Local Device
security;iphone;ios;user experience;passwords
Use KeyChain to store passwords. I learned how to do that using this link and the KeyChainItemWrapper class can be found hereI don't think you need to encrypt that if you use a KeyChain. Also, NSUserDefaults are not suggested for storing passwords.