Консенсус – это соглашение о том, что есть и чего не произошло. Как это работает в децентрализованной системе? Какие шансы, что чем больше участников (майнеров), тем больше разногласий? Технологии блокчейн имеют элегантное решение для создания консенсуса. Как только вы решите совершить платеж, то должны использовать свой закрытый ключ, чтобы «подписать» эту транзакцию. Это означает, что вы отправляете деньги с одного публичного адреса на другой. Поскольку только у вас (я надеюсь!) есть закрытый ключ, связанный с публичным адресом, то монеты можете отправить только вы и никто другой. Поскольку нет центрального органа, который просматривает транзакции, то вы должны транслировать эту транзакцию на несколько полных нод, к которым подключен ваш кошелек, – кошелек делает это автоматически. Затем ноды перенаправляют эту информацию на другие ноды и майнеров, которые делают то же самое. В течение нескольких миллисекунд возникает экспоненциальная волна, и вскоре каждый член сообщества знает о вашей транзакции.
Всякий раз, когда майнеры получают транзакцию, они проверяют, действительно ли транзакция была правильно подписана закрытым ключом и, самое главное, есть ли у вас монеты. Поскольку каждую секунду появляются новые транзакции, вы можете за небольшую плату «подкупить» майнеров, чтобы они в первую очередь выбрали и «проверили» ваши транзакции. Теоретически, вам не нужно платить какие-либо сборы, но так как одновременно происходит очень много транзакций, майнеры не станут обрабатывать вашу транзакцию, чтобы включить ее в блокчейн (историю транзакций). Майнеры зарабатывают больше при обработке тех транзакций, от которых получают плату. Каждая законная криптовалюта имеет множество криптографических правил, которые гарантируют, что майнеры не смогут ничего подделать. Например, они не могут просто создавать поддельные транзакции и кредитовать себя миллионами долларов.
Как именно определяют, какой майнер получает ваш сбор, ведь плату должен получить только один? А что, если вы попробуете совершить атаку двойной траты, передавая одну транзакцию одному майнеру, а другую транзакцию с теми же деньгами – другому? Какая транзакция действительна, а какая нет? Несмотря на то что среди майнеров существует демократическая система, если кто-то просто проголосует за транзакции по своему усмотрению, это будет довольно хаотично. Кроме того, раз все, что вам нужно для вашей транзакции, – это подтвердить ее действительность другими майне-рами, то почему бы не создать тысячи майнеров самостоятельно? Они, в свою очередь, могли бы подтвердить, что кто-то послал вам миллионы долларов. Это можно было бы назвать атакой Сивиллы, и мы поговорим об этом, когда будем говорить об атаках криптовалюты.