I'm trying to understand encryption vs hashing. Right now, I understand that with encryption, if you have the key, you can decrypt a ciphered text back to its original form. With hashing, it's a one way process. Knowing this, it's not clear to me how you can verify that a user entered the correct password. Do you hash what they provided with the algorithm, salt, and iterations, and see if it matches the stored hash?
Also some explanation to differentiate the terms 'hash', 'hashkey', and 'key' in this area would be nice.