Is $H(x) = x^2 \bmod p$ pre-image resistant, second pre-image resistant and/or collision resistant I have the function $H(x) = x^2\bmod p$ , where $p$ is a prime of length n bits and this function maps to the message $x$ to a n-bit hash value $H(x)$.

I need to find out if it is pre-image resistant, second pre-image resistant and/or collision resistant; and if it isn't collision resistant, what are some simple colliding messages.

I think the hash function is pre-image resistant, because for a given $x^2\bmod p$ in the output space of the hash function, it is hard to find any message $x$ with $H(x) = x^2\bmod p$. Is this correct?
It is neither pre-image resistant, second pre-image resistant nor collision resistant.


It is easy to compute square-roots modulo a prime (assuming, of course, a square root exists, it will half the time).  If $p = 3 \bmod 4$, then the simple formula $x^{(p+1)/4} \bmod p$ will work; for $p = 1 \bmod 4$, it's a tad more complicated but still sufficiently easy, for example, by the Tonelli-Shanks algorithm
It is easy to compute second pre-images, even if we consider images outside the range $0 \le x &lt; p$ to be invalid, by taking advantage of $H(x) = H(p-x)$
The easy of computing second pre-images implies a lack of collision resistance.