Difference of Squares functional equation Find all twice differentiable functions mapping the reals to the reals such that $$f(x)^2-f(y)^2=f(x+y)f(x-y)$$.
From plugging in $x=y=0$, I got $f(0)=0$. Then from plugging in $x=0$, we get that $f(x)=-x$.
However, I can't continue further. Any help?

Hint (suggested by the "twice differentiable" condition): take the derivative in $y$.
$$-2f(y)f'(y) = f'(x+y)f(x-y) - f(x+y)f'(x-y)$$
Now take the derivative in $x$.
$$
\begin{align}
0 & = f''(x+y)f(x-y) + f'(x+y)f'(x-y) - f'(x+y)f'(x-y) - f(x+y)f''(x-y) \\
 & = f''(x+y)f(x-y) - f(x+y)f''(x-y)
\end{align}
$$
With $x+y \mapsto a$ and $x-y \mapsto b$ the above gives $\frac{f''(a)}{f(a)} = \frac{f''(b)}{f(b)}$ so in the end $\frac{f''(x)}{f(x)} = \text{const}$.
The above is a necessary condition, though not a sufficient one. After eliminating the candidate functions which don't satisfy the original equation, the eligible solutions are $f(x) = \lambda x, \lambda \in \mathbb{R}$ and $(\dagger)\;$ $f(x) = \lambda \sin(\mu x), \lambda, \mu \in \mathbb{R}$.
[ EDIT ] $\;\;(\dagger)\;\;$ As kindly pointed by @CarlSchildkraut, the original answer was missing the $\sin$ family of solutions. To fill-in the blanks left after deriving the differential equation $\frac{f''(x)}{f(x)} = c\;:$


*

*$c=0$  has $f(x) = \lambda x + \mu$ as solutions. The initial condition $f(0)=0$ implies $\mu = 0$, and the remaining functions $f(x)=\lambda x$ are easily verified to satisfy the original equation due to the algebraic identity $a^2 - b^2 = (a+b)(a-b)$.

*$c \lt 0$ gives $f(x) = \lambda \sin(\sqrt{-c}\,x) + \mu \cos(\sqrt{-c}\,x)$ with $\mu=0$ from the initial condition, so $f(x)= \lambda \sin(\sqrt{-c}\,x)$ which again can be easily verified to satisfy the original condition due to the trigonometric identity $\sin^2(a) - \sin^2(b) = \sin(a+b)\;\sin(a-b)$.

*$c \gt 0 $ gives $f(x) = \lambda e^{\sqrt{c}\,x} + \mu e^{-\sqrt{c}\,x}$ with $\mu = -\lambda $ from the initial condition, so in the end $f(x) = \lambda ( e^{\sqrt{c}\,x} - e^{-\sqrt{c}\,x})$ which can be easily verified to not satisfy the original equation.
