By numerical tries, I see that
$$\mathrm{tr}(hh^H B^H B) = h^HB^HBh$$
where $\mathrm{tr}(A)$ and and $A^H$ are the trace and the conjugate transpose of matrix $A$, respectively.
$h$ is column vector.
Could anyone tell me which property of $\mathrm{tr}()$ can be used to prove this ?
It is due to the property $tr(AB)=tr(BA)$ which is always true for square matrices.
Here, as $h^HB^HBh$ is a scalar:
$$h^HB^HBh = \mathrm{tr}(h^HB^HBh) = \mathrm{tr}((h^HB^HB)h)=\mathrm{tr}(h(h^HB^HB))$$
Remark: more generally, we have a "rotating property" of operator "trace" (see the interesting answers in (Prove that $\operatorname{trace}(ABC) = \operatorname{trace}(BCA) = \operatorname{trace}(CAB)$)) that can be extended to any number of factors and any (rectangular or square) type of matrices as long as their dimensions are compatible for multiplication(s).