# How many invertible $n\times n$ matrices do we have in which the entries are taken from $\Bbb F_p$?

Let $p$ be a prime number and $\Bbb F_p$ denote the field $\Bbb Z/ p \Bbb Z$.

How many invertible $n\times n$ matrices do we have in which the entries are taken from $\Bbb F_p$?

I have a nonrigorous proof that this equals $(p^n - 1)(p^n - p)(p^n - p^2)\dots(p^n -p^{n-1})$ but I am not sure if even that is correct.

It works by picking the first column vector which can't be the zero vector and then any vector that isn't in the span of that, and repeat until we have filled the matrix. Any rigorous way to show this?