Код документа: RU2675902C2
ОБЛАСТЬ ТЕХНИКИ И УРОВЕНЬ ТЕХНИКИ
[1] Настоящее описание относится в целом к устройствам мобильной связи, в частности, к устройству мобильной связи, которое обеспечивает заслуживающую доверия работу одной или более выполняемых на нем изолированных виртуальных операционных систем.
[2] Устройства мобильной связи, такие как смартфоны, сотовые телефоны и персональные цифровые помощники (PDA), в настоящее время широко используются и приобрели популярность среди самых разных групп пользователей. По меньшей мере некоторые известные устройства включают в себя центральный процессор (CPU), который может быть виртуализирован для одновременного поддержания работы нескольких операционных систем (OS) на одном устройстве. Например, для разделения различных операционных систем OS может быть использована программа, реализованная программно и известная как гипервизор, путем управления операциями доступа ввода/вывода, передаваемыми между операционными системами OS и аппаратными устройствами, содержащимися в компьютерной системе. В частности, гипервизор облегчает отделение базовых аппаратных средств, таких как центральный процессор CPU, и связанных с ними периферийных устройств (например, устройств отображения, сенсорных экранов и интерфейсов связи) от операционных систем OS, запущенных на этих аппаратных средствах.
[3] Хотя виртуализация устройств может облегчить отделение одного набора программного обеспечения от другого набора программного обеспечения на известных вычислительных устройствах, базовая платформа может оставаться уязвимой в отношении самых разных опасностей. В связи с этим для специалистов, занимающихся промышленными средствами вычислительной техники, большую важность приобрел вопрос повышения безопасности известных вычислительных устройств. Таким образом, может оказаться желательным включение средств обеспечения повышенной безопасности в архитектуру виртуальных устройств.
РАСКРЫТИЕ ИЗОБРЕТЕНИЯ
[4] В одном аспекте настоящего изобретения предложен способ авторизации операции, предназначенной для выполнения на целевом вычислительном устройстве. Способ включает выработку запроса на выполнение операции на целевом вычислительном устройстве, подписание запроса личным ключом из первой ключевой пары, образованной личным ключом и открытым ключом, передачу запроса на сервер авторизации, прием ответа на авторизационный запрос от сервера авторизации, который содержит запрос и токен авторизации, и передачу ответа на авторизационный запрос на целевое вычислительное устройство.
[5] В другом аспекте предложен способ авторизации операции, предназначенной для выполнения на целевом вычислительном устройстве. Способ включает прием запроса от запрашивающего устройства на выполнение операции на целевом вычислительном устройстве, проверку запроса посредством открытого ключа из первой ключевой пары, образованной личным ключом и открытым ключом, причем запрос подписан личным ключом из первой ключевой пары, образованной личным ключом и открытым ключом, образование ответа на авторизационный запрос, содержащего запрос и токен авторизации, и передачу ответа на авторизационный запрос на запрашивающее устройство.
[6] Еще в одном аспекте предложен способ авторизации операции, предназначенной для выполнения на целевом вычислительном устройстве. Способ включает прием от запрашивающего устройства ответа на авторизационный запрос, содержащего запрос на выполнение операции на целевом вычислительном устройстве и токен авторизации, проверку ответа на авторизационный запрос посредством открытого ключа из ключевой пары, образованной личным ключом и открытым ключом, причем ответа на авторизационный запрос подписан личным ключом из ключевой пары, образованной личным ключом и открытым ключом. Способ также включает выдачу разрешения на выполнение операции после проверки ответа на авторизационный запрос.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
[7] На ФИГ. 1 показан перспективный вид спереди примера устройства мобильной связи.
[8] На ФИГ. 2 показан перспективный вид сзади устройства мобильной связи, изображенного на ФИГ. 1.
[9] На ФИГ. 3 схематически проиллюстрирован пример архитектуры аппаратных средств, которая может быть использована с устройством мобильной связи, показанным на ФИГ. 1.
[10] На ФИГ. 4 схематически проиллюстрирован пример архитектуры программного обеспечения, которая может быть использована с устройством мобильной связи, показанным на ФИГ. 1.
[11] На ФИГ. 5 показана схема последовательности этапов примерного способа заявления о владении персоной, который может быть использован с устройством мобильной связи, показанным на ФИГ. 1.
[12] На ФИГ. 6 схематически проиллюстрирован пример системы для использования при авторизации операции, подлежащей выполнению на устройстве мобильной связи, показанном на ФИГ. 1.
[13] На ФИГ. 7 показана схема последовательности этапов примерного способа обновления программного обеспечения персоны, который может быть использован с устройством мобильной связи, показанным на ФИГ. 1.
[14] На ФИГ. 8 показана схема последовательности этапов примерного способа перехода владения персоной, который может быть использован с устройством мобильной связи, показанным на ФИГ. 1.
[15] На ФИГ. 9 показана схема последовательности этапов примерного способа загрузки новой персоны, который может быть использован с устройством мобильной связи, показанным на ФИГ. 1.
ОСУЩЕСТВЛЕНИЕ ИЗОБРЕТЕНИЯ
[16] В настоящем документе описаны системы и способы, которые могут быть использованы для работы с устройством мобильной связи. В примерном варианте осуществления изобретения устройство мобильной связи управляется архитектурой аппаратных средств и программного обеспечения, которая использует криптографию, такую как криптография на основе открытых личных ключей, для облегчения обеспечения безопасной работы операционных систем, запущенных на нем. В частности, устройство мобильной связи поддерживает множество виртуальных операционных систем, которые работают одновременно на данном устройстве и каждая из которых имеет отдельные корни доверия. Таким образом, доступ виртуальных операционных систем к аппаратным средствам на устройстве обеспечивается с помощью предварительно определенных политик безопасности, для обеспечения заслуживающей доверия работы данного устройства.
[17] На ФИГ. 1 и 2 показан пример устройства 10 мобильной связи. В примерном варианте осуществления изобретения раскрыто устройство 10 мобильной связи для поддержки речевой связи с другим устройством, таким как другое устройство мобильной связи. Кроме того, устройство 10 мобильной связи может включать в себя множество других функциональностей, в том числе доступ к сети, технологию CMC, хостинг из одного или более приложений, обработку данных, шифрование и/или другие функции. Устройство 10 мобильной связи может представлять собой смартфон, выполненный с возможностью связи через одну или более сотовых сетей. В альтернативном варианте осуществления изобретения устройство 10 мобильной связи может работать исключительно через несотовую сеть, такую как сеть WiFi и/или спутниковая сеть.
[18] Как показано, устройство 10 мобильной связи включает в себя корпус 12 и множество устройств 14 воспроизведения, расположенных по меньшей мере частично внутри корпуса 12. Устройство 14 воспроизведения осуществляет вывод информации, такой как, помимо прочего, данные, относящиеся к работе устройства 10 мобильной связи, командам, запрошенным данным, сообщениям, одному или более устройствам ввода (таким как виртуальная клавиатура) и/или любой другой тип данных для пользователя. В нескольких примерах устройство 14 воспроизведения может включать в себя, например, жидкокристаллический дисплей (LCD), дисплей на основе светоизлучающих диодов (LED), светоизлучающий диод (LED), камеру со вспышкой, дисплей на основе органических светоизлучающих диодов (OLED) и/или дисплей на основе "электронных чернил". В некоторые варианты реализации изобретения может быть включено множество устройств 14 воспроизведения для представления данных пользователю визуально и/или на слух. В примерном варианте осуществления изобретения устройство 14 воспроизведения включает в себя аудио выход для использования при речевой связи.
[19] Устройство 10 мобильной связи дополнительно включает в себя множество устройств 16 ввода, расположенных по меньшей мере частично внутри корпуса 12. Каждое устройство 16 ввода может быть выполнено с возможностью приема выбора, запросов, команд, информации, данных и/или ввода другого типа согласно одному способу и/или процессу или большему их количеству из способов и/или процессов, описанных в настоящем документе. Устройства 16 ввода могут включать в себя, например, кнопки, клавиатуру, микрофон, вибрационное устройство (vibe), указательное устройство, стилус, панель, чувствительную к касанию, (например, сенсорную панель или сенсорный экран), гироскоп, акселерометр, цифровой компас, датчик положения, камеру, вторую камеру, датчик внешней освещенности и/или интерфейс аудио ввода. В примерном варианте осуществления изобретения один компонент, такой как сенсорный экран 18, функционирует как устройство 14 воспроизведения и как устройство 16 ввода.
[20] В одном варианте осуществления изобретения устройство 10 мобильной связи включает в себя признаки обеспечения безопасности, которые облегчают обеспечение безопасной работы устройства 10 мобильной связи. Признаки обеспечения безопасности включают в себя устройство 16 ввода, такое как кнопка 17 безопасности, и устройство 14 воспроизведения, такое как множество светодиодов LED. В частности, устройство 10 мобильной связи включает в себя первый светодиод LED 19 и второй светодиод LED 21. Как более подробно будет описано ниже, признаки обеспечения безопасности могут быть использованы для изменения и/или проверки рабочего, доверенного состояния устройства 10 мобильной связи. В альтернативном варианте осуществления изобретения устройство 10 мобильной связи может включать в себя любой тип и/или количество устройств воспроизведения, которые обеспечивают возможность функционирования признаков безопасности, как описано в настоящем документе.
[21] Устройство 10 мобильной связи включает в себя заднюю панель 20, находящуюся в зацеплении с корпусом 12. Задняя панель 20 определяет сечение, по существу совместимое с корпусом 12, образуя, таким образом, с корпусом 12 по существу цельный блок при соединении с ним. Задняя панель 20 выполнена с возможностью извлечения из устройства 10 мобильной связи для обеспечения доступа к одному или более аспектам устройства 10 мобильной связи.
[22] На ФИГ. 3 схематически проиллюстрирован пример архитектуры аппаратных средств, которая может быть использована с устройством 10 мобильной связи (показано на ФИГ. 1). В примерном варианте осуществления изобретения устройство 10 мобильной связи включает в себя запоминающее устройство 22 и процессор 24, соединенный с запоминающим устройством 22, для выполнения запрограммированных инструкций. Процессор 24 может включать в себя один или более процессоров (например, в многоядерной конфигурации) и/или включать в себя криптографический ускоритель (не показано). Устройство 10 мобильной связи выполнено с возможностью программирования для выполнения одной или более операций, описанных в настоящем документе, посредством программирования запоминающего устройства 22 и/или процессора 24. Например, процессор 24 может быть запрограммирован с помощью кодирования операции в виде исполняемых инструкций и обеспечения подачи исполняемых инструкций в запоминающее устройство 22.
[23] Процессор 24 может включать в себя, помимо прочего, центральный процессор общего назначения (CPU), микроконтроллер, процессор вычислительной машины с сокращенным набором команд (RISC), открытую платформу мультимедийных приложений (ОМАР), интегральную схему специального назначения (ASIC), программируемую логическую схему (PLC) и/или любую другую схему или процессор, выполненные с возможностью выполнения функций, описанных в настоящем документе. Способы, описанные в настоящем документе, могут быть закодированы в виде исполняемых инструкций, реализованных в компьютерочитаемом носителе, включающем в себя, без ограничения, устройство хранения и/или запоминающее устройство. Такие инструкции при исполнении процессором 24 заставляют процессор 24 выполнять по меньшей мере часть функций, описанных в настоящем документе. Приведенные выше примеры являются только иллюстративными, и, таким образом, не предназначены для какого-либо ограничения определения и/или значения термина "процессор".
[24] Запоминающее устройство 22, как описано в настоящем документе, представляет собой одно или более устройств, которые обеспечивают возможность хранения и извлечения информации, такой как исполняемые инструкции, и/или других данных. Запоминающее устройство 22 может включать в себя один или более компьютерочитаемых носителей, таких как, без ограничения, динамическое оперативное запоминающее устройство (DRAM), синхронное динамическое оперативное запоминающее устройство (SDRAM), статическое оперативное запоминающее устройство (SRAM), твердотельный диск и/или жесткий диск. Запоминающее устройство 22 может быть выполнено с возможностью хранения, без ограничения, исполняемых инструкций, операционных систем, приложений, ресурсов, сценариев установки и/или любого другого типа данных, пригодных для использования со способами и системами, описанными в настоящем документе.
[25] Инструкции для работы систем и приложений расположены в функциональной форме в энергонезависимом (non-transitory) запоминающем устройстве 22 для исполнения процессором 24 для реализации одного или более процессов, описанных в настоящем документе. Эти инструкции в различных вариантах осуществления изобретения могут быть реализованы на различных физических или материальных компьютерочитаемых носителях, таких как запоминающее устройство 22 или другое запоминающее устройство, такое как компьютерочитаемые носители 26, которые могут включать в себя, без ограничения, флеш-накопитель и/или флеш-драйв. Кроме того, инструкции расположены в функциональной форме в энергонезависимых компьютерочитаемых носителях 26, которые могут включать в себя, без ограничения, карту памяти Smart-Media (SM), карту памяти Compact Flash (CF), карту памяти Secure Digital (SD), карту памяти Memory Stick (MS), карту памяти Multimedia Card (MMC), портативную флеш-карту памяти Embedded-Multimedia Card (e-MMC) и миниатюрный жестких диск Micro-Drive. Компьютерочитаемые носители 26 могут быть выполнены избирательно вставляемыми и/или извлекаемыми из устройства 10 мобильной связи для обеспечения доступа процессору 24 и/или выполнения процессором 24. В некоторых вариантах осуществления изобретения компьютерочитаемые носители 26 выполнены без возможности извлечения.
[26] Со ссылкой на ФИГ. 3 устройство 10 мобильной связи может включать в себя компонент GPS 30, который выполнен с возможностью предоставления процессору 24 данных о местоположении. Данные о местоположении позволяют процессору 24 определять местоположение устройства 10 мобильной связи и/или обеспечивать функциональные возможности в зависимости от местоположения устройства 10 мобильной связи, такие как, например, возможность навигации. В альтернативном варианте осуществления изобретения данные о местоположении могут быть получены для устройства 10 мобильной связи с использованием сети сотовой связи, путем идентификации соседних базовых станций или устройств по стандарту 802.11 и/или Bluetooth и/или их комбинации.
[27] В некоторых вариантах осуществления изобретения устройство 10 мобильной связи дополнительно включает в себя по меньшей мере один криптографический процессор. В частности, устройство 10 мобильной связи включает в себя первый модуль (ТРМ) 60 доверенной платформы и второй модуль ТРМ 62 доверенной платформы. Модули ТРМ доверенной платформы шифруют по меньшей мере часть данных, доступ к которым имеет процессор 24, для обеспечения связи с устройством 10 мобильной связи или получения связи от него и/или для хранения в нем. Соответственно, некоторые данные могут быть отделены от других приложений и/или операций устройства 10 мобильной связи и удерживаться на более высоком уровне безопасности, чем такие другие приложения/операции. Таким образом, модули ТРМ 60 и 62 доверенной платформы облегчают совершение доверительной загрузки, загрузки по технологии Measured Boot, защищенной загрузки, дистанционной аттестации и работу с защищенным хранилищем ключей, например.
[28] Кроме того, устройство мобильной связи включает в себя защищенный элемент 64, соединенный с процессором 24. В частности, защищенный элемент 64 может быть интегрирован в устройство 10 мобильной связи в виде по меньшей мере смарт-карты Universal Integrated Circuit Card (UICC) и/или карты памяти microSD и/или встроен внутрь устройства 10 мобильной связи. Защищенный элемент 64 является защитой от несанкционированного вмешательства среды хранения и выполнения, которая может быть использована в качестве устройства хранилища ключей и/или в качестве якоря доверия или доверенной привязки (trust anchor), реализуемого или реализуемой на основе аппаратных средств, для платформы, работающей на устройстве 10 мобильной связи. В частности, защищенный элемент 64 хранит ключи шифрования данных, пароли и информацию о конфигурации программного обеспечения и аппаратных средств. Кроме того, защищенный элемент 64 генерирует пары открытых ключей и облегчает ограничение экспортирования связанных личных ключей. В альтернативном варианте осуществления изобретения защищенный элемент 64 может быть реализован с помощью модуля ТРМ доверенной платформы.
[29] Устройство 10 мобильной связи также включает в себя память 66 супервизора обеспечения безопасности. Память 66 супервизора обеспечения безопасности хранит данные, реагирующие на несанкционированное вмешательство, которые могут включать в себя множество ключей и могут быть использованы, чтобы создать оболочку для данных внутри защищенного элемента 64 и/или первого модуля ТРМ 60 доверенной платформы или второго модуля ТРМ 62 доверенной платформы. При работе данные, реагирующие на несанкционированное вмешательство, могут быть удалены таким образом, что при обнаружении события несанкционированного вмешательства помещенные в оболочку данные не могут быть восстановлены. Память 66 супервизора обеспечения безопасности может содержать любое количество данных, реагирующих на несанкционированное вмешательство, которое обеспечивает для устройства 10 мобильной связи возможность функционирования, как описано в настоящем документе.
[30] Устройство 10 мобильной связи дополнительно включает в себя контроллер 31 сотовой связи, соединенный с процессором 24. Контроллер 31 сотовой связи позволяет устройству 10 мобильной связи осуществлять связь с одной или более сетями сотовой связи (не показано) для обеспечения речевой связи и/или связи с передачей данных с помощью сети сотовой связи. В этом примере, устройство 10 мобильной связи включает в себя два гнезда 33А и 33В для карты модуля идентификации абонента (SIM-карты), соединенных с контроллером 31 сотовой связи. Таким образом, устройство 10 мобильной связи может принимать две SIM-карты, связанные с двумя различными учетными записями сотовой связи и выбираемые пользователем устройства 10 мобильной связи. Например, устройство 10 мобильной связи может осуществлять доступ к личной учетной записи сотовой связи и деловой учетной записи сотовой связи, обеспечивая пользователю возможность выбора между ними для разделения личного использования и делового использования. Следует отметить, что в других вариантах осуществления изобретения может содержаться различное количество гнезд для SIM-карт.
[31] Кроме того, устройство 10 мобильной связи включает в себя USB-контроллер 35, соединенный с процессором 24. Как показано на ФИГ. 3, USB-контроллер 35 доступен через соединитель 37. Таким образом, одно или более различных устройств могут сообщаться с устройством 10 мобильной связи. Аналогично, устройство 10 мобильной связи дополнительно включает в себя контроллер 39 интерфейса High-Definition Multimedia Interface (HDMI), соединенный с процессором 24 и доступный через соединитель 41. По меньшей мере в одном варианте осуществления изобретения соединители 37 и/или 41 могут обеспечивать micro-USB и/или micro-HDMI соединения с устройством 10 мобильной связи.
[32] Кроме того или в качестве альтернативы устройство 10 мобильной связи может включать в себя одно или более из следующего: Bluetooth контроллер, ZigBee контроллер и/или Wi-Fi контроллер - для обеспечения одного или более беспроводных каналов связи. Хотя компонент 30 системы GPS, первый модуль ТРМ 60 доверенной платформы, второй модуль ТРМ 62 доверенной платформы и контроллер 31 сотовой связи реализованы по меньшей мере частично в аппаратных средствах, следует также понимать, что один или более компонентов, встроенных в устройство 10 мобильной связи, могут быть реализованы посредством программного обеспечения и/или программно-аппаратных средств, связанных с процессором 24. В одном примере процессор 24 обеспечивает образование межсетевого экрана для радиоинтерфейса, выполненного с возможностью анализа низкоуровневых протоколов радиоинтерфейса устройства 10 мобильной связи и разрешения или запрета сетевых передач на основе наименования и характеристики одобренной сети. В этом примере данные по протоколу радиоинтерфейса от контроллера 31 сотовой связи, содержащие наименования и характеристики сети сотовой связи, подают в процессор 24 и анализируют процессором 24 для определения того, что устройство 10 мобильной связи должно иметь разрешение на проведение сетевых передач посредством сетей сотовой связи, идентифицированных контроллером 31 сотовой связи. В этом примере уровень обеспеченного анализа приводит к увеличению сетевой безопасности для устройства 10 мобильной связи посредством того, что процессор 24 принужден дополнительно аутентифицировать сетевые соединения контроллера 31 сотовой связи помимо использования ими стандартных механизмов аутентификации протоколов сети сотовой связи для контроллера 31 сотовой связи. Следует отметить, что другие компоненты радиоинтерфейса для устройства 10 мобильной связи, такие как, например Bluetooth контроллер и/или Wi-Fi контроллер, также могут быть проконтролированы посредством межсетевого экрана для радиоинтерфейса. В альтернативном варианте осуществления изобретения первый модуль ТРМ 60 доверенной платформы и второй модуль ТРМ 62 доверенной платформы могут быть реализованы в программном обеспечении.
[33] Следует отметить, что другие варианты осуществления устройства мобильной связи могут включать в себя большее или меньшее количество компонентов, выполненных за одно целое с процессором 24 или снаружи относительно процессора 24.
[34] На ФИГ. 4 схематически проиллюстрирован пример архитектуры 100 программного обеспечения, которая может быть использована с устройством 10 мобильной связи (показано на ФИГ. 1). В примерном варианте осуществления изобретения архитектура 100 программного обеспечения включает в себя операционную систему 104, установленную на аппаратной платформе 102, которая включает в себя процессор 24 и запоминающее устройство 22. Аппаратная платформа 102 включает в себя компоненты устройства 10 мобильной связи, описанные выше. Архитектура 100 программного обеспечения также включает в себя уровень программного обеспечения виртуализации, такой как гипервизор 106, запущенный поверх операционной системы 104 (т.е. гипервизор типа 2) и супервизор 108 обеспечения безопасности, соединенный с возможностью связи с гипервизором 106. В альтернативном варианте осуществления изобретения гипервизор 106 может быть установлен и работать на аппаратной платформе 102 (т.е. гипервизор типа 1). Гипервизор 106 поддерживает множество пространств исполнения виртуальных машин таким образом, что может быть одновременно создано и выполнено множество экземпляров виртуальных машин.
[35] Гипервизор 106 виртуализирует первую персону 110 и вторую персону 120, которые могут быть выполнены и запущены поверх гипервизора 106. Первая персона 110 включает в себя операционную систему (OS) 112 первой персоны и первую доверенную среду (TEE) 114 исполнения, а вторая персона 120 включает в себя операционную систему 122 второй персоны и вторую доверенную среду 124 исполнения.
[36] Каждая из первой персоны 110 и второй персоны 120 имеет определенную доверенную привязку, которая может быть использована для проверки достоверности доверия и санкционирования действий, выполняемых каждой персоной. В частности, первая персона 110 имеет первую доверенную привязку, а вторая персона 120 имеет вторую доверенную привязку, которая отделена от первой доверенной привязки. При использовании в настоящем документе термин "доверенная привязка" (trust anchor) относится к одному или более секретным ключам шифрования (т.е. криптографическому сертификату), который определяет владельца персоны и который может быть использован для подписывания активных ресурсов персоны. И наоборот, при использовании в настоящем документе термины "владелец" и/или "владение" относятся к персоне или сущности, которая имеет административное управление персоной путем удерживания доверенной привязки. В некоторых вариантах осуществления изобретения корневой сертификат доверенной привязки может быть использован, чтобы подписать сертификационный центр промежуточных сертификатов, который подписывает активные ресурсы пакета персоны.
[37] Каждая доверенная привязка восходит к сертификационному центру корневых сертификатов, который может быть предпринимательской организацией и/или может быть задан облегченным образом для одного пользователя на настольном компьютере. Таким образом, ресурсы первой персоны 110 могут храниться отдельно от второй персоны 120, и могут быть введены в действие политики доступа, которые были согласованы с каждой доверенной привязкой и подписаны каждой доверенной привязкой. Сертификационный центр корневых сертификатов может быть сохранен автономно и в надежном месте. Кроме того, доверенная привязка может включать в себя множество сертификационных центров промежуточных сертификатов, имеющих специально определенные возможности. Примеры возможностей включают в себя, помимо прочего, право задавать операционную систему, право задавать доверенную среду TEE исполнения, право задавать политики безопасности, право задавать другие сертификационные центры промежуточных сертификатов и/или сертификатов пользователей, возможности резервирования, политику резервирования, способность к обновлению операционной системы, способность к обновлению доверенной среды TEE исполнения, функциональность управления мобильными устройствами (MDM) и экспортирование и/или импортирование ключей.
[38] Доверенное программное обеспечение первой персоны 110 и второй персоны 120 каждое запущено в контексте, который изолирован от другого в условиях по умолчанию. В частности, как описано выше, гипервизор 106 облегчает разделение и изолирование первой доверенной среды TEE 114 исполнения и второй доверенной среды TEE 124 исполнения друг от друга. Таким образом, ни на одну из персон не будут влиять другие операционные системы, запущенные на устройстве 10 мобильной связи. Кроме того, первая персона 110 и вторая персона 120 могут быть выполнены с возможностью установления взаимного доверия между первой доверенной средой TEE 114 исполнения и второй доверенной средой TEE 124 исполнения. Установление такого взаимного доверия обеспечивает возможность формирования канала доверенной связи между первой персоной 110 и второй персоной 120. Сообщение первой доверенной среды TEE 114 исполнения и второй доверенной среды TEE 124 исполнения может быть разрешено только путем взаимоувязки политик безопасности первой персоны 110 и второй персоны 120. Кроме того, для облегчения ограничения потока данных между первой персоной 110 и второй персоной 120 может быть реализована высоконадежная защита (не показано). Например, высоконадежная защита может облегчать ограничение потока важных и/или секретных данных между первой персоной 110 и второй персоной 120 с обеспечением возможности потока несекретных данных между ними.
[39] Хотя более подробно будут описаны ниже первая персона 110 и ее элементы, следует понимать, что такое же описание может применяться ко второй персоне 120 и ее элементам. В примерном варианте осуществления изобретения операционная система OS 112 первой персоны является средой исполнения, имеющей ресурсы и драйвера виртуальных устройств, которые обеспечивают возможность запуска полной операционной системы. Пример полной операционной системы может включать в себя, помимо прочего, операционную систему Android® Open Source Project (AOSP). Операционная система OS 112 первой персоны может включать в себя библиотеку, которая обеспечивает для операционной системы OS 112 первой персоны возможность связи с первой доверенной средой TEE 114 исполнения. Кроме того, множество приложений 130 может быть получено из внешнего источника (не показано) и запущено поверх операционной системы OS 112 первой персоны.
[40] Первая доверенная среда TEE 114 исполнения является облегченной средой исполнения, которая отделена от операционной системы OS 112 первой персоны и соединена с возможностью связи с операционной системой OS 112 первой персоны. Первая доверенная среда TEE 114 исполнения является защищенной средой, обеспечивающей область, которая может быть использована для сохранения важных данных и для запуска важных приложений. В альтернативных вариантах осуществления изобретения первая доверенная среда TEE 114 исполнения может быть средой исполнения, имеющей ресурсы и драйвера виртуальных устройств, которые обеспечивают возможность запуска полной операционной системы и/или могут быть запущены на отдельном элементе аппаратных средств. Кроме того, первая персона 110 может включать в себя больше чем одну доверенную среду исполнения.
[41] Первая доверенная среда TEE 114 исполнения имеет прямой доступ к модулю идентификации абонента (SIM) по стандарту IS07816 и/или ТРМ доверенной платформы. В частности, первый модуль ТРМ 60 доверенной платформы (показано на ФИГ. 3) назначен первой персоне 110, а второй модуль ТРМ 62 доверенной платформы (показано на ФИГ. 3) назначен второй персоне 120. Таким образом, первый модуль ТРМ 60 доверенной платформы может быть использован в качестве доверенной привязки на основе аппаратных средств для владельца первой персоны 110, а второй модуль ТРМ 62 доверенной платформы может быть использован в качестве доверенной привязки на основе аппаратных средств для владельца второй персоны 120. Кроме того, первая доверенная среда TEE 114 исполнения имеет прямой доступ к первому модулю ТРМ 60 доверенной платформы и к службам доверенной среды исполнения, таким как аутентификация, доступ к хранилищу ключей, конфигурация виртуальной частной сети (VPN) и/или программное обеспечение для передачи голоса по IP-протоколу (VoIP), например. Изолирование таких важных каналов данных в первой доверенной среде TEE 114 исполнения и от операционной системы OS 112 первой персоны облегчает обеспечение заслуживающей доверия работы устройства 10 мобильной связи при поддержании управления службами доверенной среды исполнения с помощью владельца персоны. Кроме того, обеспечение возможности первой доверенной среде TEE 114 исполнения управления первым модулем ТРМ 60 доверенной платформы облегчает изолирование важной или критичной информации от операционной системы OS 112 первой персоны таким образом, что эта информация находится в более надежной и защищенной среде.
[42] Кроме того, первая доверенная среда TEE 114 исполнения может иметь доступ к криптографическим службам таким образом, что криптографические операции могут быть выполнены от имени операционной системы OS 112 первой персоны без воздействия на нее открытым ключом. В частности, первая доверенная среда TEE 114 исполнения может использовать модули шифрования в первом модуле ТРМ 60 доверенной платформы, который обеспечивает возможность криптографии на основе несертифицированных аппаратных ускорителей, программный комплект В и/или шифрование, сертифицированное по стандарту FIPS-140-2. Устройство 10 мобильной связи также может включать в себя модуль VPN виртуальной частной сети и/или модуль VoIP передачи голоса по IP-протоколу. Модуль VPN виртуальной частной сети обеспечивает для первой персоны 110 возможность аутентификации виртуальной частной сети VPN и связи с шифрованием без видимости ключей аутентификации или шифрования для кода, не имеющего доверия. Кроме того, модуль VoIP передачи голоса по IP-протоколу обеспечивает для первой персоны 110 возможность установления и аутентификации звонка с передачей голоса по IP-протоколу и связи с шифрованием без видимости ключей аутентификации или шифрования для кода, не имеющего доверия.
[43] Доверие операционной системы OS 112 первой персоны и операционной системы OS 122 второй персоны задают целостностью загрузочного образа каждой персоны, загруженного аппаратными средствами 102 платформы. Например, доверие первой доверенной среды TEE 114 исполнения задают целостностью ее статического образа при загрузке аппаратными средствами 102 платформы, как более подробно будет описано ниже. В частности, код, загруженный в первую доверенную среду TEE 114 исполнения, подвергают проверке на достоверность в зависимости от доверенной привязки во время загрузки, и после своей загрузки образ является неизменяемым. Поскольку образ является неизменяемым, первая доверенная среда TEE 114 исполнения может быть изменена только посредством загрузки нового подписанного образа поверх первой доверенной среды TEE 114 исполнения. Кроме того, операционная система OS 112 первой персоны и операционная система OS 122 второй персоны могут использовать ресурсы, находящиеся вне их собственной среды исполнения для управления своей целостностью. Например, загрузка операционных системам может быть зашифрована и проверена на достоверность, а доступ операционных систем к аппаратным ресурсам может быть ограничен и обеспечен с помощью конфигураций, находящихся за пределами их управления.
[44] Архитектура 100 программного обеспечения также включает в себя первичный программный загрузчик 140, который загружает операционную систему 104, первый вторичный программный загрузчик 142, который загружает операционную систему OS 112 первой персоны, и второй вторичный программный загрузчик 144, который загружает операционную систему OS 122 второй персоны. В примерном варианте осуществления изобретения устройство 10 мобильной связи использует процессор, который облегчает установление доверия для платформ во время процесса загрузки. В частности, процессор обеспечивает возможность проверки достоверности подписи программных загрузчиков для облегчения установления доверия во время загрузки каждой операционной системы. Например, устройство 10 мобильной связи использует комбинацию фиксированных значений хэшей и проверки достоверности подписи таким образом, что цепочка доверия остается непрерывной, когда она проходит от аппаратной платформы 102 к первой персоне 110 и второй персоне 120.
[45] При эксплуатации процессор 24 загружает первичный программный загрузчик 140, если он подписан цифровым образом корнем доверия изготовителя устройства. При использовании в настоящем документе термин "корень доверия изготовителя устройства" относится к одному или более секретным ключам шифрования (т.е. криптографическому сертификату), используемым изготовителем устройства для подписывания активных ресурсов, только что установленных на устройство 10 мобильной связи. Цепочка доверия остается проходящей непрерывно через гипервизор 106 для облегчения установления сред изолированного выполнения программ, проверки достоверности компонентов в устройстве 10 мобильной связи и/или сохранения измерений в модулях доверенной платформы для дальнейшего использования кодом пользователя для связывания в зависимости от доверенного состояния.
[46] Управление первым модулем ТРМ 60 доверенной платформы передают первой персоне 110, а управление вторым модулем ТРМ 62 доверенной платформы передают второй персоне 120 таким образом, что аспекты загрузки по технологии Measured Boot для модулей ТРМ 60 и 62 доверенной платформы могут быть использованы первой персоной 110 и второй персоной 120. В частности, модули ТРМ 60 и 62 доверенной платформы инициализируют программным обеспечением доверительной загрузки устройства 10 мобильной связи, и затем передают управление каждой персоне для их исключительного использования после загрузки персон. Если персона использует модуль ТРМ доверенной платформы для доверительной загрузки, то изменения аппаратных средств и/или программного обеспечения могут приводить к неспособности извлечения ключей, которые связаны в отношении первоначальных конфигураций таким образом, что персона не может осуществить программную перезагрузку без перезагрузки всего устройства.
[47] Во время процесса загрузки модули ТРМ доверенной платформы измеряют (т.е. хэшируют) критические компоненты программного обеспечения и программно-аппаратных средств, используемых в устройстве 10 мобильной связи. Например, корень доверия для измерения может быть установлен, когда измерения для первичного программного загрузчика 140, операционной системы 104, гипервизора 106, супервизора 108 обеспечения безопасности, программного загрузчика 142 и операционной системы OS 112 первой персоны внедрены в первый модуль ТРМ 60 доверенной платформы. Измерения могут быть сохранены в регистрах конфигурации платформы (PCR), расположенных в первом модуле ТРМ 60 доверенной платформы, и могут быть использованы для проверки достоверности образа операционной системы в зависимости от связанной доверенной привязки во время программной загрузки. Таким образом, целостность системы может быть верифицирована перед получением доступа к важной или критичной информации, которая может быть связана с регистрами PCR конфигурации платформы.
[48] Персоны могут быть ответственны за свою собственную целостность после перехода управления от доверия изготовителя устройства во время программной загрузки. Например, ответственностью операционной системы OS 112 первой персоны является проверка достоверности приложений 130, установленных и запущенных в операционной системе OS 112 первой персоны. Таким образом, в случае, если какое-либо мошенническое приложение (не показано) компрометирует целостность гостевой операционной системы, запущенной на устройстве 10 мобильной связи, это компрометирование не повлияет на целостность других гостевых операционных систем, если они не имеют доверительных отношений со скомпрометированной операционной системой.
[49] Супервизор 108 обеспечения безопасности соединен с возможностью связи с операционными системами OS 112 и 122 первой и второй персон. Супервизор 108 обеспечения безопасности представляет собой операционную систему, которая облегчает сохранение и выполнение политик безопасности для использования при эксплуатации устройства 10 мобильной связи. Супервизор 108 обеспечения безопасности запускается в изолированной среде и может иметь доступ к ресурсам платформы, дополнительным интерфейсам и/или дополнительным возможностям. В некоторых вариантах осуществления изобретения первая персона 110 и вторая персона 120 отделены посредством доверенного механизма (т.е. виртуализации центрального процессора CPU) таким образом, что владелец персоны не может конфигурировать политику безопасности персоны, которой он не владеет. Например, политика безопасности первой персоны 110 может быть сконфигурирована только собственником первой персоны, а политика безопасности второй персоны 120 может быть сконфигурирована только собственником второй персоны. В частности, каждая политика безопасности может быть подписана личным ключом владельца персоны, а достоверность подписи может быть проверена устройством 10 мобильной связи с использованием соответствующего открытого ключа владельца персоны до того, как супервизор 108 обеспечения безопасности будет применен к политике безопасности для связанной персоны. Владение и политики безопасности для первой персоны 110 и второй персоны 120 сохраняют в конфигурационном файле, который может поддерживаться супервизором 108 обеспечения безопасности. Кроме того, достоверность владения и политик безопасности проверяют криптографическими сертификатами. Таким образом, каждый владелец персоны может задавать операционную систему, доверенную среду исполнения и политику безопасности для персоны, которой он владеет.
[50] Политики безопасности для первой персоны 110 и второй персоны 120 могут быть заданы владельцами персон и могут быть заданы, сохранены и введены в действие изолированно от кода персоны. Политики безопасности определяют, как каждая связанная персона может осуществлять доступ к физическим устройствам на устройстве 10 мобильной связи. Например, политики безопасности ограничивают доступ персоны к одному или более физическим устройствам, задают нормативы для исключительного доступа персоны к одному или более физическим устройствам и/или задают нормативы для доступа совместно используемого устройства для первой персоны 110 и второй персоны 120. В частности, нормативы для доступа к совместно используемому устройству могут обеспечивать возможность совместной работы с данным устройством таким образом, что только персона, осуществляющая управление пользовательским интерфейсом, имеет доступ к совместно используемому устройству. Кроме того, заданные правила в одной или более политиках безопасности для доступа к совместно используемому устройству могут обеспечивать возможность совместной работы с данным устройством таким образом, что персона, запущенная в фоновом режиме, может продолжать осуществление доступа к совместно используемому устройству. Таким образом, правила, заданные политиками безопасности, обеспечивают для владельцев персон возможность точной настройки устройства 10 мобильной связи в различных конфигурациях, чтобы они отвечали их потребностям.
[51] Базовые образ и/или файловые системы первой персоны 110 могут быть зашифрованы и сохранены на внутреннем и/или съемном носителе. Кроме того, загрузочный объем первой персоны 110 может быть зашифрован таким образом, что предзагрузочная аутентификация на основе процесса доверенной загрузки может потребоваться перед тем, как первая персона 110 сможет совершить программную загрузку и иметь доступ к важным данным, сохраненным в ней. В частности, во время процесса доверенной загрузки пользователь может получить приглашение для ввода учетных данных перед тем, как первой персоне 110 будет позволено совершить программную загрузку. Пользователь может пожелать осуществить проверку состояния устройства 10 мобильной связи перед вводом своих учетных данных. Например, пользователь может выдавать запрос верификации того, что устройство 10 мобильной связи находится в доверенном состоянии перед вводом пароля и/или личного идентификационного номера (PIN), чтобы удостоверится в аутентичности экрана ввода. Как описано выше, устройство 10 мобильной связи включает в себя признаки обеспечения безопасности, такие как кнопка 17 безопасности и/или светодиоды LED 19 и 21 (показано на ФИГ. 1). Признаки обеспечения безопасности изолированы в аппаратных средствах, которые недоступны из не имеющего доверия кода, запущенного на устройстве 10 мобильной связи для облегчения проверки того, что экран ввода является аутентичным.
[52] При эксплуатации пользователь может привести в действие кнопку 17 безопасности, когда на сенсорном экране 18 появляется диалог аутентификации (показано на ФИГ. 1). Приведение в действие кнопки 17 безопасности приводит к отображению корня информации доверия для устройства 10 мобильной связи и/или приводит к отображению корня информации доверия для программного обеспечения, выдающего запрос на появление диалога аутентификации. Например, корень информации доверия может включать в себя корень информации доверия для устройства 10 мобильной связи и/или для персоны, запущенной на устройстве 10 мобильной связи. Таким образом, пользователь может проверить корень информации доверия и безопасно ввести запрашиваемые учетные данные. В альтернативном варианте осуществления изобретения диалог аутентификации может быть верифицирован, когда светодиоды LED 19 и 21 активированы в предварительно определенной конфигурации.
[53] В одном варианте осуществления изобретения пользователь может пожелать изменить рабочее состояние устройства мобильной связи. В частности, пользователь может пожелать осуществить переход фокуса устройства 10 мобильной связи между персонами, запущенными на устройстве 10 мобильной связи. Например, приведение в действие кнопки 17 безопасности облегчает переход фокуса между первой персоной 110 и второй персоной 120. Кроме того, первый светодиод LED 19 назначают первой персоне 110, а второй светодиод LED 21 назначают второй персоне 120. Первый светодиод LED 19 может быть включен и второй светодиод LED 21 может быть выключен, когда в фокусе находится первая персона 110, а второй светодиод LED 21 может быть включен и первый светодиод LED 19 может быть выключен, когда в фокусе находится вторая персона 120. Таким образом, первый светодиод LED 19 и второй светодиод LED 21 обеспечивают визуальную обратную связь для пользователя на основе рабочего состояния устройства 10 мобильной связи.
[54] По меньшей мере один из модулей ТРМ 60 и 62 доверенной платформы имеет признак физического присутствия, который является приглашением для пользователя осуществить проверку своего присутствия в отношении устройства 10 мобильной связи. Например, признак физического присутствия может быть реализован для осуществления проверки того, что операция, запущенная на устройстве 10 мобильной связи, не выполняется удаленно. Таким образом, для проверки физического присутствия пользователя может быть нажата кнопка 17 безопасности.
[55] На ФИГ. 5 показана схема последовательности этапов примерного способа заявления владения персоной, который может быть использован с устройством 10 мобильной связи. В примерном варианте осуществления изобретения устройство 10 мобильной связи использует криптографические корни доверия для задания владения первой персоны 110 и второй персоны 120. Например, первая персона 110 может иметь конфигурацию для использования одной сущностью, а вторая персона 120 может иметь конфигурацию для использования другой сущностью. Выпускающая сторона (т.е. предприятие) устройства 10 мобильной связи может выпустить одно или более устройств 10 мобильной связи для пользователя (например, клиента и/или сотрудника, работающего по найму). В таком варианте осуществления изобретения первая персона 110 может иметь конфигурацию для делового использования, а вторая персона 120 может иметь конфигурацию для личного использования. В альтернативном варианте осуществления изобретения устройство 10 мобильной связи может быть выполнено с возможностью разделения персон посредством назначения отдельных модулей SIM идентификации абонента, отдельных служб и/или посредством изолирования данных, операционных систем и сотовой связи первой персоны 110 и второй персоны 120.
[56] Использование криптографических корней доверия обеспечивает для устройства 10 мобильной связи возможность проверки целостности конфигурации персоны и ограничения на изменение авторизованными сторонами прав персоны. Например, устройство 10 мобильной связи может быть предоставлено конечному пользователю по меньшей мере с одной персоной по умолчанию (т.е. персоной без заданного владения), установленной на нем. Персону по умолчанию подписывают по умолчанию доверенной привязкой от изготовителя, которая означает, что персона является неизменной и имеет назначенную ей политику по умолчанию. Конечный пользователь может затем использовать персону по умолчанию, однако не сможет настроить ее под себя без того, чтобы сначала получить владение путем задания корня доверия.
[57] Оператор 200 заявляет о владении персоной, такой как вторая персона 120, путем создания 212 корня доверия для персоны на рабочей станции диспетчера РМ 202 персон (РМ). В некоторых вариантах осуществления изобретения диспетчер РМ 202 персон может также обеспечивать оператору 200 возможность редактирования и/или задания политики безопасности для персоны и/или осуществления обновления образов персоны и/или доверенной среды исполнения, такой как вторая доверенная среда TEE 124 исполнения. Оператор 200 выдает запрос, чтобы диспетчер 204 устройств (DM) сгенерировал 214 заявочный мандат на заявление операционной системы, такой как операционная система OS 122 второй персоны, для передачи владения от доверенной привязки по умолчанию к созданному 212 корню доверия. Передачу затем санкционируют 216, и устройство 10 мобильной связи осуществляет перезагрузку 218.
[58] Во время перезагрузки 218 оператор 200 соединяет кабель универсальной последовательной шины (USB) между диспетчером DM 204 устройств и устройством 10 мобильной связи, а устройство 10 мобильной связи обнаруживает USB-соединение и вводит режим программирования таким образом, что операционные системы персон не осуществляют загрузку. Оператор 200 затем выдает запрос 220 от рабочей станции на запуск диспетчером DM 204 устройств программного обеспечения для передачи персоны новому владельцу. Запрос направляют 222 к супервизору 206 обеспечения безопасности, и запрос может задавать доверенную привязку для новой персоны. Супервизор 206 обеспечения безопасности затем использует сгенерированный 214 заявочный мандат для запроса 224 авторизации от оператора 200 на осуществление проверки его наименования, а оператор 200 вводит 226 пароль предварительно определенного устройства в ответ на запрос 224 авторизации. Запрос 224 также может быть подписан созданным 212 корнем доверия.
[59] Устройство 10 мобильной связи затем предоставляет запрос 228 аутентификации от супервизора 206 обеспечения безопасности пользователю для ввода своих учетных данных, чтобы осуществить разблокирование защищенного элемента 208. Если посредством доверенной привязки по умолчанию для персоны получено подтверждение, что ею никто не владеет, хэшы активных ресурсов для старой персоны и ее подписи передают 234 диспетчеру DM 204 устройств. Диспетчер DM 204 устройств верифицирует подписи и снова подписывает хэши ключом для подписей новой персоны, который имеет полномочия для подписывания соответствующих активных ресурсов. Кроме того, ключ персоны, который разрешает доступ к ключам носителей персоны, изменяют. Подписи замены затем передают 236 от диспетчера DM 204 устройств к устройству 10 мобильной связи, и устройство 10 мобильной связи проверяет достоверность подписи и заменяет старые подписи на активных ресурсах персоны новыми подписями.
[60] Затем создают 238 файл перехода персоны, а конфигурационный файл для персоны проверяют на предмет достоверности и конфликтов с конфигурационными файлами, уже находящимися на устройстве 10 мобильной связи. Указанный процесс продолжают, если конфигурационный файл прошел проверку на достоверность, и обновление программного обеспечения прекращают, если существует конфликт между конфигурационными файлами. Аутентификацию персоны пользователя обновляют 240 при авторизации для продолжения таким образом, что ключи носителей могут быть доступны с помощью нового корня доверия и возвращены 242 диспетчеру DM 204 устройств.
[61] Диспетчер DM 204 устройств подписывает активные ресурсы, которые подвергаются обновлению и возвращает подписанные хэши. Например, активные ресурсы, которые подвергаются обновлению, могут иметь подписи, которые обновлены заново подписанными хэшами и/или могут быть обновлены 246 новыми подписями. Для файла перехода персоны после каждого обновления создают контрольную точку 244 для обеспечения возможности перезапуска процесса от прерванного обновления. После завершения обновления данные буфера сбрасывают 248 на флеш-устройство 210, файл перехода персоны удаляют 250, и устройство 10 мобильной связи осуществляет перезагрузку 252.
[62] На ФИГ. 6 схематически проиллюстрирован пример системы 300 для использования при авторизации операции, подлежащей выполнению на устройстве 10 мобильной связи. В примерном варианте осуществления изобретения сущность может иметь необходимость в санкционировании перед получением для нее разрешения на изменение программного обеспечения, установленного на целевом вычислительном устройстве, таком как устройство 10 мобильной связи. Например, после загрузки персоны на устройство 10 мобильной связи, держатель устройства сохраняет полномочие на удаление и/или замену этой персоны, но владелец персоны имеет полномочие его модифицировать. Таким образом, сущность, действующая от имени владельца персоны, может иметь необходимость в своей авторизации в качестве имеющей предварительно определенные разрешения на изменение персоны, предоставленные ей владельцем персоны. При использовании в настоящем документе термин "держатель устройства" относится к сущности, которая использует персону по умолчанию для работы с устройством 10 мобильной связи.
[63] Компьютер администратора, такой как диспетчер 302 устройств (DM), может генерировать и передавать запрос на сервер 304 авторизации для авторизации, чтобы выполнить операцию на устройстве 10 мобильной связи. Запрос представляет собой файл, который определяет параметры для выполняемой операции на устройстве 10 мобильной связи. Примеры параметров включают в себя, помимо прочего, идентификацию целевого вычислительного устройства (например, устройства 10 мобильной связи), операцию, которая должна быть выполнена на целевом вычислительном устройстве, промежуток времени, на протяжении которого указанная операция будет выполняться, и географическое положение целевого вычислительного устройства. Кроме того, запрос подписывают первым личным ключом из ключевой пары, образованной личным ключом и открытым ключом, назначенным администратору. В некоторых вариантах осуществления изобретения запрос может быть передан с помощью съемного носителя (не показано).
[64] Сервер 304 авторизации принимает запрос от диспетчера DM 302 устройств и верифицирует подпись диспетчера DM 302 устройств с помощью открытого ключа из ключевой пары, образованной личным и открытым ключами. Сервер 304 авторизации также определяет, согласованы ли параметры операции, подлежащей выполнению, с политикой безопасности устройства 10 мобильной связи. Параметры авторизации могут быть сохранены в базе данных 306 авторизации, которая доступна с помощью сервера 304 авторизации. Сервер 304 авторизации затем генерирует ответ на авторизационный запрос, если запрос был авторизован. Ответ на авторизационный запрос может включать в себя запрос от диспетчера DM 302 устройств и токен авторизации, созданный сервером 304 авторизации. Токен авторизации может быть использован для авторизации запрашиваемой операции. В некоторых вариантах реализации изобретения токен авторизации может иметь предварительно определенный срок службы, за который может быть выполнена запрашиваемая операция, может иметь предварительно определенный срок службы, может быть ограничен предоставлением авторизации для конкретного целевого вычислительного устройства и/или может выполнить авторизацию выполнения одной или множества операций на устройстве 10 мобильной связи. Только в качестве примера, токен авторизации может включать в себя авторизацию для выполнения операции на предварительно определенном целевом вычислительном устройстве и/или авторизацию для выполнения предварительно определенной операции на целевом вычислительном устройстве. Кроме того, токен авторизации может быть сгенерирован по меньшей мере перед одним из следующего: прием запроса для выполнения операции на устройстве 10 мобильной связи, и в ответ на верификацию запроса для выполнения операции на устройстве 10 мобильной связи. Ответ на авторизационный запрос затем может быть подписан вторым личным ключом из ключевой пары, образованной личным и открытым ключами, связанным с сервером авторизации компьютера и переданным на указанный компьютер администратора. В альтернативном варианте осуществления изобретения ответ на авторизационный запрос может быть подписан оператором аутентификации. Например, запрос может быть поставлен в очередь и либо подписан, предоставлен, либо запрещен оператором аутентификации. В некоторых вариантах осуществления изобретения ответ на авторизационный запрос может быть передан посредством съемного носителя (не показано).
[65] Диспетчер DM 302 устройств принимает ответ на авторизационный запрос и определяет, авторизует ли токен авторизации запрашиваемую операцию. Например, диспетчер DM 302 устройств может осуществить проверку ответа на авторизационный запрос с помощью открытого ключа из второй ключевой пары, образованной личным и открытым ключами, при этом ответ на авторизационный запрос подписывают с помощью личного ключа из второй ключевой пары, образованной личным и открытым ключами. Диспетчер DM 302 устройств затем передает файл ответа на авторизационный запрос в устройство 10 мобильной связи для запроса операции, подлежащей выполнению, если запрос был авторизован. Передача ответа на авторизационный запрос может включать в себя подписывание ответа на авторизационный запрос с помощью личного ключа из ключевой пары, образованной личным и открытым ключами. Устройство 10 мобильной связи принимает ответ на авторизационный запрос и верифицирует подписи с помощью открытого ключа из ключевой пары, образованной личным и открытым ключами, связанными с компьютером администратора, и определяет, согласованы ли параметры, указанные в ответе на авторизационный запрос, с политикой безопасности устройства 10 мобильной связи. Устройство 10 мобильной связи разрешает продолжение запрашиваемой операции, если подписи верифицированы, а параметры согласованы. Привилегированная операция затем может быть выполнена на устройстве 10 мобильной связи. В альтернативном варианте осуществления изобретения ответ на авторизационный запрос может включать в себя цепь сертификатов для авторизации корня доверия. Кроме того, в альтернативном варианте осуществления изобретения токен авторизации может быть сгенерирован и передан с помощью переноса электронной информации по технологии Sneakernet.
[66] На ФИГ. 7 показана схема последовательности этапов примерного способа обновления программного обеспечения персоны, который может быть использован с устройством 10 мобильной связи. В примерном варианте осуществления изобретения оператор 400 может обновить операционную систему OS существующей персоны, такой как вторая персона 120, путем соединения USB-кабеля, проходящего от рабочей станции 402 диспетчера устройств (DM), с устройством 10 мобильной связи. Запускают программное обеспечение диспетчера устройств, и оператор 400 предписывает устройству 10 мобильной связи совершить перезагрузку 410. Во время перезагрузки 410 устройство 10 мобильной связи обнаруживает USB-соединение и вводит режим программирования таким образом, что операционные системы персон не осуществляют загрузку. Оператор 400 затем предписывает программному обеспечению 412 диспетчера DM устройств выдать запрос 414 на обновление операционной системы OS персоны на устройстве 10 мобильной связи. Рабочая станция 402 диспетчера DM устройств осуществляет контакт с сервером авторизации для получения токена авторизации. Токен авторизации может быть помещен в кэш-память и/или загружен из автономного источника. Супервизор 404 обеспечения безопасности затем может авторизовать 416 запрос 414, и обновление 418 персоны может быть продолжено. В некоторых вариантах осуществления изобретения программное обеспечение диспетчера DM устройств выдаст оператору 400 предупредительный сигнал и откажет в выполнении процесса обновления, если действительный токен авторизации отсутствует.
[67] Рабочая станция 402 диспетчера DM устройств включает в себя используемый совместно секретный ключ, который может быть использован для разблокирования защищенного элемента 406. Только ключи шифрования и защиты памяти, относящиеся к авторизованной персоне, могут быть извлечены из защищенного элемента 406 с использованием аутентификации, обеспечиваемой этим используемым совместно секретным ключом. Устройство 10 мобильной связи затем проверяет достоверность токена авторизации для осуществления проверки того, что оператор 400 имеет привилегии для выполнения запрашиваемой операции. Пользователя аутентифицируют 420 посредством защищенного элемента 406, и операция отменяется, если оператор 400 не имеет необходимых учетных данных.
[68] Программное обеспечение диспетчера DM устройств затем выдает запрос 422 на данные геометрии устройства персоны от устройства 10 мобильной связи. Данные геометрии устройства могут включать в себя, помимо прочего, размер операционной системы OS и компоненты доверенной среды TEE исполнения для персоны. Обновление программного обеспечения продолжают, если геометрия персоны соответствует геометрии устройства, и обновление программного обеспечения останавливают и выдают сигнал ошибки, если есть несоответствие. В альтернативном варианте осуществления изобретения номер редакции пакетов, которыми владеет персона, также может быть предоставлен, так что владелец персоны может осуществить проверку совместимости данного обновления.
[69] Программное обеспечение диспетчера DM устройств начинает процесс загрузки посредством передачи 424 программного обеспечения, подлежащего обновлению, в устройство 10 мобильной связи. В одном варианте осуществления изобретения обновление программного обеспечения начинают посредством передачи 426 конфигурации персоны, если она содержится в обновлении. Супервизор 404 обеспечения безопасности затем изучает и оценивает геометрию конфигурационного файла, корень доверия и подпись для определения того, произойдет ли конфликт с другими конфигурационными файлами, уже загруженными на устройство 10 мобильной связи. Обновление программного обеспечения продолжают, если конфигурационный файл прошел проверку на достоверность 428 и/или если конфигурационный файл не подвергается обновлению, и обновление программного обеспечения прекращают, если существует конфликт между конфигурационными файлами. Кроме того, обновленные операционная система и/или доверенная среда исполнения могут быть загружены 430 и 432 на устройство 10 мобильной связи.
[70] Переданные обновления программного обеспечения сохраняют в флеш-памяти 408 и проверяют на достоверность в зависимости от доверенной привязки. Затем создают 434 файл перехода персоны для указания на то, какое программное обеспечение подлежит обновлению, и данное программное обеспечение записывают на флеш-устройство 408, а в файле перехода после каждого обновления создают контрольную точку. Например, новый конфигурационный файл записывают 436 на флеш-устройство 408 и для файла перехода создают контрольную точку 438, файловую систему операционной системы OS для новой персоны записывают 440 на флеш-устройство 408 и для файла перехода создают контрольную точку 442, и файловую систему доверенной среды TEE исполнения для новой персоны записывают 444 на флеш-устройство 408 и для файла перехода создают контрольную точку 446. В примерном варианте осуществления изобретения файловые системы целевого флеш-устройства программируют на основе содержимого памяти, сохраненного ранее, и шифруют во время передачи с использованием ключей защиты памяти из конфигурационного файла. После завершения обновления данные буфера сбрасывают 448 на флеш-устройство 408, файл перехода персоны удаляют 450, и устройство 10 мобильной связи осуществляет перезагрузку 452.
[71] На ФИГ. 8 показана схема последовательности этапов примерного способа перехода владения персоной, который может быть использован с устройством 10 мобильной связи. Владение персоной, загруженной на устройство 10 мобильной связи, может перейти к новому владельцу без обновления данных персоны. В примерном варианте осуществления изобретения новый владелец генерирует 510 передаточный мандат в диспетчере (DM) устройств (новую таблицу RoT запущенных объектов) 502. Передаточный мандат может быть блоком данных, подробно описывающим конкретное устройство, к которому должен быть осуществлен переход, и ожидаемый текущий корень доверия. Этот блок данных затем отправляют текущему владельцу персоны, и текущий владелец персоны верифицирует указанную информацию в диспетчере DM устройств владельца текущей персоны (новой таблице RoT запущенных объектов) 502.
[72] Оператор 500, работающий от имени текущего владельца персоны, затем получает токен авторизации, указывающий на факт авторизации 512 и 514 оператора и текущего владельца персоны посредством диспетчера DM 503 устройств (старой таблицы RoT запущенных объектов) для передачи указанной персоны. Токен авторизации затем прикрепляется к передаточному мандату, и токен авторизации подписывает передаточный мандат, подписанный передаточный мандат передают во флеш-устройство 508 и сохраняют 516 на флеш-устройстве 508. Подписанный передаточный мандат также может быть возвращен ожидаемому новому владельцу персоны вместе с ключом аутентификации для сегмента персоны внутри защищенного элемента 506. В таком варианте осуществления изобретения ключ аутентификации может быть помещен в оболочку с использованием открытого ключа оператора диспетчера DM устройств нового владельца персоны, при этом открытый ключ прикреплен к передаточному мандату. Оператор, работающий от имени нового владельца персоны, может затем использовать помещенный в оболочку передаточный мандат для начала процесса передачи. В частности, устройство 10 мобильной связи может осуществить проверку учетных данных нового владельца персоны и санкционировать передачу.
[73] Оператор 500 затем соединяет USB-кабель, идущий от рабочей станции диспетчера DM (новой таблицы RoT запущенных объектов) 502 устройств, с устройством 10 мобильной связи. Запускают программное обеспечение диспетчера устройств, и оператор 500 предписывает устройству 10 мобильной связи совершить перезагрузку 518. Во время перезагрузки 518 устройство 10 мобильной связи обнаруживает USB-соединение и вводит режим программирования таким образом, что операционные системы персон не осуществляют загрузку. Оператор 500 затем инструктирует программное обеспечение диспетчера DM устройств для перехода персоны, владение которой осуществляется текущим владельцем персоны, новому владельцу персоны. Передаточный мандат включает в себя информацию, необходимую для авторизации, и сертификат архитектуры открытых ключей (PKI) оператора 500, который служит для аутентификации запроса, подписанного корнем доверия для предыдущего владельца персоны, к которой осуществлен переход.
[74] Программное обеспечение диспетчера DM устройств использует секретный ключ оператора 500 для высвобождения из оболочки ключа аутентификации на основе передаточного мандата. Ключ аутентификации затем может быть использован 520 для запроса 522 на передачу персоны и для аутентификации 524 оператора для разблокирования защищенного элемента 506 на устройстве 10 мобильной связи. В таком варианте осуществления изобретения аутентификация 524 обеспечивает для ключей шифрования и защиты памяти, относящихся к авторизованной персоне, только возможность извлечения из защищенного элемента 506.
[75] Переход дополнительно включает в себя передачу 530 хэшей активных ресурсов старой персоны диспетчеру DM 502 устройств. Диспетчер DM 502 устройств верифицирует подписи и снова подписывает хэши ключом для подписей новой персоны, который имеет полномочия для подписывания соответствующих активных ресурсов. Кроме того, ключ персоны, который разрешает доступ к ключам носителей персоны, изменяют и новое значение передают диспетчеру DM 502 устройств. Замены подписей затем передают 532 от диспетчера DM 502 устройств в устройство 10 мобильной связи, и устройство 10 мобильной связи проверяет достоверность подписи и заменяет старые подписи на активных ресурсах персоны новыми подписями.
[76] Затем создают 534 файл перехода персоны, и конфигурационный файл для персоны проверяют на предмет достоверности и конфликтов с конфигурационными файлами, уже загруженными на устройство 10 мобильной связи. Указанный процесс продолжают, если конфигурационный файл прошел проверку на достоверность, и обновление программного обеспечения прекращают, если существует конфликт между конфигурационными файлами. Аутентификацию персоны пользователя обновляют 536 при авторизации для продолжения таким образом, что ключи носителей могут быть доступны посредством нового корня доверия и возвращены 538 диспетчеру DM 502 устройств.
[77] Диспетчер DM 502 устройств подписывает активные ресурсы, которые
подвергаются обновлению и возвращает подписанные хэши. Например, активные ресурсы, которые подвергаются обновлению, могут иметь подписи, которые обновлены заново подписанными хэшами и/или могут быть обновлены 542 с помощью новых подписей. Для файла перехода персоны создают контрольную точку 540 после каждого обновления для обеспечения возможности перезапуска от прерванного обновления. После завершения обновления данные буфера сбрасывают 544 на флеш-устройство 508, файл перехода персоны удаляют 546, и устройство 10 мобильной связи осуществляет перезагрузку 548.
[78] После передачи владения персоной новому владельцу персоны, может иметь место необходимость в установлении новых доверительных отношений между персоной, к которой осуществлен переход, и любыми персонами, которые имели доверительные отношения с предыдущим владельцем персоны. В частности, конфигурация персоны для других персон, запущенных на устройстве 10 мобильной связи, может нуждаться в обновлении для установления доверительных отношений с новым владельцем персоны для сохранения такой же функциональности, как с предыдущим владельцем персоны.
[79] На ФИГ. 9 показана схема последовательности этапов примерного способа загрузки новой персоны, который может быть использован с устройством 10 мобильной связи. В примерном варианте осуществления изобретения оператор 600 соединяет USB-кабель, проходящий от рабочей станции 602 диспетчера устройств (DM), с устройством 10 мобильной связи. Запускают программное обеспечение диспетчера устройств, и оператор 600 предписывает устройству 10 мобильной связи совершить перезагрузку 612. Во время перезагрузки 612 устройство 10 мобильной связи обнаруживает USB-соединение и вводит режим программирования таким образом, что операционные системы персон не осуществляют загрузку. Оператор 600 затем получает приглашение 614 для авторизации USB-соединения с помощью пароля для устройства, которое держит владелец устройства, производится ввод 616 пароля для устройства 616 и аутентификация 618 для разблокирования защищенного элемента 606. В альтернативном варианте осуществления изобретения устройство 10 мобильной связи может быть снова инициализировано и произведен сброс к заводской конфигурации.
[80] Программное обеспечение диспетчера DM устройств затем выдает запрос 620 на данные геометрии устройства персоны от устройства 10 мобильной связи, и оператор 600 предписывает рабочей станции 602 диспетчера DM устройств совершить загрузку 622 пакета персоны в сегмент конкретной персоны. Данные геометрии устройства могут включать в себя, помимо прочего, размер операционной системы OS и компоненты доверенной среды TEE исполнения для персоны. Обновление программного обеспечения продолжают, если геометрия персоны соответствует геометрии устройства, и обновление программного обеспечения останавливают и выдают сигнал ошибки, если есть несоответствие. В альтернативном варианте осуществления изобретения номер редакции пакетов, которыми владеет персона, также может быть предоставлен, так что владелец персоны может осуществить проверку совместимости данного обновления.
[81] Программное обеспечение диспетчера DM устройств начинает процесс загрузки посредством передачи программного обеспечения, подлежащего загрузке, на устройство 10 мобильной связи. В одном варианте осуществления изобретения загрузку программного обеспечения начинают посредством передачи 624 конфигурационного файла персоны устройству 10 мобильной связи. Супервизор 604 обеспечения безопасности затем изучает и оценивает геометрию конфигурационного файла, корень доверия и подпись для определения того, произойдет ли конфликт с другими конфигурационными файлами, уже загруженными на устройство 10 мобильной связи. Загрузку программного обеспечения продолжают, если конфигурационный файл прошел проверку на достоверность 626, и загрузку программного обеспечения прекращают, если существует конфликт между конфигурационными файлами. В некоторых вариантах осуществления изобретения на устройство 10 мобильной связи загружают 628 и 630 операционную систему OS новой персоны и новую доверенную среду TEE исполнения.
[82] Переданное программное обеспечение сохраняют на флеш-памяти 608 и проверяют на достоверность в зависимости от доверенной привязки. Затем создают 632 файл перехода персоны и записывают его для указания на перезапись. Указание на перезапись является значением сигнальной метки, записанным энергонезависимым образом так, что могут быть предприняты соответствующие меры по восстановлению для восстановления после сбоя, если произошло прерывание процесса обновления. В частности, удаляют 634 ключи носителя хранения в защищенном элементе 606 для персоны, конфигурационный файл старой персоны стирают 636, находящиеся в флеш-устройстве файловые системы персоны стирают 638, и принудительно очищают 640 модуль (ТРМ) 610 доверенной платформы.
[83] Новая персона затем может быть загружена на устройство 10 мобильной связи энергонезависимым образом. В частности, новый конфигурационный файл записывают 642 на флеш-устройство 608, считывают 644 супервизором 604 обеспечения безопасности данные аутентификации пользователя, и аутентифицируют 646 пользователя для разблокирования защищенного элемента 606. Открытый ключ шифрования (РЕК) из ключевой пары, образованной личным и открытым ключами, может затем быть создан 648 и экспортирован 650 из защищенного элемента 606 для владельца персоны. Владелец персоны подписывает открытый ключ РЕК шифрования с помощью своего сертификационного центра, и загрузка 654 программного обеспечения продолжается, если конфигурационный файл прошел проверку на достоверность 652. Открытый ключ РЕК шифрования затем возвращают в защищенный элемент 606 и сохраняют 656 в нем.
[84] Секретный ключ из ключевой пары, образованной личным и открытым ключами шифрования, сохраняют и защищают в защищенном элементе 606 таким образом, что он не будет экспортирован из защищенного элемента 606. Указанное обеспечивает для владельца персоны возможность выполнения проверки, осуществляемой с помощью ответа, подписанного личным ключом, того, что запрос на выполнение службы пришел от авторизированного устройства. Открытый ключ РЕК шифрования может быть создан, когда задано время владения персоной, и может быть использован для аутентификации обновления, например, программного обеспечения, запроса и/или пакета. В альтернативном варианте осуществления изобретения вторая ключевая пара, образованная личным и открытым ключами, может быть создана и использована для шифрования таким образом, что владелец персоны может зашифровать данные, имеющие целевое назначение для конкретного устройства, и таким образом, что другие устройства не смогут расшифровать указанные данные.
[85] Файловую систему операционной системы OS новой персоны затем записывают 658 на флеш-устройство 608, TEE файловую систему доверенной среды TEE исполнения для новой персоны записывают 660 на флеш-устройство 608 и создают 662 разделение данных для новой персоны. Файловые системы целевого флеш-устройства программируют на основе содержимого памяти, сохраненного ранее, и шифруют во время передачи с использованием ключей защиты памяти из конфигурационного файла. После завершения обновления файл перехода персоны удаляют 664, и устройство 10 мобильной связи осуществляет перезагрузку 666.
[86] Кроме того, настоящее раскрытие содержит варианты реализации согласно следующим пунктам:
[86] Кроме того, раскрытие изобретения содержит варианты реализации изобретения согласно следующим пунктам:
Пункт 1. Способ авторизации операции, подлежащей выполнению на целевом вычислительном устройстве, включающий:
прием запроса от запрашивающего устройства для выполнения операции на целевом вычислительном устройстве;
проверку запроса посредством открытого ключа из первой ключевой пары, образованной личным ключом и открытым ключом, причем запрос подписан личным ключом из первой ключевой пары, образованной личным ключом и открытым ключом;
формирование ответа на авторизационный запрос, содержащего запрос и токен авторизации; и
передачу ответа на авторизационный запрос на запрашивающее устройство.
Пункт 2. Способ согласно пункту 1, дополнительно включающий определение того, предоставить ли запрос, основанный на политике безопасности, для целевого вычислительного устройства.
Пункт 3. Способ по пункту 2, согласно которому определение того, предоставить ли запрос, содержит определение того, согласованы ли параметры для выполнения операции с политикой безопасности для целевого вычислительного устройства.
Пункт 4. Способ по пункту 1, дополнительно включающий выработку токена авторизации по меньшей мере в одной из следующих ситуаций: до получения запроса на выполнение операции на целевом вычислительном устройстве и в ответ на проверку запроса на выполнение операции на целевом вычислительном устройстве.
Пункт 5. Способ по пункту 1, согласно которому образование ответа на авторизационный запрос включает выработку токена авторизации, содержащего по меньшей мере одно из заранее определенного периода авторизации, разрешения выполнить операцию на заранее определенном целевом вычислительном устройстве, и разрешения выполнить заранее определенную операцию на целевом вычислительном устройстве.
Пункт 6. Способ по пункту 1, дополнительно включающий подписание ответа на авторизационный запрос личным ключом из второй ключевой пары, образованной личным ключом и открытым ключом.
Пункт 7. Способ по пункту 1, согласно которому передача ответа на авторизационный запрос включает транспортирование ответа на авторизационный запрос на запрашивающее устройство через съемные носители.
Пункт 8. Способ по пункту 1, согласно которому прием запроса представляет собой прием запроса, который содержит по меньшей мере одно из идентификации целевого вычислительного устройства, операции, которая будет выполнена на целевом вычислительном устройстве, периода времени, в течение которого операция будет выполнена, и географического местоположения целевого вычислительного устройства.
Пункт 9. Способ авторизации операции, подлежащей выполнению на целевом вычислительном устройстве, включающий:
получение ответа на авторизационный запрос от запрашивающего устройства, причем
ответ на авторизационный запрос содержит запрос на выполнение операции на целевом вычислительном устройстве и токен авторизации; проверку ответа на авторизационный запрос посредством открытого ключа из ключевой пары, образованной личным ключом и открытым ключом, причем
ответ на авторизационный запрос подписан личным ключом из ключевой пары,
образованной личным ключом и открытым ключом; и выдачу разрешения на выполнение операции после проверки ответа на авторизационный запрос.
Пункт 10. Способ по пункту 9, согласно которому
прием ответа на авторизационный запрос представляет собой прием ответа на авторизационный запрос, содержащего запрос, содержащий по меньшей мере одно из идентификации целевого вычислительного устройства, операции, которая будет выполнена на целевом вычислительном устройстве, периода времени, в течение которого операция будет выполнена, и географического местоположения целевого вычислительного устройства.
Пункт 11. Способ по пункту 9, согласно которому
прием ответа на авторизационный запрос представляет собой прием ответа на авторизационный запрос, содержащего токен авторизации, имеющий по меньшей мере одно из заранее определенного периода авторизации, разрешения выполнить операцию на заранее определенном целевом вычислительном устройстве, и разрешения выполнить заранее определенную операцию на целевом вычислительном устройстве.
Пункт 12. Способ по пункту 9, согласно которому
проверка ответа на авторизационный запрос включает определение того, согласованы ли параметры для выполнения операции с политикой безопасности для целевого вычислительного устройства.
[87] Это письменное описание вариантов реализации настоящего изобретения использует примеры для раскрытия различных реализаций, включая наилучший режим, а также обеспечивает возможность любому специалисту в данной области техники практиковать различные варианты реализации, включая выполнение и использование любых устройств или систем и выполнение любых соответствующих способов. Патентоспособный объем раскрытия настоящего изобретения определен пунктами формулы изобретения и может содержать другие примеры, очевидные специалистам в данной области техники. Такие другие примеры предназначены для попадания в объем формулы изобретения, если они обладают структурными элементами, дословно не отличающимися от положений пунктов формулы изобретения, или если они содержат эквивалентные структурные элементы с несущественными отличиями от дословных положений пунктов формулы изобретения.
Изобретение относится к способу запрашивания операции, устройству для его реализации и способу авторизации операции. Технический результат заключается в обеспечении безопасной работы операционных систем. Способ включает выработку запроса для выполнения операции на целевом вычислительном устройстве, причем запрос содержит географическое местоположение целевого вычислительного устройства, операцию, предназначенную для выполнения на целевом вычислительном устройстве, и период времени, в течение которого будет выполнена операция, подписание запроса посредством личного ключа из первой ключевой пары, образованной личным ключом и открытым ключом, передачу запроса к серверу аутентификации, прием, в ответ на запрос, от сервера аутентификации ответа на авторизационный запрос, содержащего запрос и токен авторизации, причем токен авторизации имеет по меньшей мере одно из следующего: заранее определенный период авторизации, разрешение выполнить операцию на заранее определенном целевом вычислительном устройстве и разрешение выполнить заранее определенные операции на целевом вычислительном устройстве, и передачу ответа на авторизационный запрос к целевому вычислительному устройству. 3 н. и 24 з.п. ф-лы, 9 ил.