В криптографической библиотеке для Arduino используется российский шифр “Магма” (ГОСТ 34.12-2015). Я сравнил свою реализацию “Магмы” из библиотеки с другим “малым” шифром – Speck, который был предложен в 2013 году специалистами АНБ. Чтобы сравнение было точнее, я также реализовал Speck, использовав inline-ассемблер (ссылка на исходный код – в конце записки).

Прежде всего – краткое описание шифра Speck. Это новый блочный шифр, специально разработанный для программной реализации в микроконтроллерах, то есть, вычислителях с сильно ограниченными ресурсами. Как и многие другие современные шифры (а также и “Магма”), Speck построен на базе простой “раундовой” функции, которая последовательно вызывается с разными ключами, проводя преобразование блока данных. В Speck эта же функция используется для разворачивания основного ключа в последовательность ключей раундов. Это первое существенное отличие от “Магмы”, в котором разворачивание ключа сводится к копированию (см. описание “Магмы”). Спецификация Speck вводит несколько вариантов шифра, имеющих разную разрядность блока и ключа. Я использовал наиболее близкий к “Магме” вариант: 64-битный блок и 128-битный ключ (256-битного, по ключу, варианта Speck для 64-битного блока – нет, поэтому сравнить шифры на одной длине ключа нельзя). От варианта к варианту в Speck различаются количество раундов и часть параметров раундовой функции (разрядность логических сдвигов).

На картинке ниже – подробная схема раунда Speck (шифрование).

Входной блок разбивается на две части. Это, опять же, одно из распространённых и хорошо проверенных решений в схемах шифров. Левая часть (A1 на схеме) циклически сдвигается вправо на 8 разрядов, суммируется с правой частью (A0) по модулю 232 (то есть, как два 32-разрядных числа “естественным образом”, без переноса и знака; операция обозначена символом ⊞). На следующем шаге выполняется сложение по модулю 2 (XOR, ⊕) с раундовым ключом. После чего результат обработки полублока суммируется (опять же, XOR) со вторым полублоком, который перед этим циклически сдвигается на три разряда влево.

В шифре “Магма” используется схема Фейстеля, в которой полублоки, после применения раундовых преобразований, переставляются. Раунд шифра Speck также можно привести к схеме Фейстеля, разделив на два этапа. Первый этап включает преобразования левой части, за которыми следует перестановка полублоков. Схема:

Второй этап – состоит в применении сдвига и XOR к результату первого этапа. Схема:

То есть, с некоторой долей условности можно сказать, что Speck построен из двух, применяемых последовательно, конструкций Фейстеля.

Раунды выполняются циклически. Для используемого варианта шифра число повторений равняется 27. Таким образом, требуется 27 раундовых ключей, каждый разрядностью 32 бита. Схема их получения из исходного, 128-битного, ключа состоит в последовательном применении той же раундовой функции к ключу, предварительно разбитому на слова, разрядность которых совпадает с разрядностью полублока. То есть, 128-битный ключ (16 байтов) даёт нам четыре слова по 32 бита. Эти слова служат левым и правым полублоком в раундовой функции. Ключом (Ki на схеме) при этом является номер раунда. Другими словами: первый раундовый ключ – это младшие 32 бита исходного, основного ключа (используются прямо). Второй раундовый ключ – младшие 32-бита результата применения раундовой функции к младшим 64 битам основного ключа (очевидно, что сюда, в качестве правого полублока, входит первый раундовый ключ); и так далее, подробнее можно посмотреть в исходном коде.

Переходим к сравнению шифров. Ассемблерная реализация позволяет посчитать примерное число тактов, необходимых для выполнения преобразований шифра. Для Speck подсчёт дал 1951 такт – столько занимает полная реализация, с обращением к памяти, где хранятся раундовые ключи и блок открытого текста, с выгрузкой результата. Сюда не входит код получения последовательности раундовых ключей (развёртывания ключа). 1951 такт, в пересчёте на байт данных (блок состоит из 8 байтов), даёт: 1951/8 = 244 такта на байт (приблизительно). В исходной работе, со спецификацией Speck, авторы приводят результат от 118 до 160 тактов для аналогичного 8-разрядного микроконтроллера, но здесь не учитываются операции по загрузке/выгрузке блоков, так что результаты довольно близки (кроме того, мой вариант можно оптимизировать).

