Обновление Safe Network 🇷🇺 17 декабрь 2020 г

Это машинный перевод. Оригинал на английском здесь: Safe Network Dev Update - December 17, 2020

Тестнет

Вплоть до этих последних минут сегодня мы собирали все части вместе с целью запустить размещенную общедоступную тестовую сеть. Сейчас он доступен не всем, но работает (и ломается: wink:). Мы надеялись опубликовать детали, чтобы присоединиться к нашей сети сегодня вечером, по крайней мере, в качестве сети только для узлов (без клиентов), но в последнюю минуту отказались от решения некоторых проблем, которые мы обнаружили. Мы все еще работаем над этим, чтобы сделать рождественский подарок для всех. Следите за происходящим в следующие несколько дней, чтобы увидеть, как у нас дела. Скорее всего, у нас будет достаточно стабильности, чтобы разместить общедоступную сеть и открыть для вас шлюзы, которые помогут нам решить любые дальнейшие проблемы.

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

Как запустить локальную тестовую сеть на моем компьютере?

Вы сможете создать Сейф в этой сети, войти в систему, загрузить данные, создать ключи и кошельки, а также все другие команды, описанные в Руководстве пользователя CLI. Это руководство проведет вас через запуск локального раздела, но, конечно, его можно применить для запуска / подключения к любому общему разделу, размещенному кем угодно, с некоторыми настройками в соответствии с вышеупомянутым Руководством пользователя.

Прежде всего, загрузите последнюю версию двоичного файла CLI с помощью нашего скрипта установки.

Затем вам следует обновить демон Authenticator и узел до последних сегодняшних выпусков. Вы можете сделать следующее:
оболочка
$ safe auth install
'' оболочка $ safe установка узла ‘’

Теперь мы можем запустить сеть, используя:
оболочка = $ безопасный узел run-baby-fleming ‘’

Это запустит 8 узлов на вашей машине: 5 взрослых и 3 старших.

Мы также можем добавить дополнительные узлы в сеть, это достигается с помощью «безопасного соединения узлов» следующим образом.

_ Обратите внимание, что вам может потребоваться установить переменную среды RUST_LOG перед запуском вашего узла, чтобы журналы не были слишком подробными. _

оболочка

для Linux и Mac OS

$ export RUST_LOG = safe = трассировка

Windows (командная строка)

$ set RUST_LOG = трассировка

Windows (PowerShell)

$ $ env: RUST_LOG = “безопасный = трассировка”
'' А затем запустите узел с: оболочка $ безопасное соединение узла Хранение сгенерированных данных узлов в /Users/maidsafe/.safe/node/local-node Запуск узла для присоединения к безопасной сети ... Запуск с исполняемым файлом узла из: /Users/maidsafe/.safe/node/sn_node Узел запущен с жестко запрограммированными контактами: ["127.0.0.1:12000"] Запуск узла ... Журналы узлов хранятся по адресу: /Users/maidsafe/.safe/node/local-node/sn_node.log ‘’

Теперь ваш узел запустится и попытается подключиться к вашей локальной сети. Вы можете следить за его прогрессом по его журналам, которые можно найти в ~ / .safe / node / local-node / sn_node.log.

Прежде чем приступить к выполнению остальных команд CLI, не забудьте [аутентифицировать] (https: // github. com / maidsafe / sn_api / tree / master / sn_cli # auth-start) и создать свой сейф.

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

Известная проблема

В этом выпуске есть известная проблема, над которой мы все еще работаем. При первой авторизации приложения CLI с помощью authd, используя команду $ safe auth unlock --self-auth пожалуйста см. Этот раздел Руководства пользователя для получения дополнительной информации об этой команде), вы можете получить сообщение об ошибке при попытке загрузить файл или записать данные в сеть, например это может быть возвращена ошибка:
'' [2020-12-17T20: 21: 06Z ERROR safe] Ошибка sn_cli: [Ошибка] NetDataError - Не удалось сохранить данные публичной последовательности: Ошибка данных -> Неожиданная ошибка: не удалось получить историю для ключа PublicKey :: Ed25519 (d802d5 ..) - ClientError :: DataError -> Unexpected («Не удалось получить историю для ключа PublicKey :: Ed25519 (d802d5 ..)») ‘’

В таком случае просто выполните ту же команду еще раз, чтобы разблокировать «Сейф», как и раньше, а затем попробуйте еще раз с записью данных в сеть.

Безопасный клиент, узлы и qp2p

План проекта безопасного сетевого переноса
План проекта безопасного клиента
План проекта безопасного сетевого узла

В тыйин вложено много работыg вверх по потоку вознаграждений, причем главным является распределенный актер (кошелек секции), управляемый Старейшинами. Реплики кошельков раздела теперь находятся в другом разделе.

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

Мы также обновляли зависимости репозитория sn_api, продолжая вносить необходимые изменения в кодовую базу репозитория для адаптации к новым API sn_client, исправляя проблемы и пытаясь пройти все наши автоматизированные тесты, когда они выполняются с локальная сеть. Мы добились хорошего прогресса в этом, и у нас есть большая часть тестов sn_api, которые проходят, некоторые мелкие проблемы еще предстоит исправить, и еще немного поработали над самим тестом.

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

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

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

BRB: Византийская надежная трансляция

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

Полезные ссылки


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

Как проект с открытым исходным кодом, мы всегда ждем отзывов, комментариев и предложений сообщества - так что не стесняйтесь, присоединяйтесь и давайте вместе создадим безопасную сеть!