Последний вопрос в связи с материалом Бутерина и развитием геторогенных блокчейнов (Polkadot, Avalanche, Cosmos), а особенно – в связи с возможными связками DAG+blockchain вызывает наибольшие сомнения в позитивности подхода. Отсюда: если взять любой эмпирический показатель для любого уровня сетей, начиная с числа Данбара, заканчивая закон Меткалфа, получим, что с увеличением элементов системы взаимодействие между ними усложняется. Проще говоря, если взять два описанных негативных эффекта (напомню – синтезированных из основных атак), то получим сразу же коэффициент 2х на входе: и это без учета «общеблокчейновых атак», навроде сибиллоподобных атак и прочих. Здесь, необходимо и почти мгновенно, появляется еще один неучтенный элемент. TPS – плата за смерть Посмотрите на Near, Solana, Tron, Cardano или даже Bitshares, что родились в одно время с творением Виталика, и на других палачей Ethereum тоже может посмотреть: многие из них начинали с рассказа о том, как они достигнут 1 000, 10 000, 100 000, 1 000 000 TPS. Но в итоге это заканчивалось каждый раз одинаково. И дело даже не в том, что скоростные системы нужны в очень ограниченном числе сфер, таких как высокочастотный трейдинг, о чем говорил и не раз, но еще и в том, что все это влияет на один параметр, который мог быть учтен в PoW & PoC, даже PoI алгоритмах, но не в PoS: SSD-хранилища & RAM. Казалось бы: причем тут это? Возьмите тот же Ethereum 2.0: более 50% нод, а это уже не PoW-ноды, находится на AWS – на централизованном ресурсе. При цензуре в 62%-65% такой показатель дает достаточную высокий показатель спутанности и зависимости от единоначальных решений. Допустим, что и это будет преодолено на уровне «социального консенсуса». Все равно возникает очевидная проблема: чем выше показатель TPS – тем больше места для архивных данных нужно. А полные ноды без архивных данных не имеют смысла. А блокчейн – без полных нод. И возникает целая вереница мало различимых, пока, связей, которые в итоге могут считаться простой формулой: St(bl.dg)*k = С, где St – хранилище (storage) блокчейна (bl) и/или dag-системы (dg), k – коэффициент прироста, а С – связность (connectivity), которая в свою очередь может быть рассчитана так: C = Q(n)*1/c, где Q(n) – количество условных нод хранения, а с – уровень централизации (связанности) этих нод между собой. Допустим, пример: ● у нас есть 10 000 нод; ● из которых 1 000 принадлежат 1 актору; ● отсюда 10 000 * 1000 = 10 000 000. Что означает, что для достижения нормальной децентрализации потребуется экспоненциальный рост подобных нод до 10М. Конечно, это весьма упрощенный расчет, но суть он отражает верно. При этом можем подсчитать дальше: пусть нода хранит 100 Гб, тогда 100*k = 10 000 000, а значит k= 100 000, что означает, что для связанности (С) в 10М и со средним размером хранилища в 100 Гб нужен коэффициент прироста в целых 100 000, что явно расходится с существующей практикой. Но теперь пойдем дальше: а сколько стоит содержание ноды со 100 Гб постоянной памяти (SSD или пусть даже HDD старого образца) и нормальным показателем RAM? Путь $100-$200: хотя можете на примере Эфира убедиться, что это будет не 100 ГБ, а терабайты и показатели RAM будут в 16-32 GB спокойно, поэтому посчитаем 100 000 * $200 = $20 000 000 – таковы начальные вложения для достижения указанного прироста на 1 шаг. Естественно, что никто не будет таких показателей достигать. Но в этом-то и проблема: каким иным способом будет рассчитана стоимость хранения данных, которые как никакие иные требуют децентрализации? Еще раз: финализация дает нам уверенность при достижении ⅔ и принятии нужного блока в нужной эпохе (или схожим механизмом); социальный консенсус решает вопросы при полной остановке (Local(time)=0), но как быть, если нужно разрешение спора в периоде, где данные были затерты из-за отсутствия полных нод по периоду? Думаете, таких споров будет мало, когда весь мир перейдет на суррогат блокчейнов – DLT? Все эти реестры недвижимости, установленных границ; аренда авто и всего прочего будут на этом базироваться, а расчеты – исключительно в CDBC вестись. Я вот уверен в обратном: споров будет предостаточно. И фактически, все, что нужно, чтобы совершить подобную атаку – воспользоваться механизмом отсутствия расчета стоимости конечного хранения, что было в PoW & PoC, но напрочь отсутствует в PoS. Отсюда же и все проблемы с экологичностью и ей подобные, описанные в первой части. Спасти, конечно, могут низкоуровневые хранилища, навроде Swarm & IPFS, или надстройки, как Filecoin, Sia, Storj, etc, а равно и перестройка алгоритмов, таких как у Chia. Но это уже связка, если не кроссчейн, то кросс-сервисная, а ее еще никто не делал, да и консенсусы опять будут разные, а как PoS влияет на кроссчейн и подобные взаимодействия – описал чуть выше: крайне негативно. Тем более что здесь рождается еще одна связка: дешевые транзакции. Дешевые и быстрые транзакции – кладезь для СПАМа, который, как известно, более 80% или еще пример) иногда в трафике занимал. Поэтому атакующему надо проделать не так много действий: Найти точку отказа через СПАМ-транзакции, увеличивая по экспоненте не просто размер хранилища, но и стоимость содержания такового, чтобы отсечь рядовых пользователей от содержания суперузлов. После чего принять решение оставшимся большинством. И свести фактическую внутреннюю стоимость к нулю. Попробуйте взять формулу сложности: difficulty = difficulty_1_target / current_target и применить ее к приросту хранилищ и все встанет на свои места. Для малых решений это может стать фатальным. А теперь представьте, что эта система обслуживает энергетику региона? Настоящие прокаченные AI? Космические спутники? Мне кажется, что проблема кроется в этом существенная: мы не верим, что полностью оцифрованное будущее наступило. Мы просто будем его масштабировать еще какое-то время. Подумайте об этом до следующей статьи, где расскажу о перспективах PoS подробней, через цифры и сводные графики, а пока все и
Подробнее на Bits.media:
https://bits.media/pos-problemy-i-perspektivy-chast-vtoraya-ataki/