Реализация “Магмы” из библиотеки для Arduino показывает следующие результаты: 9092 такта полный код, соответственно, 1136 (приблизительно) тактов на байт (отмечу, что показатели близки к реализациям AES). Существенный вклад в это число вносит реализация подстановок, где много обращений к памяти с достаточно сложными преобразованиями указателей. Этот код можно оптимизировать, вплоть до того, что сами подстановки разместить в регистрах (для 16 полубайтовых подстановок, закрывающих одну позицию во входном полублоке, достаточно восьми байтовых регистров; однако вся таблица подстановок в регистрах типичного микроконтроллера вряд ли поместится – для неё нужно 64 регистра). Правда, вычисление номера регистра и обращение к нему потребует дополнительных усилий, объём кода заметно возрастёт, а для “Магмы” он и так не маленький. Тем не менее, вряд ли выигрыш по тактам составит более двух раз. Из-за подстановок – “Магма” медленнее, чем Speck, тут ничего нельзя поделать.

Другим параметром, по которому можно сравнить шифры, является объём требуемой памяти данных. Для Speck нужно 108 байтов для раундовых ключей. Реализация “Магмы” требует 128 байтов (здесь больше раундов – 32). При этом, если требуется экономия памяти, “Магма” позволяет прямо использовать в качестве раундовых ключей слова из состава основного ключа. Со Speck такой фокус не пройдёт, потому что здесь сложная функция разворачивания ключа. Однако оптимизация всё равно возможна: раундовые ключи можно вычислять в процессе выполнения раундов шифра. Впрочем, такой вариант приведёт к тому, что минимум в два раза возрастёт число тактов, поэтому Speck приблизится к “Магме”. Для хранения таблицы подстановок “Магма” требует ещё 8*8=64 байта.

Реализация “Магмы” существенно превышает показатели Speck по объёму кода. И тот, и другой шифр вполне укладываются в разумные рамки, но код шифра Speck – очень компактный. Побайтового сравнения объёмов я не привожу.

Итак, “Магма” уступает Speck по показателям, относящимся к программной реализации. Неудивительно: “Магма” очень старый шифр, разработанный ещё в 70-х годах прошлого века. Как ни странно, в этом состоит его преимущество, если говорить об оценках стойкости. Этот шифр до сих пор входит в рекомендации ГОСТ и для него пока не опубликовано криптоанализа, существенно снижающего стойкость, хотя сломать шифр пытались многократно. Speck – новый шифр, выполненный в современных традициях, задуманный специально для микроконтроллеров, этим обусловлены его преимущества. Для данного шифра также пока не опубликовано криптоанализа, существенно снижающего стойкость (известные работы – предлагают академические атаки, не пригодные для практических сценариев), но нужно учитывать малое распространение и новизну шифра. Отмечу также, что Speck далеко не единственный новый шифр, ориентированный на “Интернет вещей”, однако является одним из самых простых, быстрых и компактных. Тем не менее, преимущество в скорости и возможность экономии нескольких десятков байтов – не всегда являются решающими факторами, в том числе, для устройств с малой вычислительной мощностью. Например, в случае передачи раз в час команд от устройства к устройству, разница в несколько миллисекунд, требующихся для получения криптограммы, не играет роли. (С другой стороны, каждый такт – это расход энергии элемента питания, что может оказаться существенным для устройств с экстремально низким энергопотреблением.)

В ГОСТ на средства криптографической защиты информации уже есть весьма современный шифр “Кузнечик”, сходный с AES. Однако и “Кузнечик”, и AES – не очень хорошо подходят для микроконтроллеров, так как быстрая реализация этих шифров требует довольно большого объёма памяти, который доступен далеко не для всех платформ, кроме того, часто требуются короткие криптограммы (64 бита). Вполне возможно, что в обозримом будущем в стандартах появится новый российский шифр, ориентированный именно на маломощные вычислители.

