Апдейт разработки DCG | 5 Сентября 2023

Апдейт разработки DCG | 5 Сентября 2023

ᴠᴏɴᴄᴀɴ

Держи руку на пульсе Dash  ➯ Подпишись | Читать прошлый апдейт

В недавнем обновлении команды разработчиков платформы Dash были отмечены основные успехи и достижения в различных аспектах проекта. Команда представила краткий обзор своей работы за последние 2 недели.

  1. Сэм, Иван и Егор наконец-то полностью завершили версионирование
  2. Другим значительным достижение стало окончание Cэмом разработки и настройки Contract Bounds.
  3. Продолжает вестись работа над State Sync, это важная часть платформы ведь в цепочке Dash Platform, изменением состоянием является любое действие с платформой и данными.
  4. Лукаш активно работает над комплектом разработчика программного обеспечения (SDK) для Rust, в этом спринте ему помогал Евгений.

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


В недавнем обновлении, посвященном разработке Dash Rust SDK, были описаны основные этапы и текущие задачи.

  • Архитектура Rust SDK: Команда продолжает работать над Rust SDK, уделяя особое внимание его архитектуре.
  • Интеграция с DY-клиентом: В Dash Rust SDK успешно интегрирован DY-клиент для Rust, который выполняет роль коммуникационного и транспортного уровня. Этот компонент обеспечивает беспрепятственный обмен сообщениями между платформой Dash и SDK Rust, повышая их функциональную совместимость.
  • Верификация доказательств: Команда добилась значительного прогресса в разработке верификатора доказательств, который в настоящее время находится на стадии обеспечения качества (QA). Несмотря на необходимость устранения некоторых ошибок, работа над этим компонентом близка к завершению. Верификатор доказательств очень важен для обеспечения безопасности и целостности операций в Rust SDK.
  • Интеграция версионирования: Версионирование было интегрировано в Rust SDK с учетом проделанной в этой области работы. Эта интеграция соответствует стремлению Dash поддерживать организованные и надежные версии программного обеспечения, обеспечивая бесперебойный процесс разработки.
  • Разработка контроллера SDK: В настоящее время ведется разработка важнейшего компонента Rust SDK - контроллера SDK. Этот интерфейс служит основной точкой взаимодействия с пользователями, позволяя им получать доступ к различным аспектам платформы Dash и манипулировать ими. Команда уже реализовала функции, связанные с чтением документов, контрактами с данными, идентификацией и листингом документов. Кроме того, начата работа над интеграционными тестами, что подчеркивает стремление команды к тщательному тестированию и демонстрирует примеры использования SDK.
  • Прогресс в работе с привязками на языке C: Команда также продвигается в работе над связками на языке C, уделяя особое внимание созданию внешней библиотеки или макроса для экспорта связок. Несмотря на то, что компонент C bindings продвигается, он ожидает завершения работы над библиотекой перед дальнейшей интеграцией.

Говоря о Grove DB, обсуждался ряд ключевых разработок и исправлений ошибок, половину спринта команда посвятила улучшению chunk, а вторую половину - выявлению и исправлению ошибок в Grove DB, выявленных в ходе тестирования.

  • Была обнаружена ошибка, связанная с частями подзапросов в доказательствах. Эту ошибку было сложно определить, но в итоге она была устранена командой. Ошибка была обнаружена в ходе тестирования RS Drive, и ее исправление было реализовано, благодаря чему все тесты успешно пройдены.
  • Была обнаружена еще одна ошибка, связанная с расчетом себестоимости точно в срок (JIT), но она уже будет решена в следующем спринте.

Была проведена работа по улучшению совместимости GroveDB с State Sync

  • Большим достижением стала успешная реализация упорядочивания чанков по принципу "сначала по ширине". Это позволило решить проблемы, возникавшие ранее при доказательстве высоты, и повысить общую эффективность системы.
  • Команда расширила возможности чанкинга за счет интеграции Sum Trees, что позволило реплицировать Sum Trees с сохранением их суммарных значений.
  • Важным дополнением к Grove DB является верификация связей между мастернодами. Новая система может обнаруживать неполные состояния и восстанавливаться после прерываний в процессе восстановления, что избавляет от необходимости перезапускать систему с нуля.
  • Команда устранила проблемы с Merk layer iter для равенства нод

Версионирование:

Основной вклад в разработку версий внесли Сэм, Иван и Игор, причем особое внимание было уделено обеспечению взаимодействия между Rust и JavaScript (WASM). Эта работа была необходима для JavaScript SDK, который требует бесперебойного взаимодействия между Rust и JavaScript. После нескольких недель кропотливой работы версионирование было успешно завершено, что стало значительным достижением для команды.

  • В ходе этого процесса проводились рефакторинг, оптимизация и исправление ошибок для обеспечения надежности и эффективности.

