Zadig программа для чего нужна
USB TV-тюнеры на rtl2832 — или как услышать в радиоэфире все за 600 рублей
Давно я собирался купить какой-нибуть универсальный радиоприемник/радиосканер, чтобы полазить по эфиру, послушать о чем говорят ночью матёрые и бородатые радиолюбители…
До недавнего времени, это удовольствие обходилось от 300$ и до бесконечности. Ну а с переходом гос.органов (и России и за бугром) на цифровую (но пока еще не зашифрованную) связь APCO P25 стоимость удовлетворения нездорового любопытства стала ещё выше.
Год назад все изменилось — умельцы выяснили, что многие из продающихся у нас китайских USB TV-тюнеров за 600 рублей — фактически являются универсальным радиоприёмником, на который без каких-либо доработок можно послушать практически все-что угодно в диапазоне 50-900Мгц (если повезет — до 2200Мгц, но там голосом особо ничего не передают): переговоры самолётов с диспетчерами, строителей, такси, жучки в вашей квартире и многое другое.
Под катом я расскажу что и где покупать, как подключить и настраивать, ну и наконец — что можно послушать.
Железо
45-900Mhz). FC0012 хуже т.к. имеет проблемы с качеством сигнала и много частот, где он не работает.
Таким образом, лучше искать приёмники с e4000 или FC0013. К сожалению Elonics на данный момент обанкротилась, и последние запасы быстро иссякают.
Из проверенных источников могу отметить Dealextreme — на e4000 приёмники у них кончились, и сейчас идут на FC0013.Полный список online магазинов собирают тут, ну и в целом на http://www.reddit.com/r/RTLSDR/ достаточно много информации. В случае покупки на ebay/aliexpress — обязательно у продавца уточнить на каких микросхемах сделан их тюнер (т.к. очень часто они у них кончаются и они шлют другие): «Hi, could you confirm that your tuner have rtl2832 & FC0013(e4000) chips?», тогда если вам пришлют не то — будет проще вернуть деньги.
Внутри приёмник выглядит так:
На многих моделях «забыт» защитный диод (он защищает приёмник от статического электричества) — можно оставить как есть, но стараться антенну руками не трогать, и в грозу антенну от приёмника отключать. Но можно конечно и припаять самому: BAV99 или как в моём случае — 2 отдельных 1N4148 (один от земли к антенне, другой в обратном направлении. Нужен именно «быстрый» диод с маленькой ёмкостью, абы какой не подойдёт).
Антенна
Вполне подойдёт ненаправленная телевизионная антенна МВ-ДМВ («рога»). Я вообще принимал на полуметровый металлический штырь. Все это нужно вытаскивать на балкон / в окно. Если компьютер далеко — лучше удлинять USB кабель, а не антенну. Ну и источники радиочастотного шума лучше убрать подальше (например тот же компьютер с открытым корпусом сильно мешает).
Вариантов софта целая куча, я рассмотрю популярный и достаточно удобный вариант — SDR# под виндой (по-английски также можно почитать тут):
1) Качаем последнюю версию SDR# Dev и SDR# RTLSDR Plugin тут, и библиотеку RTLSDR.
2) Распаковываем в один каталог SDR# Dev и SDR# RTLSDR Plugin. Из библиотеки RTLSDR в этот же каталог кладём файл rtlsdr.dll (он в архиве в каталоге x32). Из подкаталога config файл SDRSharp.exe.config выносим на уровень выше (туда где основная масса файлов получилась).
3) Качаем Zadig — программа для того, чтобы заменить драйвер тюнера, который умеет показывать только телевизор — универсальным драйвером. Распаковываем в ту же кучу.
4) Запускаем Zadig.exe, жмем Options->List all devices, выбираем Builk-in, Interface 0, выбираем драйвер для замены — «WinUSB», жмём Reinstall Driver, со всем соглашаемся.
5) Запускаем SDRSharp.exe, в левой части — будет неактивная кнопка Frontend, и напротив неё — выпадающее меню. Выбираем там RTL-SDR / USB, и жмем Play в левом верхнем углу. Уже должно что-то начать работать.
6) Теперь можно либо напрямую вбивать нужную частоту в поле ввода сверху слева, или таскать шкалу частот влево-вправо для настройки на нужную частоту.
Хотите сделать что-то своё? (например GPS)
В простейшем случае получить доступ к эфиру можно так:
И в файл out.dat — сливается содержимое эфира на частоте 1.575Ггц, с частотой дискретизации 2.048 Мгц с коэфициентом усиления 34 dB. Если получившийся файлик теперь например скормить Matlab скрипту отсюда, можно увидеть спутники gps (если конечно вы подключили к приемнику активную GPS-антенну).
У меня получилось так (спутники — действительно соответствуют видимым в окно на обычном gps-приемнике):
Что и где можно послушать (в Москве)
88-115Mhz — банальное FM радио, режим WFM.
118-135Mhz — общения самолётов и диспетчеров, режим AM.
433Mhz, 446Mhz — кучи портативных радиостанций, у строителей обычно, NFM.
144-145Mhz, 435Mhz — радиолюбители (днём / утром практически никого нет), NFM.
864Mhz — куча каналов такси, NFM.
Также можно найти «радионяни», старые аналоговые радиотелефоны, аналоговые жучки которыми вас прослушивают — но тут с частотой не угадать (все это обычно тоже в NFM).
А как же цифровая связь APCO P25?
Качаем DSD. Программа принимает цифровую передачу на устройстве записи по умолчанию, и проигрывает декодированный результат в устройство воспроизведения по умолчанию. Чтобы «соединить» SDR# и DSD понадобится Virtual Audio Cable. Делаем в свойствах звука Windows «выход» VAC — устройством записи по умолчанию, а в SDR# выбираем устройство воспроизведения — Line 1 (VAC). AF Gain выставляем около 20-40%. Настраиваем SDR# на нужную частоту (гугл знает какую) в режиме NFM, в окошке DSD должен побежать текст с отладочной информацией, а в наушниках вы должны услышать декодированные переговоры. Настоятельно рекомендую случайно услышанные переговоры не записывать и не распространять.
Аналогичным образом (с помощью VAC) подключаются программы для декодирования пейджерных сообщений, фотографий с метеоспутников и прочего.
Куда двигаться дальше?
Пути улучшения следующие:
1) HF конвертор, чтобы сдвинуть частоты на 100Мгц «вверх» — тогда можно слушать и 27Мгц рации, и кучу шпионских подозрительных КВ станций и многое другое.
2) GaAs-предусилитель: e4000 — кремниевый чип, и шумит достаточно сильно. Если перед ним поставить малошумящий усилитель — можно снизить уровень шума примерно на 3dB (т.е. вдвое).
3) Discone-антенна — отличается своей широкополосностью и горизонтальной диаграммой направленности.
4) режекторный фильтр вещательного диапазона (чтобы много-киловаттные FM и телестанции меньше мешали приемнику)
5) Диапазонную антенну на тот диапазон, который интересует, вместо дискоконуса с широкой полосой, но слабеньким усилением (опять же, уже полоса — меньше посторонних сигналов приходится приемнику отфильтровывать — соответственно потенциально выше качество приема слабых сигналов). За последние 2 пункта спасибо Moskus
Вот как все это выглядит в работе:
Строители на 433/446Mhz:
Радиолюбители на 144МГц (невероятная деталь — в комментах на ютубе отметился участник переговоров):
Мне лишь остаётся пожелать удачи в ваших исследованиях радиоэфира!
PS. Эх, я вижу что я опоздал на 65 минут. К счастью, мы рассказали о RTL2832 c разных сторон (там HDSDR, тут SDRSharp и кино).
PPS. Самый занимательный услышанный диалог, к сожалению тогда не записывал:
Разговор двух строителей (видимо прораб с каким-то другим руководителем)
1: Тут опалубку криво сделали, бетон получился тоньше чем нужно на 5см
2: Можно как-то исправить?
1: Ну… переделывать все надо…
1: Так что делать будем, показывать технадзору?
2: Ну что ты как маленький…
2: Ну конечно нет
Установка драйверов и программы управления SDR приёмником
Сейчас начинается кропотливая работа по установке драйверов и программы управления. Как говорится, не «бегите впереди паровоза», а делайте точно по инструкции. Шаг в шаг.
1. Если вы приобрели SDR приёмник как у нас ( http://ali.pub/55m0dq), то в комплекте с ним будет маленький диск с драйверами. Если же диска нет, или у вас нет CD-Rom-а, не беда, вот эти драйвера https://yadi.sk/d/bjfPakpC3RCZx2
4. Теперь нужно установить второй драйвер, он называется Zadig. Скачиваете отсюда http://zadig.akeo.ie Прямая ссылка на драйвер http://zadig.akeo.ie/downloads/zadig-2.3.exe Прямая ссылка с яндекс-диска, если предыдущие по каким-то причинам не будут работать https://yadi.sk/d/2yDgeQeW3RCas9
5. SDR приёмник у вас всё это время должен быть подключён к компьютеру. Запускайте скаченный файл zadig-2.3.exe В меню драйвера, вверху, нажмите Options и поставьте галочку List All Devices. Это для того, чтобы драйвер смог увидеть ваш SDR приёмник.
6. После этого в окошке программы покажется список ваших всех USB устройств, в том числе и SDR приёмник. Он будет отображаться как Bulk-In, Interface (Interface 0), выбираете его.
7. После этого, нажмите большую кнопку Replace Driver
8. Драйвер Zadig начнёт установку, после которой появится окошко, что драйвер установлен. Нажимайте «Close» и закрывайте программу Zadig. На этом, самый сложный этап завершен.
1. Итак, скаиваем и устанавливаем программу HDSDR http://www.hdsdr.de/index.html На момент написания этой статьи, актуальная и стабильная версия программы 2.76, прямая ссылка: http://www.hdsdr.de/download/HDSDR_install.exe Прямая ссылка с Яндекс-диска, если официальный сайт по каким-то причинам не будет работать https://yadi.sk/d/6Gd2bCjk3RCbqV
3. Этот файл необходимо поместить в папку, в которую у вас установлена программа HDSDR. (по умолчанию C:\Program Files\HDSDR, или C:\Program Files(x86)\HDSDR )
4. Далее. Необходимо скачать второй DLL файл, с помощью которого уже можно будет принимать непосредственно радиолюбителей. Ссылка на файл https://xa.yimg.com/kq/groups/82400279/47992593/name/ExtIO_RTL_SW_Patch.dll Прямая ссылка с Яндекс-диска на тот же файл: https://yadi.sk/d/t7XPc0HO3RCcBP
5. Его так же нужно поместить в папку, где у вас стоит программа HDSDR (по умолчанию C:\Program Files\HDSDR, или C:\Program Files(x86)\HDSDR ).
Теперь, настроим саму программу HDSDR
1. Запускайте программу по ярлыку на рабочем столе. В момент запуска у вас каждый раз будет появляться такое окно
3. Программа на английском языке, но, интуитивна понятна. Самое главное, запомните в настройках программы этот путь: Options / Misc Oprions / Reset to factory settings. Это функция, которая обнуляет все найстроки программы на заводские. Она вам обязательно пригодится, чтобы сбрасывать настройки, когда будете экспериментировать 😉
На этом всё. В следущих статьях поделимся опытом с настройками программы.
Перехватываем цифровые радиопереговоры, или куда едут экипажи в 5 утра
Давным-давно, в далекой-далекой заднице мира.
Шел апрель 2020 года, ковидная пандемия набирала обороты. Мы с женой, пользуясь тем, что оба стали работать целиком и полностью удаленно, временно улетели из Санкт-Петербурга в свой родной город, чтобы быть рядом с родителями, которым была нужна помощь в эти непростые времена. Местные власти объявили «карантин», и от скуки сидения дома в один из дней мне пришла в голову мысль разобрать завалы хлама в старой квартире. В одной из коробок мне попался ноунеймовый USB DVB-тюнер на чипе RTL2832U с Алиэкспресса, который я когда-то давно заказал за 10$, и тут я призадумался. Вспомнилось, что много-много лет назад я игрался с ним, и в эфире можно было услышать много интересного. «А почему бы не поиграться еще раз?» — возникла в голове мысль, которая и положила начало этой истории.
Железо
В качестве станции наблюдения был использован старенький ноутбук Lenovo G430, который нашелся в том же шкафу и старенький монитор ViewSonic оттуда же (на самом деле, я не перестаю удивляться, что же только можно найти в этом самом шкафу, но это уже отдельная история). Жесткий диск у машинки сдох окончательно и бесповоротно, поэтому в качестве системного носителя была использована обычная USB-флешка на 32 гигабайта, с которой его родная Windows 8.1 работала вполне себе сносно.
В качестве антенны была использована обычная телевизионная антенна, тут все банально. С одной стороны, не самая лучшая штука по тактико-техническим характеристикам и чувствительности, с другой стороны — покупается за 200 рублей в любом магазине электроники или находится бесплатно в том же шкафу, а частотный диапазон у таких антенн довольно широкий, от 80 до 800 МГц, что уже дает определенный простор для экспериментов.
Антенна и RTL-SDR-свисток с алиэкспресса
«Круглая часть» антенны (на фото), предназначенная, по логике, для дециметровых волн, как выяснилось после разборки антенны, была на деле чисто декоративной — к ней не было припаяно вообще никакого провода. Зато «усы» действительно работали, в том числе в дециметровом диапазоне, и регулирование их на размер, равный половине рассчитанной длины волны давало еще немного децибел в нужном диапазоне на анализаторе спектра.
RTL-SDR-свисток у меня был на старом тюнере Elonics E4000, что тоже внесло небольшой отпечаток на происходящее, но об этом позже.
Софт и начало работы
Проверка работоспособности свистка (многие люди говорят, что эти свистки легко умирают из-за статических разрядов со стороны антенны) свелась к простому: что у нас вещает всегда, на известных частотах, и с хорошим уровнем сигнала? FM-радиостанции! Поэтому накрутив шкалу на нужный диапазон, я ткнул в самый сильный сигнал на спектрометре, и в течение полуминуты пришлось слушать, как какой-то мужик с хриплым голосом пел трагичную историю про некоего социально безответственного типа, которому «светила звезда Магадана». Убедившись, что все работает как надо, я отправился исследовать радиоэфир родного города.
В авиадиапазоне не нашлось ничего интересного, то ли потому что я был далековато от аэропорта, то ли просто самолетов в этот момент мимо не пролетало (глянуть на Flightradar24 я как-то не догадался). Послушав немного охранников торгового центра неподалеку, я отправился рыскать по эфиру дальше. И вот, в одном частотном диапазоне, я услышал что-то похожее на звук модема, однако характер передачи (короткими отрезками по 3-10 секунд с длинными паузами) говорил о том, что это, скорее всего, голосовая связь, только с цифровым кодированием. А значит, нужно попробовать ее декодировать, чем мы и займемся.
Декодируем
Для декодирования цифровых форматов передачи существует программа DSDPlus. Существует она в разных инкарнациях: публичная версия 1.101, которая была выпущена в 2015 году и с тех пор не обновлялась, а ее более новые версии распространяются только среди владельцев платной подписки (10 долларов в год, 25 долларов навсегда), хотя одну из относительно свежих версий можно спокойной скачать из раздела загрузок с известного сайта радиолюбителей, правда, вопрос моральной и юридической стороны такого дела остается открытым.
DSDPlus может интегрироваться с SDR# двумя способами.
Первый способ классический: в Windows устанавливается так называемый Virtual Audio Cable, регистрирующий в системе дополнительное мультимедийное устройство для записи и воспроизведения звука и создающий «бридж» между ними. SDR# выводит звук радиоэфира на VAC, а DSDPlus с другой стороны VAC слушает звук и декодирует его.
Я тестировал два вида VAC-софта, первый c https://vb-audio.com/Cable/ и второй c https://vac.muzychenko.net/, оба работают вообще без проблем.
Второй способ: обходимся без велосипедов, SDR# будет лить поток сразу в DSDPlus на localhost через TCP.
Так вот. Публичная версия 1.101 вполне себе хорошо работает с TCP, в более новых версиях протокол поменялся, и автор DSDPlus не поделился его описанием с разработчиком SDR#-плагина, поэтому если вы используете более новую версию DSDPlus, то это получится делать только через виртуальный аудиокабель. А жаль.
Итак, если мы используем DSDPlus через аудиоустройство, то будет удобно использовать DSD Interface плагин для SDR# (инструкция есть тут). Если мы работаем через TCP, то плагин уже точно необходим, и называется он DSDTcp.
Устанавливаются плагины киданием их в папку SDR# и прописыванием DLL’ки в файл Plugins.xml. Сам DSDPlus должен лежать тоже где-нибудь неподалеку.
Плагин предоставляет интерфейс конфигурирования DSDPlus, который выглядит примерно так:
Первым делом задается путь до экзешника DSDPlus. Если вы работаете через виртуальный кабель, то задаются индексы (порядковые номера) аудиоустройств для входа и выхода. Вы их, скорее всего, не знаете, поэтому достаточно просто запустить DSDPlus вручную и посмотреть, что он пишет в консоль — там будет список системных аудиоустройств с их номерами, это поможет задать правильные настройки:
Там же есть настройки записи файлов (и с этим связан один странный баг, но об этом позже). На второй вкладке можно оставить все по умолчанию, ведь мы пока еще не знаем, какого именно типа радиосигнал мы будем слушать:
Не забываем обязательно нажать на «Create command line», иначе ничего не сохранится. Если DSDPlus при старте ругается на нераспознанные аргументы командной строки, то просто удаляем их. Мне помогло, ничего не сломалось 🙂
После этого запускаем DSDPlus кнопкой из плагина, и если все сделано правильно, то как только начнется передача и SDR# начнет принимать радиосигнал, в окошке DSDPlus побегут логи, а из колонок мы услышим декодированный звук:
Казалось бы, хэппи энд? Нет, не совсем. Очень скоро я заметил, что переговоры «прыгали» по частотам. Несколько секунд на одной частоте, спустя пол минуты следущий сеанс связи — на другой, и так далее, и таких частот набирался чуть ли не десяток. Знающие люди, наверное, прочитав это, поняли, в чем дело, но я в тот момент понял, что мне нужен сканер частот.
Сканируем
И такой плагин для SDR# был. Точнее, есть два плагина. Первый — менеджер частот со сканером: вы забиваете интересующие вас частоты в список, и он поочередно перебирает их, проверяя, ведется ли передача на какой-либо. Второй — именно сканер с поиском частот, он наблюдает за широким спектром, и как только на какой-то из частот появляется сигнал выше определенного уровня на определенное время, он переключается на эту частоту, и заодно ведет статистику времени передачи по разным частотам. Именно им я и воспользовался. Ширина полосы моего RTL-SDR позволила мне встать как раз «в середину» нужного диапазона, чтобы была возможность охватить все интересующие частоты без перестройки тюнера.
Выглядит интерфейс сканера примерно так:
Кнопками вверх-вниз можно установить уровень срабатывания сканера — если сигнал на какой-то частоте выше этого уровня, сканер встанет на эту частоту. Всё что ниже заданного уровня считается шумом. Двойным кликом мыши по полоске частоты можно также занести ее в список игнорируемых.
Сканер имеет дополнительное окошко настроек, можно задать, например, автопропуск каналов где активность длится слишком долго или даже внесение таких каналов в список исключений, автоматическое удаление из списка каналов, на которых было слишком мало переговоров, и т.д.
Запись
А потом в голову пришло очевидное: у DSDPlus есть встроенная функция записи. Но и тут все не так уж и гладко. Публичная версия DSDPlus 1.101 имеет весьма странный баг при записи в MP3: запись как будто ведется с ускорением в 2 раза. И это не неправильная частота дискретизации, а именно ускорение: частота дискретизации для самого файла — 8000 герц, и когда в аудиоредакторе ты изменяешь скорость файла на нормальную, фактически происходит срез частот еще в два раза — речь хоть и все еще разборчива, но слушать такое очень неприятно. В непубличной версии DSDPlus этот баг исправлен.
Утилитку можно стащить с моего Github: https://github.com/uprt/srt2cue
Писалось, как я уже сказал, за один вечер и чисто для себя, поэтому код местами кривоват, но работает. Ставьте звездочки, присылайте пулл-реквесты, ага.
А как было правильно?
На самом деле, то, на что я наткнулся — это не просто цифровая, а еще и транкинговая связь. Если говорить очень упрощенно, то в эфире кроме ряда голосовых каналов есть специальный служебный канал, и когда кто-то выходит на связь, там передается информация о том, на какой частоте производится передача. Я, по сути дела, на это забил, просто прикрутив к SDR# сканер частот, но если вы хотите узнать, как же это сделать правильно, то читайте дальше.
Для работы с транкинговой цифровой связью существует специальный софт: UniTrunker. Он как раз умеет слушать и декодировать служебный канал и понимать, на какую частоту нужно перенастроиться в конкретный момент времени. Подробный мануал можно найти вот тут.
Работать он может по-разному:
У вас 2 RTL-SDR приемника, один слушает служебный канал, другой настраивается на нужную частоту для приема.
И служебный, и голосовые каналы влезают в принимаемую полосу вашего приемника — тогда можно обойтись только одним RTL-SDR-свистком.
Выход точно так же можно направить на DSDPlus, хотя я встречал упоминания, что новые версии юнитранкера умеют декодировать голос сами (но могу ошибаться).
Почему я этим не воспользовался? У меня был тюнер на старом чипе Elonics E4000, а UniTrunker умеет работать только с более новыми приемниками на базе R820T.
Впрочем, решение все равно было. Например, мне попалась на глаза схема, когда
— или запускается сразу два SDR# с двумя тюнерами, один из которых слушает служебный канал, а второй настраивается на голос;
— или когда запускается один SDR# но со специальным плагином, позволяющему ему настраиваться сразу на две частоты в пределах полосы тюнера, выводя оба сигнала на разные аудиоустройства и передавая звук с одной частоты через виртуальный аудикабель в UniTrunker, а звук с другой в DSDPlus.
В этих схемах UniTrunker должен каким-то образом сообщать SDR#, на какую именно частоту надо перенастроиться, и для этого есть специальный плагин для него. Сайт плагина давно уже умер, но хвала web.archive.org (ссылка раз, ссылка два). А сам плагин остался на github’е: https://github.com/walczakp/serial-controller. Для коммуникации между UniTrunker и SDR# разработчик почему-то выбрал виртуальный COM-порт. Я, конечно, не очень понимаю, зачем (что мешало обойтись тем же tcp-сокетом?), но, видимо, так захотелось 🙂
Что можно услышать
Вопрос, который, наверное, интересует всех: что же там можно услышать? Да много чего разного. Для меня основной интерес составили переговоры местных дорожных полицейских. Обычно там все было вполне стандартно: один стоит на горе и высматривает нарушителей, передавая номера и приметы экипажу, стоящему чуть ниже; сообщения о разных ДТП; классическое «тут реверсивное движение забыли на мосту переключить, уже два часа как светофор неправильно горит», и подобное. Правда, пару раз удалось наткнуться на погони в прямом эфире, когда очередной лихач на дорогой машине не остановился по требованию ДПС и в итоге за ним гонялись через весь город. Конец был не героический: у одной машины полицейских кончился бензин, а от другой машины нарушитель ушел по сельхозполям в пригороде. Учитывая, что он был на лендкрузере, а преследователи на чем-то легковом, то, в принципе, не удивительно.
Потом выяснилось, что очень-очень рядом на соседней частоте сидят еще другие представители органов порядка. Переговоры у них слышно нечасто, но, в принципе, бывает тоже интересно послушать. То школьники ночью разбили стекло в алкомагазине, то наркоман выламывает кому-то квартирную дверь топором, то жильцы дома устроили массовую драку из-за занятого кем-то «чьего-то» парковочного места во дворе. В общем, нормальная жизнь российского провинциального города.
Legal disclaimer
И самый главный вопрос: законно ли это? Долгое время существовал проект DPS-FM, который занимался ничем иным, как трансляцией в интернет переговоров ДПС в Петербурге. Они изучали российское законодательство и сделали простой вывод: явного запрета на прослушивание радиопереговоров, передаваемых в открытом (не шифрованном виде) в законах нет, следовательно, это разрешено. Более того, парни даже сделали запрос в Роскомнадзор о легальности такой деятельности и получили такой ответ:
Другое дело, что на некоторых радиолюбительских форумах я встречал упоминания, что незаконно публиковать конкретные частоты, на которых вы услышали что-либо интересное. Обоснование было простое: в ряде документов силовых структур эти частоты перечислены в документах «для служебного пользования», и если вы «разгласите» эту информацию, то могут возникнуть проблемы. С одной стороны, притянуто за уши, а с другой стороны, не забывайте, что это все-таки Россия и ожидать от государства можно всего чего угодно, лучше не ходить по тонкому льду.
Ну и последний вопрос о моральной составляющей вопроса. Я считаю, что это хорошо и правильно. Переговоры изначально передаются в открытом и незашифрованном виде — если бы надо было скрыть от наблюдателей, зашифровали бы. Граждане имеют конституционное право на свободу получения и распространения информации. В конце концов, это общественный контроль над структурами, которые работают на налоги граждан и должны работать на благо граждан.