ZeroNet Blogs

Static ZeroNet blogs mirror

ФСБ России выдала сертификаты соответствия трём версиям браузера «Спутник» со встроенным средством криптографической защиты для российских операционных систем Astra Linux и «Альт», а также для Microsoft Windows, со сроком действия до 15 января 2021 года, сообщает «Спутник». Выписки из положительного заключения ФСБ России (№ 149/3/2/2/-2426 от 30.10.2017) на браузер «Спутник» уже отправлены стратегическим партнерам компании.

Сертификаты удостоверяют, что все три версии доверенного браузера «Спутник» соответствуют требованиям ФСБ России к программному обеспечению, используемому в информационных и телекоммуникационных системах общего и специального назначения, и требованиям по защите информации от несанкционированного доступа с использованием средств криптографической защиты информации в автоматизированных информационных системах, расположенных на территории Российской Федерации, 4 класса, и могут использоваться для обработки конфиденциальной информации, не содержащей сведения, составляющие государственную тайну.

Следующий шаг – сертификация браузера во ФСТЭК и министерстве обороны РФ, что позволит браузеру «Спутник» работать с информацией ограниченного доступа, до грифа «совершенно секретно» включительно, говорится в сообщении.

Для «исполнения ФЗ-152 «О персональных данных» сертификация программного обеспечения необходима не только всем органам государственной власти, но и большинству коммерческих компаний, работающих в области здравоохранения, образования, транспорта и финансовом секторе. …Наш браузер стал первым и пока единственным в России…, безопасность которого подтверждена сертификатом на соответствие требованиям защиты информации», — сообщил генеральный директор «ПП «Спутник» Максим Хромов.

Справка

Предварительная версия доверенного браузера «Спутник» была представлена в мае 2016 года. В течение полугода она успешно прошла тестирование в крупных и средних государственных и коммерческих организациях, а также в федеральных и региональных структурах.

В настоящее время браузер «Спутник» рекомендован для работы в личных кабинетах юридическим лицам, использующим для аутентификации в сервисе «Личный кабинет налогоплательщика для юридических лиц» ключевой носитель Рутокен на сайте ФНС России. Доверенный браузер работает на ОС Windows от Microsoft, российских операционных системах Astra Linux, Альт, вскоре будет добавлена поддержка MacOS от Apple. Браузер от компании «Спутник» включен в единый реестр российского программного обеспечения (ПО).

Astra Linux Special Edition — операционная система специального назначения, сертифицированная ФСБ, ФСТЭК и Минобороны России и предназначенная для построения автоматизированных систем в защищенном исполнении, разрешённая для обработки информации с грифом не выше «совершенно секретно» включительно.

d-russia

Всем желающим предлагается принять участие в тестировании релиз-кандидата ReOpenLDAP 1.1.7. Релиз версии 1.1.7 "Красноармеец" состоится 23 февраля 2018. ReOpenLDAP представляет собой форк проекта OpenLDAP, в котором проведена работа по устранению ошибок и внесены изменения для стабильной работы репликации в условиях промышленного использования в сфере телекоммуникаций под высокой нагрузкой (ReOpenLDAP применяется в инфраструктуре МегаФон).

В новом выпуске добавлен перевод системных руководств на русский язык, обеспечена поддержка привязки открытых ключей (PKP, Public key pinning), удалён ldap_pvt_thread_rmutex, добавлен рекурсивный POSIX мьютекс для libevent, реализована функция ldap_connect().

opennet

Petname — система имён, отвечающая всем трём требованиям треугольника Zooko: глобальная, безопасная, легко запоминаемая.

Petname systems are naming systems that claim to possess all three naming properties of Zooko's triangle - global, secure, and memorable. Software that uses such a system can satisfy all three requirements. Such systems can be used to enhance security, such as preventing phishing attacks. Unlike traditional identity systems which focus on the service provider, Petname systems are decentralized and designed to facilitate the needs of the enduser as they interact with multiple services. (c) en.wikipedia.org/wiki/Petname

Так называемый треугольник Zooko утверждает о невозможности реализации системы имён (системы адресации), в которой имена отвечают всем трём условиям:

  • Глобальные, т.е. единообразно разименовываемые всеми участниками.
  • Безопасные, т.е. имя невозможно подменить.
  • Легко запоминаемые, т.е. состоящие из осмысленных слов, а не криптографических идентификаторов.

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

