The most obvious way to make this fair would be to make everyone retire at an exact age - such as 65 or 66. However, this is clearly impractical, because someone who is doing a physical job is likely to 'wear out' quicker than a sedentary worker (notice, though, that not all sedentary jobs are necessarily 'white collar' jobs, nor are all physical ones, 'blue collar' jobs).
In a way, that is the value of personal pensions, since they allow each person to retire at a time most appropriate to them, except that there are many people who - for whatever reason - are unable to build up a large enough 'pot' from which to take an income following retirement.
I still feel that, as with many other benefits, state pensions ought to be given only to those who actually need them to live - there is no need for the above-average person on an above-average income to think that they can spend their income now and then rely on the state when they retire.