Roadmap - redwerk/fred GitHub Wiki
- Исправить установщики
- Установщик Windows часто ломается, и в настоящее время нам нужна 32-битная Java для оболочки. Исправлено но еще полностью не зарелизино
- Улучшения Darknet
- Смотрите 0.8.5. Легкие части из этого были бы очень полезны, учитывая наше желание увеличения аудитории Freenet в режиме даркнет. Надеемся, что это поможет с маркетингом в целом, тем более, что мы должны показать довольно сильные предостережения для режима opennet в мастере первоначальной настройки. В частности, мы хотим реализовать большинство вещей, связанных с FOAF соединениями и приглашениями.
- ✔ Исправлен wininstaller
- Windows installer должен работать надежно. Альфа была развернута. Основная трудность заключается в том, что текущий код не может надежно завершить работу установщика, поэтому его необходимо выполнить вручную при обновлении, а удаление иногда не работает мгновенно. Мы должны исправить это до выхода версии 0.8.0. Тем не менее мы избавились от служебного кода, поэтому установка в основном работает. Есть также проблемы с проверкой на вирусы; у некоторых из них есть программы белого списка.
- ✔ Больше нод для более высокой скорости opennet
- Максимальное количество соединений варьируется от 10 до 140 в зависимости от пропускной способности.
- ✔ Обновление Plugin через Freenet
- ✔ Bulk запросы вместо запросов в режиме реального времени
- Bulk запросы оптимизированы для пропускной способности, запросы в реальном времени оптимизированы для задержки. Fproxy использует запросы в реальном времени, большие загрузки обычно используют bulk запросы.
- ✔ Сокращение ввода-вывода в базу данных
- Специализированная структура, заменяющая фильтры Блума для магазина: хранит карту первых нескольких битов ключа. Это реализовано в ветке store-io, которая еще не задеплоена.
- ✔ Freemail
- Zidel улучшил Freetalk для интеграции с Web of Trust, с более короткими адресами, используя CAPTCHA для предотвращения спама, лучшая производительность и надежность, а также веб-интерфейс, для его Google Summer of Code проекта.
- ✔ Удаление db4o
- Летом 2014 года toad удалил db4o. Это было сделано как purge-db4o в релизе 1468, с срочным исправлением бага в релизе 1469. Это должно быть обязательным, и все еще могут быть недоработки, которые необходимо проверить.
- ✔ Многоконтейнерные бесплатные сайты
- Thanks saces. Наконец-то объединены для постоянных запросов в purge-db4o.
- ✔ Сделать wrapper.jar обновляемым
- Это реализовано и, очевидно, работает в большинстве случаев (очень старые установки могут иметь проблемы). Следовательно, мы исправили некоторые неприятные ошибки, обновив упаковщик. В конечном итоге планируется более полно разделить freenet-ext.jar.
- ✔ Исправлен MP3-фильтр + аудио тег
- ✔ Оптимизация под CPU, дисковый ввод/вывод
- ✔ Улучшения автообновления
- Облегчите изменение ключей автообновления, если это будет необходимо. Также внесены небольшие изменения в обновление плагинов, чтобы мы могли обновить важные плагины, и избегать форсирования ненужных обновлений. То есть используйте старый и скачайте новый, разверните его после запроса пользователя или после перезагрузки.
- ✔ Простой способ вставить большие бесплатные сайты
- Предоставляется jSite и freesitemgr (от pyFreenet) для сайтов до нескольких сотен файлов и нескольких гигабайт данных.
- ✔ Ogg Vorbis, Ogg Theora
- Ветки Sajack-а оддерживают фильтрацию этих распространенных открытых аудио/видео форматов. Они были объединены в next.
- Исправить или удалить плагин Library
- Индексы нового формата легко обновляются и являются актуальными, но поиск обычно не работает. Код был обновлен для хранения метаданных для каждого узла btree в указанной выше ноде. Нам просто нужен кто-то, чтобы запустить spider на быстрой машине, чтобы перестроить такой индекс. Надеемся, тогда производительность будет лучше. В качестве альтернативы просто удалите поиск на данный момент и полагайтесь на индекса сайтов и закладок. В релизе 1474 были заменены устаревшие индексы, по умолчанию не активируя Library.
- Фильтры RSS, ATOM и SVG
- Требуется новый файл freenet-ext.jar с библиотекой JDOM, но код уже существует. Хотя возможно будет необходимо тестирование. Фильтр CSS того же автора потребовал много работы, чтобы отшлифовать, протестировать и заставить правильно работать.
- Sone
Предлагаемый точечный релиз с акцентом на даркнет: безопасность, удобство использования, функциональность. Без сомнения, многие мелкие не связанные вещи выскакивают.
https://bugs.freenetproject.org/view.php?id=4621
- Исправить Pitch Black атаку
- Это очень важно в случае серьезного использования даркнета. У Оскара есть предложение, но его еще никто не смоделировал.
- Подключение к FOAFs (друзьям друзей)
- Это может значительно улучшить производительность в даркнете, особенно для новичков, так что стоит войти в freenet через одного друга.
- Правильные приглашения
- Возможно, включая установщик, разовые токены, которые можно использовать для подключения. Вероятно, будет несколько друзей, чтобы попытаться избежать проблем с NAT и временем безотказной работы.
- Возможность видеть друзей друга и повышать их до уровня друзей, если вы их знаете
- Очевидно, что все эти вещи будут необязательными (общий отказ и уровень видимости для каждого друга). Но именно так растут «обычные» социальные сети. Это могло бы очень помочь. Мы также хотели бы сообщить пользователю, когда его друзья добавляют новых друзей - при условии, что эта информация общедоступна. Изминение друга друга в друга, вероятно, потребует внешней проверки пароля для безопасности.
- Постоянно делитесь загрузками и закладками, а также хорошим пользовательским интерфейсом для друзей, друзей друзей, файлами, закладками и так далее
- Может, больше нравится интерфейс социальной сети. Показать имя, статус подключения, недавние сообщения, закладки, файлы и так далее. Какая-то сводка на странице друзей, подробная информация обо всех файлах и так далее на одной или нескольких отдельных страницах. Отметьте каждую из наших загрузок, загрузок и закладок уровнем доверия, чтобы мы могли поделиться ими, если захотим. Предоставьте возможность поиска в общедоступных загрузках наших друзей.
- Быстрые загрузки от друзей
- Как только мы найдем файл в загрузках друга, мы сможем загрузить его как из Freenet, так и у этого друга, а также у других друзей. Это будет на другом уровне, чем совместное использование фильтров Bloom, поскольку его, вероятно, не будет в их хранилищах данных.
- Совместное использование фильтра Bloom (только в даркнете)
- Это очень вероятно приведет к серьезным эксплойтам в opennet, но вполне жизнеспособно в даркнете. Конечно, осталось еще несколько вопросов о том, как именно это реализовать. Совместное использование фильтров слотов нового формата может позволить, например, атаковать цензуру, поэтому нам может потребоваться сохранять или регулярно создавать разделенные фильтры Bloom.
- Гораздо лучший чат для друзей
- Довольно важно ИМХО. Может быть, социальная сеть - личные сообщения плюс публичный форум/стена и так далее.
- Почистить freenet-ext.jar
- Это следует разделить более полно. infinity0 проделал некоторую работу над этим. У нас уже есть инфраструктура для развертывания и обновления отдельных файлов jar для разных компонентов.
- Ян очень увлечен этим. Для этого нужно будет широко использовать Javascript и это все еще обсуждается. Вероятно, это достаточно большой проект, и это будет функция 0.9, а не 0.8.
- Совместное использование фильтра Bloom
- Должен значительно улучшить производительность в даркнете, а также обеспечить способ поглощения дополнительной пропускной способности при быстрых соединениях, уменьшая возможности для анализа трафика. Пока не ясно, будет ли это важным в opennet: можно обмениваться фильтрами Bloom с долгосрочными одноранговыми узлами opennet, но это бессмысленно, если они не долгосрочные ...
- Улучшения для Web
- Проект Sashee's Summer of Code, который включает динамическое обновление некоторых частей пользовательского интерфейса, загружает все встроенные изображения сразу и показывает прогресс для каждого (таким образом решается проблема ограничения подключения браузера), мержится, но по умолчанию отключено из-за проблемы в дизайне, приводящей к потере событий и, как следствие, зависанию (особенно в медленных браузерах). Было бы хорошо исправить это и включить по умолчанию. Это останется необязательным.
- Материалы, связанные с Keepalive
- Плагин Keepalive поддерживает мониторинг доступности файлов и их повторную вставку. Нам необходима более хорошая интеграция с ним. В частности, мы должны сохранить верхний блок в виде двоичного двоичного объекта, чтобы файлы разделения на основе SSK можно было легко повторно вставить. Кроме того, должна быть возможность запускать Keepalive или аналогичные (повторные вставки и так далее) со страницы загрузки или выгрузки. Кроме того, нам, вероятно, понадобится какой-то пробный запрос, чтобы разрешить проверку доступности при обходе ближайших кешей.
- Защита по времени
- Относительно небольшая вставка может быть отправлена с флагом, указывающим не направлять запрос на какой-либо узел, добавленный после определенного времени (ограничивающим фактором будет то, как давно был этот момент). Это будет лучше, чем отслеживание источника мобильного злоумышленника для повторных вставок (хотя, конечно, это остается возможным между вставками). Реальное решение, либо туннели рандеву, либо безопасная пакетная передача (транслировать все запросы сразу, а затем передавать данные в потоковом режиме, требует управления нагрузкой на основе емкости, вероятно, работает только в даркнете), будет реализовано в 0.10.
- Больше работы над плагином Library
- Плагин поиска Library должен быть надежным и очень быстрым. Ему также необходимо эффективно обрабатывать стоп-слова (и, например, в китайском языке, стоп-символы). На баг-трекере есть различные варианты. В частности, предварительная выборка верхнего уровня или двух, агрегирование стоп-слов / символов со смежными словами и структурирование формата on-freenet так, чтобы нам нужно было получить только весь узел, если выборка единственного блока, который нам нужен, не удалась (хотя мы все равно выберем некоторые другие блоки для резерва), что должно означать, что мы можем выполнять поиск примерно в одном блоке на слой.
- Интегрируйте Freemail
- Нам нужна улучшенная интегрированная Freemail, чтобы вы могли отправлять личные ответы на общедоступные сообщения.
- Починить Pitch Black атаку
- Это уже должно было быть исправлено.
- Инструменты для обмена файлами
- Когда библиотека заработает хорошо, базовый распределенный поиск файлов на основе WoT не будет таким сложным. Об этом стоит серьезно подумать.
- Резервирование в верхнем блоке.
- Режим паузы
- И значок на панели задач, чтобы вызвать его. Это популярно среди пользователей, но, учитывая быструю загрузку, которую мы сейчас наблюдаем в opennet, вероятно, в этом нет необходимости.
- Больше изменений в программе обновления и более безопасное развертывание
- Различные идеи для этого в системе отслеживания ошибок, например: отделите ключи, необходимые для активации выпуска, от фактического SSK, чтобы вставить его.
- Freetalk
- Freetalk теперь является официальным плагином, который можно легко загрузить. В конечном итоге он будет объединен, и пользователю будет предложено создать удостоверение во время или вскоре после установки. Freetalk требует значительной работы по оптимизации, а также некоторой работы над удобством использования. В основном это остальное связано с использованием процессора, базы данных и диска Freetalk, в частности, WoT и Freetalk должны взаимодействовать на основе событий. (в настоящее время он делает много ненужного доступа к базе данных и может потерять идентификационные данные, а затем вернуть их, что очень плохо для удобства использования).
- IMHO (Toad), необходимо будет буферизовать записи таким образом, чтобы транзакции можно было агрегировать, сохраняя при этом согласованность и возможность отката через настраиваемый IoAdapter. Что может быть гораздо более серьезным, так это влияние на более широкий Freenet многих пользователей WebOfTrust / Freetalk (значительно большая база пользователей, чем FMS, чего мы можем разумно ожидать, если объединим Freetalk). Были реализованы подавление запросов RecentlyFailed и новый формат пакета, которые должны помочь снизить расходы на полинг. Надеюсь, нам пока не понадобятся полные пассивные запросы.
- Больше аудио / видео фильтров
- Нам нужно больше фильтров контента. Matroska / VP8 будет хорошим началом. К сожалению, получение документации для H.264 - это довольно дорого, поэтому мы, вероятно, пока будем придерживаться открытых форматов, но VP8 - это огромное улучшение по сравнению с Theora. Многие организации, вставляющие видео, могут перекодировать его без особых проблем. Кроме того, работа sajack включает в себя основы пользовательского интерфейса воспроизведения, изначально способного к потоковой передаче и который может быть расширен для воспроизведения только тех частей, которые мы загрузили, то есть пропускать сегменты, которые не были загружены. Еще нам нужен фильтр для FLAC.
- Другие фильтры
- Файлы PDF действительно важны, например, для документов, получаемых в результате утечки. Они также потенциально компрометируют на многих различных уровнях. Базовый фильтр PDF достаточный для большинства целей, вероятно, можно было бы относительно легко реализовать, хотя полная поддержка была бы довольно большим проектом (спецификация чудовищна!). Файлы OpenOffice и так далее могут стать реальностью, но для этого необходима большая работа.Фильтрация Javascript теоретически возможна, см. Страницу вакансий, но это огромная задача, и она сопряжена с остаточным риском.
- В долгосрочной перспективе необходим для масштабируемых чат-приложений, но и сам по себе является большим улучшением.
- Расширение пассивных запросов, позволяющее перемещать данные, пока отправитель в режиме офлайн. Сильно зависит от управления нагрузкой на основе емкости. Большой шаг к HardStego, то есть к транспортировке не в режиме реального времени.
- Новое управление нагрузкой в билде 0.8 в некоторой степени способствует этому. Но для того, чтобы он действительно сиял и позволял выполнять долгосрочные запросы, нам необходимо иметь очень большую емкость для подключений через даркнет для долгосрочных запросов.
- Отправляйте все запросы (или вставки) сразу, и они немедленно маршрутизируются (и передаются эффективно, часто в одном сообщении). Затем данные передаются за более длительный период. Тайм-ауты происходят во всей структуре, а не в отдельных запросах. Следовательно, мы опережаем отслеживание исходных кодов мобильных злоумышленников, даже если выполняем большие предсказуемые (повторные) вставки.
- Зашифрованные туннели, довольно дорогие, но с маршрутизацией не строго от источника, но обеспечивающие анонимность, сравнимую со всей сетью, используется параноидальными пользователями, не доверяющими своим пирам, и для "верхних блоков", то есть предсказуемой части вставки.
- Стоит серьезно задуматься, очень популярен по uservoice. Никакого реального повышения безопасности, за исключением даркнета, и, вероятно, довольно много работы.
- Много дебаггинга!
- Рассмотреть правильный, отдельный, чистый, стабильный API плагинов.
- Много работы над пользовательским интерфейсом.
- Если возможно, больше фильтров контента.
- Plugin sandboxing
- Вероятно, это будет в версиях после 1.0.
- Фильтрация Javascript
- Вероятно, это будет после 1.0 - или никогда (учитывая, что защита Javascript - открытый вопрос исследования).
- Долгосрочные запросы с офлайн-поддержкой
- Это вероятно будет после версии 1.0. Он может быть основан на плагине shoeshop.
- Roadmap на баг-трекере.