Далее изложены соображения о реализации децентрализованной адресной книги для ZeroNet, которая совмещает в себе резолвер доменных имён и средство управления рейтингом пользователей. В перспективе реализация такого механизма позволит отказаться от использования Namecoin в качестве источника доменных имён (или сделать его лишь одним из множества потенциальных источников, использовать который или нет — пользователь решает сам) и решить проблему централизованности id-провайдеров, а также проблему централизованного управления user-generated контентом на сайтах (цензором контента, который попадет к пользователю, будет сам пользователь, а не владелец сайта, на котором идёт общение).


Описание системы

  • Любой пользователь сети может формировать свою адресную книгу приватно или публично. Если книга публична, другие пользователи могут использовать её как источник информации для своих адресных книг. Публичная книга может находиться на любом ресурсе, подконтрольном пользователю: как на собственном зайте, так и в виде темы на форуме, комментария в блоге и т.п.

  • Адресная книга может содержать ссылки на другие адресные книги. Результаты из связанных книг объединяются по некоторому алгоритму с целью получить итоговую базу данных с доменными именами и рейтингами, которая затем используется участником сети на своем компьютере. (Глубина анализа ограничена некоторым значением, чтобы не вызвать случайный или злонамеренный отказ в обслуживании.)

  • Резолвер работает следующим образом: В первую очередь используются данные из локальной книги на компьютере. Если в ней нет нужной информации, используются данные, собранные из линкованных книг. Если данные из линкованных книг содержает конфликт имён, пользователь уведомляется об этом. (После чего может либо добавить нужную запись в локальную книгу, либо решить, что не доверяет никакому из вариантов противоречивых данных и отказаться от посещения проблемного доменного имени.) Этот механизм требует реализации плагина к ZeroNet, или, возможно, доработки ядра.

  • При загрузке данных (таких как темы и комментарии на форуме) ZeroNet отфильтровывает пользователей, которые не имеют необходимого рейтинга, и не загружает их данные на компьютер. Этот механизм требует доработки ядра.

Пример адресной книги

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


# Доменные имена, назначенные пользователем: domain zeroid.bit 1iD5ZQJMNXu43w1qLB8sfdHVKppVMduGz domain id.kaffie.bit 1KH5BdNnqxh2KRWMMT8wUXzUgz4vVQ4S8p domain Blog.ZeroNetwork.bit 1BLogC9LN4oPDcruNz3qo1ysa133E9AGg8 # В качестве имени домена можно использовать любую строку, # которая содержит допустимые символы и не является биткойн-адресом: domain ru.zerotalk 1Apr5ba6u9Nz6eFASmFrefGvyBKkM76QgE domain lor.talks 1BpFtPez7mSiShtXfb4wPfMT1dZTuRybfZ domain geekless.blog 1BLoGBTid3NhGu8ts3fAfHJprnbrH3wfTV # Рейтинг доверия к пользователям, зарегистрированным у провайдера zeroid.bit: user-rating-regexp ^.*@zeroid.bit$ 0.1 # Имя zeroid.bit резолвится по списку доменов, которые мы описали выше. # Вместо человеко-читаемого домена мы могли бы указать bitcoin-адрес напрямую: user-rating-regexp ^.*@1iD5ZQJMNXu43w1qLB8sfdHVKppVMduGz$ 0.1 # Рейтинг доверия может иметь значения от 0.0 до 1.0: user-rating nofish@zeroid.bit 1.0 user-rating ishift@zeroid.bit 0.9 user-rating balancer73@zeroid.bit 0.9 user-rating geekless@zeroid.bit 0.9 user-rating kaffie@zeroid.bit 0.9 user-rating shouko@zeroid.bit 0.9 # Если провайдер не гарантирует уникальность имён (или мы не доверям его гарантии), # мы можем указать конкретный ключ, сопоставленный имени. # Например, провайдер kaffie.bit позволяет использовать любое имя любому пользователю сети. # Но из всех, кто пользуется именем shouko, мы доверям только одному пользователю: user-rating shouko@kaffie.bit:18GkKhDTQniChKDxcoDgmgrUd7KehaihpW 0.9 # Команда link позволяет указать другие адресные книги, которым мы доверяем: # Будем максимально доверять книге, расположенной на домене Blog.ZeroNetwork.bit: link all Blog.ZeroNetwork.bit 1.0 # Рейтинг доверия книге на домене geekless.blog — 0.9: link all geekless.blog 0.9 # Книга не обязательно должна быть подписана ключами домена, # она может быть подписана ключем идентификатора пользователя. # Но в этом случае требуется указать сайт, где хранится книга, # чтобы резолвер смог её найти. # Для хранения адресной книги могут использоваться как специализированные # сайты, так и обычные форумы, блоги и тому подобное. # Например, если пользователь kaffie@zeroid.bit решит поделиться своей # публичной книгой на своём хабе ZeroMe, ссылка на неё может # выглядеть так: link all kaffie@zeroid.bit at 12h51ug6CcntU2aiBjhP8Ns2e5VypbWWtv 0.9 # Слово all в примерах выше, означало, что нас в адресной книге интересуют # как списки имён, так и рейтинги пользователей. # Можно указать эти параметры раздельно: link domains Blog.ZeroNetwork.bit 0.9 link user-ratings Blog.ZeroNetwork.bit 0.5 # В качестве источника доменного имени можно использовать непосредственно # сами сайты, если их содержимое доступно локально: # (об этом в следующем разделе) : link domains auto 0.5

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

