Сайдчейны. Масштабирование сети с помощью сайдчейнов.
Сайдчейн это дополнительный блокчейн по отношению к основной цепи. В сайдчейне используются те же монеты, что и в основной цепи, но при этом он может иметь свои свойства.
У основного блокчейна может быть сколько угодно сайдчейнов и каждый из них может чем-то отличатся (размер блока, скорость их появления, смарт-контракты и т. д.). Но в сайдчейне нету эмиссии, монеты там могут появляться только из основного блокчейна. При этом привязка к блокчейну может быть
- Однонаправленной (1-way peg), т. е. Только из основной сети в сайдчейн
- Двунаправленной (2-way peg), т. е. Монеты можно возвращать из сайдчейна в основную цепь.
Далее будем рассматривать в основном 2-way peg sidechains
Как передаются монеты из основного блокчейна в сайдчейн.
- Некто решает передать несколько монет в сайдчейн
- Монеты замораживаются в основной сети, чуть более подробно https://bits.media/5-sposobov-peremeshcheniya-bitkoinov-v-saydcheyn/
- В сайдчейн передается транзакция, что в основном блокчейне монеты заморожены
- В сайдчейне генерируются такое же количество монет.
Cпустя какое-то время, когда в сайдчейне произошли какие-то операции и участник решил вывести оттуда свои монеты, то происходит обратный процесс. В сайдчейне замораживаются эти монеты, а в основной сети размораживается такое же количество монет.
Майнинг в сайдчейне.
В самом базовом варианте блоки сайдчейна подтверждаются мощностью основной сети, что очень надежно. Но с другой стороны, если мы имеем дело с биткойном, то это такой же долгий процесс и в таком случае имеет смысл сделать альтернативные варианты подтверждения блоков и тут есть сложность - на сайдчейне нету эмиссии, значит платить майнерам надо каким-то другим образом.
- возможны какие-то дополнительные комиссии за транзакции. От их наличия и размера будет зависеть мощность (а следовательно и надежность) сети.
- Вполне возможно, что сообщество/организация, запустившая сайдчейн (а это может быть и приватный блокчейн) будет платить за майнинг или организовывать его сама, но вам придется довериться этой организации.
- Если сайдчейн запущен в рамках децентрализованного проекта, то часть ресурсов используемых в рамках этого проекта может быть отдана на подтверждение блоков.
В каких случаях могут быть полезны сайдчейны
- Тестирование каких-либо функций, чтобы потом применить их на основной сети, например на сайдчейне можно обкатывать какое-то обновление, искать там ошибки.
- Расширение функционала основной сети. Например, для биткойна создание более совершенных смарт-контрактов на сайдчейне
- Использование сайдчейна, как готового блокчейна для корпораций (приватный блокчейн со связью с внешним миром и безопасностью на уровне основной цепи)
- масштабирование основного блокчейна. И этот вариант рассмотрим более подробно.
Статья на тему существующих сайдчейнов https://hackernoon.com/13-sidechain-projects-every-blockchain-developer-should-know-about-804b65364107
также http://www.drivechain.info/faq/index.html https://blockstream.com/sidechains.pdf
Масштабирование блокчейнов с помощью сайдчейнов.
- Использование сайдчейна для децентрализованных приложений
- Некоторые страны, города, компании или сообщества могут сделать свой сайдчейн (с отличающимися свойствами) и тем самым изъять свои транзакции из основной сети.
Приведу примеры для п. 1 для сети Ethereum
- Loom Network https://medium.com/loom-network/dappchains-scaling-ethereum-dapps-through-sidechains-f99e51fff447
- Sonm https://www.youtube.com/watch?v=paWbOE8KKGQ
- POA https://poa.network/
Примеры для п. 2 для сети Bitcoin
- Некая страна-курорт легализовала биткойн, как платежное средство. Вы приезжаете туда. Переводите из основной сети в сайдчейн, запущенный местными властями, и ходите расплачиваетесь за услуги, не нагружая основную сеть, и, соответственно, не платя таких больших комиссий. Покидая эту страну вы выводите остаток в основную цепь.
- Если страна большая, то можно делать сайдчейн к сайдчейну, например для каждого города или какого-то другого типа организации (фуд-сайдчейн, клуб-сайдчейн, стрип-сайдчейн, VIP-сайдчейн и т. д.). Тогда будет древовидная система сайдчейнов. Например сайдчейн bitcoinRu, у которого будет сайдчейны bitcoinRuMoscow, bitcoinRuSPb. Тогда, если человек живет в СПб ему необязательно иметь битки в основной сети биткойна. Он можно купить их у местного поставщика (который проводит оптом большое количество битков в этот сайдчейн одной транзакцией из bitcoin в bitcoinRu и потом одной транзакций из bitcoinRu в bitcoinSPb). Это будут те же самые биткойны, что и в основной цепи, но ими можно будет пользоваться только в пределах этого сайдчейна. При этом в любое время их можно вывести на более высокий уровень иерархии.
- Сайдчейн для каких-либо сообществ или организаций. Например,
- Некий сервис запускает сайдчейн для оплаты в Steam, Netflix и пр. подобных организациях,
- сообщество обучающее иностранным языкам запускает сайдчейн, в котором вы можете расплачиваться с учителями или сервисами по обучению, типа lingualeo, ororo.tv и т. д.
….
- сайдчейн для сходки крипто-анархистов в неустановленном месте.
Резюме. В настоящее время технология сайдчейнов, также, как и офф-чейн транзакции выглядят наиболее актуальным направлением решения проблемы масштабирования основных сетей.