Добавление блоков в блокчейн — КиберПедия 

Историки об Елизавете Петровне: Елизавета попала между двумя встречными культурными течениями, воспитывалась среди новых европейских веяний и преданий...

Состав сооружений: решетки и песколовки: Решетки – это первое устройство в схеме очистных сооружений. Они представляют...

Добавление блоков в блокчейн

2022-02-10 26
Добавление блоков в блокчейн 0.00 из 5.00 0 оценок
Заказать работу

Различные блокчейны добавляют блоки в свои цепи по-разному. Наиболее известным механизмом консенсуса является Доказательство выполненной работы (PoW) Биткоина.

Первое правило PoW состоит в том, что один блок должен быть добавлен в блокчейн, в среднем, каждые десять минут.

Процесс, способствующий этому, называется «майнинг». Узлы, которые пытаются добавить блок в цепочку (называемые «майнерами»), используют вычислительную мощь своих компьютеров, чтобы попытаться решить криптографическую «головоломку». Правила утверждают, что только когда эта головоломка решена, блок может быть добавлен в блокчейн.

Майнер, который решает задачу, и «майнит» (добывает) новый блок, чтобы добавить его в блокчейн, вознаграждается сетью. Ему предоставляется некое предопределенное количество новых монет вместе со всеми транзакционными издержками всех транзакций, содержащихся в этом новом блоке.

Впоследствии все остальные майнеры начинают добывать следующий блок.

Доказательство работы (PoW) Биткоина — неединственныймеханизмконсенсуса. Доказательствоставки (PoS) такжеширокоиспользуетсявраспределенных книгах. В механизме «Доказательство ставки» можно «сделать ставку» на свои монеты, чтобы получить возможность добавить следующий блок в блокчейн. В некотором смысле, делающий ставку говорит: «Я ставлю свои монеты, что я правильно добавляю этот блок». Если он солжет, то потеряет свои монеты.

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

Проверка блоков

Когда майнер решает головоломку и формирует новый блок, все узлы в сети проверят, действителен ли блок, и добавят его в свою копию блокчейна. Сначала узлам необходимо достичь консенсуса относительно действительности. Только тогда сеть синхронизируется и состояние обновлений блокчейна.

Узлы будут добавлять новый созданный блок в цепочку, только если он будет следовать правилам, изложенным в протоколе консенсусного механизма. Программное обеспечение протокола проверяет, действителен ли блок или нет. Недействительный блок будет просто отклонен.

Естественно, что блок будет являеться действительным, если действительными будут все транзакции, содержащиеся в нем. Например, в протоколе Биткоина говорится, что никто не может отправлять биткоины, которые он не получил первоначально от кого-то другого или в качестве вознаграждения за майнинг блока.

Другими словами, программное обеспечение узлов проверяет все транзакции в новом блоке, имеются ли у отправителей достаточное количество биткоинов для совершения своих транзакций. Для этого узлы проверяют состояние сети Биткоина.

Теперь, допустим, я получил 1 биткоин, который затем послал Алисе. Потом я пытаюсь отправить тот же 1 биткоин Бобу. Как только блок с моей первой транзакцией в нем будет добавлен в цепочку, все узлы обновят блокчейн, чтобы отразить, что у меня больше нет этого одного биткоина. Любой новый сформированный блок, который будет содержать мою транзакцию для Боба, просто будет отклонен узлами. Программное обеспечение узлов видит, что транзакция в блоке не соответствует правилам, поэтому они не обновляют блокчейн с этим блоком.

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

Как разрешаются конфликты

Может случиться так, что два майнера одновременно добавляют действительные блоки в блокчейн. Представьте, что часть узлов приняла один действительный блок, а другая часть приняла другой действительный блок. Первая группа включала блок с моей транзакцией Алисе, а другая включала мою транзакцию Бобу. Теперь у нас внезапно возникли два разных состояния блокчейна в одно и то же время!

Мы называем это непреднамеренным «форком» (‘fork’ — «вилка»): блокчейнразветвляетсянадверазныецепи. Укогожеоказалсямой 1 биткоин? УАлисыилиБоба? Какаяиздвухответвленныхцепейблокчейнаявляется«истинной»?

Как правило, все консенсусные протоколы решают эту проблему с помощью простого правила: выигрывают самые длинные цепочки.

Когда у нас случается непреднамеренный форк (разветвление), некоторые майнеры начнут добывать новые блоки в одной цепочке, а другие начнут добычу в другой цепочке. Неизбежно, одна из цепочек будет иметь больше майнеров, чем другая, и соответственно будет быстрее добавлять новые блоки в свою цепочку. Остальные майнеры перейдут к более длинной цепи, и другая ответвленная цепь отомрет, ее рост прекратится. При этом основной цепочке не будет нанесен ущерб.

Почему мы знаем, что это всегда произойдет?

Потому что майнеры — этоэкономическиесубъекты, которыедействуютвличныхинтересах. Майнернезаинтересованвдобыченаразветвленнойцепи, зная, чтоонаотомрет. Всетранзакции (истинныетранзакции) в разветвленной цепи никогда не происходили в основной цепочке, а это означает, что майнеры, которые добывали блоки на разветвленной цепи, не были вознаграждены за свою работу. Издержки майнинга блоков, которые не будут включены в основную цепочку, просто слишком высоки. И майнерам невыгодно продолжать майнинг на альтернативной ветке.

В редких случаях может произойти, что разветвленная цепь обладает значительным количеством ресурсов для добычи. В этом случае может потребоваться некоторое время, прежде чем станет ясно, какая из ответвленных цепей является основной цепью. Житейская мудрость подсказывает, что разумно ждать 6 новых блоков, чтобы действительно подтвердить транзакцию.

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

Вывод

Вышеприведенное следует рассматривать как очень краткое введение в работу распределенных регистров (distributedledgers).

Однако, в следующий раз, когда кто-то упоминает о блокчейнах на вечеринке, пожалуйста, не делайте того, что я только что сделал, а просто скажите: «Эй, дружище, блокчейн — этовсеголишьспособструктурированияданных. Я думаю, вы имеете в виду распределенный регистр, используемый для ведения записей, который размещен в одноранговой сети, состоящей из узлов и майнеров, сотрудничество которых регулируется консенсусным протоколом, который устанавливает правила сети».

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

В моей следующей статье я углублюсь в роль, которую играет современная криптография в блокчейне и механизме консенсуса.

Если это не захватывающая перспектива, тогда я не знаю, что это…

 


Поделиться с друзьями:

Папиллярные узоры пальцев рук - маркер спортивных способностей: дерматоглифические признаки формируются на 3-5 месяце беременности, не изменяются в течение жизни...

Типы сооружений для обработки осадков: Септиками называются сооружения, в которых одновременно происходят осветление сточной жидкости...

Археология об основании Рима: Новые раскопки проясняют и такой острый дискуссионный вопрос, как дата самого возникновения Рима...

Автоматическое растормаживание колес: Тормозные устройства колес предназначены для уменьше­ния длины пробега и улучшения маневрирования ВС при...



© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!

0.01 с.