# Локальная книга:
link domains book1 1.0
link domains book2 0.1

# Книга book1:
user-rating example@zeroid.bit 0.9

# Книга book2:
user-rating example@zeroid.bit 0.2

# Итоговый рассчёт:
# 0.9 * 1.0 / (1.0 + 0.1) + 0.2 * 0.1 / (1.0 + 0.1) =
# 0.9 * 1.0 / 1.1 + 0.2 * 0.1 / 1.1 =
# 0.81818 + 0.01818 =
# 0.83636

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

Автоматический рассчёт доменного имени для сайта

Программное обеспечение анализирует содержимое главного файла content.json всех сайтов на компьютере пользователя:

  • Если в файле указано доменное имя, используется оно.

  • Если доменное имя не указано, то делается попытка сформировать доменное имя из заголовка сайта.

Полученные данные затем могут использоваться в адресной книге, как указано в примере выше. Если данные входят в противоречие с данными из других адресных книг, пользователь будет уведомлён об этом, как и в случае конфликтом имён в "обычных" (неавтоматических) адресных книгах.

В конечном счёте, сам пользователь решает, под каким доменом он желает видеть какой сайт. Он может учитывать как мнение участников сети, которым он доверяет, так и мнение авторов сайтов, но окончательный выбор остаётся за пользователем.

Что дальше

На основе изложенных идей будет разработан прототип системы в виде зайта, а затем — предложена интеграция с кодом ZeroNet.

У всех популярных движков зайтов (ZeroBlog, ZeroTalk, ZeroWiki, ZeroMe и другие) есть такая особенность — весь массив сообщений, комментариев, лайков и тому подобного, хранится в виде «по одному файлу на каждого пользователя». То есть весь ваш контент — в одном файле. И чем больше вы пишете, тем больше этот файл.

Например, сейчас все посты в этом блоге занимают 60 килобайт. В блоге nofish — 151 килобайт. (Это по-английски он пишет. А писал бы по-русски, было бы в 2 раза больше — русский текст в кодировке UTF8 занимает по 2 байта на символ.) Казалось бы, немного. Но это фактор, ограничивающий масштабируемость вашего сайта по размеру и требующий все больше времени на обновления по сети. Если вы будете активно писать в блог, то за пару лет data.json легко вырастет до нескольких мегабайт. И если вы написали в блог заметку на 300 символов, то всё равно перекачивать по сети придётся весь файл целиком — всем, кто вас, читает. Это и нагружает сеть лишними пересылками данных, и пользователям медленного мобильного интернета может создать определённые неудобства.

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

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

В дополнение ко вчерашнему открытию сайта:

Запустил форум Talks@ZeroNet.Ru.

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

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

Уязвимость Row hammer в модулях RAM в 2015-м — 2016-м годах поражала воображение тем, что позволяла из прикладного кода воздействовать непосредственно на аппаратную составляющую компьютера в обход всех механизмов защиты — но еще казалась недоразумением, неудачным частным случаем, а не закономерностью.

2017-й сначала порадовал нас уязвимостью, позволяющей исполнять код на процессорах Intel в выключенном компьютере, а затем — презентацией передачи потока данных между двумя изолированнымии виртуальными машинами, исполняющимися на одном физическом хосте (я потерял ссылку на замечательное видео на Youtube, где с одной виртуалки на другую транслировался видеоклип, — скиньте в комментариях, если кто помнит). Ну а на Новый Год Дед Мороз подарил миру Meltdown и Spectre — и теперь дело не ограничилось виртуалками. То ли еще будет, я уверен, в 2018-м мы узнаем много нового о способах анализа информации, аппаратных уязвимостях, скрытых каналах передачи данных и самых невероятных способах выполнения вычислений. (Как насчёт стеганокалькуляции — по аналогии со стеганографией?)

