In the current project I would like to create my own hash function but so far haven’t gained much theoretical background on hashing principle.
I would be very thankful if anyone of you could suggest any useful resource about the theory of hashing, cryptography and practical implementations of hash functions.
Thank you!
P.S. As hashing blocks of informations in this case is a part of larger research project I would like to create a hash function on my own and this way learn the principle rather than use the existing libraries. The informations I am working on will stay in house so there is no need to worry about the possible attacks.
Don’t. Existing encryption and hashing algorithms (as pointed out in the comments above, they have little to do with each other) have been designed by experts and extensively peer-reviewed. Anything you write from scratch will suck in comparison. Guaranteed. Really. The only thing you’ll gain is a false sense of security — your algorithm won’t be peer-reviewed, so you’ll think it’s more secure than it actually is.
But if you do want to know more about the theory (and gain an appreciation for why you shouldn’t do it yourself), read "Applied Cryptography" by Bruce Schneier. You won’t find a better resource.
Brush up on your math first.