Приложение: исходный код реализации Speck для Arduino (только зашифрование), также содержит дополнительные функции для шифрования тестового вектора и проверки правильности работы.



Комментарии (2) »

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

Можно оснастить смартфон каким-то штатным элементом, для которого преобразование звуковых колебаний будет являться недокументированной возможностью. На такую роль годится практически всякий осциллятор, выполненный так, что воздействующие на него звуковые волны приводят к сдвигу частоты генерации – получаем частотную модуляцию. Механическим приёмником звукового давления может быть тонкая металлическая крышка (мембрана), которая выглядит как штатный экран, защищающий от помех. Схемотехника устроена таким образом, что крышка, вместе с размещёнными под ней элементами, превращается в микрофон (дополнительный). При этом сам элемент-микрофон естественным образом вписан в архитектуру телефонного аппарата: это может быть какой-нибудь задающий генератор, выделенный фильтр, или элемент усилителя – вариантов немало. Полезный акустический сигнал, после преобразования в электрический, маскируется под помеху и проходит к цифровым схемам, где “случайно” преобразуется всего лишь в один бит, который прямо кодирует принимаемую частоту. В качестве несущей может выступать достаточно высокая (относительно полосы речевого сигнала) частота, например, 1 МГц, что позволяет уверенно выделять речь из “помехи”, разрядностью в один бит.

Модуляция, наводимая колебаниями мембраны, считывается тем или иным процессором в качестве “ошибки”. Результат фильтруется, сжимается с использованием некоторого кодека, записывается в память. Вовсе не обязательно использовать для решения этих задач основной процессор смартфона – тем более, что это может вызвать подозрения. Процессоров и микроконтроллеров в современном смартфоне немало, годится модуль GPS или WiFi: очень хорошо подходит всякий сигнальный процессор, потому что обработка интересующих нас данных тут может быть хорошо замаскирована – она производится системным программным обеспечением модуля (“прошивкой”), которое исследовать весьма непросто, и которое невидимо даже для основной операционной системы.

Пусть кодирование речевого сигнала с приемлемым уровнем качества требует (с запасом) 500 байт/сек. Периоды, когда ничего не слышно, не пишутся, поэтому активности в сутки будет где-то часов пять, в самом напряжённом графике. Тогда требуемый объём памяти для хранения данных за сутки составит: 3600*5*500=9*106 байтов, или около 9 Мбайт/сутки. Сохранять такой объём в современном смартфоне труда не составляет: типичные объёмы памяти измеряются гигабайтами. Естественно, хранить запись можно незаметно для пользователя, например, зарезервировав часть памяти. И девять мегабайт – это очень большой объём речи, подавляющее большинство сценариев использования будут выдавать меньше.

Как незаметно передать несколько мегабайт информации? Неплохим вариантом является маскировка данных под случайные – шум. Для этого достаточно шифровать выходной поток, соответственно, он будет практически неотличим от (псевдо)случайных данных. Хорошим носителем для дальнейшей передачи данного “шума” являются цифровые изображения – фотографии, сделанные встроенной камерой. В них, кстати, полезный сигнал и записываться может без ведома операционной системы, непосредственно в схемах камеры. Фотографии загружаются “в облако”. Получаем стеганографический канал. Обнаруживать наличие скрытых данных может только та сторона, у которой есть соответствующий секретный ключ – для всех других “шум” выглядит как шум, обычный для цифровых камер. Проблема лишь в том, что “плотность записи” в подобных стеганографических схемах невелика, не более нескольких процентов от объёма данных, выступающих в роли носителя. Соответственно, чтобы передать 10 мегабайт скрытых данных, потребуется исходящий трафик вплоть до 500 Мбайт. С другой стороны, все 9 мегабайт разом можно было бы передать в виде одной “испорченной” фотографии – данная схема вполне реализуема, так как её тоже можно замаскировать под сбой (главное, чтобы пользователь не удалил фотографию раньше, чем она будет загружена “в облако”).