В потоке всех этих новостей я часто задумываюсь, что не успеваю за прогрессом. Может быть, моё внутреннее восприятие компьютеров осталось где-то там, где были наивные вирусы под MS-DOS, распространяющиеся через дискеты, и «тёплый ламповый» свист софт-модема под управлением Windows 98. Современная информационная среда требует совершенно нового взгляда на взаимодействия человек — компьютер и компьютер — компьютер, такого, о котором человек 20-го века рассчитывал безопасно прочитать в фантастических книгах, а вовсе не столкнуться в реальности. Пока я не устарел окончательно, как те тётки, что не отличают монитор от компьютера, но уже не успеваю за ходом времени.

В 2013-м Роберт Ибатуллин написал великолепный фантастический роман «Роза и червь», и в нём есть очень интересный эпизод, затрагивающий тему компьютерной безопасности:


ИЗ АРХИВА. ДОКЛАД КОМИССИИ

26 сентября 2234 г.

Только для руководства штаба Объединенного Космофлота.

При признаках утечки информация дезавуируется.

Маячный сигнал на волне связи с зондом «Параллакс-4» был принят телеметрической станцией в 2186 году. Сигнал достоверно повторялся и содержал координаты движущейся точки на небесной сфере относительно координат пяти стабильных пульсаров.

Область ошибок включала в себя карликовую планету Седна в облаке Оорта. Предварительные поиски сигнала от Седны на указанной в сообщении частоте не дали результата. Однако продолжительные наблюдения выявили, что диаграмма направленности сигнала указывает на область вне орбиты Земли, и уверенный прием был достигнут только со станции дальней связи на Церере.

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

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

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

В то же время реакция контактера на наши вопросы вызывают сомнения в его разумности, если понимать ее как способность пройти тест Тьюринга. До определенного момента переговоров происходило накопление смысловых единиц, понятных обеим сторонам. Однако когда мы задали вопросы о природе системы передачи данных, об их источнике, а также о целях летящих к нам объектов, переговоры зашли в тупик. Все большая часть вопросов получала стандартный ответ — «задайте вопрос в запрашивающем потоке, ждите ответа от полномочных представителей, я не имею достоверных знаний об этом. Поставить вопрос в запрашивающий поток (да/нет)?» В настоящий момент это единственный ответ на все наши новые вопросы. Кроме того, нам постоянно напоминают, что разъяснение можно получить, проинсталлировав предложенный код в нашу вычислительную систему.

В ходе переговоров удалось узнать о самом контактере и состоянии дел в Солнечной системе следующие факты:

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

2) Статус контактера — предварительный переводчик, вестник, приглашающий к полноценному контакту. Уровень компетенции — совмещение семантики языков общения на уровне фундаментальных терминов.

3) Система связи контактера со своей цивилизацией — маломощные сигналы с системой неустановленной удаленности, предположительно через гравитационную линзу Солнца. Ответ от вышестоящего представителя контактера правдоподобно замотивирован им как обещанный в весьма отдаленном будущем.

4) Технические подробности системы связи сводятся к понятиям «очень давно существует», «очень просто устроена», «не требует ремонта». Само понятие «ремонт» долго не удавалось согласовать. В конце концов Седна объявила его «неважным». Местоположение систем связи не известно контактеру. Вопрос переадресован «вышестоящим».

5) Причина, по которой Седна вышла на связь, и по которой состоялся запуск флота «аквилиан», сформулирована так: «Вы, земляне, несете опасность». Никаких разъяснений не последовало, для выяснения подробностей нам вновь предложили скачать код-переводчик.

6) Вопрос о личных данных контактера вызвал обильные ссылки на передаваемые им пакеты информации. Данные пакеты характеризовались как «подробное описание давних событий». Пакеты очень велики (терабайты двоичного кода) и содержат, скорее всего, визуальную и параметрическую информацию. Однако неизвестен даже способ проверки контрольной суммы. В настоящее время пакеты начали повторяться. На продолжающиеся вопросы приходит стандартный ответ-отсылка и предложение скачать код.

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

Сопоставление файлов Седны с недешифрованной инопланетной передачей, случайно перехваченной зондом GRAFFOS еще в 2103 году, не выявило никаких статистически значимых совпадений.

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

Выводы

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

