Вопрос в том, как алгоритмически отличить фуфло от не фуфла. POW или POS клиент выберет цепь с самой высокой сложностью и злоумышленник пойдёт нахуй. В обоих случаях доказательство алгоритмическое. Кроме того, в обновления иногда прописывают контрольные точки, что задирает сложность атаки до уровня доступного только пулам для POW и крупным ходлерам для POS.
в моем случае это решается демократией - что большинство считает то и верно
у вас есть список всех живых узлов, значит вы можете опросить или всех или рандомно, чем больше тем надежнее, чтобы они прислали хеши последних блоков с номерами, и та ветка которая будет прислана большинством та и валидная
это не спасет от 51% ботнета, но на консенсус он не повлияет, все просто согласятся что 51% наград пойдут ему, все остальное легко проверяется, не вижу я в упор как консенсус может пострадать