Естественно, есть и другие способы передачи “дополнительной нагрузки” на сервер: блоки с данными можно прицеплять к загружаемым “в облако” файлам как “мусор” – целый ряд широко используемых форматов позволяют так делать. Не вызывая излишних подозрений можно передавать до 20% от файла носителя, что, соответственно, уже укладывается в типичные объёмы исходящего трафика.

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



Комментарии (3) »

Очередной раз обновил страницу с избранными записками.



Comments Off on Обновление “Избранного”

Исследователи из Google и института CWI продемонстрировали первую практическую коллизию для криптографической хеш-функции SHA-1. SHA-1 уже несколько лет считается недостаточно стойкой, но, тем не менее, до сих пор широко используется (в том числе, в SSL-сертификатах, несмотря на все ограничения). На специальном сайте shattered.it можно скачать два файла PDF, которые отличаются содержанием, но имеют одинаковое значение SHA-1 (каждый может проверить самостоятельно). Несмотря на сложность реализации этой конкретной атаки, которая потребовала больших вычислительных мощностей (они нашлись у Google), SHA-1 теперь можно окончательно признать нестойкой. Это весьма важное достижение – казалось, что SHA-1 простоит ещё пару лет.

Вместо SHA-1 следует использовать, например, хеш-функции семейства SHA-2: SHA-256 и др.



Комментарии (7) »

В корпоративных сетях нередко применяются системы DLP (Data Loss Prevention), которые должны предотвращать утечки конфиденциальной информации. (Иногда почему-то считается, что основная задача DLP не предотвращение утечек, а их обнаружение; однако, если утечка произошла, это означает лишь, что система DLP не сработала.) Предотвращение утечек подразумевает перекрытие каналов, по которым эти утечки могут происходить. В самом банальном варианте – блокируется передача данных через сетевые подключения (но не приём). Или рабочее место, где возможен доступ к защищаемым данным, физически не подключено к сетям передачи данных. Ну и так далее, вариантов много, а продвинутая система ещё должна следить за доступом к данным, а не только “трафик просматривать”.

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

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

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

Многообещающее направление – это автоматизированное внедрение готовой программы, проведённое каким-то нестандартным способом. Например, пользователю доступна штатная утилита аудиозаписи, входящая в дистрибутив ОС, а ПК оснащён встроенным микрофоном. Тогда код программы можно передать через аудиоканал, а для декодирования, опять же, использовать имеющиеся средства обработки данных. Чуть более оригинальное решение – устройство, аппаратно подключаемое к клавиатуре или мыши: передавать код оно может через срабатывание клавиш или кнопок. Тут, впрочем, опять возникает вопрос преобразования некоторого сигнала в код (или исходный текст) программы – для этого нужна подходящая утилита. Естественно, напрашивается готовый полноценный клавиатурный эмулятор (или эмулятор мыши, хотя он тут подходит гораздо хуже), но это широко известный вектор аппаратной атаки на ПК, поэтому считаем, что подключение мыши и/или клавиатуры ограничено физически.

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



Комментарии (8) »

Современный смартфон уже содержит акселерометры и (или) гироскопы, планируется оснащать смартфоны и более продвинутыми датчиками и сложными сенсорами, вплоть до химических анализаторов. Получается сеть из приборов, которые могут измерять параметры окружающей среды. (Заметьте, что некоторые параметры смартфон может измерять и сейчас: например, уровень шума.) Идеи о том, что подобная распределённая сеть может обнаружить немало интересного – довольно старые: несколько лет назад предлагалось массово использовать смартфоны с датчиками ионизирующих излучений для мониторинга радиационной обстановки.

