I have an application for Android which communicates with a Google App Engine (GAE) back-end. For authentication I have a user name and password, however I don't wanna store the plain text password on the client and transfer it in plain text on an insecure channel. So I was thinking of hashing the password when the users enters it the first time (registration or login) and store it hashed on the phone as well as on the GAE database. However, I'm not sure which cryptographic hash function to use, currently thinking about sha1(), and if I need to do something else or just a sha1(plainTextPassword)
.
Any recommendations?