Сайдчейны: простое объяснение
Инфраструктура вокруг Биткойна продолжает разрастаться и усложняться, появляются как новые криптовалюты, так и различные «надстройки» над самой системой Bitcoin. Одной из таких многообещающих технологий может стать идея сайдчейнов (sidechain).
В буквальном переводе с английского sidechain означает “боковая цепь”. И в самом деле, сайдчейны по отношению к Bitcoin являются сторонними цепочками блоков, которые способны как перекинуть мостик от Биткойна к альткойнам, так и помочь созданию независимых сервисов, взаимодействующих через центральный блокчейн.
Могут ли сайдчейны быть инструментом реализации «полудецентрализованных» Bitcoin продуктов и услуг?
Как мы представляем себе Bitcoin
Для начала нужно разобраться в принципе работы Bitcoin. Многие этого не осознают и находятся в заблуждении.
Во-первых, не думайте о деньгах, валютах или платежах, бухгалтерии в целом. Выкиньте из головы и словосочетание «регистр транзакций». Секрет Bitcoin заключается в том, что никакого регистра нет! Есть только две структуры, которые имеют значение — блоки и транзакции в них. Очень важно уяснить это как следует, чтобы смысл сайдчейнов стал для вас понятен.
Когда вы «перемещаете» биткойны, Вы словно говорите:
- Всем привет… я бы хотел переместить вот эти конкретные биткойны.
- Вот мое подтверждение того, что я имею право их перемещать.
- А вот таким образом получатель, в свою очередь, сможет доказать, что у него есть право перемещать их:
Три важных аспекта сделки:
- Монеты не взаимозаменяемы. Когда вы их отправляете, вы отправляете конкретные монеты.
- Чтобы их отправить, вы должны доказать, что наделены таким правом еще с того момента, когда сами получили их. И вы можете это сделать, предоставив подпись, которая соответствует особому адресу и обладает уникальным ключом.
- Когда Вы отправляете биткойны кому-нибудь, вы так же ставите задачу получателю - «открытый ключ-закрытый ключ», которые связаны с адресом Bitcoin, на который вы отправили свои монеты. Вы можете не знать получателя, но он должен будет выполнить заданные условия.
Запомните эти три шага и не забывайте их!
Итак, правила сделки Bitcoin ясны:
"Вот монеты, которые я могу отправить и вот доказательство того, что я могу это сделать, а также что требуется от покупателя, чтобы перемещать их дальше".
Эта сделка отразится в сети, транзакция попадет в блок, и когда поверх нее встанут другие блоки, вы можете быть уверены в ее необратимости. Что еще нужно?
Это три пункта сделки Bitcoin хорошо работают, но оказывается есть еще кое-что интересное, что вы можете добавить. Например, вы можете использовать «неидеальность измерения» биткойнов для того, чтобы «пометить» их. Это основа идей "Colored Coins" и "Smart Property”.
Но есть проблемы, такие как:
Интервалы формирования блоков
Он составляет 10 минут, и чтобы новая транзакция нашла свой путь до блока, требуется от одной до тридцати минут, почти независимо от комиссии. Тот, кому важна скорость, экспериментирует с альтернативными криптовалютами, которые используют более быстрые блоки.
Структура транзакции
«Трехступенчатая» структура транзакции популярна, но обозначает лишь право владения монетами. Кто-то захочет разнообразить информацию. Например, для создания децентрализованной биржи, участникам которой нужен способ размещения заказов. Обратите внимание на проекты Mastercoin, Counterparty, NXT и другие, которые либо создают свои уровни взаимодействия поверх Bitcoin, либо используют совершенно иные базы исходных кодов для достижения своих целей.
Условия проведения транзакции
Вы можете усложнить транзакцию Bitcoin ради проверки права владения. Тем не менее, сценарии использования Bitcoin намеренно ограничены, а реализация многих идей в области Smart Contracts (Умный контракт) является сложной или невозможной. Поэтому такие проекты, как Ethereum, строят совершенно новую инфраструктуру для разработки этих идей.
Единый стандарт безопасности для всех
Отправили вы 1 миллиард долларов или сотую долю цента по сети Bitcoin, вы получите одинаковые гарантии безопасности. При этом вы теряете время и платите комиссии. А если вы готовы пожертвовать безопасностью ради скорости? Тогда вы можете отправить монеты централизованному провайдеру кошельков, которому Вам придется доверить их целостность и сохранность. И используя уже их систему учета, вы сможете проводить любые желаемые транзакции с их остальными клиентами, никак не соприкасаясь при этом с регистром транзакций Bitcoin. Но вы потеряете все преимущества децентрализованной сети передачи ценных активов.
“Единая” не значит “Удобная”
Быстрые изменения в технологии Bitcoin — рисковое занятие, поэтому изменения в ней происходят медленно. Если вас не устраивает вопрос времени, то это ваша проблема. Вам нужно либо использовать совершенно другую криптовалюту (может даже создавать свою!), либо использовать (или создавать) централизованный сервис, а это ведет к новым рискам.
Согласитесь, это не совсем удобно. Возникают лишние риски, тормозится процесс вливания в сеть Bitcoin продуктов, услуг и инфраструктуры.
Цетрализованный бумажник или sidechain?
Что произойдет, когда Вы отправите монеты в централизованный кошелек, например, circle.com на безопасное хранение:
- Вы отправите монеты на определенный Bitcoin-адрес.
- Они отразятся внутри вашего аккаунта на Circle без возможности контроля с помощью технологии blockchain.
- Вы можете отправить свои монеты обратно из кошелька Сircle на свой адрес Bitcoin и вернуть необходимый контроль
С точки зрения сети Bitcoin, Circle представляет собой черный ящик. У вас были монеты… Вы отправили их на определенный адрес… произошло что-то, за чем сеть не смогла проследить… и через какое-то время вы вернули какие-то монеты. Выглядит так, словно их переместили из сети Bitcoin в другое место, а потом возвратили.
Суть сайдчейнов
Заключается она в отправке биткойнов не только отдельным лицам, на отдельные адреса или централизованные сервисы, но и в другие блокчейны.
Представьте, что существует аналог системы Bitcoin, который вы хотели бы использовать. Например, Litecoin, Ethereum или что-то новое. Возможно, эта сеть формирует блоки быстрее и имеет множество сценариев. Хочется воспользоваться ею без риска и усилий. У вас ведь есть биткойны, почему вы не можете просто использовать их?
Тогда ваши действия таковы:
- Отправьте биткойны на специальный адрес Bitcoin, который после это станет никому не доступен. Они станут полностью заморожены до момента, пока кто-либо сможет доказать, что они больше нигде не используются. Вы использовали базовые правила транзакции Bitcoin и наложили на них условие об их будущем владельце. Кем бы он ни был, он должен будет выполнить это условие, чтобы получить право ими распоряжаться.
- Когда замороженная транзакция получает это подтверждение, Вы отправляете сообщение другому блокчейну – тому, который Вы собираетесь использовать, сообщение о том, что аванс заморожен. Но самой важной составляющей этого сообщения является информация о том, кто сделал это отправление.
- Если второй блокчейн согласился быть сайдчейном Bitcoin, он делает нечто очень особенное – он поменяет эти монеты на монеты своей сети.
- Помните: монеты заморожены в рамках сети Bitcoin, мы ничего не создали и ничего не уничтожили… Просто «переместили» их.
- Теперь с помощью этих монет вы можете совершать транзакции в другом блокчейне, какие бы правила он не использовал.
- Вы будете экономить время, оплачивая комиссию владельцу сайдчейна согласно его правилам. Главное - заморозить свои монеты и предоставить доказательство.
- Логика полностью симметрична. Кто бы ни держал у себя эти монеты в сайдчейне, в любое время он может отправить их обратно в сеть Bitcoin, создав в сайдчейне специальную транзакцию, которая заморозит свои монеты. Те исчезнут из сайдчейна и станут снова доступны владельцу в сети Bitcoin.
Сайдчейны используют трехэтапную транзацию Bitcoin для заморозки биткойнов, пока те “находятся” в сайдчейне.
Повторим: сначала замораживаем свои монеты. Потом - доказываем второму, не связанному напрямую чейну, что это сделали именно мы. Текущий владелец в сайдчейне может, произведя аналогичные действия, отправить их обратно в сеть Bitcoin.
Таким образом, разработчики могут проводить эксперименты без необходимости создавать свою собственную валюту.
Новая возможность делать некоторые вещи в сети Bitcoin
У нас появляется возможность отправлять монеты на другую платформу (сайдчейн) и опять возвращать их обратно. Как отправка их к провайдеру онлайн кошельков или на биржу. Отличие в том, что “платформа”, на которую они были перемещены, также является блокчейном и предоставляет безопасность и прозрачность, характерные для децентрализованных систем.
Представьте себе, к примеру, сайдчейн, который “майнит” только одна компания. Он был бы эквивалентом кошелька компании, но с полной прозрачностью транзакций.
Или же сайдчейн, который майнится сотней разных компаний, которые объединены в рамках одной общей организации. Назвать это полной децентрализацией нельзя, однако влиять, вмешиваться или вредить их деятельности трудно.
Основная идея: вы можете создавать продукты и услуги, поводить эксперименты, не создавая новую криптовалюту. Сайдчейн — это архитектура для построения полуцентрализованных продуктов и сервисов для Bitcoin, это его новые возможности.
Однако, и они имеют серьезные проблемы. Питер Тодд усомнился в безопасности сайдчейнов, и считает, что они повлияют на сеть Bitcoin.
И это только начало.