Предположим, что популярная модель смартфона передаёт собранные данные для анализа в центр, находящийся под контролем производителя (сейчас это принято называть “загрузить в облако”). Тогда производитель получает неплохой источник информации о том, что происходит в окружающей среде по всему миру. В смартфоне есть точные часы и привязка к местности (GPS), а данные можно передавать в режиме онлайн.

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



Комментарии (2) »

Известна концепция “навязанной” радиолокации: для зондирования используются сигналы уже существующих систем, например, телевизионный сигнал или сигнал сети GSM. Интересно следующее развитие темы. Предположим, что у нас есть небольшие (до десяти сантиметров) боты, построенные на передовых достижениях твёрдотельной электроники. Боты замаскированы под “природные объекты”. Например, это могут быть мелкие “камешки”. Они полностью автономны, используют подходящую схему электропитания. Полезная функция: боты принимают сигнал выбранного опорного поля, в том числе, отражения, тщательно измеряют его, оцифровывают и записывают результат. Накопленный результат боты раз в сутки передают в коротком импульсе на пролетающий спутник. Собранные измерения проходят предварительную обработку, потому что нужно извлечь полезную информацию, дабы эффективно использовать короткое окно связи. Все боты поддерживают (при помощи сигнала GPS, например) точное синхронное время, метки времени записываются вместе с собираемыми радиоданными.

А забрасываются данные изделия, например, со стратосферного “метеозонда”, который “случайно” пересёк границу на высоте около 27 тысяч метров. Замаскированные под камешки боты просто сбрасываются над заданным районом (малонаселённым): они не обязательно должны иметь плотность типичного камня, поэтому могут падать без парашюта. Кассета с ботами позволяет засеять несколько квадратных километров с борта одного “метеозонда”.

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

На случай обнаружения бота каким-нибудь грибником (хотя, кто будет каждый камень осматривать, не получив соответствующей ориентировки?) – предусмотрена система ликвидации электронной начинки. Нет, вовсе не обязательно подрывать бота, делая его опасным для грибника. Достаточно при вскрытии корпуса тихо и тщательно сжечь всю микроэлектронную начинку, превратив её в “кусочек смолы”, уничтожив ценные следы. Сам по себе искусственный камень не несёт особой информации: мало ли кто баловался – может, это кусок сбежавшего квадрокоптера. (Электроника с эффективной функцией самоуничтожения – это перспективная тема DARPA, между прочим.)

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

Основную проблему составляет источник питания. Конечно, напрашивается радиоизотопный вариант. Но он тут вряд ли подходит. Во-первых, сложно экранировать, чтобы бот не светил. Во-вторых – радиоизотопы представляют собой прочный след: часто по их составу и свойствам можно однозначно определить производителя. В-третьих – опасно для “грибника”. Питание от самого принимаемого ЭМ-поля, конечно, чисто теоретически возможно, но относится к области научной-фантастики, так как что-то вычислять о питающем поле, да ещё результаты передавать на спутник, уже точно не получится на практике. Возможно, годятся какие-то термоэлектрические решения. И главный инженерный конфликт тут в том, что для сложных вычислений нужна большая энергия (да, это достаточно фундаментальный вопрос физики, но пока никто не выяснил, можно ли вообще вычислять, не расходуя энергию, – хотя, классические основы термодинамики как бы прозрачно намекают, что нет, нельзя; но вопрос, тем не менее, остаётся открытым с квантовой стороны).

Как можно обнаружить такую сеть? Полупроводники можно детектировать дистанционно по наведённому излучению (так работают нелинейные локаторы, или детекторы нелинейных переходов). Но для этого потребовалось бы облучать “район залегания” ботов достаточно мощным ВЧ-излучением, пытаясь как-то вычленить из отражённого сигнала слабые вторичные гармоники, связанные с полупроводниками. Вряд ли это удастся сделать с большого расстояния, например, с борта пролетающего самолёта. Кроме того, полупроводниковую часть бота можно хорошо экранировать: если мы имитируем камень, то место для экранов имеется. Неустранимый элемент только один – приёмная антенна бота (передающая – открывается только в момент отправки данных на спутник). Но приёмную антенну можно моментально отключать, как только бот “услышал” подозрительный мощный зондирующий сигнал (решение известно по продвинутым “жучкам”).

