Обновление Safe Network 🇷🇺 9 июня 2022 г

Это машинный перевод. Оригинал на английском здесь: Update 09 June, 2022

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

А пока, пожалуйста, прочтите сообщение @jimcollinson о наших стратегических целях и имейте в виду, что наши цели и видение не изменились ни на йоту . И, пожалуйста, не забывайте вести обсуждения, какими бы страстными и горячими они ни были, всегда уважительно. У нас есть кодекс поведения на форуме, которого должны придерживаться все участники.

На этой неделе мы рассмотрим данные в сети и то, что означает, что файлы являются общедоступными или частными.

Общий прогресс

Yogesh искал базы данных для замены sled db, которая содержит ошибки и, похоже, не поддерживается активно. На данный момент основными кандидатами являются Persy, транзакционная база данных, оптимизирующая согласованность, и Cacache, который, по словам @yogesh, «похоже, предлагает лучшую скорость из всех возможных благодаря встроенному созданию и обработке метаданных». Ни один из них не идеален, но оба, вероятно, справятся с этой задачей. Тестирование продолжается.

Спасибо @josh за организацию конференции DBC на прошлой неделе. Как упомянул @Chriso, депонирование собственных DBC еще не работает, но это то, над чем он работал на этой неделе, а @Qi_ma изучает ошибку повторного выпуска DBC, а также работает над интеграцией потраченных книг.

Тем временем @davidrusu продолжает работать над предоставлением информации о членстве взрослым, чтобы обеспечить синхронизацию членства и сетевых знаний (через подписанного поставщика полномочий раздела) в разделе.

Общедоступные и частные данные в безопасной сети

Что такое файл в безопасной сети? Достаточно простой вопрос, но ответ немного сложнее. Основной ответ — «контент + метаданные + карта данных» — но что это значит?

Содержание

Содержимое — это исходный материал файла, основная двоичная информация. Как только он достигает более 1 МБ, он автоматически самошифруется для создания фрагментов и карты данных. Из-за того, как работает самошифрование, это детерминировано, т. е. самостоятельно шифруйте один и тот же контент любое количество раз, и вы получите одинаковые фрагменты. Его безопасность в значительной степени не зависит от алгоритма шифрования (мы используем AES256), а это означает, что если алгоритм взломан, фрагменты по-прежнему безопасны.

Итак, что такое кусок? Если у вас нет карты данных, чанк — это бессмысленный блок битов, в основном размером около 1 МБ с именем, которое также является его хэшем. Это означает, что мы можем проверить, является ли оно валидным — совпадает ли имя с хэшем, — но мы не можем ничего сказать об этом. Мы можем его видеть, но не можем прочитать или узнать, откуда он взялся.

Карта данных

Итак, что такое карта данных? Карта данных — это простой файл, который содержит незашифрованное имя содержимого и имена всех составляющих его зашифрованных фрагментов, поэтому мы знаем, где их найти (имя фрагмента == адрес Xor). Если он хранится в сети в незашифрованном виде, любой может использовать его для воссоздания контента. Если он зашифрован или хранится на нашем частном клиенте, то только мы можем это сделать. Мы вернемся к шифрованию карты данных через секунду.

Метаданные

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

Причина, по которой мы не включаем метаданные в контент, заключается в том, что это нарушит дедупликацию. Допустим, кто-то загрузил песню Sex Pistols GodSaveTheQueen.mp3, а кто-то другой загрузил точно такой же MP3, но назвал его GSTQ.mp3. Если бы имя было частью содержимого, фрагменты были бы совершенно другими, поэтому не было бы дедупликации. Это означает, что мы храним метаданные отдельно от чанков. Мы можем хранить его в карте данных в сети или на нашем клиенте, что позволяет нам упорядочивать эти кажущиеся бессмысленными капли так, как нам нравится, называть и маркировать их по своему усмотрению, включая время создания и время доступа, и организовывать их в наши собственные структуры каталогов.

Каталоги также могут быть содержимым, зашифрованы, разделены на фрагменты и сохранены в виде файлов с собственной картой данных (именно поэтому небольшие файлы, которые не проходят самошифрование, нечитаемы — все содержимое хранится в каталоге, но это еще один день). ).

Общедоступные и частные данные

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

Контент — это просто бессмысленные блобы без карты данных, и эти блобы настолько безопасны и непознаваемы, насколько это возможно с современными технологиями. Чтобы сделать GodSaveTheQueen.mp3 общедоступным, мы загружаем его, публикуем его карту данных в сети в незашифрованном виде и ссылаемся на него. Скорее всего, с такой известной песней фрагменты уже будут там, но оригинальный загрузчик,кто назвал его GSTQ.mp3, решил зашифровать карту данных или сохранить ее на своем клиенте и, следовательно, в частном порядке.

Так что это основное различие между общедоступными и частными данными.

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


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

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

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