Читаем 1c2b9509b53cb0837976a7dc6c8bcd37 полностью

проверку возможно, вычисляя все «непотраченные выходы» по предыдущим

транзакциям в пользу данного отправителя. Также математически проверяется

соответствие цифровой электронной подписи отправителя указанному им

своему открытому ключу. Это нужно для того, чтобы удостовериться, что

отправитель транзакции обладает закрытым ключом от адреса, с которого он

собирается потратить деньги. Если транзакция успешно прошла все

необходимые проверки, то она попадает во временное хранилище, которое

называется «мемпул» (mempool).

Мемпул — это что-то вроде очереди транзакций, ожидающих, пока их включат

в блок. Каждый узел самостоятельно определяет размер мемпула, который он

будет у себя хранить. Разница между обычной очередью и мемпулом состоит в

различной форме приоритизации поступающих на обработку транзакций. Если

в обычной очереди данные обрабатываются в зависимости от времени их

поступления, то в мемпуле их ранжируют по величине комиссии, которую

отправители определили для своих транзакций. Как уже упоминалось, величина транзакционной комиссии устанавливается отправителем

самостоятельно, исходя из его пожеланий в отношении скорости включения

данной транзакции в ближайшие создаваемые блоки. Поскольку создатель

блока забирает всю комиссию по всем включенным в него транзакциям в свою

пользу, логично было бы предположить, что он будет в первую очередь

включать в блок транзакции с наибольшей комиссией.

Если учесть тот факт, что размер блока в сети Биткоин ограничен одним

мегабайтом, а средний размер транзакции составляет около 300 байт, то в

один блок можно поместить около 4000 транзакций, что само по себе

достаточно немного. Сеть Биткоин настроена таким образом, что каждый

новый блок создается примерно один раз в десять минут, поэтому пропускная

способность всей сети составляет около семи транзакций в секунду. В периоды

повышенной нагрузки на сеть, когда количество транзакций может

существенно возрасти, мемпул начинает сильно увеличиваться в своих

размерах, в то время как скорость включения транзакций в блоки уменьшается.

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

отмечен рекордный размер мемпула — около 140 мегабайт, при этом

количество транзакций, ожидающих обработки, превысило 200 000. Однако

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

транзакций вернулась к обычным значениям.

Как уже отмечалось, каждый участник сети, являясь равнозначным по правам с

остальными участниками узлов, получает на свое локальное устройство (как

правило, это обычный компьютер) всю информацию обо всех блоках и

транзакциях сети Биткоин. Поскольку база блоков со временем растет, объем

передаваемой для синхронизации информации постоянно увеличивается в

размере. Очевидно, что, если узел получил информацию о созданных блоках

ранее, ему уже не нужно ее обновлять, поскольку со временем она не

меняется. Тем не менее он должен продолжать получать информацию о вновь

создаваемых блоках, а также хранить у себя мемпул, куда постоянно

поступают новые транзакции, еще не включенные в блоки.

Все эти данные имеют существенный размер: по состоянию на весну 2019 года

объем базы данных Биткоин составлял около 570 000 блоков и занимал около

250 гигабайт на дисковом пространстве. Для тех, кто не желает выделять

место для хранения столь приличного объема данных, имеет смысл

воспользоваться возможностью получить статус «легкого клиента», когда

вместо всего объема информации он скачивает себе только заголовки блоков

без списка транзакций. В этом случае ему необходимо получить на свое

устройство всего лишь несколько сотен мегабайт информации, что

несопоставимо легче и быстрее, чем синхронизировать себе полную базу.

Однако в этом случае данный «легкий» узел сети не сможет участвовать в

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

сети — весной 2019 года в сети Биткоин насчитывалось около 10 000 полных

узлов, а число уникальных активно используемых адресов составляло около

640 000.

Исследуя принципы работы блокчейн в целом и сети Биткоин в частности, необходимо представлять себе механику создания новых блоков в

распределенной сети. Понятно, что в конец цепочки всегда добавляется только

один блок, который создается на тот момент только одним участником сети.

При этом вся остальная сеть должна с этим согласиться посредством

механизмов достижения консенсуса и синхронизировать у себя базу блоков

вместе с новым, последним созданным блоком. Однако, как мы могли

убедиться, количество полных узлов в сети исчисляется тысячами, и

потенциально каждый из них может независимо от других узлов создать свой

собственный блок и предложить его всей остальной сети для включения в

