There's two problems with your question:
- The term "hash function" is not as clearly defined as you think.
- The most common definition among cryptographers does not imply pseudorandomness.
Generally, you want to be very careful in distinguishing between:
- Security definitions, like:
- Pseudorandom function
- Collision resistant hash function
- Cryptographic algorithms, like:
- Arguments that some given algorithm meets specified security definitions.
"Pseudorandom function" and "collision-resistant hash function" are security definitions:
- A pseudorandom function is a keyed function that an adversary who doesn't know the key cannot efficiently distinguish from a randomly selected function over the same domain and range.
- A collision-resistant hash function (CRHF) is a function that features:
- Compression (turns variable-sized inputs into fixed-size outputs);
- Preimage resistance
- Second preimage resistance
- Collision resistance
Now, you need to understand that the security definition for collision-resistant hash functions does not imply the one for pseudorandom functions:
- A pseudorandom function need not compress its input. Example: AES, or any block cipher (which are designed to be pseudorandom permutations on fixed size blocks).
- A function that provides preimage, second preimage and collision resistance may nevertheless be efficiently distinguishable from a random function.
This means that if all that you assume of your hash function is that it meets the CRHF requirements, you cannot conclude that it also provides the PRF requirements. First because CRHFs may be unkeyed; second because a keyed CRHF may be distinguishable from a random function.
In practice, however, the common hash function algorithms that we use are argued (or just assumed) to meet not just the collision-resistant hash function definition, but also:
- To be suitable building blocks for a pseudorandom function, using HMAC or some other construction;
- Often they're also treated as random oracles: a public function (no secret key) that produces random outputs.
Some cryptographers get nervous when you assume #2, though, because they'd like to minimize the assumptions that we make about our primitives' security.