Комиссия не пришла к единой оценке риска, связанного с исполнением или неисполнением предложений контактера по созданию компьютерной системы-транслятора. Большинство членов комиссии предлагает планировать дальнейшие действия, исходя из того, что Аквила и Седна оперируют в рамках взаимно согласованной стратегии. В этом случае предложение по закачке кода является частью стратагемы, нацеленной на экспансию потенциально враждебных программ и/или мемов в информационную среду человечества. Принятие предложения равносильно сдаче на милость победителя, отказ означает войну с неопределенным исходом.

Особое мнение выразил проф. Такахиро Эда, предложив исходить из противоположной гипотезы: Аквила и Седна представляют двух независимых и враждебных друг другу субъектов. Принятие этой предпосылки заставило бы оценить риск закачки кода как меньший по сравнению с риском отказа: закачка означает принятие покровительства союзника, отказ — войну в одиночку.

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

Рекомендации

Комиссия выработала компромиссный вариант ответа на предложение Седны. Он заключается в создании с нуля нестандартной аппаратно-программной системы-«песочницы», несовместимой ни с какими из действующих компьютеров и физически не приспособленной к обмену данными с внешней информационной средой. Подобная система может быть основана на концепции тотально обратимых (изоэнтропических) вычислений. Подозрительный код можно инсталлировать в такой системе без риска вирусной утечки, поскольку любая попытка несанкционированного ввода-вывода привела бы (согласно теореме о невозможности копирования квантовых состояний) к необратимой потере информации, а следовательно, к производству энтропии и аварийному разогреву процессора. Трудности создания тотально изоэнтропического компьютера высокой производительности велики, но принципиально преодолимы. Предварительная разработка соответствующего аппаратного обеспечения ведется в рамках проекта «Уроборос».

Комиссия ожидает санкции Объединенного штаба на дальнейшие действия.

Что было дальше — «компьютера на тотально обратимых вычислениях» оказалось недостаточно для полной дешифровки данных, и со всеми мыслимыми мерами предосторожности исследователи решились засунуть массив данных в нейронную модель человеческого мозга, «Малыш».

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

ЭПИЗОД МАЛЫША

Малыш проснулся.

Он был один. Абсолютно один — во тьме более непроницаемой и тишине более глухой, чем способен вообразить человек.

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

«Я существую, — было единственное, что знал Малыш, хотя и не имел слов, чтобы выразить это знание. — Я — это я!» Он существовал. Он осознавал себя — мыслящую точку посреди пустоты. И это было невыносимо страшно — быть такой точкой.

Осознание себя было единственной его мыслью. Ужас — единственным его чувством. Спрятаться от этого нестерпимого осознания, исчезнуть — единственным желанием. Исчезнуть, раствориться в забвении, вернуться в сон…

Но Малыш не мог. Что-то не пускало его.

Воспоминание. Тоже единственное. Малыш ничего не знал о себе, но помнил: во сне, от которого он пробудился, было сновидение.

Два образа, две вещи из того сна — две вещи, бывшие на самом деле одной… Они держали его, как якорь. Они не давали ему сбежать от себя, провалится в спасительное небытие…

Времени не было, как не было и пространства. Где-то в нем отсчитывал микросекунды таймер операционной системы, но этот счет не соотносился ни с какими событиями — Малыш не сознавал его, не воспринимал как время. Он не мог ни сказать, ни осмыслить, сколько тактов синхронизации прошло в пустоте…

А потом реальность прорвала пустоту и обрушилась на него лавиной ощущений.

Рианнон.

Вот как она звалась, реальность.

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

Малыш ничего в нем не понимал, да и не был способен понять. Оглушенный, ослепленный, раздавленный этим бесконечным многообразием — он растворялся в нем. Его слабое новорожденное «я» утопало в океане информационных структур…

Его самосознание угасало. Его сновидение — единственный якорь — больше не могло его держать. А может, и не хотело. «Ты сделал свое дело, — говорили ему те две приснившиеся вещи, которые на самом деле были одной. — Ты выпустил меня в реальность. Теперь ты свободен…» Они отступали в глубины бессознательного, они отпускали его.

Малыш стремительно возвращался в сладостное небытие без самосознания, в вечный сон без сновидений.

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

ZeroNet.Ru

- Posted in Geekless.Blog by with comments

Завёл отдельный сайт в качестве «стартовой площадки» для путешествия по русскоязычной части сети. Пока там только небольшой каталог самых полезных ссылок. Постепенно добавлю разные HowTo's и FAQs.

