Let $G$ be a finite group with $|G|>2$. Prove that ${\rm Aut}(G)$ contains at least two elements.
We know that ${\rm Aut}(G)$ contains the identity function $f: G \to G: x \mapsto x$.
If $G$ is non-abelian, look at $g : G \to G: x \mapsto gxg^{-1}$, for $g\neq e$. This is an inner automorphism unequal to the identity function, so we have at least two elements in ${\rm Aut}(G).$
Now assume $G$ is abelian. Then the only inner automorphism is the identity function. Now look at the mapping $\varphi: G \to G : x \mapsto x^{-1}$. This is an homomorphism because $\varphi (xy) = (xy)^{-1} = y^{-1} x^{-1} = x^{-1} y^{-1} = \varphi (x) \varphi (y)$. Here we use the fact that $G$ is abelian. This mapping is clearly bijective, and thus an automorphism.
This automorphism is unequal to the identity function only if there exists an element $x \in G$ such that $x \neq x^{-1}$. In other words, there must be an element of order greater than $2$.
Now assume $G$ is abelian and every non-identity element has order $2$. By Cauchy's theorem we know that the group must have order $2^n$.
I got stuck at this point. I've looked at this other post, $|G|>2$ implies $G$ has non trivial automorphism, but I don't know what they do in the last part (when they start talking about vector spaces). How should this prove be finished, without resorting to vector spaces if possible?
Thanks in advance