Ротация набора валидаторов
Для достижения консенсуса в блокчейне платформы, особый набор мастернод — валидаторы — верифицируют и подписывают блоки. До версии 0.19 набор валидаторов был статичным и располагался на нодах, контролируемых DCG. С версии 0.20, для динамического распределения и ротации набора валидаторов между всеми мастернодами применяются Долгосрочные кворумы мастернод (LLMQ). При таком подходе нагрузка распределяется равномерно, что способствует надёжности и безопасности сети.
Криптографические доказательства
Раньше клиентам приходилось использовать доверенные полные ноды, чтобы убедиться в достоверности и целостности данных, получаемых от сети платформы. В этой версии DAPI предоставляет достаточные криптографические доказательства вместе с соответствующими данными платформы, и поэтому лёгкие клиенты (например, мобильные кошельки) могут безопасно взаимодействовать с Dash Platform.
Пороговая подпись состояния платформы
Чтобы предоставить криптографические доказательства и гарантировать консенсус сети, валидаторы раньше использовали неагрегированные EdDSA-подписи из криптографического дайджеста состояний платформы. Из-за количества и общего размера этих подписей, доказательства были довольно ресурсоемкими для использования в лёгких клиентах. В версии 0.20 используется механизм пороговой подписи BLS. В результате появляется всего одна подпись, которую мобильные кошельки и другие лёгкие клиенты могут легко верифицировать.
Оптимизация пирингового слоя
Раньше полные ноды и валидаторы использовали и верифицировали все типы P2P-сообщений. Это значит, что все полные ноды также получали весь трафик сети, содержащий сообщения, предназначенные лишь для валидаторов. В новой версии полные ноды больше не получают промежуточных консенсусных сообщений, формируемых валидаторами. Вместо этого валидаторы генерируют только одно сообщение с пороговой подписью BLS, которое содержит уже результаты консенсуса, и оно распространяется по всей сети. Таким образом, значительно снижается нагрузка на сеть, поскольку полные ноды больше не получают огромное количество сообщений. Использование пропускной способности сети сократилось на 99.5%.
Метаданные платформы
Теперь Dash Platform прикрепляет к ответам DAPI дополнительные метаданные, например, текущую высоту блокчейна платформы, а также синхронизированную высоту основного блокчейна, которую зафиксировали и с которой согласны все участвующие в консенсусе ноды. Поскольку блокчейн платформы и основной блокчейн не синхронизированы, платформа использует высоту основного платёжного блокчейна, чтобы гарантировать, что все ноды платформы обладают детерминированным представлением о состоянии основной сети.
Точная и надёжная проверка контрактов данных
В новой версии протокола Dash Platform обновляется спецификация JSON Schema, которая использовалась для определения контрактов данных в последней версии 2020-12, а также применяются строгие правила валидации для того, чтобы предотвратить возможные пользовательские ошибки в загруженных в сеть контрактах данных. Также внедрен специальный обработчик регулярных выражений, чтобы предотвратить атаки ReDoS.
Надёжная синхронизация JS Wallet
Предыдущие версии библиотеки JS Wallet не всегда получали от DAPI все запрошенные транзакции и сообщения Instantlock во время синхронизации. В версии 0.20 эту проблему решили.
Улучшения Dashmate
Последняя версия Dashmate содержит 20 исправлений и улучшений. Наиболее значимые из них сделаны, чтобы улучшить и сделать более надёжным процесс настройки локальных сетей разработки. Кроме того, улучшена производительность и добавлена поддержка Windows.