Консенсус по принципу «Proof-of-Archival-Storage» (PoaS) основан на принципе честного большинства и безоговорочном характере консенсуса Накамото без огромных затрат на электроэнергию при майнинге.
Благодаря раздельному исполнению фермерское хозяйство становится легким и устойчивым к объединению в пулы, а наша распределенная сеть хранения данных фермеров позволяет блокчейну значительно «раздуваться», не становясь централизованным.
Разделение блоков и выборка доступности данных позволяют выполнять вертикальное масштабирование, а наше уникальное разделение консенсуса и вычислений обеспечивает горизонтальное масштабирование с издержками log (n) для операторов.
построенный с использованием лучших технологий
Веб-сборка
Руст-Ланг
Субстрат
libP2P
Чтобы решить трилемму блокчейна, мы построили Подпространство, безопасный и устойчивый протокол PoaS, обеспечивающий свободный и справедливый консенсус по принципу «один диск — один голос».
Наш протокол был разработан с учетом трех проблем. Первая — найти надежный механизм консенсуса, который будет одновременно экологичным, не допускающим разрешений и справедливым.
PoW, или принцип «один процессор — один голос», прост, безопасен и не требует разрешений, но требует больших затрат на электроэнергию, что не является экологически безопасным и приводит к централизованному или объединенному майнингу.
PoS, или «одна монета — один голос», использует систему виртуального майнинга, основанную на вашем богатстве. Несмотря на то, что PoS экологичен, он не является честным и необоснованным. Вместо этого он поощряет систему, в рамках которой богатые становятся только богаче.
PoC, или принцип «один диск — один голос», заменяет майнинг сельским хозяйством, требующим больших объемов хранения данных. Теоретически PoC безопасен, экологичен и честен, но на практике большинство проектов возвращаются к моделям PoW или PoS.
В PoA фермеры записывают тысячи небольших (1 МБ) фрагментов, сгруппированных в сектора по 1 ГиБ, на свободное место на диске. Каждый фрагмент маскируется ограничением полосы пропускания памяти в соответствии с индивидуальной реализацией Китайское доказательство космоса.
В отличие от Chia, построение графиков не заполняет SSD случайными данными, а создает уникальные частичные копии истории каждого фермера.
В отличие от Filecoin, фермерам не нужно ставить монеты, пропорциональные их дисковому пространству. Это позволяет любому человеку в мире быстро и легко предоставить свое свободное место и принять участие в консенсусе.
Следуя примеру C-nakamoto PoS, мы создаем безопасный маяк случайности на основе самой истории блокчейна. В каждом слоте все фермеры частично сканируют свои участки в поисках любого фрагмента размером 32 ГБ, достаточно близкого к месту задания, чтобы удовлетворить заданный уровень сложности. Затем они могут скомпилировать фрагмент, взяв на себя обязательства по подтверждению того, что он является частью истории цепочки, и соответствующую проверку наличия свободного места в программе Proof-of-Replication (PoR) и создать следующий блок в цепочке. После этого любой желающий может недорого проверить доказательства, выполнив 64 хэша и 2 проверки KZG. Это позволяет работать в сельском хозяйстве стабильно и легко с точки зрения требуемых накладных расходов на хранение и вычисления.
Чтобы побудить фермеров сохранить историю, мы превращаем консенсус «proof-of-space» в доказательство сохранения истории самого блокчейна. В соответствии с принципом «доказательство наличия архивных данных» (PoA) каждый фермер хранит столько доказуемо уникальных сегментов истории сети, сколько позволяет его дисковое пространство. Чем больше фрагментов истории хранит фермер, тем больше вероятность того, что его выберут за создание нового блока. Чтобы фермеры могли хранить как можно больше уникальных экспонатов, мы применяем правило, согласно которому каждый фермер может хранить их в соответствии со своей индивидуальностью. Смена личности потребует пересмотра сюжета и защиты от атак Сибил.
Второе — решить проблему дилемма фермера, проблема проектирования механизмов, из-за которой сети в стиле POC подвержены централизации.
Фермеры могут использовать свои хранилища, чтобы: а) сохранить состояние и историю цепочки или б) максимизировать размер участка и окупаемость инвестиций.
По мере роста сети фермеры всегда будут выбирать последнее, в лучшем случае становясь легкими клиентами, а в худшем — присоединяясь к фермерскому пулу, управляемому доверенным оператором.
Если никто не хранит историю, узлы могут синхронизироваться только с централизованными поставщиками. Если за государством никто не следит, мы должны полагаться на доверенных третьих лиц, которые будут получать наши балансы.
Фермеры совместно хранят историю, образуя распределенную сеть хранения (DSN), которая обеспечивает постоянную доступность истории для загрузки.
Чтобы история не была потеряна, блоки закодированный для стирания как в исходных, так и в паритетных частях.
Чтобы обеспечить надлежащую балансировку нагрузки и стабильную репликацию, каждый фермер хранит незашифрованные фрагменты, близкие к его идентификатору, в «горячем» кэше, занимающем менее 1% заложенного хранилища.
Чтобы обеспечить эффективное извлечение данных, узел сначала запрашивает фрагменты из «горячих» кэшей фермеров. Лишь в редких случаях попадания в тайник фермеров просят расшифровать фрагменты, хранящиеся на их участке в холодильнике.
Для протокола архивирования мы создали уникальный механизм синхронизации цепочки, основанный на локальном извлечении фрагментов и восстановлении цепочки. Это позволяет узлам Subspace хранить только последние блоки и очищать архивную историю, сохраняя требования к памяти для целых узлов без изменений независимо от продолжительности цепочки.
Чтобы освободить фермеров от необходимости поддерживать государство и выполнять избыточные вычисления, мы применяем классический в распределенных системах метод разделения консенсуса и вычислений. Фермеры несут полную ответственность за упорядочение транзакций, в то время как отдельный класс операторских узлов поддерживает состояние и вычисляет переходы для каждого нового блока. Чтобы операторы несли ответственность за свои действия, мы используем систему заложенных депозитов, поддающихся проверке вычислений и неинтерактивных средств защиты от мошенничества.
Чтобы предотвратить симуляционные атаки, энтропия из истории блокчейна повторно используется в течение многих последовательных временных интервалов. Чтобы предотвратить скрупулезные атаки, мы отделяем POR от содержимого блоков, а случайность вычислений основывается исключительно на самих POR. Для предотвращения компрессионных атак мы требуем, чтобы фермеры передавали всю кодировку для создания блока. При этом декомпрессия так же невозможна за определенный промежуток времени, как и построение графиков. Чтобы предотвратить атаки на дальние расстояния, атаки с целью получения взятки и компромиссные атаки в пространстве и времени, мы используем простой метод проверки времени (PoT) на основе алгоритма AES-128. Формальный анализ безопасности можно найти в нашей исследовательской статье.
Третье — масштабирование пропускной способности транзакций без ущерба для безопасности или децентрализации сети.
Одним из способов масштабирования пропускной способности является увеличение размера блока, но это приводит к увеличению времени распространения и увеличению скорости «честного форка», что снижает уровень безопасности.
Другой метод заключается в масштабировании с использованием нескольких цепочек или осколков, но существующие конструкции небезопасны для адаптивного противника, который может нацелиться на один осколок.
Оба метода приводят к ускорению роста состояния и истории цепочки, что приводит к раздуванию блокчейна и централизации под несколькими мощными узлами.
Решая дилемму фермера с помощью нашего DSN, компания Subspace также решает проблему раздутия блокчейна, позволяя нашей сети масштабироваться без компромиссов.
Подпространство адаптирует Предложение по масштабируемости Prism для обеспечения высокопроизводительной обработки транзакций без снижения безопасности. В сочетании с доказательствами доступности данных и сверхлегкие клиенты, сельское хозяйство может оставаться малополосным и децентрализованным.
Используя виртуальную цепочку маяков, мы устраняем узкое место в одной основной цепочке и поддерживаем до 2^16 сегментов. Фермеры регулярно меняют осколки, а операторы могут делать ставки на любое количество разных осколков, следуя схеме Free2Shard.
Subspace расширяет протокол быстрого подтверждения Taiji для достижения консенсуса PoC, позволяя фермерам достичь почти детерминированной окончательности в трех блоках, сокращая задержку подтверждения новых транзакций с нескольких минут до секунд, не полагаясь на операторов.