В ближайшие годы в рамках развития Интернета вещей и мобильных систем миллиарды новых устройств наводнят рынок. Они будут работать с данными, требующими контроля над их распространением, и осуществлять операции, предусматривающие особые меры защиты. Новые устройства появятся повсюду: в промышленности, здравоохранении, на транспорте, в жилищном хозяйстве. Но как будет обеспечена их безопасность? Если этот вопрос не решить сегодня, если вовремя не принять дополнительных мер по защите, то ситуация может выйти из-под контроля.
В связи с назревшей потребностью в защите и контроле данных для нарождающихся классов устройств в начале 2015 г. была создана специальная рабочая группа OTrP Alliance. Перед ней была поставлена цель — создать новый стандарт для поддержки безопасных транзакций данных и кода. Сейчас в этой группе насчитывается уже 13 компаний; там представлены такие эксперты в области безопасности, как ARM, Intercede, Solacia и Symantec. Результатом проделанной за прошедшие годы работы стало появление нового открытого протокола Open Trust Protocol (OTrP).
В основу OTrP легла защищенная архитектура определенного набора инструментов. Новый протокол признан повысить защищенность уже существующих технологических механизмов, например, активно используемых для операций банкинга или для работы с ответственными данными.
Марк Канел (Marc Canel), вице-президент компании Security Systems (входит в состав корпорации ARM) рассказал на портале Electronic Design об OtrP, разработка которого уже в целом завершена. В настоящее время группа ведет переговоры с открытыми международными сообществами в области стандартов IETF и GlobalPlatform о принятии OTrP в качестве универсального протокола.
Зачем нужен OTrP?
Разработчикам нового протокола были поставлены следующие главные цели:
1. Создать открытый универсальный протокол, описывающий правила выстраивания доверительных связей между различными устройствами нового поколения. Новый протокол должен поддерживать технологии, уже получившие широкое распространение и доказавшие свою надежность и привлекательность для пользователей. В основу OTrP положена хорошо известная архитектура открытых ключей Public Key Infrastructure (PKI). Она применяется для формирования сертификатов авторизации, которые являются также базовыми элементами для систем, работающих на базе OTrP.
2. Создать на рынке новую нишу, связанную с оказанием сервиса по выдаче сертификатов для предоставления различным приложениям доступа к ресурсам устройств. В результате должны появиться несколько эмитентов авторизационных сертификатов, которые будут соперничать между собой.
3. Протокол должен быть открытым, что позволит сторонним разработчикам создавать собственные решения клиентского или серверного типа. Это позволит сформировать новый рынок для прикладных разработок.
OTrP изнутри
Назначение OTrP — добавить новый уровень оповещения поверх службы открытых ключей PKI. С учетом того, что для работы доверенных приложений необходимо использовать защищенную среду (Trusted Execution Environment, TEE), создание нового протокола позволяет повысить степень защищенности используемых систем, сделать их работу более надежной за счет физического отделения обработки обычных системных сообщений на подключаемых устройствах от поддержки прикладного трафика, предъявляющего более высокие требования по безопасности.
В реальной жизни встречается большое разнообразие подключаемых устройств. Для каждого из них потребуется создать собственный механизм управления доверенными сервисами (Trusted Service Manager, TSM). Он будет отвечать за работу с открытыми ключами, создание доменной зоны для проведения безопасных расчетов, поддерживать работу механизмов аутентификации ресурсов и загрузки приложений.
Зона действия OTrP лежит между службой TSM и устройством TEE. В работе используются различные механизмы безопасности, обслуживающие соединения «точка-точка»: JSON Web Encryption (JWE), JSON Web Signature (JWS), JSON Web Key (JWK). Все перечисленные механизмы рекомендованы одним из основных стандартизирующих институтов Интернета — Инженерным советом IETF
Чтобы подключаемое устройство получило возможность создать у себя защищенную среду TEE с поддержкой протокола OTrP, ему требуется предоставить пару уникальных ключей — публичный и частный. Эти ключи выступают в роли базового элемента доверия. Используя их, поставщики сервисов смогут разрешить данному устройству возможность осуществить запуск доверенных приложений (Trusted Applications, TA).
Подытожим: основными элементами OTrP являются:
— TSM: отвечает за установление соглашениями с защищенным устройством и осуществляет координацию доступа к доверенной среде исполнения кода на все время их работы. Это основной элемент в работе протокола OTrP. Через TSM обеспечивается управление безопасностью домена (зоны доверенных расчетов), контролируется работа доверенных приложений на устройстве. С помощью TSM осуществляется дистанционное инициирование обновлений для защищенных приложений.
— Служба аутентификации (Certificate Authority, CA). Это механизм контроля взаимного доверия между подключаемым устройством, службой TSM и прикладным сервисом на базе выдаваемых сертификатов. Каждое устройство получает собственный набор корневых сертификатов, которые в рамках протокола получили название «якорей доверия» (trust anchors). Они выдаются доверенными органами сертификации, обеспечивая валидацию конкретного экземпляра службы TSM. Те, в свою очередь, проверяют достоверность подключаемых устройств, обеспечивают контроль за наличием сертификатов, полученных из доверенного источника.
— TEE. Каждое устройство, относящееся к типу TEE, поддерживает в работе два рабочих сегмента памяти. Первый представляет собой открытую среду для исполнения обычного кода (normal world); второй предназначен для размещения безопасной среды работы (secure world). В этой защищенной зоне осуществляется запуск приложений, которым предоставляется защита от атак и гарантируется безопасное исполнение кода.
Защищенные коммуникации на базе OTrP формируются путем установки «якорей доверия» между TEE и TSM. Их присутствие поддерживается на протяжении всего периода обмена данных между названными элементами.
Чтобы система начала работать, необходимо выполнить следующие операции:
— TSM должен проверить наличие уникального ключа у TEE;
— TEE должна проверить наличие уникального ключа у TSM;
— После инициализации защищенной среды на TEE-устройстве выполняется проверка на наличие уникального ключа у TEE.
Доверительная модель отношений на базе OTrP
Для установки доверительных отношений между сервисами и устройствами протоколом OTrP предусматривается необходимость использования службы проверки сертификатов. С ее помощью осуществляется идентификация для основных элементов подключаемых устройств. Ключи выдаются через службу CA, которая в дальнейшем также контролирует правильность применения ключей.
Сертификаты могут получить:
— поставщики услуг (Service Provider, SP);
— службы TSM;
— устройства, часть ресурсов которых выделяется под работу доверенной среды TEE. Им выдаются сертификаты двух типов: первый применяется для загрузки доверенной прошивки (Trusted Firmware, TFW), второй — для загрузки TEE.
В результате на базе OTrP выстраивается модель доверительных взаимодействий между различными элементами.
Архитектура систем на базе OTrP
Внедрение протокола OTrP подразумевает создание систем, в которых будут присутствовать определенные структурные блоки, а именно:
— центр аутентификации для выдачи сертификатов элементам инфраструктуры, использующим протокол OTrP (SP, TSM, различные устройства — TEE, TFW);
— набор программных средств (SDK) от разработчика TSM-службы для поддержки взаимодействий с клиентским приложением;
— агент OTrP для передачи протокольных команд между TSM и TEE. Разработка агента возлагается на поставщика решений TEE. Этот программный агент осуществляет маршрутизацию команд и сообщений OTrP в адрес соответствующих служб TEE. Он работает как служба и имеет собственный набор команд.
Описание протокола OTrP
Протокол OTrP описывает правила, по которым формируются сообщения между TSM и TEE. Они должны соответствовать стандарту JSON и обеспечивать безопасное удаленное управление командами в TA-приложениях.
Создаваемые сообщения могут применяться для:
— аттестации устройств и контроля их целостности со стороны TSM, а также для подтверждения установки доверительных связей для самих устройств;
— безопасного управления доменом для запуска доверительных приложений;
— обмена данными между элементами в выстроенной сети. OTrP выступает как протокол верхнего уровня; для обработки сообщений по правилам обслуживания текущего коммуникационного стека потребуется добавить собственный механизм поддержки.
При разработке протокола OTrP были учтены стандарты JSON, накладываемые на правила составления сообщений, и требования со стороны нормативных документов RFC по безопасности:
1. Правила оформления цифровой подписи и шифрования в стандарте JSON:
— RFC 7515, JSON Web Signature (JWS) — правила составления цифровой подписи в Web;
— RFC 7516, JSON Web Encryption (JWE) — правила шифрования в Web;
— RFC 7517, JSON Web Key (JWK) — правила оформления ключей в Web;
— RFC 7518, JSON Web Algorithms (JWA) — криптографические алгоритмы для Web.
2. Алгоритмы шифрования:
— A128CBC-HS256;
— A256CBC-HS512.
3. Алгоритмы цифровой подписи:
— RS256 (RSA
— ES256 (ECC P-256)
Дополнительные меры безопасности также могут быть созданы за счет проверки валидности сертификатов отправителей, контроля цифровой подписи на стороне отправителя и шифрования для предотвращения компрометации данных при их передаче.
Примеры применения OTrP
Применение OTrP распространяется в первую очередь на мобильные устройства и Интернет вещей. Алгоритм его работы на клиентском устройстве предполагает динамическую загрузку безопасного приложения в TEE, осуществляемую под управлением TSM. После этого система получает разрешение на отправку запросов к серверной части.
В качестве примеров для применения OTrP можно выделить:
— сервис идентификации в корпоративных системах безопасности;
— поддержка строгой аутентификация и защита данных в платежных системах;
— VPN, защищенный доступ к веб-сайтам из корпоративных систем;
— запуск приложений с поддержкой DRM;
— «умный» автомобиль и его системы аутентификации, сервис оплаты за вождение и др.;
— приложения для здравоохранения, требующие поддержку аутентификации и контроля доступа к персональным данным;
— «умный» дом и его системы аутентификации и защиты личной информации.
Экосистема и бизнес-модель для OTrP
Протокол OTrP сам по себе не является бизнес-моделью. Он создает базовые технологические предпосылки, опираясь на которые партнеры могут выстраивать свои будущие проекты. Главный элемент в новом наборе — это служба TSM, которой отводится роль «валидатора доверия» в будущих прикладных экосистемам. Ее можно использовать в составе механизма защиты приложений, например, для мобильных устройств.