Блокчейн. Принципы и основы - [24]

Шрифт
Интервал



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



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

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

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

И последнее, что хотелось бы сказать о транзакциях в общем описании – это комиссия. Различные блокчейн-проекты взимают комиссию за транзакции, хотя бывают и такие, в которых все транзакции бесплатны. Комиссия существует для монетарной мотивации узлов, создающих блоки, – они забирают ее себе, наряду с основным вознаграждением за создание блока как такового. Об этом процессе мы подробно поговорим в главе о так называемом «майнинге», а здесь лишь упомянем, что комиссия в блокчейн-системах, как правило, не является фиксированной и каждый создатель транзакции сам решает, какую комиссию ему заплатить. Однако если эта комиссия окажется слишком низкой или вовсе нулевой, то транзакция может получить низкий приоритет при формировании новых блоков и будет включена в какой-то из них с большой временной задержкой. Что же касается непосредственной визуализации величины комиссии в теле транзакции, то здесь опять же применен подход максимальной практичности в организации хранения данных – никакой комиссии в транзакциях напрямую не указывается, а рассчитывается она как разница между суммой всех «входов» и «выходов», включая «сдачу», которая оказывается меньше как раз на величину комиссии.


Рекомендуем почитать
Кибербезопасность в условиях электронного банкинга. Практическое пособие

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


Доходное инвестирование

Что я могу ответить? Я такой же как вы, только начал инвестировать на несколько лет раньше (с 2002 года). Я начинал с "маленьких денег", но уже живу вместе со своей семьей на доходы со своего инвестиционного капитала. Я люблю докапываться до сути вещей и эта моя страсть может быть кому-нибудь полезна кроме меня. А я люблю быть полезным, потому что люблю людей и люблю пользу. Я люблю писать – поэтому я все это и пишу. Если быть кратким: я не собираюсь ни в этой рубрике, ни в целом на вокруг да около, ни в своих консультациях кого-то чему-то учить.


Инвестор за выходные. Руководство по созданию пассивного дохода

Вокруг инвестиций много мифов. Одни говорят, что это слишком сложно и 90 % инвесторов теряют деньги. Другие убеждают в обратном: инвестировать можно безопасно, никакие знания не нужны, а начать стоило еще вчера. Правда, как всегда, посередине: чтобы не прогореть в самом начале, стоит познакомиться с основными правилами в мире инвестиций. Но это действительно несложно – вы справитесь за несколько дней. Автор книги «Инвестор за выходные» Семён Кибало к 30 годам добился полной финансовой независимости благодаря пассивному инвестированию.


Фондовый рынок. Курс для начинающих

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


Государственные и муниципальные финансы: конспект лекций

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


Менеджмент в российском банке. Опыт системного анализа и управления

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