AFAIK надо и то и то
А поддерживать свою цепочку блоков, состоящую только из PoW или только из PoS, запрещает алгоритм.
Неправда, никаких подобных ограничений нет.
Мне думается, что для атаки 51% в PoW+PoS нужно иметь и 51% коинов, и 51% мощностей одновременно.
Зависит от реализации.
В PPCoin и большинстве клонов старых версий NVC защита сети полностью лежит на proof-of-stake и атакующему вообще не нужны вычислительные мощности. Потому что цепочку из четырех миллиардов proof-of-work блоков любой сложности можно форкнуть одним proof-of-stake блоком со сложностью 1.0.
А для атаки на "нормальную" цепь даже не нужно иметь 51% монет, достаточно 25% от веса, чтобы иметь шанс 1 к 4096 сгенерировать 6 PoS блоков подряд. А поскольку Stake генерация не требует энергии, этот процесс можно повторять нужное количество раз, пока не повезет. И это даже если забыть о том, что генерация PoW блока основной цепью во время атаки снижает количество требуемых PoS блоков, которые нужно сгенерировать для успеха атаки. Собственно, по этой причине в PPCoin и используются чекпоинты до тех пор, пока не нагенерируется достаточно монет для того, чтобы атаку такого рода было нереализуемо трудно провести в обозримое время.
В NVC все немного по-другому, trust score блока зависит от того, в цепи с каким соотношением PoS и PoW блоков он находится. Вот там для гарантированного успеха уже будут нужны мощности, а не только монеты. Поэтому повторные попытки генерации цепочек в расчете на удачу обойдутся слишком дорого, т.к. потери энергии и прибыли при неудачной атаке невосполнимы, в отличие от потерь монето-дней.
Насчет же DoS атак... В построенном на coin-age концепте атакующему не удастся долго удерживать доминирующую stake мощность. Потому что инпуты рано или поздно закончатся и генерацией блоков смогут заняться нормальные участники, чьи блоки он до этого орфанил.
Вообще непонятно, откуда так усиленно берутся мысли про "51% и того и другого". У того же Sunny прямым текстом заявлено и в пресс-релизе, и в вайтпейпере, что
мощности роли не играют. PPCoin - это чистая Proof-of-Stake система, Proof-of-Work там нужен не более чем для децентрализованного и распределенного премайна. Если бы не было цели сделать распределенную эмиссию, его можно было запустить без Proof-of-Work с тем же успехом и ничего бы от этого не поменялось.