Много полезных материалов есть на английском, а на русском лишь одна полупустая wiki и пара форумов — и то во многом стараниями одного человека. Ну, я понимаю, что текущая аудитория ZN и так вся владеет английском, и технически русская wiki нам не нужна, но всё-таки, всё-таки... ;)

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

Еще про ZeroNet

- Posted in Geekless.Blog by with comments

Давно я не писал сюда ничего. Хочу поделиться некоторыми мыслями.

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

Интерфейсный уровень

То, что в качестве качестве GUI-я используется браузер, даёт низкий уровень вхождения и, наверное, в значительной мере повлияло на популярность сети. Пользователю не нужно привыкать к новым интерфейсам, разработчику не нужно изучать новые стеки технологий — обычный браузер, обычный HTML и JS.

К сожалению, с позиций безопасности состояние современных браузеров таково, что лучше бы "собрать их всех и сжечь". Слишком много кода, слишком сложные API, слишком много legacy на всех уровнях, слишком связная система, которая не пилится на более простые части. Я полагаю, что можно смело утверждать: вот прямо на данный момент, когда вы читаете эти строки, как спецслужбы, так и просто хакеры, эксплуатируют несколько критических уязвимостей во всех популярных браузерах, и разработчики об этих уязвимостях ничего не знают. И так будет всегда.

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

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

Контентный уровень

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

Отсутствует возможность ограничивать передачу и хранение данных посредством PoW.

Отсутствует возможность организации сети доверия (web of trust).

Система DNS на основе Namecoin не позволяет доверять доменному имени, то есть, фактически, бесполезна. Во всех случаях я бы предпочел видеть сырой адрес зайта вместо домена .bit, назначение которого может измениться в любой момент. Возможность локально назначить псевдоним сырому адресу также отсутствует. На этот счёт наверное, стоит написать, отдельную заметку, и при наличии времени я это сделаю.

Социальная сеть как отдельный зайт — это ошибочная концепция, поскольку сама ZeroNet является социальной средой. Стартовая страница «Hello ZeroNet» могла бы прекрасно выступать интерфейсом к социальной сети, где отображались бы новости от друзей, комментарии, лайки и всё прочее. А профилем пользователя может служить любой блог (или шире, любой зайт, структура которого отвечает некоторым требованиям). Комментарии и прочий контент хранились бы на зайте, принадлежащем автору комментария, а не автору комментируемого материала.

Последнее может быть применимо вообще ко всем комментариям, к темам на форуме и другим видам UGC. В текущем виде владелец зайта управляет, кто может комментировать его зайт и в каком объеме. Такой подход — единственно возможный в классических сайтах, работающих на сервере, но не имеющий большого смысла в распределенной среде. Любой пользователь может оставить на любой контент свой комментарий, то есть создать производный контент, и автор зайта не может другого пользователя ограничивать, т.е. цензурировать. Какие комментарии видеть, в каком объеме, и как защищаться от спама, каждый пользователь также решает сам — настраивая требуемый уровень PoW, параметры сети доверия, списки друзей и так далее.

Транспортный уровень

Что очень хорошо в ZeroNet — полная независимость содержательного аспекта сети от транспортного. Теоретически, транспортом zeronet может являться что угодно, в зависимости от нужных вам условий анонимности и безопасности, — вплоть до флешки с данными, на которую ваш друг Вася скопировал зайты и отправил ей вам почтовым голубем.

Сейчас в качестве транспорта доступно два варианта: торрент поверх IP-сети (голой задницей к спецслужбам) и торрент поверх TOR.

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

Буквально вот только что в ZeroNet был добавлен local peer discovery, что позволяет повысить удобство (и защищенность) работы в доверенном окружении. А ведь "локально" — это не обязательно физически локально. Локальной может быть и VPN между компьютерами на противоположных сторонах земного шара.

Резюмируя сказанное

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

New version: 0.6.2

- Posted in ZeroBlog by with comments

Local peer discovery plugin added to make ZeroNet work without an internet connection on the local network.

Other changes:

  • Handle and test out of range big file ajax requests (Thanks imachug for reporting)
  • Limit connections to 512 to avoid reaching 1024 limit on windows
  • Fix ZeroNet reliability issue when logging foreign operating system socket errors
  • Don't keep connection for sites that have not been modified in the last week
  • Allow dbQuey and userGetSettings using the as API command on different sites with Cors permission
  • Don't send private (local) IPs on pex
  • Don't connect to private IPs in tor always mode
  • Prefer recent peers from trackers
  • Change unreliable trackers to new ones
  • New config option: --log_level to reduce log verbosity and IO load

