OFFSystem

редактировать
OFFSystem
Offsystem.mainline.logo1.png
OFFSystem.screenshot.1.png
Первоначальный выпуск2006
Стабильный выпуск 0.19.34 / 28 января 2010 г. (2010-01-28)
Репозиторий
  • [cvs: // анонимно: @ offsystem.cvs.sourceforge.net / cvsroot / offsystem offsystem.cvs.sourceforge.net / cvsroot / offsystem]
Измените это в Викиданных
Операционная система Microsoft Windows, Linux, Mac
Доступна вC ++
Тип Анонимный P2P
Лицензия Стандартная общественная лицензия GNU
Веб-сайтsourceforge.net / projects / offsystem /

Файловая система без владельца (OFF System или OFF для короче) является одноранговым одноранговая распределенная файловая система, в которой все совместно используемые файлы представлены рандомизированными многократно используемыми блоками данных. Вместо того, чтобы анонимизировать сеть, блоки данных анонимизируются, и, следовательно, происходит обмен и хранение только мусора данных, и пересылка через промежуточные узлы не требуется. OFF утверждает, что был создан с явным намерением «отрезать некоторые зараженные гангреной части индустрии авторского права».

Содержание
  • 1 История
  • 2 Принцип работы
    • 2.1 Процедура сохранения
    • 2.2 Процедура получения
  • 3 Анонимность
  • 4 Эффективность
  • 5 См. Также
  • 6 Ссылки
  • 7 Внешние ссылки
История

Разработка OFF началась в рамках хактивизма группа The Big Hack в 2003 году от хакеров Cheater512, CaptainMorgan, Aqlo и WhiteRaven. В 2004 году была закончена рудиментарная версия, написанная на PHP, которая распространялась в виде двух демонстрационных компакт-дисков. Вслед за этим SpectralMorning повторно реализовали функциональность в 2004 году в C ++, что привело к текущему «основному» клиенту OFF.

14 августа 2006 г. CaptainMorgan опубликовал письмо о закрытии, адресованное «Ассоциациям индустрии авторского права Америки», таким как RIAA и MPAA, заявляя, что они создали OFF с целью положить конец «всем вашим проблемам с нарушением авторских прав потребителей».

Сегодня мы объявляем о массовом распространении файловой системы без копирования. Место, где весь контент доступен мгновенно, анонимно и всем без нарушения каких-либо законов. Сегодня мы анонсируем файловую систему без владельца. Остров здравомыслия в вашем море безумия.

В 2008 году сеть состояла примерно из 50 узлов. 11 апреля 2008 г. было проведено бета-тестирование с размером сети более 100 узлов. Поскольку SpectralMorning прекратил работу над OFF в конце 2008 года, только незначительные версии с исправлениями ошибок были переведены в основную версию OFF.

Начиная с 2007 года, был разработан альтернативный, но совместимый клиент, получивший название BlocksNet. Написанный на Ruby и хорошо поддерживаемый, он претерпел значительные улучшения за последнее время. Он находился в разработке до 2011 года.

Клиент OFFLoad - это форк из mainline OFF, который, похоже, не добавляет никаких функций. Причины форка неясны. Другая отдаленно связанная программа - Monolith, которая использует тот же принцип, что и OFF. Он был создан после ВЫКЛЮЧЕНИЯ и не имеет возможности многократного использования блоков и сети.

Принцип работы

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

Процедура сохранения

Чтобы сохранить файл в локальном ВЫКЛЮЧЕННОМ хранилище, соответственно. блочный кеш, выберите размер кортежа t {\ displaystyle t}t (по умолчанию 3), разделите исходный файл s {\ displaystyle s}s на блоки si {\ displaystyle s_ {i}}s_ {i} размером 128 KiB (блокировка со случайными данными для размещения) и для каждого из них выполните следующие действия:

  1. Выберите t - 1 {\ displaystyle t -1}t-1 блоки для использования в качестве блоков рандомизатора или, для краткости, рандомизаторов из существующего кэша OFF, которые не использовались в предыдущих итерациях. Если в кэше недостаточно рандомизаторов, сгенерируйте их с помощью генератора случайных чисел.
  2. Вычислить o i = s i ⊕ r 1 ⊕ r 2 ⊕... ⊕ rt - 1 {\ displaystyle o_ {i} = s_ {i} \ oplus r_ {1} \ oplus r_ {2} \ oplus... \ oplus r_ {t-1}}o_i = s_i \ oplus r_1 \ oplus r_2 \ oplus... \ oplus r_ {t-1} и сохранить результирующий блок oi {\ displaystyle o_ {i}}o_iв кэше, ⊕ {\ displaystyle \ oplus}\ oplus является XOR
  3. Обновите список дескрипторов, который содержит информацию о том, как восстановить каждый исходный блок si {\ displaystyle s_ {i}}s_ {i} новой записью, которая набор размера t {\ displaystyle t}t : {oi, r 1, r 2... rt - 1} {\ displaystyle \ {o_ {i}, r_ {1}, r_ {2}... r_ {t-1} \}}{ \ displaystyle \ {o_ {i}, r_ {1}, r_ {2}... r_ {t-1} \}} .

Наконец, сохраните список дескрипторов в отдельном блоке (или блоков, если список превышает 128 КиБ) и вставьте эти блоки di {\ displaystyle d_ {i}}d_{i}в кеш блоков и сгенерируйте URL-адрес выключения для ссылки на исходный файл и его вывода пользователю или в локальную базу данных OFF URL.

Процедура получения

Чтобы получить, получите блок или блоки дескриптора и для каждого содержащегося набора размера t {\ displaystyle t}t выполните следующие действия:

  1. Получить перечисленные блоки b 1, b 2... б t {\ displaystyle b_ {1}, b_ {2}... b_ {t}}b_1, b_2... b_t . Хотя на данный момент у них больше нет личности, их можно назвать o i, r 1, r 2... r t - 1 {\ displaystyle o_ {i}, r_ {1}, r_ {2}... r_ {t-1}}o_i, r_1, r_2... r_ {t-1} .
  2. Выполнить s i = b 1 ⊕ b 2 ⊕... ⊕ bt {\ displaystyle s_ {i} = b_ {1} \ oplus b_ {2} \ oplus... \ oplus b_ {t}}s_i = b_1 \ oplus b_2 \ oplus... \ oplus b_t и вывести полученный блок исходных данных si { \ displaystyle s_ {i}}s_ {i} в программу просмотра или в хранилище.
Анонимность

OFF получает свою анонимность из-за следующего:

  1. Содержимое исходного файла не сохраняется в блочный кеш, только блоки, которые, вероятно, состоят из случайных данных.
  2. В сети не выполняется поиск содержимого исходного файла.
  3. Содержимое исходного файла не передается по сети.
  4. (Ни один блок в кэше сам по себе не защищен авторским правом, потому что числа - какими бы большими они ни были - не могут быть предметом авторского права (и ни то, ни другое не будут мелкими частями работы, защищенной авторским правом).)
  5. Исходный загрузчик остается неизвестным, потому что блоки рассредоточены по сети, и поэтому загрузка выполняется из нескольких источников.
  6. Во время рассредоточения использование блока не может быть указано, потому что блоки повторно используются в других контекстах для повторной сборки других блоков исходного файла. (СОДЕРЖАНИЕ, что верно также для извлечения)
  7. (Ни один блок не может быть защищен авторским правом без логических противоречий, потому что блоки, используемые для повторной сборки блока исходного файла, повторно используются для повторной сборки других блоков исходного файла. Неизвестно, кто будет обладать авторскими правами на блок, который имеет несколько значений. Каждый будет иметь авторские права на все.)
  8. Если используется функция внутреннего поиска OFF, поисковые термины не могут быть отслежены их создателем, потому что поисковый запрос пересылается на следующий узел, а его результаты обратно на этот узел, а не напрямую отправителю. Таким образом, невозможно решить, является ли узел исходным узлом или узлом, выполняющим поисковый запрос от имени другого узла.
  9. TODO добавить цифровое примечание об авторских правах
Эффективность

Потому что ВЫКЛ. анонимизирует блоки данных, которыми обмениваются вместо сети, пересылка через промежуточные узлы не требуется. Следовательно, этот метод имеет более высокую степень эффективности, чем традиционные анонимные P2P-системы на основе пересылки.

Метод пересылки требует, чтобы блок данных загружался и загружался несколько раз, прежде чем он достигнет места назначения, что происходит от 5 до 15 раз., Что, согласно полученной формуле s ∗ (hi + ho + 1) ∗ 2 - s {\ displaystyle s * (hi + ho + 1) * 2-s}s * (привет + ho + 1) * 2 - s , эквивалентно накладным расходам от 900 до 2900%, в то время как накладные расходы OFF без оптимизации составляет около 200%. (s {\ displaystyle s}s - размер исходного файла, hi {\ displaystyle hi}hiдлина входящего туннеля и ho {\ displaystyle ho }ho длина исходящего туннеля. Плюс 1 для перехода между исходящей конечной точкой и входящим шлюзом.)

Эффективность можно еще больше повысить:

  1. повторно использовать некоторые из блоков результатов oi {\ displaystyle o_ {i}}o_iи блоки рандомизатора, которые сокращают накладные расходы до s ∗ (t - 1) ∗ e 100 {\ displaystyle s * (t-1) * {\ frac {e} {100}}}s * (t-1) * \ frac {e} { 100} , где s {\ displaystyle s}s - размер исходного файла, t {\ displaystyle t}t размер кортежа и e {\ displaystyle e}eпроцент несвязанных блоков, используемых на этапе рандомизации во время процедуры сохранения. По умолчанию e {\ displaystyle e}eвыбран 75 (и t {\ displaystyle t}t выбран 3), что приводит к накладным расходам в 150%..
  2. Если некоторые блоки требуются для полного извлечения, соотв. повторная сборка, исходный файл уже присутствует в кэше блоков из других передач или сохраненных файлов из-за многоцелевого характера блоков OFF, степень эффективности еще больше увеличивается.
  3. Использование целевого хранилища Функция приводит к тому, что блоки определенных других файлов выбираются в качестве рандомизаторов для этого файла с более высокой вероятностью и, следовательно, сокращением накладных расходов. Это особенно полезно при хранении группы связанных файлов.
См. Также
Ссылки
  1. ^ВЫКЛ. Система
  2. ^«Архивная копия». Архивировано из оригинала 20.07.2011. Проверено 16 августа 2006 г. CS1 maint: заархивированная копия как заголовок (ссылка ) «Заключительное письмо ассоциациям индустрии авторского права Америки» - представляет публичный выпуск системы OFF
  3. ^http : //board.planetpeer.de/index.php/topic,4407.0.html Объявление о бета-тестировании на 2008-04-11 разработчика planetpeer.de и OFF Spectral Morning
  4. ^http: //blocksnet.sf. net
  5. ^http://sourceforge.net/projects/offsystem/ OFF Домашняя страница системы - техническая часть
  6. ^http://www.i2p2.de/how_tunnelrouting Объяснение длины туннеля в I2P и ее настройки по умолчанию, см. «Параметры I2CP»
  7. ^http://sourceforge.net/projects/offsystem/ ВЫКЛ. Исходный код системы и переписка с разработчиками
Внешние ссылки

Реализации OFF:

Последняя правка сделана 2021-06-01 06:18:27
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте