If $A$ is normal and $A$ and $B$ commute, then $A^*$ and $B$ commute Let $A$ is a normal matrix: $A^*\! A = A A^*\!\!$,$\,$ and $AB = BA$. Prove that $A^*\!B=BA^*\!\!$.
I can prove that if $\det A\ne 0$ by multiplication $AB=BA$ by $A^*$ left and right and using some manipulation. But I have no idea what to do if $\det A = 0$.

We can use the fact that
$$\def\tr{\mathrm{tr}}
X=0\iff \tr(XX^*)=0.
$$
Since $A$ and $B$ commute, $A^*$ and $B^*$ commute as well. Together with the cyclic property of trace, $\mathrm{tr}(XY)=\mathrm{tr}(YX)$, we find that in each term of
$$
\begin{split}
\tr[(A^*B-BA^*)(A^*B-BA^*)^*]
&=
\tr(A^*BB^*A)+\tr(BA^*AB^*)
-\tr(BA^*B^*A)-\tr(A^*BAB^*)
\end{split}
$$
is equal to a constant, say, $\tr(A^*AB^*B)$.
E.g., $\tr(A^*BB^*A)=\tr(AA^*BB^*)=\tr(A^*AB^*B)$ and
$\tr(BA^*B^*A)=\tr(BB^*A^*A)=\tr(A^*ABB^*)=\tr(A^*AB^*B)$. Hence the trace  of $(A^*B-BA^*)(A^*B-BA^*)^*$ is zero.
