Биткоин или обзор технологии Segregated Witness (Часть 2)

Программа Segregated Witness отлично справляется с проблемой увеличения пропускной способности сети, а также с другими сложностями, возникающими у пользователей. Достигается все это с сохранением стандартного размера блока в 1 Мб. И если к сущности проекта, рассмотренной в первой части статьи, вопросов нет, в отношении тонкостей работы программы остаются некоторые «пробелы». Эти моменты требуют детального рассмотрения.

Принцип действия

Если говорить простыми словами, сущность задумки заключается в повышении эффективности blockchain без «раздувания» объема каждого отдельно взятого блока. Главным плюсом новой разработки является удаление подтверждений, которые содержатся в небольшом блоке (1 Мб), что способствует росту отдельного взятого элемента цепи Bitcoin. Благодаря такой особенности, каждый блок позволяет фиксировать много больше информации по совершенным сделкам. Если выражаться по-другому, возрастает пропускная способность сети. Эти процессы реализуются без нарушения правил работы криптовалюты, прописанных создателем феномена Сатоши Накамото.

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

Формула Segregated Witness имеет следующий вид. Информация из блока суммируется с четвертной частью рассмотренного приложения, что в итоге не должно превышать объема в 1000 Кб. При таком раскладе все составляющие криптовалютной цепи будут восприниматься уже существующими узлами, как элементы, не переваливающие за озвученный объем. Это связано с тем, что четвертая часть программы, которая невидима, должна устанавливаться в этот же 1 Мб. Что касается новых узлов, для них с распознаванием не возникнет проблем, ведь реальный размер SegWit редко превышает 25% от общего объема.

Точное число дополнительного места, которое предоставляет новый проект, находится в прямой зависимости от вида сделок, являющихся частью вновь созданных элементов цепи. Проведенные операции хранятся в SegWit, а это значит, что величина блока разрастается. Получается, что размер одной транзакции увеличивается почти на 1750 Кб. Что касается предельного лимита, нарушать который запрещено, он составляет 4 000 Кб. Это актуально даже для тех случаев, когда новая разработка берет на себя всю информацию.

Эластичность операций остается в прошлом

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

Применение SegWit позволяет добиться эластичности операций с Bitcoin. Но здесь всплывает две сложности, которые нельзя игнорировать. Для начала стоит отметить, что рассмотренный факт является источником суматохи в различных приложениях, где применяются определители денежных переводов при учете уже проведенных операций. Еще один минус в том, что факт эластичности ограничивает пространство для маневра в случае применения Биткоина. Это касается тех ситуаций, когда пользователю приходится столкнуться с неподтвержденными сделками с применением современных платежных каналов.

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

Насколько вероятна универсальность Bitcoin в будущем?

Неоспоримым плюсом рассматриваемой разработки является и тот факт, что само нововведение представляет собой один из вариантов скриптов. Как отмечалось в первой части статьи, в структуре продвигаемого предложения находятся подписи scriptSigs, способные разблокировать криптовалюту. Но в их состав входят еще дополнительные элементы, а точнее байты вариантов, которые идут до подписей и отражают их вид. В случае, когда клиент в процессе изучения байт-версии узнает предложенный тип, он вправе указать требования, без которых разблокирование Bitcoin будет невозможным. Если с опознанием не сложилось, он воспринимает подтверждение scriptSig с той позиции, что трату Биткоинов может осуществить каждый.

Особенность SegWit и в том, что появляется множество различных вариантов блокирования криптовалюты при проведении финансовых сделок. Иными словами, эта опция может быть использована для различных типов предотвращения транзакций, осуществляемых в сети Биткоин. На данный момент сложно предположить, как эту особенность можно использовать, ведь многие приложения находятся на этапе разработки или даже еще не придуманы. Но определенные предположения уже имеются. Считается, что в ход пойдет подтверждение Schnorr, отличающееся высокой скорость в сравнении с привычными вариантами подписей. Возможно, будут применяться и сложные типы операций с Bitcoin, отличающиеся наличием мультиподписи. Имеется даже предположения по использованию скриптов типа Эфириум.

Доказательство мошенничества

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

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

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

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

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

Уменьшение размера блокчейна

Стоит выделить еще одну особенность. Хозяева «полных узлов» SegWit смогут снизить объем информации, которую блоки Bitcoin вынуждены хранить на жестком диске. Благодаря этой особенности, время первого запуска кошелька снижается.

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

Вопрос с масштабированием

Применение Segregated Witness позволяет устранить проблемы, которые характерны для криптовалютной сети. Одна из них касается масштабов блока. Приложение достает подтверждение из транзакции, после чего переводит его в индивидуальную структуру. Это способствует уменьшению объема операции почти в 2 раза. Следовательно, освобожденное пространство можно использовать для заполнения новыми транзакциями.

Минус в том, что такое решение не до конца устраняет существующую проблему. В блоке остаются 1000 Кб пространства, которое в скором времени снова заполняется. Следовательно, приложение можно использовать только с позиции вспомогательного, но никак не основного инструмента.

Особенности контроля в SegNet

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

В заключение

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