В последнее время часто слышу вопросы "Можно ли прослушать мобилу?", "Что для этого надо?", "Слушает ли нас ФСБ?".. Попробую прояснить ситуацию на этом фронте..
Основные положения
Для начала давайте разберемся, кто принимает участие в организации работы GSM-сети. Сеть в обязательном порядке включает в себя:
- мобильные телефоны пользователей
- базовые станции (соты)
- цифровые коммутаторы
- центр управления и обслуживания
- дополнительное оборудование и программное обеспечение.
Передача сигнала в сотовой связи ведется, как известно, по радиоканалу. Поэтому эти данные могут быть перехвачены кем угодно и единственная защита от прослушки - это серьезное шифрование передаваемого сигнала!
Алгоритмы шифрования
Когда стандарт цифровой мобильной связи GSM только разрабатывался, его создатели предусмотрели защиту от прослушивания телефонных переговоров и от неавторизованного подключения. Эта защита основывалась на трех алгоритмах шифрования. Каждый алгоритм отвечает за свой кусок работы и активируется на разных этапах разговора.. Вот эти алгоритмы:
A3 — авторизация телефона базовой станцией (аутентификация абонента);
A5 — шифрование передаваемых голосовых данных;
A8 — генерация совместного сеансового ключа без его передачи по радиоканалу (генерация криптоключа происходит на основе выходных данных А3)
Алгоритм шифрования А5 имеет несколько вариантов: А5/0, А5/1, А5/2 и А5/3. A5/0 - передача данных без шифрования (при некоторых обстоятельствах операторы полностью отключают шифрование.. по неподтвржденным данным - при серьезных террористических актах, при ЧП и прочих подобных случаях, т.е. по указанию спецслужб). A5/1 — более надежный, но с экспортными ограничениями. Изначально он использовался только в странах Западной Европы и в некоторых других странах (Россия туда не входила..). В остальных странах использовался "слабый" вариант алгоритма - А5/2. Сейчас это не актуально, т.к. все ограничения на использование А5 сняты, и общепринятой версией является A5/1. A5/3 - модернизированная версия алгоритма A5/1, разработанная после компрометации старых версий (разрабатывалась с использованием алгоритма Касуми).
Процесс криптования
Давайте примерно рассмотрим процесс обмена информации в GSM-сетях. Для исключения несанкционированной аутентификации абонента в сети используются средства, содержащиеся в SIM-карте: IMSI (международный идентификационный номер подвижного абонента), Ki - индивидуальный ключ аутентификации и алгоритм А3, также содержащийся на симке. Итак, сначала телефон должен пройти аутентификацию в сети. Он отсылает базовой станции запрос на регистрацию и получает в ответ случайное число RAND. После этого с помощью алгоритма А3, по значениям полученного RAND и Ki (ключ, который содержиться в симке) вычисляется так называемый SRES - Signed RESult (подписанный результат). В это время базовая станция занята тем же - она вычисляет SRES для данного абонента. Вы спросите, откуда же базовая станция берет значение Ki, ведь эта информация не передается по радиоканалу? Все намного проще) Ki берется из базы данных сотового оператора (у каждого оператора своя база Ki, т.е. свой диапазон номеров, да и алгоритмы А3 могут немного отличаться). Итак, сота вычисляет SRES и сравнивает его с результатом полученным от абонента.. Если они совпали - аутентификация произошла, и можно производить обмен информацией. На этом этапе в действие вступает алгоритм А8. Он формирует на основе части расчитанного SRES сеансовый ключ Kc, который в свою очередь будет использоваться для шифрования речи). Алгоритм формирования ключей шифрования А8 также хранится на SIM-карте абонента. Поток передаваемых и получаемых данных (разговор в нашем случае) шифруют бит за битом или поточным шифром с использованием алгоритма шифрования А5 и ключа Кс. Т.е., двух словах представить весь процесс шифрования можно следующим образом: