Связь между размером блока и масштабируемостью

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

Почему размер блока так важен?

Начнём, пожалуй, с того, что сам термин «блокчейн» переводится как «цепочка блоков». Каждый отдельный блок представляет собой определённый объем данных, в котором хранится информация о транзакциях. Учитывая этот объем, а также – скорость генерации новых блоков, можно высчитать, какое количество транзакций в секунду (transactions per second - TPS) способен поддерживать блокчейн. Очевидно, что чем это число выше – тем лучше. Поэтому разработчики активно ищут способы повысить его.

И в контексте использования криптовалют это особенно актуально. Ведь Bitcoin, даже со всеми решениями второго уровня и прочими дополнениями, выдаёт максимум 7 TPS. А Ethereum – до 15. Для сравнения, система денежных переводов Visa генерирует до 1700 транзакций в секунду. Поэтому для того, чтобы начать составлять реальную конкуренцию традиционным финансовым системам, криптовалютные проекты должны значительно повысить скорость своей работы. Однако просто увеличить размер блока – это временное решение, которое в будущем может привести к некоторым проблемам. К счастью, есть и другие варианты действия, и мы сейчас постараемся некоторые из них разобрать.

Как именно могут масштабироваться блокчейны?

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

Масштабирование внутри цепочки. Подразумевает изменение работы самой цепочки с целью сделать её более эффективной. Существуют следующие варианты действия:

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

Аргументы за и против простого увеличения размера блока

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

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

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

Как обстоят дела с решением проблемы на данный момент?

На момент написания статьи, блокчейн Bitcoin не менял природы используемых блоков с начала внедрения протокола SegWit. Но активно развивал решения второго уровня и сайдчейны. Именно они позволили использовать биткоины для осуществления повседневных покупок. Что касается увеличения блоков, то в BitcoinSV пошли ещё дальше, чем в Bitcoin Cash, повысив их размер до 2 ГБ. Это, впрочем, привело лишь в увеличению стоимости обслуживания и регулярной потере данных.

Вот только это не предел. В проекте ILCOIN используется протокол RIFT, который, по словам его создателей, позволяет создавать блоки до 5 ГБ размеров и обеспечивает TPS на уровне 100 тысяч. Это возможно благодаря тому, что каждая большая единица хранения информации состоит из образований поменьше (всего 25 МБ) которые не нужно добывать индивидуально, поскольку они автоматически генерируются «родительским блоком».

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

В рамках проекта Cardano была разработана система Hydra, в рамках которой каждый пользователь генерирует 10 «голов», каждая из которых работает как самостоятельный канал, повышающий пропускную способность сети.

Выводы

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