Proof-of-Stake: ставка вместо вычислений
Proof-of-Stake заменяет дорогие вычисления денежным залогом: ведёшь себя честно — получаешь награду, мухлюешь — теряешь ставку.
«Зачем сжигать электричество, чтобы доказать серьёзность намерений, если можно поставить деньги на кон?»
В 2022 году Ethereum совершил историческое событие под названием The Merge — перешёл с proof-of-work на proof-of-stake (доказательство доли владения, PoS). Это снизило энергопотребление сети более чем на 99%. Разберёмся, как это работает.
Идея ставки
В PoS нет майнеров — есть валидаторы. Чтобы стать валидатором в Ethereum, нужно заблокировать в специальном контракте залог — стейк (для одного валидатора это 32 ETH). Сеть случайным образом выбирает, кто из валидаторов предложит следующий блок, а другие — подтвердят его. За честную работу валидатор получает награду.
А что мешает мухлевать? Слэшинг (slashing) — наказание. Если валидатор пытается обмануть сеть, например подтвердить два конфликтующих блока, часть его залога сжигается, а сам он выгоняется. Обманывать становится прямо невыгодно: рискуешь собственными деньгами.
Как работает под капотом
Выбор валидатора по ставке Валидатор A: ставка 32 ETH ] Валидатор B: ставка 64 ETH ]--> сеть случайно Валидатор C: ставка 32 ETH ] выбирает предложить блок Честный блок -> награда Обман (2 блока) -> СЛЭШИНГ: часть ставки сжигается
Смоделируем взвешенный случайный выбор валидатора: чем больше ставка, тем выше шанс быть выбранным.
Попробуй сам ▶ Запусти код прямо здесь — он работает в браузере:
import random
validators = {'A': 32, 'B': 64, 'C': 32, 'D': 16}
total = sum(validators.values())
# Проведём 10000 'раундов' и посмотрим, как часто выбирают каждого
counts = {v: 0 for v in validators}
for _ in range(10000):
pick = random.uniform(0, total)
running = 0
for v, stake in validators.items():
running += stake
if pick <= running:
counts[v] += 1
break
for v, stake in validators.items():
share = counts[v] / 100
print(f'{v}: ставка {stake:>2} ETH -> выбран в {share:5.1f}% раундов')
# Доля выборов примерно равна доле ставки в общем пулеPoW против PoS
| Свойство | Proof-of-Work | Proof-of-Stake |
|---|---|---|
| Что вкладывают | Вычисления и энергия | Денежный залог (стейк) |
| Энергопотребление | Очень высокое | Низкое |
| Наказание за обман | Потраченные впустую ресурсы | Слэшинг — сжигание ставки |
| Пример | Биткоин | Ethereum (после 2022) |
Частые заблуждения
- «В PoS богатые полностью контролируют сеть». Большая ставка даёт больше шансов, но и больше риска при обмане; к тому же атака требует контролировать огромную долю всех монет.
- «PoS совсем не потребляет энергию». Потребляет, но в десятки тысяч раз меньше, чем PoW: достаточно обычных серверов.
- «Стейкинг — это гарантированный доход без рисков». Нет: есть слэшинг, заморозка средств и рыночные риски самой монеты.
Важно понимать (риски)
PoS критикуют за то, что он может усиливать неравенство: у кого больше монет, тот чаще получает награды и наращивает долю. Есть и риск централизации через сервисы стейкинга, которые объединяют ставки многих людей. Наконец, заблокированный стейк не всегда можно мгновенно вернуть. Ни PoW, ни PoS не идеальны — это разные наборы компромиссов, и спор о том, какой лучше, продолжается до сих пор.
Разбор: почему «атаковать невыгодно» — это не лозунг
Главная идея proof-of-stake часто звучит как лозунг: «обманывать невыгодно». Но за ним стоит конкретная экономика, которую стоит разобрать. Чтобы навязать сети ложную историю, атакующему нужно контролировать огромную долю всех застейканных монет — порядка трети или больше. Купить столько монет на рынке невозможно незаметно: спрос взвинтит цену, и атака обойдётся в миллиарды.
Но самое тонкое — что произойдёт после атаки. Допустим, кто-то всё же собрал гигантскую ставку и подорвал доверие к сети. Цена монеты, в которой и лежит его ставка, рухнет — он сам обесценит свой капитал. Получается, атакующий должен потратить состояние, чтобы уничтожить то, чем владеет. Это и есть суть экономической защиты: интересы валидатора совмещены с интересами сети. Слэшинг добавляет к этому прямое наказание за конкретные нарушения. Вместе они делают честное поведение не благородным выбором, а просто самым выгодным.
Итоги
- Proof-of-Stake выбирает валидаторов по размеру их залога, а не по вычислениям.
- Нечестность наказывается слэшингом — сжиганием части ставки.
- Ethereum перешёл на PoS в 2022 году, снизив энергопотребление более чем на 99%.
- У PoS свои риски: централизация стейкинга и усиление неравенства.