Что за информацию можно было бы собирать при помощи таких ботов? Как минимум, подобная пассивная радиолокация позволит фиксировать самолёты и другие летательные аппараты, на достаточно большом расстоянии от крайнего бота – многие километры. Точность определения траектории будет невелика, но о перемещениях, направлении полёта судить можно. Впрочем, полёты самолётов – и так секрет Полишинеля: они вполне обнаруживаются спутниковыми РЛС. Боты могли бы наблюдать поезда, но тут помешает рельеф местности. Впрочем, при наличии сейсмодатчиков фиксировать движение наземной техники можно (такая схема используется на практике), но это уже не радиолокация. И тем не менее, придумать полезную цель наблюдения, которая недоступна другим методам, более традиционным, для такой сети радиоботов весьма сложно. В случае с воздушными целями – преимущество может быть разве что в ракурсе наблюдения, который позволяет “видеть” объекты снизу и принимать сигналы, направленные к земле.

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



Comments Off on Сеть забрасываемых ботов-разведчиков

Что касается обсуждений про китайские МБР, которые, якобы, размещаются вблизи от границы с Россией. На начальном этапе полёта баллистическая ракета очень уязвима. Кроме того, чем ближе к границе, тем ближе можно разместить средства превентивного уничтожения ракетных комплексов (ещё до запуска), да и наблюдать их перемещения, подготовку к пуску – тоже проще.



Comments Off on Реплика: китайские баллистические ракеты

Очередной раз попались выпущенные Symantec TLS-сертификаты для доменов, администраторы которых эти сертификаты не запрашивали (*.example.com, test.com и пр.) Как уточняет Symantec – сертификаты выпустила одна из компаний-партнёров, и это были тестовые сертификаты. То, что они тестовые – вполне очевидно из состава полей, но при этом сертификаты валидные. Сертификаты были выпущены в 2015 и 2016 годах, сейчас те, что обнаружились, отозваны.

Конечно, считается, что тестовые сертификаты не должны покидать пределы тестового окружения, кроме того, их рекомендуется выпускать с ограничениями, а не для произвольных имён. Система “тестирования”, которая позволяет через партнёрский интерфейс выпустить сертификат для любого домена – выглядит довольно подозрительно, потому что очередной раз подтверждает наличие у удостоверяющего центра внешнего API, пригодного для быстрого выпуска валидных сертификатов для любых доменов, без ведома администраторов этих доменов. Такие сертификаты полезны для использования в перехватывающих TLS прокси.



Комментарии (4) »

В комментариях напомнили про испытания стай миниатюрных беспилотников, которые сбрасывают с самолёта в непосредственной близости от района применения. Стаю нужно называть mesh-сетью, потому что беспилотники-участники обмениваются между собой данными. Связь достаточно устойчивая: протоколы позволяют динамически подстраивать её параметры под изменяющиеся условия – например, если часть беспилотников потеряна. Управление стаей может осуществляться дистанционно, но она с не меньшим успехом способна выполнять и заранее загруженную в память задачу.

Если беспилотники действительно небольшие, то они, даже в значительном количестве, не годятся на роль эффективного ударного средства. Естественно, можно оснастить каждый из аппаратов каким-то маломощным оружием, но из-за того, что дополнительные ресурсы, необходимые для транспортировки этого оружия, оказываются размазаны по десяткам и сотням составляющих аппаратов, суммарный ударный выход “по стае” окажется мал. (Что, конечно, не исключает возможности использования стаи для нанесения удара, скажем, даже по танку, но составляющие такую стаю беспилотники должны быть большими.) А вот для разведки, для задач активной РЭБ и проведения диверсий – стаи мелких летающих роботов очень хороши.

