Биткоин существует уже давно, вокруг него появилось множество споров, многие из которых касаются майнинга. Его суть состоит в поиске решений некой головоломки. Причем это решение должно “понравиться” остальной сети, которая приняв его, придёт к согласию и примет новый блок в цепь.

Первая криптовалюта принесла в мир цифровых финансов очень много нового. Майнинг стал основной её составляющей, обеспечивающей работу сети. Подбор правильной комбинации кода, во многом похож на лотерею. Для всей сети не имеет значения, кто найдёт новый блок, единственное что важно - чтобы это произошло примерно в назначенный срок.

Добытый блок, должен быть принят всей цепью. Для этого к нему предъявляются некоторые условия, которым он должен соответствовать. Когда требования удовлетворены, сеть приходит к согласию - это и называется “алгоритмом консенсуса”. В основе такой схемы может находиться несколько алгоритмов.

PoW (proof of work)

Чтобы заявить права на добытый блок, нужно предоставить “доказательство работы”. Об этом велась речь ещё в далёком 97 г. Подобная система тогда имела другое название и применялась для борьбы со спамом на почтовых серверах. При появлении входящего соединения, сервер предлагал математическое задание, которое нужно было решить. Чем более подозрительным был отправитель, тем сложнее было решение. Идея была в том, что большое количество отправленного спама потребовало бы от больших мощностей, что оказалось бы невыгодным в материальном плане. Несмотря на интерес к этой схеме, алгоритм машинного обучения был эффективнее и про неё на некоторое время забыли.

В 2009 г. было объявлено об идее создания децентрализованной валюты - биткоина. Доказательством работы в новой сети был поиск хешей блока. Хеш - это код, представляющий собой подпись. Его значение должно быть меньше определённого значения, которое известно всей сети. Оно выходит из параметра “сложность”, который показывает нынешнее состояние сети. Постоянно увеличивающееся количество вычислений увеличивает их сложность. Это нужно, чтобы скорость нахождения блоков была постоянной. 1 блок появляется каждые 10 минут.

PoW применяется во многих криптовалютах. В Эфириум от него изначально хотели отказаться, но этот процесс было решено проводить поэтапно. Использование такого алгоритма имеет несколько недостатков. Proof of work делает много бесполезной работы, на которую требуется много электричества. Из-за этого процесс майнинга переносится в регионы, где цены на свет меньше, но отношение к крипте до сих не определено. Другой проблемой может стать атака 51%, когда несколько пулов объединившись в группу, смогут отменить целые цепочки операций.

PoS (proof of stake)

Майнеры работают не по душевной доброте. Их доходы составляет награда за добытый блок и комиссии от транзакций. Майнинговые узлы нужны для поддержания работы сети и скорости проведения операций. Без награды за блок, оплата за труд тоже будет неплохой. Proof of stake предлагает майнерам роль валидаторов. Они не перебирают тонны хеша, в поисках нужной комбинации, значит расходы на энергию у них меньше. Такая схема похожа на лотерею ещё больше. Тот, кто хочет участвовать, должен приобрести билет. На практике это выглядит как заморозка валидатором некоторых средств. Затем считается общая сумма и выбирается победитель. Он определяется в соответствии с его вкладом. Это своего рода борьба за комиссионные.

Алгоритм имеет недостаток, носящий глобальный характер. Замороженные средства, оказываются изъятыми из сети, что ведёт к росту курса. При больших масштабах это может оказаться очень значительным. Эффект компенсируется замороженными деньгами. Вероятность выиграть очень мала и многие предпочитают просто продать валюту, тем самым снижая на неё цену. О серьёзном влиянии таких явлений пока речи нет, но баланс прослеживается.

PoS предлагался ещё в 11 году. Первой монетой, работающей на нём, является Peercoin. Чтобы алгоритм начал работать, нужно чтобы в сети имелось какое-то число криптовалюты. Поэтому работа начинается с PoW, а затем цепь переходит на PoS. Такой алгоритм ожидает и Эфириум, но в несколько изменённом виде. Он будет работать так: если валидатор предоставил неверный блок, у него забирают право на добычу, а его средства исчезают.

BFT (byzantine fault tolerance)

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

BFT предлагает систему похожую на Cassandra, применяемую для управления данных. Единственной проблемой является открытая среду криптовалют. Справиться с этим можно за счёт содержания на узлах списков участников и вести подсчёты по принятым решениям. Достигнуть состояния согласия в системе, поможет большинство голосов. Лидер, выбранный по числу голосов, собирает блоки. Вознаграждение делится между всеми членами группы по долям. На таком алгоритме работают Stellar и ByzCoin (пробный проект).