prove that $a^3 - b(b+1) = (a-2)(c^2 + 1) + 2$ has infinitely many solutions How do I prove that $$a^3 - b(b+1) = (a-2)(c^2 + 1) + 2$$ has infinitely many solutions if a, b and c are natural numbers?
I have opening the brackets and moving all the terms to one side which gets rid of the constant 2. I have also tried substituting the value of a in b, b in c, bc in a and so on... but it all results in a big mess which I can't simplify.

Ad-hoc solution: note that when $a=2$, $c$ doesn't matter. Solving
$$
a^3-b(b+1)=2 
$$
for $b$ (given that $a=2$) gives us $b=2$ as well. Then, any triple $(2,2,c)$ $(c\in\mathbb{N})$ is a solution. There are infinitely many such triples so the claim follows.

Better solution:
solving for $c$ gives you
$$
c=\sqrt{\frac{a-a^3+b+b^2}{2-a}}
$$
so to make $c$ a natural number, it is enough that $a$ and $b$ satisfy 
$$
b+b^2=2a^2-a^3\tag{i}
$$ 
because this will make the numerator under the square root $(2-a)a^2$. Solve (i) for $b$, which yields
$$
b=\frac{1}{2}(-1+\sqrt{1-4a+8a^2})=\frac{1}{2}\left(-1+\sqrt{(2a)^2+(2a-1)^2}\right).
$$
So we are done if we can demonstrate that there are infinitely many natural numbers $a$ such that $(2a)^2+(2a-1)^2$ is a perfect square. But that is already done here by Hagen von Eitzen. For completeness, I partially reproduce that answer here: define 
$$
a_0=0, \qquad a_1=3, \qquad a_{n}=6a_{n-1}-a_{n-2}+2\text{ for }n\ge 2.
$$
Then, $a_n+(a_n+1)^2=c_n^2$ where
$$
c_0=1, \qquad c_1=5, \qquad c_{n}=6c_{n-1}-c_{n-2}\text{ for }n\ge 2.
$$
The numbers $\{a_n\}$ alternate in parity so in our context, you want $2a=a_{2k+1}+1$ for $k\geq 1$ (when $k=0$, $a=2$ so refer to the ad-hoc solution above).