Интересно, как с ними можно бороться. Первое, что обычно упоминают, это электромагнитные импульсы (ЭМИ), которые могут вывести из строя микроэлектронную начинку. Тут нужно учитывать несколько моментов. Да, импульс с достаточной энергией может сжечь что угодно (даже монолитный шар из радиопрозрачного пластика). Но такой “мазер” получится большим, сложным в эксплуатации (не испортить бы свои устройства), потребляющим кучу энергии. А если он есть, то выводить из строя можно сразу самолёты-носители. А системы малой энергии неэффективны: для уничтожения стаи – нужно достаточно долго светить на каждый из беспилотников, если стая разбежалась, то придётся перемещать луч. Кроме того, от излучений с малой энергией отдельный аппарат, даже небольшой, можно хорошо защитить, использовав, например, экраны и специальные комплектующие. А основная проблема возникнет с наведением импульсов: стая распределена по большому сектору пространства и маневрирует, беспилотники видны плохо.

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

Именно упоминание оптических каналов связи наводит на следующую мысль: для борьбы со стаей можно использовать некоторое облако пыли, которое распыляется непосредственно на саму стаю. Пыль, во-первых, нарушает коммуникации (не только оптические, понятно); во-вторых, пыль будет забивать механизмы и выводить их из строя. Конечно, механизмы можно защитить, но в случае с вращающимися винтами это существенно увеличивает сложность конструкции и её вес. Например, даже если исключить из рассмотрения приводы лопастей, быстро вращающийся в пыли винт может начать накаливать поверхностный электрический заряд, заряжая, тем самым весь корпус аппарата. Вроде бы, заряд не так страшен, но он может мешать работе электронных устройств не меньше направленных ЭМИ. А главное, через облако пыли сложно собирать данные.

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

Сеть выглядит весьма неплохо. Так как беспилотники небольшие, можно сделать сеть безопасной для людей и прочей техники – её будет несложно разорвать. Можно заранее спроектировать волокна так, что они будут разрушаться через несколько часов, скажем, под воздействием атмосферного кислорода. Сеть, вместе со средствами доставки, стоит заметно дешевле стаи беспилотников и дешевле продвинутого источника ЭМИ. Однако и в случае с облаком пыли, и в случае с сетью – остаётся проблема своевременного обнаружения стаи беспилотников и наведения средств доставки. Впрочем, сети можно заранее развешивать в воздухе при появлении каких-то подозрений.



Комментарии (7) »

Известная история гласит, что Интернет создавался для обеспечения связи в ситуации, когда большая часть сетей разрушена, выведена из строя (это только одна часть истории, но сейчас речь о другом). У DARPA есть программа TUNA (Tactical Undersea Network Architecture), цель которой – получение средств, позволяющих быстро наладить связь на больших расстояниях в море, при условии, что имеющиеся сети разрушены. Концепция подразумевает налаживание радиосвязи, но с использованием оптических линий между опорными узлами. То есть, в море выпускаются буи (например, сбрасываются с самолёта), между которыми под водой протягивается плавучая (это важно – кабель не опускается на дно) оптоволоконная линия, которая, как пишут, должна проработать до 30 дней. В новости по ссылке выше упоминают разработку лаборатории Вашингтонского университета – буй, который вырабатывает электричество, используя энергию морских волн.

Можно представить, что буи, формирующие узлы, сбрасывают один за одним с самолёта, при этом они сразу соединены очень тонким оптоволоконным кабелем. Кабель имеет нейтральную плавучесть, а это отчасти решает проблему с его проведением. Для волокна важно, чтобы радиус кривизны в местах изгиба не превышал некоторого предельного значения – иначе будет радикально теряться мощность передаваемого луча, так как исчезает полное отражение. Конкретные параметры зависят от частоты излучения, строения и материалов волокна, но понятно, что от “перекручивания” кабель всё равно как-то нужно защищать. В подвижной среде, при длине, измеряемой десятками километров, это не так просто. Хотя, на достаточно большой глубине хаотичных перемещений должно быть меньше, но при этом буи могут начать равномерно удаляться друг от друга, либо кабель будет увлекать течением, что грозит обрывом.

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



Комментарии (5) »