Рефакторинг валидации дата-контрактов:

Команда провела рефакторинг в тех областях, где были выявлены потенциальные проблемы или ошибки, в частности, в области валидации контрактов данных и валидации документов.

Одним из существенных изменений стало разделение JSON-схем на отдельные схемы для каждого типа документов в рамках контракта на предоставление данных. Такой подход обеспечивает более точную и эффективную проверку, фокусируясь исключительно на пользовательских свойствах контракта данных и не затрагивая системные свойства.

  • Функции проверки документов были обновлены для интеграции этого нового подхода к проверке, и он дает ряд преимуществ, включая упрощение и сокращение компиляции схемы JSON. Теперь JSON-схема компилируется только один раз в промежуточный формат, что повышает эффективность.

Рефакторинг также позволяет использовать часто используемые контракты данных в кэшировании, что делает процесс валидации более элегантным и эффективным.


Contract Bounds

  • Это важнейшее усовершенствование функций безопасности и конфиденциальности платформы, которым занимались достаточно долго.

Он включал в себя пересмотр и доработку существующего кода, приведение его в соответствие с системой версионности платформы, а также решение всех нерешенных задач. И наконец после тщательной доработки и тестирования проект Contract Bounds официально завершен и включен в состав Dash Platform.

По сути Contract Bounds позволяет децентрализованным приложениям (DApps) устанавливать безопасную одноранговую зашифрованную связь. Подумайте об этом, как о создании защищенного приложения для обмена мгновенными сообщениями внутри DApp, где сообщения шифруются из конца в конец, гарантируя, что расшифровать их сможет только тот, кому они предназначены.

Термин Contract Bounds может показаться необычным, но он обладает более широким потенциалом, чем ключи шифрования.

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


Как это работает?

Для обеспечения безопасной связи DApp необходимо создать протокол шифрования. Contract Bounds облегчает эту задачу, позволяя DApps указывать ключи шифрования и дешифрования в своих контрактах. Эти ключи затем используются для безопасной передачи сообщений между пользователями внутри DApp. Для создания общих ключей шифрования и дешифрования Dash Platform использует такие методы, как криптография эллиптических кривых Диффи-Хеллмана.


Приватность и безопастность

Важным аспектом системы Contract Bounds является изоляция ключей в пространстве идентичности контракта.

Такой подход позволяет предотвратить обмен конфиденциальной информацией, например ключами шифрования, между различными приложениями.

Даже если безопасность одного приложения будет нарушена, это не повлияет на конфиденциальность и безопасность других приложений.


Beta v1 (v0.25)

Долгожданная фаза тестирования:

Переход к этапу тестирования - важный шаг в процессе разработки, которого с нетерпением ждали.

Теперь пользователи, в том числе и участники программы "Инкубатор", могут получить доступ к версии платформы, очень похожей на ту, которая будет развернута в основной сети.

Эта версия полностью функциональна и позволяет пользователям изучать и использовать возможности платформы.

Что ожидать:

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


Будущее

После успешного тестирования и решения проблем проект перейдет в активную фазу "атаки". На этом этапе будет проводиться тщательный анализ кода и целенаправленные попытки выявления уязвимостей. Команда стремится к быстрому продвижению проекта, уделяя особое внимание безопасности и надежности.


Подготовка к релизу Beta v2

Команда разработчиков рассказала об оставшихся задачах и приоритетах для предстоящего выпуска Beta 2.

Что сделано

  • Версионирование
  • Процессинг награды за блок с Core блокчейна
  • Ограничения дата-контрактов

Что осталось сделать

Несмотря на то, что в настоящее время операции по выводу средств уже работают, остается нерешенным последний этап - обеспечение совместимости Core и Platform. Эта задача, хотя и не является масштабной, но требует внимания.

Возникла проблема с пулреквестом, связанным с голосованием на мастернодах, поскольку первоначальные требования не были четко определены. Команда намерена возобновить эту работу и уже достигла прогресса, выделив на нее около 20% рабочего времени.

Корректировка стоимости комиссии - еще одна важная задача в рамках подготовки к Beta 2. Убедиться в том, что тарифы установлены правильно, очень важно для обеспечения функциональности и устойчивости платформы.

Завершение работы над State Sync зависит от прогресса Grove DB, поэтому эта задача будет решена после завершения разработки Grove DB на стороне платформы.


В последнем обновлении от команды разработчиков Core был достигнут значительный прогресс в развертывании Core v20. 

Dash Core v20:

  • Core v20 был развернут в тестовой сети и уже несколько дней находится в стадии тестирования.
  • Однако активация hard-форка еще не завершена и ожидается в ближайшее время.
  • Альфа-версия v20, включающая все необходимые функции, уже доступна. Возможно, потребуется внести некоторые незначительные изменения, связанные с assets lock, и команда активно изучает эти изменения.

