![](https://habrastorage.org/webt/md/b0/_s/mdb0_slul9chu-ygd8lttzrprew.jpeg)
/ Flickr / Mark Fischer / CC BY-SA
Проблема со звонками
Нежелательные робо-звонки — это самая распространенная причина жалоб потребителей в Федеральную торговую комиссию США. В 2016 году организация зафиксировала пять миллионов обращений, через год эта цифра перевалила за семь миллионов.
Такие спам-звонки отнимают у людей не только время. Сервисы автоматического обзвона используются для вымогательства денег. По данным YouMail, в сентябре прошлого года 40% из четырех миллиардов робо-звонков были совершены мошенниками. За лето 2018 года жители Нью-Йорка потеряли около трех миллионов долларов на переводах преступникам, которые звонили им от лица властей и вымогали деньги.
На проблему обратили внимание в Федеральной комиссии по связи США (FCC). Представители организации выступили с заявлением, в котором потребовали от телекоммуникационных компаний внедрить решение для борьбы с телефонным спамом. Этим решением стал протокол SHAKEN/STIR. В марте совместные его тестирование провели AT&T и Comcast.
Как устроен протокол SHAKEN/STIR
Операторы связи будут работать с цифровыми сертификатами (они строятся на базе криптографии с открытым ключом), которые позволят верифицировать звонящих.
Процедура верификации будет происходить следующим образом. Сперва оператор человека, совершающего звонок, получает запрос SIP INVITE для установки соединения. Сервис аутентификации провайдера проверяет информацию о вызове — местоположение, организацию, данные об устройстве звонящего. По результатам проверки звонку присваивается одна из трех категорий: A — известна вся информация о звонящем, B — известна организация и местоположение, и C — известно лишь географическое положение абонента.
После этого оператор добавляет в заголовок запроса INVITE сообщение с временной отметкой, категорией звонка и ссылкой на электронный сертификат. Вот пример такого сообщения из GitHub-репозитория одного из американских телекомов:
{
"alg": "ES256",
"ppt": "shaken",
"typ": "passport",
"x5u": "https://cert-auth.poc.sys.net/example.cer"
}
{
"attest": "A",
"dest": {
"tn": [
"1215345567"
]
},
"iat": 1504282247,
"orig": {
"tn": "12154567894"
},
"origid": "1db966a6-8f30-11e7-bc77-fa163e70349d"
}
Далее, запрос попадает к провайдеру вызываемого абонента. Второй оператор расшифровывает сообщение с помощью публичного ключа, сравнивает содержимое с SIP INVITE и проверяет подлинность сертификата. Только после этого устанавливается соединение между абонентами, и «принимающая» сторона получает оповещение о том, кто ему звонит.
Весь процесс проверки можно изобразить схемой:
![](https://habrastorage.org/webt/c5/8-/en/c58-ennmqoao7k5pt2c15vpbvug.png)
По словам экспертов, верификация звонящего займёт не больше 100 миллисекунд.
Мнения
Как отметили в ассоциации USTelecom, SHAKEN/STIR даст людям больше контроля за звонками, которые они получают — им станет легче решить, стоит ли поднимать трубку.
Читайте в нашем блоге:
Но в индустрии есть мнение, что протокол не станет «серебряной пулей». Эксперты говорят, что мошенники просто воспользуются обходными путями. Спамеры смогут зарегистрировать в сети оператора «подставную» АТС на имя какой-либо организации и проводить все звонки через неё. В случае блокировки АТС можно будет попросту перерегистрировать.
По словам представителя одного из телекомов, простой верификации абонента с помощью сертификатов недостаточно. Чтобы остановить мошенников и спамеров, необходимо разрешить провайдерам автоматически блокировать такие звонки. Но для этого Комиссии по связи придётся разработать новый свод правил, который позволит регулировать этот процесс. И этим вопросом в FCC могут заняться уже в ближайшее время.
С начала года конгрессмены рассматривают новый законопроект, который обяжет Комиссию разработать механизмы защиты граждан от робо-звонков и проследить за реализацией стандарта SHAKEN/STIR.
![](https://habrastorage.org/webt/xz/g4/wj/xzg4wjfcfn2ovlmjfdry0tttq5g.jpeg)
/ Flickr / Jack Sem / CC BY
Стоит отметить, что SHAKEN/STIR реализовали в T-Mobile — для некоторых моделей смартфонов и планируют расширить ряд поддерживаемых устройств — и Verizon — его клиенты оператора могут скачать специальное приложение, которое будет предупреждать о звонках с подозрительных номеров. Другие американские операторы еще только тестируют технологию. Ожидается, что они закончат испытания до конца 2019 года.
Что еще почитать в нашем блоге на Хабре:
Комментарии (18)
halted
31.03.2019 21:41А что мешает добавить подобие телетекста при установке соединения?
В идеале еще и функцию «пожаловаться».
Раздается звонок с незнакомого номера, а там высвечивается минимальная информация о звонящем, Яндекс уже подобное пытался внедрить для борьбы с телефонным спамом.willyd
31.03.2019 23:25+1Что мешает? Время обработки сигнализации, возможно, что формат сообщения сигнализации в радиочасти не подойдет для передачи такой информации.
Во-первых, нужно откуда-то получить информацию о номере. То есть, сделать запрос к распределенной БД достаточно большого размера. Это дополнительные миллисекунды на установление соединения и занятие машинного времени.
Во-вторых, вам нужно запихнуть эту информацию в стандартизированное сообщение, размеры и предназначение полей в котором уже расписаны, там конечно может быть какое-то зарезервированное поле, и возможно его размера хватит, чтобы эту информацию передать, но вам еще нужно будет все это внедрить в оборудование: ядро, радио, терминалы. То есть, нужно расширение спецификаций и рекомендаций LTE, UMTS и т.д.
В-третьих, для функции «пожаловаться» тоже нужно передавать какой-нибудь токен со звонком, который будет храниться у оператора и на абонентском оборудовании и его можно будет использовать для отправки жалобы как идентификатор звонка.
В SIP вы можете передать такую информацию в нагрузке, или хедером. Но он используется в фиксе и на транках.
Короче передать пару битов между операторами проще. Ну и статья немного туманно это описывает. Вся проверка и обмен сообщениями происходят на операторском уровне, у абонентов ничто не изменится.arheops
01.04.2019 07:28Перед передачей header вам надо подписать ключем, после — проверить. Это значительные CPU нагрузки для свичей.
Да и сам SIP INVITE уже настолько перегружен, что не влазит в один udp пакет(1500байт).
arheops
01.04.2019 07:22В данный момент это вроде бы не поддерживается ни одним из OSS свичей.
Да и вообще похоже никем не поддерживается.
Потому реализация в течении года — очень сильно сомнительна.
К тому же данная процедура увеличивает накладные расходы на соединение где-то раз в 5-10(надо точнее считать, но сейчас там вообще мало CPU), что предполагает увеличения установленной мощности у телекомов в разы. Както маловероятно.pvsur
01.04.2019 09:05Считаю, что проверку А-номера надо делать на клиентском оборудовании. Для смартфонов теоретически это вообще не проблема должна быть, если встроена в приложение-телефон. А то ещё от интернет-провайдеров тоже можно потребовать слать трафик только с верифицированных сайтов…
Gamliel_Fishkin
01.04.2019 12:12SIP — это, конечно, хорошо, но разве во всех городках «одноэтажной Америки» современные цифровые телефонные станции?
arkamax
01.04.2019 20:13+1Из множества моих знакомых в США нет ни одного с домашним наземным номером — только мобильные (а они уже давно цифровые). Наземная связь доступна физлицам, но как минимум в крупных городах осталась в основном у компаний. Основной вред от робозвонков, как мне кажется, как раз приходится на мобильные номера физлиц в городах крупнее затерянной в горах деревни — именно им пытаются впарить медстраховки, кредитование, автоуслуги, да хоть черта лысого в свежей обертке. Когда люди покупают дом (при этом попадая в реестр по недвижимости) или машину (данные по страховкам тоже как-то просачиваются наружу), им иногда поступает до 7 звонков в день, с 8 утра и до 8 вечера. Спасают блокираторы по списку контактов, но в ситуации, когда тебе должен позвонить кто-то, кто не в списке, блокиратор приходится выключать — и иногда это напоминает падение в муравейник.
acmnu
02.04.2019 10:48Но у мобильных абонентов самртфоны, а там уже и Гугл и Эпл внедрили свои технологии отсечки. Я лично давно не ощущаю проблем со звонками, во-первых, потому что не отвечаю на городские намера, а во-вторых, через раз, мне Гугл сообщает, что звонок подозрительный и лучше не брать.
Gamliel_Fishkin
02.04.2019 11:13И приложения других разработчиков (например, Numbuster).
arkamax
02.04.2019 17:31У меня включен подобный блокиратор, но они в основном работают через блокирование номеров, не найденных в адресной книге. Есть какие-то публичные списки «плохих» номеров, но спамеры могут спуфить номера буквально на ходу, их просто не успевают добавлять. Работа по адресной книге чревата пропуском желательных звонков с незаписанных номеров (см. выше).
Gamliel_Fishkin
03.04.2019 07:03Нет, эта программа работает иначе. Можно просмотреть информацию по любому номеру, проголосовать (двумя способами), оставить отзыв и предполагаемое имя/название абонента, а также увидеть цифры голосования об этом номере на данный момент и отзывы других пользователей (если ряд пользователей ввели одинаковое предполагамое имя, то можно увидеть и его).
Я не аффилирован с этой программой, «интерес» у меня только один: база номеров составляется исключительно голосованием пользователей, а потому, чем больше пользователей, тем полнее и точнее база.arkamax
03.04.2019 07:35Интересно… т.е. предполагается, что спамеры выбирают один и тот же исходящий номер для более чем одного звонка? Я почему-то думал, что там просто выбирается случайный номер для каждого исходящего, таким образом голосование за «карму» номера становится бесполезным.
Gamliel_Fishkin
03.04.2019 08:03+1Вероятно, не всегда. Обратите внимание на числа на первом из трёх скриншотов.
willyd
03.04.2019 12:57После каждого звонка номер менять — очень дорого выйдет.
Просто у них большой пул номеров.
arkamax
02.04.2019 17:33У вас оператор Google Voice? У меня нет, и таких сообщений я не вижу :( По городским номерам — в США одни и те же коды территории (area codes) могут быть прикручены как к мобильным, так и наземным номерам. Кроме того с наземных номеров могут звонить вполне желательные абоненты (из компаний в основном).
acmnu
03.04.2019 08:50Нет, оператор не Гугл, я вообще в РФ. Это просто фишка в последнем, ванильном Андройд. Вроде начиная с 8ки появилось. Работает независимо от оператора. Алгоритм простой: когда тебе позвонили с номера не из адресной книги, он после звонка спрашивает был ли это спам и надо ли его блокировать. Если скажешь, что это спам, то он эту инфу отправит в облако и после (я так думаю) нескольких таких ответов от других людей начнет всем остальным уже во время звонка показывать предупреждение, что это походу спам. Весьма удобно.
willyd
Но если честно, это какой-то бред, хорошо еще, что не на блокчейне. Хотя, кстати, для распределенного хранения жалоб может и хорошо было бы его использовать.