В процессе масштабирования биткоин-системы протокол сталкивается с различными болезнями роста. Биткоин сейчас используют все больше и больше, и это хорошо. Однако с ростом количества пользователей выходят на передний план проблемы с протоколом, которые необходимо решить. Одни из самых значительных из этих проблем связаны с пропускной способностью майнинга, но это тема для отдельной статьи.
Другой вопрос, который может стать важным в ближайшее время, является немного более простым. Сейчас существует серьезное ограничение на размер блоков: не более 1 Мб. Гэвин Андресен недавно экспериментировал с возможными путями решения этого вопроса.
В двух словах, проблема состоит в том, что размер блока может быть не больше 1 Мб, далее сеть может добавлять только новые блоки. Если вдруг будет достигнута точка, где количество транзакций в блоке будет больше чем на 1 Мб, то небольшие транзакции будут игнорироваться на неопределённый срок. Существует несколько более экзотических подходов к этой проблеме, но есть также довольно простой способ: повысить верхний предел размера блока. Вопрос только в том, сможет ли его принять сеть?
В результате исследований, Гэвин Андресен опубликовал в своем блоге ответ, что, по-видимому, это все-таки возможно. Андресен пишет, что моделировал процесс на небольшом макете цепочки блоков (используя данные транзакций из запущенной у него выходной ноды), и результаты проведенных испытаний показались ему многообещающими. Производительность хорошо масштабируется с размером блоков, и его iMac 2010 года смог продолжать майнинг и работу полных узлов при размере блока в 20 и даже в 200 Мбайт (хотя последний вариант возможен только при выделении большего объема ресурсов).
Андресен собирается провести еще несколько тестов, но если они идут хорошо, в ближайшем будущем он, вероятно, выступит за хардфорк. В этом случае можно будет масштабировать максимальный размер блока по мере необходимости. Это позволит удовлетворять растущий спрос. Для тех, кто не знает, трудности форка состоят в изменении софта, который нарушает обратную совместимость с предыдущими версиями клиента майнинговой системы, и вынуждает их принимать различные блокчейны канонически. Таким образом, эффективно разделяя сеть биткоина между теми, кто обновляется, и теми, кто не проводит обновления. Хардфорки стоят дорого, они неудобны, разрушительны, но иногда необходимы.
Для получения более подробной информации о разработке и процессе тестирования, можно посмотреть оригинальный пост в блоге Андресена, и проанализировать долгие дискуссии на BitcoinTalk.