Sentinel:

  • Заметным достижением последних двух недель стала успешная интеграция Sentinel в Core v20. Теперь Core отвечает за автоматическое создание предложений триггеров, сбор и принятие этих предложений, а затем отправку их в сеть.
  • Версии Alpha 6-9 v20 теперь полностью независимы от Sentinel при управлении триггерами, их создании и голосовании. Эта независимость представляет собой важный момент и требует тщательного тестирования как на devnet, так и на testnet для обеспечения беспрепятственного перехода при релизе и hard-форке.


Dash Core v21:

  • Core команда уже приступила к работе над v21, поскольку работа над v20 близится к завершению. Одной из основных задач v21 является реализация совместных Мастернод.
  • Пока команда исследований находится на стадии разработки, начались первые работы по внедрению. Ожидается, что совместные Мастерноды станут приятным дополнением к сети, и более подробная информация будет представлена в ближайших обновлениях.


Другая работа:

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

Основная команда усердно работает над бэкпортами, связанными с guick, уделяя особое внимание поддержке Apple Silicon. Работа над этими бэкпортами практически завершена, осталось протестировать и доработать процесс работы с подписанными бинарными файлами.

Работа над EHF (Enhanced Hash Function) близка к объединению, остаились только финальные штрихи и подготовки примечаний к релизу.


Интегрированные пулреквесты: 5540, 5531, 5487, 5545, 5547, 5524, 5529, 5530, 5525, 5550, 5523, 5548, 5539, 5554, 5552, 5560, 5527, 5564, 5549, 5546, 5557, 5558



Команда разработчиков усердно трудилась в ходе последнего спринта, охватив ряд важных функций и улучшений. Ниже приводится краткое описание ключевых моментов:


DashPay:

  • Редизайн экрана уведомлений DashPay.
  • Интеграция Rust в рамках подготовки к активации в Testnet.
  • Мелкие исправления ошибок и улучшение UI.

Голосование за юзернеймы

  • Голосование за имя пользователя находится в стадии разработки для приложения Android. Эта функция позволит пользователям запрашивать имена пользователей в сети Мастернод, а Мастерноды будут голосовать за их утверждение.
  • Команда разработчиков следит за тем, чтобы этот процесс был удобным и прозрачным, сохраняя при этом децентрализацию.

Интеграция CoinJoin

  • В кошелек интегрируется функция CoinJoin, повышающая конфиденциальность личных данных.
  • Эта функция призвана обеспечить большую анонимность и конфиденциальность для пользователей, но лишь при регистрации айдентити на платформе.
  • Несмотря на то, что это в основном работа над бэкендом, ведется постоянная работа по улучшению пользовательского опыта и сокращению времени обработки данных.

Dash Wallet | Android:

Интеграция Topper

  • Topper, партнерский продукт компании Uphold, интегрируется в приложение для Android, чтобы обеспечить эффективную работу с Dash.
  • Команда выполнила большую часть работ, но окончательная доработка ожидается после проведения некоторых деловых проверок с командой Topper.

Интеграция Maya Protocol

  • Команда готовится к интеграции с децентрализованной платформой Maya, предназначенной, в первую очередь, для off-ramp Dash.
  • На начальном этапе пользователи Dash смогут осуществлять обмен на продажу по выбранному ими адресу.
  • В будущем планируется расширить возможности заработка Dash с помощью Maya.

Кроме того, в ходе этого спринта был выпущен Dash Wallet v9.0.5 для Android.

Dash Wallet | iOS:

  • Команда разработчиков iOS признала, что ведение двух отдельных веток кода для Dash Pay и Dash Wallet сопряжено с определенными трудностями. Чтобы оптимизировать свои усилия, они объединили эти ветки в ветку Dash Wallet. Ожидается, что такое объединение позволит снизить трудозатраты на разработку и создать более эффективную и единую кодовую базу.
  • Интеграция Rust для мобильных клиентов, ведь она не ограничивается платформой, а распространяется и на мобильные клиенты. Эта работа направлена на повышение стабильности и скорости процесса синхронизации.
  • Команда работает над редизайном портала Uphold, он призван улучшить UX и является частью более широкой инициативы по улучшению доступности и удобства использования Dash.
  • Исправление ошибок и обновление iOS: Было исправлено несколько мелких ошибок, что способствовало улучшению работы пользователей. Кроме того, была выпущена версия iOS 7.0.5, которая привнесла дополнительные улучшения и усовершенствования в платформу iOS.


источник - DCG Devs update

Дисклеймер это не является прямым переводом, а лишь авторской статьей суммирующей информацию на основе стрима DCG

Report Page