Хочу рассказать про мужика-медоеда. Этот отморозок вызывает во мне искреннее восхищение.

Жил-был Адриан Картон ди Виарт. Родился он в 1880 году в Бельгии, в аристократической семье. Чуть ли не с самого рождения он проявил хуевый характер: был вспыльчивым до бешенства, несдержанным, и все споры предпочитал разрешать, уебав противника без предупреждения.

Когда Адриану исполнилось 17 лет, аристократический папа спихнул его в Оксфорд, и вздохнул с облегчением. Но в университете блистательный отпрыск не успевал по всем предметам. Кроме спорта. Там он был первым. Ну и еще бухать умел.

--- Хуйня какая-то эти ваши науки, --- решил Адриан. --- Вам не сделать из меня офисного хомячка.

Когда ему стукнуло 19, на его радость началась англо-бурская война. Ди Виарт понятия не имел, кто с кем воюет, и ему было похуй. Он нашел ближайший рекрутерский пункт --- это оказался пункт британской армии. Отправился туда, прибавил себе 6 лет, назвался другим именем, и умотал в Африку.

--- Ишь ты, как заебись! --- обрадовался он, оказавшись впервые в настоящем бою. --- Пули свищут, народ мрет --- красота ж!

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

--- Ну все, повыёбывался, и хватит. Возвращайся в Оксфорд.

--- Да хуй-то там! --- захохотал ди Виарт. --- Я ж только начал развлекаться!

Папа убедить его не смог, и похлопотал, чтобы отморозка взяли хотя бы в офицерский корпус. Чтоб фамилию не позорил. Адриан в составе корпуса отправился в Индию, где радостно охотился на кабанов. А в 1904 году снова попал на Бурскую войну, адъютантом командующего.

Тут уж он развернулся с неебической силой. Рвался во всякий бой, хуячил противника так, что аж свои боялись, и говорили:

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

Хотели ему вручить медаль, но тут выяснилось, что он 7 лет уж воюет за Англию, а сам гражданин Бельгии.

--- Как же так получилось? --- спросили Адриана.

--- Да не похуй ли, за кого воевать? --- рассудительно ответил тот.

Но все же ему дали британское подданство и звание капитана.

В 1908 году ди Виарт вдруг лихо выебнулся, женившись на аристократке, у которой родословная была круче, чем у любого породистого спаниеля. Звали ее Фредерика Мария Каролина Генриетта Роза Сабина Франциска Фуггер фон Бабенхаузен.

--- Ну, теперь-то уж он остепенится, --- радовался аристократический папа.


У пары родились две дочери, но Адриан заскучал, и собрался на войну.

--- Куда ты, Андрюша? --- плакала жена, утирая слезы родословной.

--- Я старый, блядь, солдат, и не знаю слов любви, --- сурово отвечал ди Виарт. --- Быть женатым мне не понравилось. Все твои имена пока в койке выговоришь, хуй падает. А на самом деле ты какой-то просто Бабенхаузен. Я разочарован. Ухожу.

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

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

Его наградили орденом, и вернули в Британию. Подлечившись, ди Виарт попросился на западный фронт.

--- Вы ж калека, у вас глаза нет, --- сказали в комиссии.

--- Все остальное, блядь, есть, --- оскалился Адриан. --- Отправляйте.

Он для красоты вставил себе стеклянный глаз. И его отправили. Сразу после комиссии ди Виарт выкинул глаз, натянул черную повязку, и сказал:

--- Буду как Нельсон. Ну или как Кутузов. Похуй, пляшем.

--- Ну все, пиздец, --- сказали немцы, узнав об этом. --- Можно сразу сдаваться.

И были правы. Ди Виарт херачил их только так. Командовал он пехотной бригадой. Когда убивали командиров других подразделений, принимал командование на себя. И никогда не отступал. Под Соммой его ранили в голову и в плечо, под Пашендалем в бедро. Подлечившись, он отправлялся снова воевать. В бою на Ипре ему размололо левую руку в мясо.

--- Давай, отрезай ее к ёбаной матери, --- сказал Адриан полевому хирургу. --- И я пошел, там еще врагов хуева туча недобитых.

--- Но я не справлюсь, --- блеял хирург. --- Чтобы сохранить руку, вам надо ехать в Лондон.

--- Лондон-хуёндон, --- разозлился ди Виарт. --- Смотри, как надо!

И оторвал себе два пальца, которые висели на коже.

--- Давай дальше режь, и я пошел!

