factoring $(x^6 - y^6)$: what is going on here? I apologize if this question already exists, but it was quite difficult to word.
In my math class today, we learned how to factor a difference of two perfect cubes. One of our practice questions was:
factor $x^6 - 64$
almost everyone other than me (including my teacher, as he was rushing) ended up with:
$(x^2 - 4)(x^4 + 4x^2 + 16)$
I pointed out two things:
1:
$(x^6 - 64)$ was also a difference of two perfect squares, and we could factor it into this:
$(x^3 + 8)(x^3 - 8)$
Which could then be factored further into:
$(x + 2)(x^2 - 2x + 4)(x - 2)(x^2 + 2x + 4)$
and 2:
the $(x^2 - 4)$ was also a difference of two perfect squares, and we could factor further: 
$(x + 2)(x - 2)(x^4 + 4x^2 + 16)$
Now for my question:

How are $(x + 2)(x^2 - 2x + 4)(x - 2)(x^2 + 2x + 4)$ and $(x + 2)(x - 2)(x^4 + 4x^2 + 16)$ equivalent?

The teacher didn't seem to know off the top of his head, and I can't figure it out after trying for a half an hour. I've heard that you can factor the sum of two perfect squares with imaginary numbers, so maybe i can do something there to help explain this?
edit: fixed instances of "- 16" to "+ 16", and "4x" to "4x^2" (thanks for pointing that out)

It's a very common mistake (*) to think that, since $t^2+4t+16$ is irreducible over the reals, also the polynomial obtained with $t=x^2$ is irreducible.
Over the reals, every polynomial of degree $>2$ is reducible, so also $x^4+4x^2+16$ is reducible.
The trick here is to push in a difference of squares: if you add and subtract $4x^2$, you get
$$
x^4+8x^2+16-4x^2=(x^2+4)^2-(2x)^2=(x^2+4-2x)(x^2+4+2x)
$$
so you get the same factorization as with the other method.
Another funny example is $x^4+1$:
$$
x^4+1=x^4+2x^2+1-2x^2=
(x^2+1)^2-(\sqrt{2}\,x)^2=
(x^2+1-\sqrt{2}\,x)(x^2+1+\sqrt{2}\,x)
$$
which is the full factorization over the reals, since those degree $2$ polynomials have no real roots.
(*) Even among teachers, unfortunately.