общую цепочку блоков. Из этого факта неизбежно следует, что в течение

небольшого временного интервала, исчисляемого минутами, в сети могут

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

общую цепочку. Причем часть узлов может включить себе один блок, а часть —

Перейти на страницу:

Похожие книги

Linux
Linux

Книга посвящена операционной системе Linux. Приводятся подробные сведения о ее особенностях и возможностях, идеологии файловой системы, инсталляции и основных командах, вопросах компиляции ядра, настройках и сервисах. Большое внимание уделяется организации на базе Linux различных серверов и служб: электронной почты, WWW, FTP, INN, Proxy, NTP, а также проблемам администрирования сети, обеспечения безопасной работы и другим вопросам. Описаны способы настройки под Linux рабочих станций, в т. ч. и бездисковых, установки и эксплуатации на них графических сред типа X Window, а также конфигурирование модемных соединений, принтеров и сканеров, отладка взаимодействия с Linux-машинами такой «экзотической» периферии, как карманные компьютеры, мобильные телефоны, TV-тюнеры и т. п. Рассматриваемые в книге конфигурационные файлы и структура каталогов соответствуют дистрибутиву Red Hat Linux 7.x, тем не менее, при минимальной адаптации все упоминаемые в книге пакеты устанавливаются в любом дистрибутиве Linux.Для начинающих администраторов или пользователей Linux.

Алексей Александрович Стахнов

ОС и Сети, интернет
Атака на Internet
Атака на Internet

Эта книга является одним из первых специализированных изданий, написанных отечественными авторами, которое посвящено обстоятельному анализу безопасности сети Internet. В книге предлагаются и подробно описываются механизмы реализации основных видов удаленных атак как на протоколы TCP/IP и инфраструктуру Сети, так и на многие популярные сетевые операционные системы и приложения.Особое внимание авторы уделили причинам возникновения и успеха удаленных атак, а также их классификации. Были также рассмотрены основные способы и методы защиты от удаленных атак.Издание предназначено для сетевых администраторов и пользователей Internet, администраторов безопасности, разработчиков систем защит, системных сетевых программистов, студентов и аспирантов вузов, а также для всех интересующихся вопросами нарушения и обеспечения информационной безопасности компьютерных сетей.

Дмитрий Геннадьевич Леонов , Илья Давыдович Медведовский , Павел Валентинович Семьянов

ОС и Сети, интернет / Интернет / Книги по IT
Как раскрутить и разрекламировать Web-сайт в сети Интернет
Как раскрутить и разрекламировать Web-сайт в сети Интернет

Настоящая книга заинтересует всех, кто столкнулся с вопросами подготовки, размещения в Сети и популяризации Internet ресурсов различного уровня: от домашней странички до корпоративного сайта. В ней вы найдете все, что необходимо для оптимизации Web сайтов под поисковые системы: приемы написания Web-страниц, описание множества самых популярных специализированных программ, предназначенных для подготовки сайта и его раскрутки, создания удачного HTML-кода страниц с правильными метаданными.Книга является практическим руководством для разработчиков Web сайтов и всех, занимающихся их продвижением. Автор приводит множество советов, касающихся создания и анонсирования Web страниц. Рассмотрены средства автоматизации для повышения эффективности разработки и маркетинга при создании и обслуживании сайта. Описание программных и сетевых средств, автоматизирующих процессы тестирования и отладки сайта, обеспечивающих проверку работоспособности и корректности гиперссылок, синтаксиса HTML кода и грамматики размещенного на странице текста, занимает центральное место в книге. Подробно излагаются возможности таких программ, как Linkbot Developer Edition, Domain NameChecker, Retrieve, CyberSpyder Link Test, HTML Link Validator, CSE HTML Validator, A Real Validator, MetaTag ToolKit, MetaMan, WebQA.Отдельная глава посвящена регистрации Web ресурсов в поисковых системах и каталогах. Описываются программы автоматической регистрации (WebPosition, Page Promoter, Web Регистратор), способы взаимодействия с индексирующими роботами поисковых машин, правила применения метаданных. Рассматриваются приемы и методы рекламы сайтов в Internet, указаны критерии ее эффективности.Издание рассчитано на широкий круг читателей и будет полезно как начинающим создателям Web сайтов, так и профессионалам, которые хотят научиться более качественно продвигать в Сети свой Web продукт.

Александр Петрович Загуменнов

ОС и Сети, интернет