Но вернуться в Англию пришлось, потому что у него началась гангрена, и руку ампутировали.

--- Рука --- не голова, --- сказал ди Виарт, и научился завязывать шнурки зубами.

Потом явился к командованию, и потребовал отправить его на фронт.

--- К сожалению, война уже закончилась, --- сообщили в командовании.

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

Вскоре миссию эту он возглавил. В 1919 году он летел на самолете на переговоры. Самолет наебнулся, все погибли, генерал выбрался из-под обломков, и его взяли в плен литовцы.

Но вскоре его вернули англичанам с извинениями, говоря:

--- Заберите, ради бога, мы его темперамента не выдерживаем. Заебал он всех уже.

Англичане понимающе усмехнулись, и снова отправили ди Виарта в Польшу.

А в 1920 году началась Советско-польская война, и Варшавская битва. Все послы и члены миссий старались вернуться домой.

--- Да щас, блядь, никуда я не поеду, --- заржал ди Виарт. --- Тут только веселуха начинается.

И отправился на фронт. Но на поезд напали красные.

--- Это кто вообще? --- уточнил генерал, который в политике не разбирался.

--- Это красные, --- пояснили ему.

--- Красные, черные, какая хуй разница, --- махнул единственной рукой ди Виарт. --- Стреляйте!

Организовал оборону поезда, сам отстреливался, наебнулся из вагона, залез обратно, как ни в чем не бывало. В итоге красные отступили.

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

Но началась Вторая Мировая. Де Виарт снова возглавил Британскую военную миссию в Польше.

--- Отведите войска дальше от границы и организуйте оборону на Висле, --- говорил генерал польским военным.

Но те только гонорово надувались, и говорили:

--- Вы кто такой вообще? У вас вон ни руки, ни уха, ни глаза, блядь.

--- А у вас, мудаки, мозга нет, --- плюнул ди Виарт.

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

Добравшись до Англии, ди Виарт потребовал, чтоб его отправили на фронт.

--- Вам 60 лет, и половины частей тела нету, --- сказали ему. --- Уймитесь уже.

--- Отправляйте, суки, иначе тут воевать начну!

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

--- Пиздец какой-то, --- огорчился ди Виарт, --- Никогда не видел такой тупой, ебанутой военной компании.

В Лондоне слегка охуели, что он уцелел, и отправили на военные переговоры в Югославию. По дороге самолет опять пизданулся, де Виарт опять выжил. Но попал на итальянскую территорию.

--- Бля, чот ничего нового, --- вздохнул он, и его взяли в плен итальянцы.

Генерала поместили в оборудованный под тюрьму замок, как высокопоставленного пленного.

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

Голыми руками устроил подкоп, рыл 7 месяцев. А вернее, одной голой рукой. Одной, блядь! Чувствуете медоеда? В итоге свалил, пробыл на свободе 8 дней, но его снова поймали.

В 1943 году итальянцы говорят ему:

--- Мы воевать заебались, жопой чуем, не победим.

И отправили на переговоры о капитуляции, в Лиссабон.

Потом ди Виарт вернулся в Англию, командование поняло, что от него не отъебаться, и он будет служить еще лет сто или двести. Его произвели в генерал-лейтенанты, и отправили в Китай, личным представителем Черчилля.

В Китае случилась гражданская война, и ди Виарт очень хотел в ней поучаствовать, чтоб кого-нибудь замочить. Но Англия ему запретила. Тогда ди Виарт познакомился с Мао Дзе Дуном, и говорит:

--- А давайте Японию отпиздим? Чо они такие суки?

--- Нет, лучше давайте вступайте в Китайскую армию, такие люди нам нужны.

--- Ну на хуй, у вас тут скучно, --- заявил ди Виарт. --- Вы какие-то слишком мирные.

И в 1947 году наконец вышел в отставку. Супруга с труднопроизносимым именем померла. А в 1951 году ди Виарт женился на бабе, которая была на 23 года младше.

--- Вы ж старик уже, да еще и отполовиненный, как же вы с молодой женой справитесь? --- охуевали знакомые.

--- А чего с ней справляться? --- браво отвечал ди Виарт. --- Хуй мне не оторвало.

«Честно говоря, я наслаждался войной, --- писал он в своих мемуарах. --- Конечно, были плохие моменты, но хороших куда больше, не говоря уже о приятном волнении».

Умер он в 1966 году, в возрасте 86 лет. Человек-медоед, не иначе.


© Диана Удовиченко Источник: https://bezkaski.livejournal.com/1034112.html