Найти тему

Что такое TapRoot, и почему его внедрение критически важно для будущего Биткоина

Где-то около месяца назад, в ноябре 2021 года, Биткоин претерпел одно из самых важных и масштабных своих обновлений - под названием TapRoot. Что же это такое, и зачем оно нужно?

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

Конечно же, Биткоин тоже стремится играть на этом поле. Но здесь кроется одна маленькая неприятность - размер блока. Каждые десять минут в сети биткоина создается новый блок, в который записываются все транзакции за эти десять минут. И блок этот имеет размер - 1 Мегабайт. Не более. Сколько бы транзакций за эти 10 минут не произошло, больше чем данных записать не получится. Многие люди пытались увеличить размер блока, но это привело лишь к созданию клонов биткоина - Bitcoin Cash, Bitcoin Gold, Bitcoin Diamond, и многих других.

Биткоин делился на части уже много-много раз
Биткоин делился на части уже много-много раз

А ведь если биткоин начнет играть на поле Эфириума, поддерживая сложные смартконтракты - все еще более ухудшится. Согласитесь, записать "Передать 10 биткоинов от Саши Пете" займет гораздо меньше байт, чем "Данные 10 биткоинов нужно передать Саше, если свою подпись предоставят Петя, Маша и Антон, причем не далее 1 января 2022 года, и если цена биткоина тогда будет от 52 до 65 тысяч долларов".

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

Смарт-контракты могут быть довольно сложными и включать большое число людей
Смарт-контракты могут быть довольно сложными и включать большое число людей

Получается, нужно решить проблему слишком больших и длинных подписей. Решения тут видно три - увеличить доступное пространство (но это лишь временное решение проблемы - да и форки биткоина уже пытались это сделать), уменьшить каждую подпись в размерах (но это приведет к тому, что их станет проще подделать), либо уменьшить их количество. Именно по последнему пути и пошли разработчики сети Bitcoin. Ниже мы примерно (без точных деталей) опишем, как все это работает.

Если документ должны одобрить три человека сразу - то как же система может в этом убедиться, не храня три подписи? Очень просто (и именно в этом состоит дополнение TapRoot). Эти три человека - Петя, Маша и Антон, берут чистый бланк (чистый файл), и пишут в нем - "Нижеследующим мы подписываемся что мы хотим создать смарт-контракт такой-то, с такими-то условиями", ставят на нем свои подписи, но не кладут его в блокчейн, а просто разбирают себе - каждый по копии. А что же в блокчейне? А в блокчейне пишут - мы хотим создать смарт-контракт, но чтобы не писать его здесь - он довольно длинный - мы просто говорим - что его хэш равен такому-то числу. Если кто-нибудь предоставит такой файл - ему можно верить - и все, что там написано - правда.

Вместо трех подписей, сделанных каждым из трех человек - теперь мы храним в блокчейне лишь одну
Вместо трех подписей, сделанных каждым из трех человек - теперь мы храним в блокчейне лишь одну

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

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

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