Quote:
there is hash function and de hash function
No, there isn't. That's the whole point of hashing as opposed to encryption: there is no way to "reverse" a hashed value and obtain the original input.
And that's why you use it: encrypted passwords are not secure, because the decryption key must be known to the software when the user logs in. Hashing a password - with a salt value - creates a non-unique (but from a very large phase space) value which you then compare directly to the stored hash value. If they match, the password is correct and you let the user in. If they don't, it isn't correct and they can go whistle. But no-one (even you or anyone who accesses your software and / or database complete with source code) can find out what the original password was.