Перекрестная ссылка на родственную заявку
Настоящая заявка испрашивает приоритет китайской патентной заявки № 202110566480.8, поданной в Национальное управление интеллектуальной собственности Китая 24 мая 2021 года и озаглавленной «METHOD FOR SAVING CIPHERTEXT AND APPARATUS», которая включена сюда во всей своей полноте путем ссылки.
Область техники, к которой относится изобретение
Настоящая заявка относится к области терминалов и, в частности, к способу сохранения зашифрованного текста и устройству.
Уровень техники
С появлением услуг с большим объемом данных, таких как улучшенная мобильная широкополосная связь (Enhanced Mobile Broadband, eMBB) и видео высокой четкости, электронное устройство сталкивается с проблемой нехватки места для хранения. Внешняя память (например, защищенная цифровая (secure digital, SD) карта), подключенная к электронному устройству, может решить проблему нехватки места для хранения. Для того, чтобы обеспечить безопасность данных, данные во внешней памяти должны быть зашифрованы и сохранены.
Ключ внешней памяти шифруется с использованием пароля экрана блокировки и затем сохраняется в стираемом разделе электронного устройства. Когда пользователь на электронном устройстве выполняет сброс к заводским настройкам (factory reset), зашифрованный ключ (а именно, зашифрованный текст) в стираемом разделе удаляется перед сохранением, и, следовательно, данные во внешней памяти не могут быть дешифрованы.
Сущность изобретения
Настоящая заявка предоставляет способ сохранения зашифрованного текста и устройство для того, чтобы решить техническую задачу, которая состоит в том, что данные во внешней памяти не могут быть дешифрованы после того, как электронное устройство выполнит сброс к заводским настройкам.
Согласно первому аспекту предусмотрен способ сохранения зашифрованного текста, включающий в себя: получение инструкции шифрования, где инструкция шифрования инструктирует зашифровать файл во внешней памяти; получение собственного значения первого идентификатора учетной записи на основе инструкции шифрования; шифрование первого ключа с использованием собственного значения первого идентификатора учетной записи для генерации первого зашифрованного текста, где первый ключ используется для шифрования второго ключа, и второй ключ используется для шифрования первого файла во внешней памяти; шифрование собственного значения первого идентификатора учетной записи для генерации второго зашифрованного текста; и сохранение первого зашифрованного текста и второго зашифрованного текста в нестираемом разделе.
Инструкция шифрования является инструкцией, которая инициируется тогда, когда пользователь шифрует внешнюю память в интерфейсе настройки шифрования. После получения инструкции шифрования электронное устройство генерирует первый зашифрованный текст и второй зашифрованный текст и сохраняет первый зашифрованный текст и второй зашифрованный текст в нестираемом разделе электронного устройства. Таким образом, до того, как пользователь выполнит сброс к заводским настройкам электронного устройства, электронное устройство завершит безопасное хранение первого зашифрованного текста и второго зашифрованного текста. После завершения сброса к заводским настройкам электронное устройство может восстановить первый ключ из нестираемого раздела, и затем дешифровать второй ключ во внешней памяти с использованием первого ключа и дешифровать файл во внешней памяти с использованием второго ключа, тем самым решая проблему, связанную с тем, что файл во внешней памяти не может быть дешифрован после сброса к заводским настройкам.
При необходимости способ дополнительно включает в себя: получение информации указателя для переключения учетной записи; проверку первого идентификатора учетной записи на основе информации указателя; получение собственного значения второго идентификатора учетной записи после проверки первого идентификатора учетной записи; и обновление первого зашифрованного текста и второго зашифрованного текста на основе собственного значения второго идентификатора учетной записи.
Пользователь может переключать идентификатор зарегистрированной на данный момент учетной записи (например, первый идентификатор учетной записи) в интерфейсе входа в систему с помощью учетной записи. После того, как пользователь инициирует электронное устройство для выработки информации инструкции для переключения учетной записи в интерфейсе входа в систему с помощью учетной записи, электронное устройство может запросить пользователя ввести пароль, соответствующий первому идентификатору учетной записи, для проверки первого идентификатора учетной записи. После проверки первого идентификатора учетной записи он указывает то, что пользователь, который меняет идентификатор учетной записи, является действительным пользователем. Электронное устройство может получить второй идентификатор учетной записи, введенный пользователем, вычислить хеш-значение (пример собственного значения) второго идентификатора учетной записи, и затем обновить первый зашифрованный текст и второй зашифрованный текст, используя хэш-значение второго идентификатора учетной записи. Электронное устройство может сначала дешифровать первый ключ, затем сгенерировать обновленный первый зашифрованный текст, используя хеш-значение второго идентификатора учетной записи, и затем сгенерировать обновленный второй зашифрованный текст, зашифровав хэш-значение второго идентификатора учетной записи. В приведенном выше решении после определения того, что текущий пользователь (пользователь, который меняет идентификатор учетной записи) является действительным пользователем, первый зашифрованный текст и второй зашифрованный текст обновляются с использованием идентификатора учетной записи (второго идентификатора учетной записи) текущего пользователя, и снимаются права на шифрование и дешифрование внешней памяти, соответствующей первому идентификатору учетной записи, тем самым обеспечивая безопасность данных во внешней памяти.
При необходимости способ дополнительно включает в себя: проверку первого идентификатора учетной записи после завершения сброса к заводским настройкам; и, когда первый идентификатор учетной записи успешно проверен, дешифрование первого зашифрованного текста и второго зашифрованного текста для генерации первого ключа.
После того как электронное устройство выполнит сброс к заводским настройкам, активируется механизм проверки учетной записи. Механизм требует того, чтобы электронное устройство можно было нормально использовать только после успешной проверки учетной записи. Идентификатор последней зарегистрированной учетной записи (например, первый идентификатор учетной записи), который проверен перед сбросом к заводским настройкам, и это может гарантировать то, что пользователь электронного устройства после выполнения сброса к заводским настройкам является действительным пользователем с тем, чтобы обеспечить безопасность данных во внешней памяти.
При необходимости проверка первого идентификатора учетной записи включает в себя:
проверку первого идентификатора учетной записи при срабатывании защиты от сброса к заводским настройкам (factory reset protection, FRP).
При необходимости способ дополнительно включает в себя: шифрование первого ключа с использованием значения по умолчанию для генерации третьего зашифрованного текста; шифрование значения по умолчанию для генерации четвертого зашифрованного текста; и сохранение третьего зашифрованного текста и четвертого зашифрованного текста в нестираемом разделе.
Так как пользователь может переключить учетную запись, существует риск утечки, если электронное устройство продолжает использовать, после выполнения сброса к заводским настройкам, первый идентификатор учетной записи или второй идентификатор учетной записи для шифрования и сохранения первого ключа. После дешифрования первого ключа электронное устройство может использовать значение по умолчанию для шифрования и сохранения первого ключа, тем самым обеспечивая безопасность данных во внешней памяти.
При необходимости способ дополнительно включает в себя: копирование третьего зашифрованного текста и четвертого зашифрованного текста из нестираемого раздела в стираемый раздел; генерацию первого ключа на основе третьего зашифрованного текста и четвертого зашифрованного текста в стираемом разделе; и дешифрование на основе первого ключа первого файла, зашифрованного во внешней памяти.
При необходимости, перед проверкой первого идентификатора учетной записи, способ дополнительно включает в себя: получение инструкции сброса к заводским настройкам, которая инициируется интерфейсом восстановления; и форматирование данных в стираемом разделе на основе инструкции сброса к заводским настройкам.
При необходимости шифрование первого ключа с использованием собственного значения первого идентификатора учетной записи включает в себя: вызов ТА мастера ключей модуля управления ключами для шифрования первого ключа с использованием собственного значения первого идентификатора учетной записи. Шифрование собственного значения первого идентификатора учетной записи включает в себя: вызов ТА мастера ключей для шифрования собственного значения первого идентификатора учетной записи.
При необходимости сохранение первого зашифрованного текста и второго зашифрованного текста в нестираемом разделе включает в себя: вызов интерфейса прикладного программирования доверенной среды исполнения для сохранения первого зашифрованного текста и второго зашифрованного текста в нестираемом разделе.
При необходимости первый ключ дополнительно используется для шифрования третьего ключа, и третий ключ используется для шифрования второго файла, который зашифрован во внешней памяти.
При необходимости способ дополнительно включает в себя: получение собственного значения пароля экрана блокировки на основе инструкции шифрования; шифрование первого ключа с использованием собственного значения пароля экрана блокировки для генерации пятого зашифрованного текста; шифрование собственного значения пароля экрана блокировки для генерации шестого зашифрованного текста; и сохранение пятого зашифрованного текста и шестого зашифрованного текста в стираемом разделе.
При необходимости шифрование первого ключа с использованием собственного значения пароля экрана блокировки включает в себя: вызов ТА мастера ключей для шифрования первого ключа с использованием собственного значения пароля экрана блокировки. Шифрование собственного значения пароля экрана блокировки включает в себя: вызов ТА мастера ключей для шифрования собственного значения пароля экрана блокировки.
При необходимости способ дополнительно включает в себя: получение пользовательской инструкции сброса, которая инициируется интерфейсом настройки; и резервное копирование пятого зашифрованного текста и шестого зашифрованного текста в нестираемый раздел на основе пользовательской инструкции сброса.
При необходимости резервное копирование пятого зашифрованного текста и шестого зашифрованного текста в нестираемый раздел на основе пользовательской инструкции сброса включает в себя: дешифрование первого ключа из пятого зашифрованного текста и шестого зашифрованного текста на основе пользовательской инструкции сброса; шифрование первого ключа с использованием значения по умолчанию для генерации седьмого зашифрованного текста; шифрование значения по умолчанию для генерации восьмого зашифрованного текста; и сохранение седьмого зашифрованного текста и восьмого зашифрованного текста в нестираемом разделе.
При необходимости способ дополнительно включает в себя: копирование седьмого зашифрованного текста и восьмого зашифрованного текста из нестираемого раздела в стираемый раздел после завершения пользовательского сброса; дешифрование первого ключа из седьмого зашифрованного текста и восьмого зашифрованного текста в стираемом разделе; и дешифрование на основе первого ключа первого файла, зашифрованного во внешней памяти.
При необходимости стираемый раздел является разделом данных, и собственное значение пароля экрана блокировки является хэш-значением пароля экрана блокировки.
При необходимости нестираемый раздел является разделом sec_storage, и собственное значение первого идентификатора учетной записи является хэш-значением первого идентификатора учетной записи.
Согласно второму аспекту предусмотрен другой способ сохранения зашифрованного текста, включающий в себя: отображение интерфейса настройки шифрования внешней памяти; прием первой операции, которая выполняется пользователем в интерфейсе настройки шифрования; шифрование файла во внешней памяти в ответ на первую операцию; прием второй операции пользователя; отображение интерфейса настройки сброса к заводским настройкам в ответ на вторую операцию; прием третьей операции, которая выполняется пользователем в интерфейсе заводских настроек; выполнение сброса к заводским настройкам в ответ на третью операцию; отображение интерфейса проверки учетной записи; получение информации проверки, которая вводится пользователем в интерфейсе проверки учетной записи; и, когда информация проверки проверена и, когда получена операция, в которой пользователь осуществляет доступ к файлу во внешней памяти, дешифрование файла, зашифрованного во внешней памяти.
Инструкция шифрования является инструкцией, которая инициируется тогда, когда пользователь шифрует внешнюю память в интерфейсе настройки шифрования. После получения инструкции шифрования электронное устройство генерирует первый зашифрованный текст и второй зашифрованный текст и сохраняет первый зашифрованный текст и второй зашифрованный текст в нестираемом разделе электронного устройства. Таким образом, прежде, чем пользователь выполнит сброс к заводским настройкам электронного устройства, электронное устройство завершит безопасное хранение первого зашифрованного текста и второго зашифрованного текста. После завершения сброса к заводским настройкам электронное устройство может восстановить первый ключ из нестираемого раздела, и затем дешифровать второй ключ во внешней памяти с использованием первого ключа и дешифровать файл во внешней памяти с использованием второго ключа, тем самым решая проблему, связанную с тем, что файл во внешней памяти не может быть дешифрован после сброса к заводским настройкам.
Согласно третьему аспекту предусмотрено устройство для сохранения зашифрованного текста, включающее в себя блок, выполненный с возможностью выполнения способа согласно любому из первого аспекта или второго аспекта. Устройство может быть терминальным устройством или может быть микросхемой в терминальном устройстве. Устройство может включать в себя блок ввода и блок обработки.
Когда устройство является терминальным устройством, блоком обработки может быть процессор, и блоком ввода может быть интерфейс связи. Терминальное устройство может дополнительно включать в себя память, и эта память выполнена с возможностью хранения кода компьютерной программы. Когда процессор исполняет код компьютерной программы памяти, терминальное устройство получает возможность выполнять способ согласно любому из первого аспекта или второго аспекта.
Когда устройством является микросхема в терминальном устройстве, блоком обработки может быть блок обработки внутри микросхемы, и блоком ввода может быть интерфейс вывода, вывод, схема и т.п. Микросхема может дополнительно включать в себя память. Память может быть памятью (например, регистром или кэшем) в микросхеме или может быть памятью (например, постоянной памятью или оперативной памятью), расположенной вне микросхемы. Память выполнена с возможностью хранения кода компьютерной программы. Когда процессор исполняет код компьютерной программы, который хранится в памяти, микросхема получает возможность выполнять любой из первого аспекта или второго аспекта.
Согласно четвертому аспекту предусмотрен машиночитаемый носитель данных. Машиночитаемый носитель данных хранит код компьютерной программы. Когда код компьютерной программы запускается на устройстве для сохранения зашифрованного текста, устройство может выполнить способ в соответствии с любым из первого аспекта или второго аспекта.
Согласно пятому аспекту предусмотрен компьютерный программный продукт. Компьютерный программный продукт включает в себя код компьютерной программы. Когда код компьютерной программы запускается на устройстве для сохранения зашифрованного текста, устройство может выполнить способ в соответствии с любым из первого аспекта или второго аспекта.
Краткое описание чертежей
Фиг. 1 – схематичное представление аппаратной системы, которая применима к устройству согласно настоящей заявке;
фиг. 2 – схема программной системы, которая применима к устройству согласно настоящей заявке;
фиг. 3 – схематичное представление интерфейса настройки шифрования согласно настоящей заявке;
фиг. 4 – схематичное представление интерфейса подтверждения шифрования согласно настоящей заявке;
фиг. 5 – схематичное представление интерфейса обработки шифрования согласно настоящей заявке;
фиг. 6 – схематичное представление способа сохранения ключа согласно настоящей заявке;
фиг. 7 – схематичное представление процедуры шифрования согласно настоящей заявке;
фиг. 8 – схематичное представление способа резервного копирования и восстановления ключа в сценарии пользовательского сброса согласно настоящей заявке;
фиг. 9 – схематичное представление условия изменения хранения зашифрованного текста в области хранения в сценарии пользовательского сброса согласно настоящей заявке;
фиг. 10 – схематичное представление способа резервного копирования ключа в сценарии сброса к заводским настройкам согласно настоящей заявке;
фиг. 11 – схематичное представление интерфейса входа в систему с помощью учетной записи согласно настоящей заявке;
фиг. 12 – схематичное представление условия изменения хранения зашифрованного текста в области хранения, которая существует при переключении учетной записи согласно настоящей заявке;
фиг. 13 – схематичное представление интерфейса настройки сброса к заводским настройкам согласно настоящей заявке;
фиг. 14 – схематичное представление интерфейса подтверждения сброса к заводским настройкам согласно настоящей заявке;
фиг. 15 – схематичное представление интерфейса процесса сброса к заводским настройкам согласно настоящей заявке;
фиг. 16 – схематичное представление способа использования ключа восстановления в сценарии восстановления заводских настроек согласно настоящей заявке;
фиг. 17 – схематичное представление интерфейса проверки учетной записи согласно настоящей заявке;
фиг. 18 – схематичное представление условия изменения хранения зашифрованного текста в области хранения в сценарии восстановления заводских настроек согласно настоящей заявке;
фиг. 19 – схематичное представление устройства для сохранения зашифрованного текста согласно настоящей заявке; и
фиг. 20 – схема электронного устройства для сохранения зашифрованного текста согласно настоящей заявке.
Подробное описание изобретения
Далее приводится описание технических решений, представленных в вариантах осуществления настоящей заявки со ссылкой на сопроводительные чертежи.
На фиг. 1 показана аппаратная система, применимая к устройству согласно настоящей заявке.
Устройство 100 может быть мобильным телефоном, интеллектуальным экраном, планшетным компьютером, носимым электронным устройством, бортовым электронным устройством, устройством дополненной реальности (augmented reality, AR), устройством виртуальной реальностью (virtual reality, VR), портативным компьютером, ультрамобильным персональным компьютером (ultra-mobile personal computer, UMPC), нетбуком, персональным цифровым помощником (personal digital assistant, PDA), проектором т.п. В этом варианте осуществления настоящей заявки конкретный тип устройства 100 не ограничен.
Устройство 100 может включать в себя процессор 110, интерфейс 120 внешней памяти, внутреннюю память 121, интерфейс 130 универсальной последовательной шины (universal serial bus, USB), модуль 140 управления зарядкой, модуль 141 управления питанием, аккумуляторную батарею 142, антенну 1, антенну 2, модуль 150 мобильной связи, модуль 160 беспроводной связи, аудиомодуль 170, динамик 170А, приемник 170В, микрофон 170С, разъем 170D для гарнитуры, модуль 180 датчиков, ключ 190, двигатель 191, индикатор 192, камеру 193, дисплей 194 и интерфейс 195 карты модуля идентификации абонента (subscriber identification module, SIM) и т.п. Модуль 180 датчиков может включать в себя датчик 180А давления, гироскопический датчик 180В, датчик 180С барометрического давления, магнитный датчик 180D, датчик 180Е ускорения, датчик 180F расстояния, оптический датчик 180G приближения, датчик 180Н отпечатков пальцев, датчик 180J температуры, датчик 180K касания, датчик 180L окружающего света, датчик 180M костной проводимости и т.п.
Следует отметить, что структура, показанная на фиг. 1 не накладывает конкретного ограничения на устройство 100. В некоторых других вариантах осуществления настоящей заявки устройство 100 может включать больше или меньше компонентов, чем те, которые показаны на фиг. 1, или устройство 100 может включать в себя комбинацию некоторых компонентов, показанных на фиг. 1, или устройство 100 может включать в себя подкомпоненты некоторых компонентов, показанных на фиг. 1. Компоненты, показанные на фиг. 1, могут быть реализован аппаратными средствами, программным обеспечением или комбинацией программного обеспечения и аппаратных средств.
Процессор 110 может включать в себя один или несколько процессоров. Например, процессор 110 может включать в себя процессор приложений (application processor, AP), процессор модема, блок графической обработки (graphics processing unit, GPU), процессор сигналов изображения (image signal processor, ISP), контроллер, память, видеокодек, процессор цифровых сигналов (digital signal processor, DSP), процессор основной полосы частот и блок обработки нейронной сети (neural-network processing unit, NPU).
Различные блоки обработки могут быть независимыми устройствами или могут быть интегрированными устройствами.
Контроллер может вырабатывать сигнал управления операцией на основе кода операции инструкции и сигнала синхронизации, чтобы завершить управление выборкой инструкции и исполнением инструкции.
Процессор 110 может быть дополнительно снабжен памятью для хранения инструкций и данных. В некоторых вариантах осуществления память в процессоре 110 представляет собой кэш. Память может хранить инструкции или данные, только что использованные или циклически используемые процессором 110. Если процессору 110 необходимо снова использовать инструкции или данные, инструкции или данные могут быть напрямую вызваны из памяти. Повторный доступ предотвращается, и время ожидания процессора 110 сокращается, тем самым повышая эффективность системы.
В некоторых вариантах осуществления процессор 110 может включать в себя один или несколько интерфейсов. Например, процессор 110 может включать в себя по меньшей мере один из следующих интерфейсов: интерфейс межинтегральной схемы (inter-integrated circuit, I2C), интерфейс звука межинтегральной схемы (inter-integrated circuit sound, I2S), интерфейс с импульсной кодовой модуляцией (pulse code modulation, PCM), интерфейс универсального асинхронного приемника/передатчика (universal asynchronous receiver/transmitter, UART), интерфейс процессора мобильной индустрии (mobile industry processor interface, MIPI), интерфейс ввода/вывода общего назначения (general-purpose input/output, GPIO), интерфейс SIM и интерфейс USB.
Интерфейс I2C представляет собой последовательную шину с двусторонней синхронизацией и включает в себя линию последовательных данных (serial data line, SDA) и линию последовательной синхронизации (derail clock line, SCL). В некоторых вариантах осуществления процессор 110 может включать в себя множество групп шин I2C. Процессор 110 может быть отдельно подключен к датчику 180K касания, зарядному устройству, вспышке, камере 193 и т.п. с использованием различных интерфейсов шины I2C. Например, процессор 110 может быть подключен к датчику 180K касания с использованием интерфейса I2C, так что процессор 110 обменивается данными с датчиком 180K касания с помощью интерфейса шины I2C, чтобы реализовать функцию касания электронного устройства 100.
Интерфейс I2S может быть выполнен с возможностью выполнения аудиосвязи. В некоторых вариантах осуществления процессор 110 может включать в себя множество групп шин I2S. Процессор 110 может быть подключен к аудиомодулю 170 с использованием шины I2S для осуществления связи между процессором 110 и аудиомодулем 170. В некоторых вариантах осуществления аудиомодуль 170 может передавать аудиосигнал в модуль 160 беспроводной связи с использованием интерфейса I2S, чтобы реализовать функцию ответа на вызов с помощью гарнитуры Bluetooth.
Интерфейс PCM также может использоваться для аудиосвязи и выборки, квантования и кодирования аналогового сигнала. В некоторых вариантах осуществления аудиомодуль 170 может быть подсоединен к модулю 160 беспроводной связи с использованием интерфейса шины PCM. В некоторых вариантах осуществления аудиомодуль 170 может альтернативно передавать аудиосигнал в модуль 160 беспроводной связи с использованием интерфейса PCM, чтобы реализовать функцию ответа на вызов с помощью гарнитуры Bluetooth. Как интерфейс I2S, так и интерфейс PCM могут быть сконфигурированы для выполнения аудиосвязи.
Интерфейс UART представляет собой универсальную шину последовательных данных и сконфигурирован для асинхронной связи. Шина может быть шиной двусторонней связи. Шина преобразует подлежащие передаче данные между последовательной и параллельной связью. В некоторых вариантах осуществления интерфейс UART обычно конфигурируется для соединения процессора 110 и модуля 160 беспроводной связи. Например, процессор 110 обменивается данными с модулем Bluetooth в модуле 160 беспроводной связи с помощью интерфейса UART для реализации функции Bluetooth. В некоторых вариантах осуществления аудиомодуль 170 может передавать аудиосигнал в модуль 160 беспроводной связи с использованием интерфейса UART, чтобы реализовать функцию воспроизведения музыки с помощью гарнитуры Bluetooth.
Интерфейс MIPI может быть выполнен с возможностью подключения процессора 110 к периферийному компоненту, такому как дисплей 194 или камера 193. Интерфейс MIPI включает в себя последовательный интерфейс камеры (camera serial interface, CSI), последовательный интерфейс дисплея (display serial interface, DSI) и т.п. В некоторых вариантах осуществления процессор 110 обменивается данными с камерой 193 с использованием интерфейса CSI, чтобы реализовать функцию фотографирования электронного устройства 100. Процессор 110 обменивается данными с дисплеем 194 с помощью интерфейса DSI, чтобы реализовать функцию отображения электронного устройства 100.
Интерфейс GPIO может конфигурироваться с использованием программного обеспечения. Интерфейс GPIO может быть сконфигурирован как интерфейс сигналов управления или интерфейс сигналов данных. В некоторых вариантах осуществления интерфейс GPIO может быть выполнен с возможностью подключения процессора 110 к камере 193, дисплею 194, модулю 160 беспроводной связи, аудиомодулю 170 и модулю 180 датчиков. Альтернативно, интерфейс GPIO может быть сконфигурирован как интерфейс I2C, интерфейс I2S, интерфейс UART или интерфейс MIPI.
Интерфейс 130 USB является интерфейсом, который соответствует спецификации стандарта USB, например, может быть интерфейсом мини (Mini) USB, интерфейсом микро (Micro) USB или интерфейсом USB типа C (USB Type C). USB-интерфейс 130 может быть выполнен с возможностью подключения к зарядному устройству для зарядки устройства 100, передачи данных между устройством 100 и периферийным устройством или подключения к гарнитуре для воспроизведения звука с использованием гарнитуры. USB-интерфейс 130 может быть дополнительно выполнен с возможностью подключения к другому устройству 100, такому как устройство AR.
Отношение соединения между модулями, показанными на фиг. 1, является просто примером для описания и не является ограничением отношения соединения между модулями устройства 100. При необходимости модули устройства 100 могут альтернативно использовать комбинацию из множества способов соединения, представленных в приведенном выше варианте осуществления.
Модуль 140 управления зарядкой выполнен с возможностью получать электроэнергию от зарядного устройства. Зарядное устройство может быть беспроводным или проводным зарядным устройством. В некоторых вариантах осуществления проводной зарядки модуль 140 управления зарядкой может получать ток от проводного зарядного устройства с использованием интерфейса 130 USB. В некоторых вариантах осуществления беспроводной зарядки модуль 140 управления зарядкой может принимать электромагнитную волну (путь тока показан пунктирной линией) с использованием катушки беспроводной зарядки устройства 100. В дополнение к зарядке аккумуляторной батареи 142 модуль 140 управления зарядкой может дополнительно подавать питание на устройство 100 с использованием модуля 141 управления электропитанием.
Модуль 141 управления электропитанием выполнен с возможностью подключения аккумуляторной батареи 142, модуля 140 управления зарядкой и процессора 110. Модуль 141 управления электропитанием принимает входной сигнал из аккумуляторной батареи 142 и/или входной сигнал из модуля 140 управления зарядкой и подает питание на процессор 110, внутреннюю память 121, дисплей 194, камеру 193, модуль 160 беспроводной связи и т.п. Модуль 141 управления электропитанием может быть дополнительно выполнен с возможностью контроля параметров, таких как емкость аккумуляторной батареи, количество циклов перезарядки аккумуляторной батареи и состояние работоспособности аккумуляторной батареи (например, утечка или импеданс). При необходимости модуль 141 управления электропитанием может быть расположен в процессоре 110, или модуль 141 управления электропитанием и модуль 140 управления зарядкой могут быть расположены в одном и том же устройстве.
Функция беспроводной связи устройства 100 может быть реализована с использованием устройств, таких как антенна 1, антенна 2, модуль 150 мобильной связи, модуль 160 беспроводной связи, процессор модема и процессор основной полосы частот.
Антенна 1 и антенна 2 выполнены с возможностью передачи и приема сигналов электромагнитных волн. Каждая антенна в устройстве 100 может быть выполнена с возможностью покрытия одного или нескольких диапазонов частот связи. Различные антенны также могут быть мультиплексированы для улучшения их использования. Например, антенна 1 может быть мультиплексирована в разнесенную антенну беспроводной локальной сети. В некоторых других вариантах осуществления антенна может использоваться в сочетании с переключателем настройки.
Модуль 150 мобильной связи может предоставить решение, которое применимо к беспроводной связи в устройстве 100, например, по меньшей мере одно из следующих решений: решение для мобильной связи второго поколения (2nd generation, 2G), решение для мобильной связи третьего поколения (3rd generation 3G), решение для мобильной связи четвертого поколения (4th generation, 4G) и решение для мобильной связи 5-го поколения (5th generation, 5G). Модуль 150 мобильной связи может включать в себя по меньшей мере один фильтр, переключатель, усилитель мощности, малошумящий усилитель (low noise amplifier, LNA) и т.п. Модуль 150 мобильной связи может принимать электромагнитную волну с использованием антенны 1, выполнять такую обработку, как фильтрация и усиление принятой электромагнитной волны, и затем передавать электромагнитную волну в процессор модема для демодуляции. Модуль 150 мобильной связи может дополнительно усиливать сигнал, который модулируется процессором модема, и преобразовывать сигнал в электромагнитную волну для излучения с использованием антенны 1. В некоторых вариантах осуществления по меньшей мере некоторые функциональные модули модуля 150 мобильной связи могут быть расположены в процессоре 110. В некоторых вариантах осуществления по меньшей мере некоторые функциональные модули модуля 150 мобильной связи могут быть расположены в том же устройстве, что и по меньшей мере некоторые модули процессора 110.
Процессор модема может включать в себя модулятор и демодулятор. Модулятор выполнен с возможностью модуляции низкочастотного модулирующего сигнала, подлежащего передаче, в среднечастотный или высокочастотный сигнал. Демодулятор выполнен с возможностью демодуляции принятого сигнала электромагнитной волны в низкочастотный сигнал основной полосы частот. Затем демодулятор передает низкочастотный сигнал основной полосы частот, полученный в результате демодуляции, в процессор основной полосы частот для обработки. Низкочастотный сигнал основной полосы частот обрабатывается процессором основной полосы частот и затем передается в процессор приложений. Процессор приложений выводит звуковой сигнал с использованием аудиоустройства (например, динамика 170А, приемника 170В) или отображает изображение или видео с использованием дисплея 194. В некоторых вариантах осуществления процессор модема может быть независимым устройством. В некоторых других вариантах процессор модема может быть независимым от процессора 110 и находиться в том же устройстве, что и модуль 150 мобильной связи или другой функциональный модуль.
Аналогично модулю 150 мобильной связи, модуль 160 беспроводной связи также может предоставлять решение беспроводной связи, которое применяется к устройству 100, например, по меньшей мере одно из следующих решений: беспроводная локальная сеть (wireless local area networks, WLAN), Bluetooth (Bluetooth, BT), Bluetooth с низким энергопотреблением (Bluetooth low energy, BLE), сверхширокополосная (ultra wide band, UWB) связь, глобальная навигационная спутниковая система (global navigation satellite system, GNSS), частотная модуляция (frequency modulation, FM), связь ближнего радиуса действия (near field Communication, NFC) и инфракрасная (infrared, IR) технология. Модуль 160 беспроводной связи может быть одним или несколькими устройствами, объединяющими по меньшей мере один модуль процессора связи. Модуль 160 беспроводной связи принимает электромагнитную волну с использованием антенны 2, выполняет частотную модуляцию и фильтрацию сигнала электромагнитной волны и отправляет обработанный сигнал в процессор 110. Модуль 160 беспроводной связи может дополнительно принимать сигнал, который должен быть отправлен из процессора 110, выполнять частотную модуляцию и усиление сигнала и преобразовывать сигнал в электромагнитную волну для излучения с помощью антенны 2.
В некоторых вариантах осуществления антенна 1 устройства 100 подключена к модулю 150 мобильной связи, и антенна 2 устройства 100 подключена к модулю 160 беспроводной связи, так что электронное устройство 100 может поддерживать связь с сетью и другим электронным устройством с использованием технологии беспроводной связи. Технология беспроводной связи может включать в себя по меньшей мере одну из следующих технологий связи: глобальную систему мобильной связи (global system for mobile communications, GSM), службу пакетной передачи данных общего пользования (general packet radio service, GPRS), множественный доступ с кодовым разделением каналов (code division multiple access, CDMA), широкополосный множественный доступ с кодовым разделением каналов (wideband code division multiple access, WCDMA), множественный доступ с временным разделением каналов (time-division code division multiple access, TD-SCDMA), долгосрочное развитие (long term evolution, LTE), BT, GNSS, WLAN, NFC, FM, технологию IR. GNSS может включать в себя по меньшей мере одну из следующих технологий позиционирования: глобальную систему позиционирования (global positioning system, GPS), глобальную навигационную спутниковую систему (global navigation satellite system, GLONASS), навигационную спутниковую систему BeiDou (BeiDou navigation satellite system, BDS), квазизенитную спутниковую систему (quasi-zenith Satellite system, QZSS) и спутниковую систему функционального дополнения (satellite based augmentation systems, SBAS).
Устройство 100 может реализовать функцию отображения с использованием GPU, дисплея 194 и процессора приложений. GPU представляет собой микропроцессор обработки изображений, который подключен к дисплею 194 и процессору приложений. Графический процессор выполнен с возможностью выполнения математических и геометрических вычислений для визуализации графики. Процессор 110 может включать в себя один или несколько графических процессоров, которые исполняют программные инструкции для выработки или изменения информации отображения.
Дисплей 194 может быть выполнен с возможностью отображения изображения или видео. Дисплей 194 включает в себя дисплейную панель. Панель индикации может использовать жидкокристаллический дисплей (liquid crystal display, LCD), органический светодиод (organic light-emitting diode, OLED), органический светодиод с активной матрицей (active-matrix organic light-emitting diode, AMOLED), гибкий светодиод (flex LED, FLED), мини-светодиод (mini LED, Mini LED), микросветодиод (micro LED, Micro LED), микро OLED (Micro OLED) или светодиод с квантовыми точками (Quantum Dot Light-Emitting Diods, QLED). В некоторых вариантах осуществления устройство 100 может включать в себя один или N дисплеев 194, где N – положительное целое число больше 1.
Устройство 100 может реализовать функцию съемки с использованием ISP, камеры 193, видеокодека, графического процессора, дисплея 194, процессора приложений и т.п.
ISP выполнен с возможностью обработки данных, возвращаемых камерой 193. Например, во время фотографирования нажимается затвор, свет передается на светочувствительный элемент камеры с использованием объектива, оптический сигнал преобразуется в электрический сигнал, и светочувствительный элемент камеры передает электрический сигнал на ISP для обработки, так что электрический сигнал преобразуется в изображение, видимое невооруженным глазом. ISP может выполнять оптимизацию алгоритма по шумовой точке, яркости и цвету изображения, и ISP может дополнительно оптимизировать параметры, такие как экспозиция и цветовая температура сценария съемки. В некоторых вариантах осуществления ISP может быть расположен в камере 193.
Камера 193 выполнена с возможностью захвата неподвижного изображения или видео. Оптическое изображение объекта вырабатывается с использованием линзы и проецируется на светочувствительный элемент. Светочувствительный элемент может быть прибором с зарядовой связью (charge coupled device, CCD) или фототранзистором на основе комплементарного металл-оксидного полупроводника (complementary metal-oxide-semiconductor, CMOS). Светочувствительный элемент преобразует оптический сигнал в электрический сигнал, и затем передает электрический сигнал в ISP. ISP преобразует электрический сигнал в цифровой сигнал изображения. ISP выводит цифровой сигнал изображения на DSP для обработки. DSP преобразует цифровой сигнал изображения в стандартный сигнал изображения в формате, таком как красный, зеленый, синий (red green blue, RGB) или YUV. В некоторых вариантах осуществления устройство 100 может включать в себя одну или N камер 193, где N – положительное целое число больше 1.
Процессор цифровых сигналов выполнен с возможностью обработки цифрового сигнала. В дополнение к обработке цифрового сигнала изображения, процессор цифровых сигналов может дополнительно обрабатывать другой цифровой сигнал. Например, когда устройство 100 выбирает частоту, процессор цифровых сигналов конфигурируется для выполнения преобразования Фурье и т.п. по частотной энергии.
Видеокодек выполнен с возможностью сжатия или распаковки цифрового видео. Устройство 100 может поддерживать один или несколько типов видеокодеков. Таким образом, устройство 100 может воспроизводить или записывать видео во множестве форматов кодирования, таких как группа экспертов по движущимся изображениям (moving picture experts group, MPEG) 1, MPEG 2, MPEG 3 и MPEG 4.
NPU представляет собой процессор, используемый для обращения к структуре биологической нейронной сети. Например, NPU быстро обрабатывает входную информацию, обращаясь к режиму передачи между нейронами человеческого мозга, и может дополнительно непрерывно выполнять самообучение. Функции, такие как интеллектуальное распознавание, устройства 100 могут быть реализованы с использованием NPU, например, распознавание изображений, распознавание лиц, распознавание речи и понимание текста.
Интерфейс 120 внешней памяти может быть выполнен с возможностью подключения к внешней карте памяти, такой как защищенная цифровая (secure digital, SD) карта, для расширения возможностей хранения устройства 100. Внешняя карта памяти обменивается данными с процессором 110, используя интерфейс 120 внешней памяти, чтобы реализовать функцию хранения данных. Например, файлы, такие как музыкальные или видео, хранятся на внешней карте памяти.
Внутренняя память 121 может быть выполнена с возможностью хранения исполняемого на компьютере программного кода, где исполняемый программный код включает в себя инструкции. Внутренняя память 121 может включать в себя область хранения программ и область хранения данных. В области хранения программ может храниться операционная система и приложение, запрашиваемое по меньшей мере одной функцией (например, функцией воспроизведения голоса или функцией воспроизведения изображения). В области хранения данных могут храниться данные (такие как аудиоданные или телефонная книга), созданные во время использования устройства 100. В дополнение к этому, внутренняя память 121 может включать в себя быстродействующую память с произвольным доступом и может дополнительно включать в себя энергонезависимую память, такую как по меньшей мере одно запоминающее устройство на магнитном диске, устройство флэш-памяти или универсальное флэш-хранилище (universal flash storage, UFS). Процессор 110 выполняет различные способы обработки устройства 100 путем исполнения инструкций, хранящихся во внутренней памяти 121, и/или инструкции, хранящиеся в памяти, расположенной в процессоре.
Устройство 100 может реализовать функцию аудио, такую как воспроизведение и запись музыки, с использованием аудиомодуля 170, динамика 170А, приемника 170В, микрофона 170С, разъема 170D для гарнитуры, процессора приложений и т.п.
Аудиомодуль 170 выполнен с возможностью преобразования цифровой аудиоинформации в аналогового выходного аудиосигнала, а также может быть выполнен с возможностью преобразования аналогового входного аудиосигнала в цифровой аудиосигнал. Аудиомодуль 170 может быть дополнительно выполнен с возможностью кодирования и декодирования аудиосигналов. В некоторых вариантах осуществления аудиомодуль 170 или некоторые функциональные модули аудиомодуля 170 могут быть расположены в процессоре 110.
Динамик 170А также называется рупором и выполнен с возможностью преобразования электрического аудиосигнала в звуковой сигнал. Устройство 100 может прослушивать музыку или прослушивать вызов в режиме громкой связи с использованием динамика 170А.
Приемник 170B также называется телефонной трубкой и выполнен с возможностью преобразования электрического аудиосигнала в звуковой сигнал. Когда пользователь отвечает на вызов или слушает аудиоинформацию с помощью устройства 100, приемник 170B может быть помещен рядом с ухом для прослушивания голоса.
Микрофон 170С также называется динамиком и выполнен с возможностью преобразования звукового сигнала в электрический сигнал. При совершении вызова или отправке голосовой информации пользователь может издавать звук рядом с микрофоном 170С для ввода звукового сигнала в микрофон 170С. По меньшей мере один микрофон 170С может быть расположен в устройстве 100. В некоторых других вариантах осуществления в устройстве 100 могут быть расположены два микрофона 170С для реализации функции шумоподавления. В некоторых других вариантах осуществления в устройстве 100 альтернативно могут быть расположены три, четыре или более микрофонов 170С для реализации таких функций, как идентификация источника звука и направленная запись. Процессор 110 может обрабатывать электрический сигнал, выдаваемый микрофоном 170С. Например, аудиомодуль 170 и модуль 160 беспроводной связи могут быть подключены с использованием интерфейса PCM. После преобразования окружающего звука в электрический сигнал (например, сигнал PCM) микрофон 170С передает электрический сигнал в процессор 110 с использованием интерфейса PCM. Процессор 110 выполняет анализ громкости и частотный анализ электрического сигнала для определения громкости и частоты окружающего звука.
Гнездо 170D для гарнитуры выполнено с возможностью подключения к проводной гарнитуре. Гнездо 170D для гарнитуры может быть USB-интерфейсом 130 или может быть стандартным интерфейсом открытой платформы мобильного устройства 100 3,5 мм (open mobile terminal platform, OMTP) или стандартным интерфейсом ассоциации индустрии сотовой связи США (cellular telecommunications industry association of the USA, CTIA).
Датчик 180А давления выполнен с возможностью считывать сигнал давления и может преобразовывать сигнал давления в электрический сигнал. В некоторых вариантах осуществления датчик 180А давления может быть расположен на дисплее 194. Существует много типов датчиков 180А давления, например, резистивный датчик давления, индуктивный датчик давления или емкостный датчик давления. Емкостной датчик давления может включать по меньшей мере две параллельные пластины из проводящих материалов. Когда к датчику 180А давления прикладывается сила, емкость между электродами изменяется, и устройство 100 определяет силу давления на основе изменения емкости. Когда операция касания выполняется на дисплее 194, устройство 100 определяет интенсивность операции касания с помощью датчика 180А давления. Устройство 100 также может вычислять местоположение касания на основе сигнала обнаружения датчика 180А давления. В некоторых вариантах осуществления операции касания, которые выполняются в одном и том же месте касания, но имеют разную интенсивность операций касания, могут соответствовать разным операционным инструкциям. Например, когда операция касания, чья интенсивность операции касания меньше первого порогового значения нажатия, выполняется значке приложения для обмена SMS-сообщениями, исполняется инструкция для просмотра SMS-сообщения; или, когда операция касания, чья интенсивность операции касания больше или равна первому пороговому значению давления, выполняется на значке приложения для обмена SMS-сообщениями, исполняется инструкция для создания нового SMS-сообщения.
Гироскопический датчик 180B может быть выполнен с возможностью определения положения движения устройства 100. В некоторых вариантах осуществления угловые скорости устройства 100 вокруг трех осей (а именно оси x, оси y и оси z) могут определяться с использованием гироскопического датчика 180B. Гироскопический датчик 180B может быть выполнен с возможностью реализации стабилизации изображения во время съемки. Например, при нажатии на кнопку затвора гироскопический датчик 180В определяет угол дрожания устройства 100 и вычисляет на основе этого угла расстояние, которое модуль объектива должен компенсировать, и позволяет объективу устранять дрожание устройства 100 посредством обратного движения, чтобы реализовать стабилизацию изображения. Гироскопический датчик 180B можно дополнительно использовать в сценариях, таких как навигация и соматические игры.
Датчик 180C барометрического давления выполнен с возможностью измерения барометрического давления. В некоторых вариантах осуществления устройство 100 вычисляет высоту на основе значения барометрического давления, которое измеряется датчиком 180С барометрического давления, чтобы помочь при позиционировании и навигации.
Магнитный датчик 180D включает в себя датчик Холла. Устройство 100 может обнаруживать открытие и закрытие откидного футляра с помощью магнитного датчика 180D. В некоторых вариантах осуществления, когда устройство 100 представляет собой телефон-раскладушку, устройство 100 может обнаруживать открытие и закрытие откидной крышки на основе магнитного датчика 180D. Устройство 100 может установить такую функцию, как автоматическая разблокировка откидной крышки на основе обнаруженного состояния открытия/закрытия футляра или обнаруженного состояния открытия/закрытия откидной крышки.
Датчик 180E ускорения может обнаруживать величину ускорений устройства 100 во всех направлениях (как правило, по оси x, оси y и оси z). Когда устройство 100 неподвижно, можно определить величину и направление силы тяжести. Датчик 180E ускорения может быть дополнительно выполнен с возможностью определения положения устройства 100 в качестве входного параметра приложения, такого как переключение между альбомным экраном и портретным экраном или шагомером.
Датчик 180F расстояния выполнен с возможностью измерения расстояния. Устройство 100 может измерять расстояние с помощью инфракрасного или лазерного излучения. В некоторых вариантах осуществления, например, в сценарии съемки, устройство 100 может использовать датчик 180F расстояния для измерения расстояния для осуществления быстрой фокусировки.
Оптический датчик 180G приближения может включать в себя, например, светоизлучающий диод (light-emitting diode, LED) и оптический детектор, такой как фотодиод. Светодиод может быть инфракрасным светодиодом. Устройство 100 излучает инфракрасный свет наружу с помощью светодиода. Устройство 100 обнаруживает отраженный инфракрасный свет от близлежащего объекта с помощью фотодиода. При обнаружении отраженного света устройство 100 может определить то, что поблизости находится объект. Когда отраженный свет не обнаружен, устройство 100 может определить то, что поблизости нет объекта. Устройство 100 может обнаруживать с помощью оптического датчика 180G приближения то, держит ли пользователь портативное устройство 100 близко к уху, чтобы автоматически отключать экран для экономии электроэнергии. Оптический датчик 180G приближения также может использоваться для автоматической разблокировки и автоматической блокировки в футлярном режиме или карманном режиме.
Датчик 180L окружающего света выполнен с возможностью определения яркости окружающего света. Устройство 100 может адаптивно регулировать яркость дисплея 194 на основе измеренной яркости окружающего света. Датчик 180L окружающего света также может быть выполнен с возможностью автоматической регулировки баланса белого во время фотографирования. Датчик 180L окружающего света может дополнительно взаимодействовать с оптическим датчиком 180G приближения, чтобы обнаруживать то, находится ли устройство 100 в кармане, во избежание случайного касания.
Датчик 180H отпечатков пальцев выполнен с возможностью сбора отпечатков пальцев. Устройство 100 может использовать свойство собранного отпечатка пальца для реализации таких функций, как разблокировка, доступ к блокировке приложения, фотографирование и ответ на вызов.
Датчик 180J температуры выполнен с возможностью определения температуры. В некоторых вариантах осуществления устройство 100 выполняет политику обработки температуры на основе температуры, которая определяется датчиком 180J температуры. Например, когда температура, сообщаемая датчиком 180J температуры, превышает пороговое значение, устройство 100 снижает производительность процессора, расположенного рядом с датчиком 180J температуры, для снижения энергопотребления и реализации тепловой защиты. В некоторых других вариантах осуществления, когда температура ниже другого порогового значения, устройство 100 нагревает аккумуляторную батарею 142 во избежание аварийного отключения устройства 100 из-за низкой температуры. В некоторых других вариантах осуществления, когда температура ниже еще одного порогового значения, устройство 100 выполняет повышение выходного напряжения аккумуляторной батареи 142 во избежание аварийного отключения из-за низкой температуры.
Датчик 180K касания также упоминается как сенсорное устройство. Датчик 180K касания может быть расположен на дисплее 194. Датчик 180K касания и дисплей 194 образуют сенсорный экран, и сенсорный экран также упоминается как сенсорный экран. Датчик 180K касания выполнен с возможностью обнаружения касания, выполняемого на датчике 180К касания или рядом с ним. Датчик 180K касания может передавать обнаруженную операцию касания в процессор приложений для определения типа события касания. Визуальный вывод, относящийся к операции касания, может быть обеспечен с использованием дисплея 194. В некоторых других вариантах реализации датчик 180K касания также может быть расположен на поверхности устройства 100 в положении, отличном от положения дисплея 194.
Датчик 180M костной проводимости может получать вибрационный сигнал. В некоторых вариантах осуществления датчик 180M костной проводимости может получать вибрационный сигнал кости части голосовых связок человека. Датчик 180M костной проводимости может также контактировать с пульсом тела для приема сигнала биения артериального давления. В некоторых вариантах осуществления датчик 180M костной проводимости может альтернативно располагаться в гарнитуре для получения гарнитуры костной проводимости. Аудиомодуль 170 может получать речевой сигнал посредством синтаксического анализа на основе вибрационного сигнала, полученного датчиком 180M костной проводимости от вибрации костной массы части голосовых связок, для реализации речевой функции. Процессор приложений может анализировать информацию о частоте сердечных сокращений на основе сигнала артериального давления и пульса, полученного датчиком 180M костной проводимости, для реализации функции обнаружения частоты сердечных сокращений.
Клавиша 190 включает в себя клавишу включения и клавишу регулировки громкости. Клавиша 190 может быть механической или сенсорной. Устройство 100 может принимать сигнал ввода с клавиши для реализации функции, которая относится к сигналу ввода с клавиши.
Мотор 191 может генерировать вибрацию. Мотор 191 может быть выполнен с возможностью предоставления подсказки о входящем вызове или может быть выполнен с возможностью обеспечения сенсорной обратной связи. Мотор 191 может генерировать различные эффекты обратной связи с вибрацией для различных операций касания, выполняемых в различных приложениях. Для операций касания, выполняемых в разных областях дисплея 194, мотор 191 также может генерировать различные эффекты обратной связи с вибрацией. Различные сценарии применения (например, напоминание о времени, получение информации, будильник, игра) могут соответствовать разным эффектам обратной связи с вибрацией. Эффект обратной связи с вибрацией при касании можно дополнительно настроить.
Индикатор 192 может быть световым индикатором и может быть выполнен с возможностью индикации состояния зарядки и изменения мощности или может быть выполнен с возможностью индикации сообщения, пропущенного вызова и уведомления.
Интерфейс 195 SIM-карты выполнен с возможностью подключения к SIM-карте. SIM-карта может быть вставлена в интерфейс 195 SIM-карты для осуществления связи с устройством 100 или может быть удалена из интерфейса 195 SIM-карты для осуществления отделения от устройства 100. Устройство 100 может поддерживать один или N интерфейсов SIM-карты, где N – положительное целое число больше 1. Множество карт может быть одновременно вставлено в один и тот же интерфейс 195 SIM-карты. Типы множества карт могут быть одинаковыми или разными. Интерфейс 195 SIM-карты также может быть совместим с внешней картой памяти. Устройство 100 взаимодействует с сетью с использованием SIM-карты для реализации таких функций, как вызов и передача данных. В некоторых вариантах осуществления устройство 100 использует встроенную SIM-карту (embedded-SIM, eSIM). Карта eSIM может быть встроена в устройство 100 и не может быть отделена от устройства 100.
Выше была подробно описана аппаратная система устройства 100. Далее приводится описание программной системы устройства 100. Программная система может использовать многоуровневую архитектуру, управляемую событиями архитектуру, микроядерную архитектуру, микросервисную архитектуру или облачную архитектуру. В этом варианте осуществления настоящей заявки многоуровневая архитектура используется в качестве примера для описания программной системы устройства 100.
Как показано на фиг. 2, программная система, использующая многоуровневую архитектуру, разделена на несколько уровней, и каждый уровень имеет четкую роль и задачу. Уровни взаимодействуют друг с другом с помощью программного интерфейса. В некоторых вариантах осуществления система Android разделена на четыре уровня: уровень приложения, уровень инфраструктуры приложения, среда выполнения Android (Android runtime) и системная библиотека, а также уровень ядра сверху вниз.
Уровень приложения может включать в себя такие приложения, как «Камера», «Галерея», «Календарь», «Телефон», «Карты», «Навигация», «WLAN», «Bluetooth», «Музыка», «Видео» и «Обмен сообщениями».
Уровень инфраструктуры приложения обеспечивает интерфейс прикладного программирования (application programming interface, API) и структуру программирования для приложения на уровне приложения. Уровень инфраструктуры приложения может включать в себя некоторые заданные функции.
Например, уровень инфраструктуры приложения включает в себя диспетчер окон, поставщик содержания, систему просмотра, диспетчер телефона, диспетчер ресурсов и диспетчер уведомлений.
Диспетчер окон выполнен с возможностью управления оконной программой. Диспетчер окон может получить размер дисплея, определить то, имеется ли строка состояния, выполнить блокировку экрана, сделать снимок экрана и т.п.
Поставщик содержания используется для хранения и получения данных и обеспечения доступа к данным посредством приложения. Данные могут включать в себя видео, изображение, аудио, сделанные и принятые вызовы, историю просмотра и закладки, адресную книгу и т.п.
Система просмотра включает в себя визуальные элементы управления, такие как элемент управления для отображения текста и элемент управления для отображения изображения. Система просмотра может быть выполнена с возможностью построения приложения. Интерфейс дисплея может включать в себя одно или несколько представлений, например, включать в себя интерфейс дисплея значка уведомления о SMS-сообщении и может включать в себя представление для отображения текста и представление для отображения изображения.
Диспетчер телефона выполнен с возможностью обеспечения функции связи для устройства 100, например, управления статусом вызова (в том числе ответ или отклонение).
Диспетчер ресурсов предоставляет различные ресурсы для приложения, такие как локализованная строка, значок, изображение, файл макета и видеофайл.
Диспетчер уведомлений позволяет приложению отображать информацию уведомления в строке состояния, которая может использоваться для передачи сообщения типа уведомления и может автоматически исчезать после кратковременного пребывания, не требуя вмешательства пользователя. Например, диспетчер уведомлений выполнен с возможностью предоставления уведомления о завершении загрузки и отправки уведомления о сообщении. Диспетчер уведомлений может также управлять уведомлением, которое появляется в верхней строке состояния системы в виде графика или текста полосы прокрутки, например, уведомлением о приложении, работающем в фоновом режиме. Диспетчер уведомлений может также управлять уведомлением, которое появляется на дисплее в виде диалогового окна. Например, в строке состояния запрашивается текстовая информация, воспроизводится звук уведомления, электронное устройство вибрирует или мигает световой индикатор.
Среда выполнения Android включает в себя базовую библиотеку и виртуальную машину. Среда выполнения Android отвечает за планирование и управление системой Android.
Базовая библиотека включает в себя две части: функцию, которую нужно вызывать на языке Java, и базовую библиотеку Android.
Уровень приложения и уровень инфраструктуры приложения выполняются на виртуальной машине. Виртуальная машина выполняет Java-файлы на уровне приложения и на уровне инфраструктуры приложения как двоичные файлы. Виртуальная машина используется для реализации таких функций, как управление жизненным циклом объекта, управление стеком, управление потоками, управление безопасностью и исключениями, а также сборка мусора.
Системная библиотека может включать в себя множество функциональных модулей, например, диспетчер поверхностей (surface manager), медиа-библиотеку (Media Libraries), библиотеку обработки трехмерной графики (например, открытую графическую библиотеку для встраиваемых систем (open graphics library for embedded systems, OpenGL ES) и движок 2D-графики (например, графическая библиотека skia (skia graphics library, SGL)).
Диспетчер поверхностей выполнен с возможностью: управления подсистемой отображения и объединения двухмерных и трехмерных уровней для множества приложений.
Медиа-библиотека поддерживает воспроизведение и запись звука в множестве форматов, воспроизведение и запись видео в множестве форматов и файлы неподвижных изображений. Медиа-библиотека может поддерживать множество форматов кодирования аудио и видео, таких как MPEG 4, H.264, уровень III аудио экспертной группы по движущимся изображениям (moving picture experts group audio layer III, MP3), улучшенное кодирование аудио (advanced audio coding, AAC), адаптивные многоскоростные (adaptive multi-rate, AMR) алгоритмы, совместная группа экспертов по фотографии (joint photographic experts group, JPG) и портативная сетевая графика (portable network graphics, PNG).
Библиотека обработки трехмерной графики может быть выполнена с возможностью реализации рисования трехмерной графики, визуализации изображения, компоновки и обработки уровней.
Механизм двумерной графики представляет собой механизм рисования для двумерного рисования.
Уровень ядра представляет собой уровень между аппаратными средствами и программным обеспечением. Уровень ядра может включать в себя модули драйверов, такие как драйвер дисплея, драйвер камеры, драйвер аудио и драйвер датчика.
Далее приводится описание примера рабочей процедуры программной системы и аппаратной системы устройства 100 со ссылкой на отображение сценария фотографирования.
Когда пользователь выполняет операцию касания на датчике 180K касания, на уровень ядра отправляется соответствующее аппаратное прерывание. Уровень ядра обрабатывает операцию касания в необработанное событие ввода, и необработанное событие ввода включает в себя такую информацию, как координаты касания и отметка времени операции касания. Необработанное событие ввода сохраняется на уровне ядра. Уровень инфраструктуры приложения получает необработанное событие ввода от уровня ядра, идентифицирует элемент управления, соответствующий необработанному событию ввода, и уведомляет приложение (application, APP), соответствующее элементу управления. Например, операция касания – это операция постукивания, и приложение, соответствующее элементу управления, является приложение камеры. После того, как приложение камеры пробуждается операцией касания, драйвер камеры на уровне ядра может быть вызван с использованием API, и драйвер камеры управляет камерой 193 для фотографирования.
Ниже используется устройство 100 в качестве примера для описания способа сохранения зашифрованного текста согласно настоящей заявке.
Для обеспечения безопасности файлов во внешней памяти файлы во внешней памяти могут быть зашифрованы, и затем сохранены во внешней памяти, и ключи для дешифрования файлов сохранены во внутренней памяти устройства 100. Таким образом, содержание внешней памяти может быть считано в устройстве 100 только как открытый текст. Когда внешняя память подключена к другому электронному устройству, так как в другом электронном устройстве не хранится ключ, содержание внешней памяти не может быть дешифровано другим электронным устройством, что обеспечивает безопасность файлов во внешней памяти.
Внешняя память может представлять собой SD-карту, флэш-накопитель USB или другой тип памяти. Внешняя память может устанавливать соединение для передачи данных с устройством 100 способом вставки или может устанавливать соединение для передачи данных с устройством 100 проводным или беспроводным способом. Конкретный тип внешней памяти и способ соединения внешней памяти и устройства 100 не ограничены в настоящей заявке. Ниже, в качестве примера, для описания используется SD.
Пользователь может инициировать процесс шифрования SD-карты в интерфейсе настройки шифрования, показанном на фиг. 3. Пользователь может нажать «шифрование карты памяти» (фиг. 3), чтобы войти в интерфейс подтверждения настроек шифрования, показанный на фиг. 4. Затем пользователь нажимает «шифрование карты памяти» (фиг. 4), чтобы убедиться, что файл на SD-карте зашифрован. Интерфейс обработки шифрования показан на фиг. 5. Алгоритм шифрования, который используется в процессе шифрования, не ограничен в настоящей заявке.
После того как файл на SD-карте зашифрован, необходимо правильно сохранить ключ шифрования файла (file encryption key, FEK). Способ сохранения FEK состоит в многократном шифровании FEK и последующем сохранении FEK в стираемом разделе. Способ показан на фиг. 6.
После того, как пользователь инициирует процесс шифрования SD-карты в интерфейсе настройки шифрования, показанном на фиг. 3, модуль настройки шифрования SD-карты вырабатывает инструкцию шифрования. В зависимости от условия установки пароля экрана блокировки существует два случая для модуля, вызываемого инструкцией шифрования.
Случай 1: Пароль экрана блокировки не установлен.
Модуль шифрования SD-карты вызывает модуль управления шифрованием (Vold) с помощью инструкции шифрования для шифрования FEK. Если пользователь не установил пароль для экрана блокировки, значение по умолчанию может затем использоваться для шифрования ключа шифрования файла (file encryption key encryption key, FEKEK). Далее подробно описывается процесс шифрования FEK.
Случай 2: Пароль блокировки экрана установлен.
Модуль шифрования SD-карты вызывает службу LockSettingsService (LockSettingsService), используя инструкцию шифрования для получения хэш-значения пароля. Затем служба LockSettingsService передает хэш-значение пароля в модуль управления шифрованием (Vold), чтобы хэш-значение пароля использовалось в дальнейшем для шифрования ключа шифрования файла. Хэш-значение пароля – это информация, выработанная на основе пароля экрана блокировки. Например, служба LockSettingsService выполняет хэш-вычисление пароля экрана блокировки, когда пользователь устанавливает пароль экрана блокировки для выработки хэш-значения пароля, получает ранее сохраненное хэш-значение пароля после того, как пользователь запускает шифрование SD-карты, и передает пароль хеш-значение в модуль управления шифрованием.
Vold отвечает за реализацию основных функций шифрования и дешифрования. Vold запускает логику шифрования или логику дешифрования для SD-карты, вызывая библиотеку шифрования или библиотеку дешифрования.
Когда файловая система (такая как eCryptfs) создает файл на SD-карте, файловая система генерирует случайное число для каждого файла. Например, когда eCryptfs создает новый файл, случайная функция, предоставляемая ядром, создает случайное число. Случайное число – это FEK. FEK используется для шифрования файла на SD-карте и для дешифрования зашифрованного файла на SD-карте.
При необходимости eCryptfs хранит зашифрованный файл в формате файла с достаточно хорошей конфиденциальностью (open pretty good privacy, OpenPGP). Зашифрованный файл может быть разделен на множество логических блоков (extent), и размер каждого логического блока можно регулировать. Однако размер каждого логического блока обычно не превышает размера физической страницы.
После того как файл на SD-карте зашифрован, необходимо зашифровать и сохранить FEK. Когда пользователь устанавливает шифрование SD-карты, Vold размонтирует и затем перемонтирует файловую систему. В этом случае генерируется случайное число. Случайным числом является FEKEK (пример первого ключа). FEKEK используется для шифрования FEK (пример второго ключа), где FEKEK устанавливается Vold для набора ключей (keyring) ядра, и файловая система получает FEKEK из набора ключей при шифровании FEK. Зашифрованный FEK хранится в метаданных (meta data) зашифрованного файла.
После того как FEK зашифрован, FEKEK также необходимо зашифровать и сохранить. Так как Vold является модулем универсальной среды исполнения (rich execution environment, REE), и безопасность не соответствует требованиям, FEKEK не может быть зашифрован. Vold может вызывать модуль управления ключами в доверенной среде исполнения (trust execution environment, TEE) с помощью клиентского приложения (client application, CA), то есть доверенного приложения (trust application, TA) мастера ключей, и TA мастера ключей завершает шифрование на FEKEK.
TA мастера ключей может использовать хэш-значение пароля и шифровать FEKEK в соответствии с усовершенствованным стандартом шифрования (advanced encryption standard, AES) для генерации ciphertext 1 (пример пятого зашифрованного текста). Затем TA мастера ключей может использовать аппаратный уникальный ключ (hardware unique key, HUK) и шифровать хэш-значение пароля в соответствии с AES, чтобы сгенерировать keymaster_key_blob (пример шестого зашифрованный текста). ТА мастера ключей хранит ciphertext 1 и keymaster_key_blob в стираемом разделе (/data path).
Так как HUK разных устройств являются уникальными, хэш-значения паролей шифруются с использованием HUK, чтобы гарантировать то, что вышеупомянутый keymaster_key_blob может быть дешифрован только на устройстве 100, чтобы обеспечить безопасность зашифрованного файла на SD-карте.
Процедура шифрования, относящаяся к фиг. 6 показана на фиг. 7.
Если на текущей SD-карте существуют два подлежащих шифрованию файла (файл 1 и файл 2), файловая система генерирует два случайных числа, а именно FEK1 и FEK2, для двух файлов. Затем файловая система использует FEK1 для шифрования файла 1 и использует FEK2 для шифрования файла 2.
После завершения шифрования файла 1 и файла 2 файловая система получает FEKEK из набора ключей и отдельно шифрует FEK1 и FEK2 с использованием FEKEK. Зашифрованный FEK1 хранится в метаданных файла 1, и зашифрованный FEK2 хранится в метаданных файла 2.
Затем Vold вызывает TA мастера ключей, используя CA, и TA мастера ключей шифрует FEKEK, используя хэш-значение пароля. Затем TA мастера ключей шифрует хеш-значение пароля с помощью аппаратного HUK.
Когда файл шифрования на SD-карте необходимо дешифровать, устройство 100 выполняет процесс, обратный процедуре шифрования, показанной на фиг. 7. Например, Vold вызывает TA мастера ключей, используя CA для выполнения следующего этапа дешифрования: TA мастера ключей получает keymaster_key_blob и ciphertext 1 из стираемого раздела, сначала дешифрует keymaster_key_blob с помощью HUK, чтобы получить хэш-значение пароля, и затем дешифрует ciphertext 1, используя хэш-значение пароля, чтобы получить FEKEK. После получения FEKEK от ключевого мастера TA, Vold устанавливает FEKEK в наборе ключей. Файловая система получает FEKEK из набора ключей, дешифрует FEK, и затем дешифрует дешифрованный файл на SD-карте с помощью FEK.
Например, когда eCryptfs открывает зашифрованный файл, eCryptfs считывает метаданные заголовка зашифрованного файла, используя файловую систему нижнего уровня, и доставляет метаданные в модуль хранилища ключей (включая модуль TA мастера ключей); модуль хранилища ключей получает FEKEK из набора ключей и дешифрует зашифрованный FEK в метаданных, используя FEKEK для генерации FEK; и затем eCryptfs дешифрует зашифрованный файл с помощью FEK. При дешифровании зашифрованного файла каждый логический блок (extent) зашифрованного файла считывается в кэш страниц (page cache) и дешифруется с помощью Kernel Crypto API.
Когда устройство 100 выполняет сброс первого типа (который также называется «пользовательским сбросом», то есть пользователь сбрасывает устройство 100 из меню настройки системы) данных в стираемой области очищаются. В этом случае устройство 100 может создать резервную копию ciphertext 1 и keymaster_key_blob, так что файлы на SD-карте не могут быть дешифрованы, так как ciphertext 1 и keymaster_key_blob были удалены. Процедура резервного копирования пользовательского сброса показана на фиг. 8.
Пользователь управляет, используя интерфейс настройки, устройством 100 для восстановления заводских настроек. Устройство 100 проверяет пароль экрана блокировки, который вводится пользователем. Например, устройство 100 выполняет вычисление пароля экрана блокировки, который вводится пользователем, для получения хеш-значения пароля, и затем сравнивает хэш-значение пароля, полученное посредством вычисления, с сохраненным хэш-значением пароля. Если два хеш-значения паролей совпадают, определяется то, что два хэш-значения паролей проверены.
После проверки уровень инфраструктуры (framework) приложения отправляет широковещательное сообщение для восстановления заводских настроек. После приема широковещательного сообщения, Vold запускает процедуру резервного копирования ключа, вызывает TA мастера ключей, используя CA для дешифрования FEKEK из стираемого раздела, и затем шифрует FEKEK, используя значение по умолчанию, и шифрует значение по умолчанию с помощью HUK. Зашифрованный FEKEK и значение по умолчанию (пример седьмого зашифрованного текста и восьмого зашифрованного текста) сохраняются в нестираемом разделе.
В настоящей заявке нестираемый раздел относится к области хранения, в которой данные не стираются во время сброса второго типа (который также называется «сбросом к заводским настройкам», то есть пользователь не сбрасывает устройство 100 с использованием меню настройки системы). Нестираемым разделом может быть /sec_storage и может быть другая защищенная область хранения в TEE, например, защищенный от несанкционированной перезаписи блок памяти (replay protected memory block, RPMB).
После восстановления заводских настроек и перезапуска устройство 100 определяет то, находится ли SD-карта в нужном месте. Когда SD находится в нужном месте, TA мастер ключей копирует зашифрованный FEKEK и значение по умолчанию из нестираемого раздела в стираемый раздел, чтобы зашифрованный FEKEK и значение по умолчанию можно было использовать для восстановления FEK и дешифрования файла в SD-карте.
В заключение, до и после того, как устройство 100 выполняет сброс пользователя, условие изменения ключа, которое сохраняется в области хранения, показано на фиг. 9.
После того, как пользователь инструктирует устройство 100 выполнить пользовательский сброс, устройство 100 инициируется для выполнения резервного копирования ключа. На этапе резервного копирования ключа ciphertext 1 и keymaster_key_blob сохраняются в стираемом разделе. Ciphertext 1 и keymaster_key_blob дешифруются и шифруются и сохраняются в нестираемом разделе в виде «FEKEK, зашифрованного с использованием значения по умолчанию, и значения по умолчанию, зашифрованного с использованием HUK».
После завершения резервного копирования ключа устройство 100 вступает в стадию форматирования. На этапе форматирования данные в стираемом разделе очищаются, и данные в нестираемом разделе сохраняются.
После завершения форматирования устройство 100 переходит к стадии восстановления ключа. На этапе восстановления ключа зашифрованный текст в нестираемом разделе (FEKEK, зашифрованный с использованием значения по умолчанию и значения по умолчанию, зашифрованного с помощью HUK) копируется в стираемый раздел, тем самым завершая восстановление ключа.
В описанном выше процессе пользовательского сброса пользователю необходимо отформатировать устройство 100 с помощью меню настройки системы. Устройство 100 имеет возможность резервного копирования зашифрованного текста (зашифрованного FEKEK) в стираемом разделе, так что файл на SD-карте все еще может быть дешифрован после форматирования устройства 100. Однако, когда пользователь выполняет сброс второго типа (например, сброс к заводским настройкам) на устройстве 100 без использования меню настройки системы, зашифрованный текст в стираемом разделе удаляется без копирования в нестираемый раздел, и, таким образом, файл, на отформатированной SD-карте устройства 100, не может быть дешифрован.
Далее приводится описание другого варианта осуществления способа сохранения зашифрованного текста согласно настоящей заявке, так что файл на SD-карте устройства 100 после сброса к заводским настройкам все еще может быть дешифрован. Этот вариант осуществления может быть применен к устройству 100 вместе с предыдущим вариантом осуществления «пользовательского сброса» или может быть отдельно применен к устройству 100.
После того, как пользователь запускает шифрование на SD-карте в интерфейсе настройки, показанном на фиг. 3, устройство 100 выполняет процедуру резервного копирования ключа, показанную на фиг. 10. Как показано на фиг. 10, модуль настройки шифрования SD-карты вызывает модуль входа в систему с помощью учетной записи, используя инструкцию шифрования для выполнения последующей обработки. В зависимости от условия входа в систему с помощью учетной записи существует два способа обработки модуля входа в систему с помощью учетной записи:
Случай 3: Пользователь не входит в систему с помощью учетной записи.
Модуль входа в систему с помощью учетной записи отображает интерфейс входа в систему с помощью учетной записи, как показано на фиг. 11, чтобы предложить пользователю войти в систему с помощью учетной записи (например, в систему с помощью учетной записи Honor). После успешного входа в систему с помощью учетной записи модуль входа в систему с помощью учетной записи вычисляет хеш-значение идентификатора учетной записи (идентификатор, ID) и затем передает хэш-значение идентификатора учетной записи в Vold.
Случай 4: Пользователь вошел в систему с помощью учетной записи.
Модуль входа в систему с помощью учетной записи получает хэш-значение идентификатора учетной записи и передает хэш-значение идентификатора учетной записи в Vold. При необходимости, если модуль входа в систему с помощью учетной записи не вычисляет хэш-значение идентификатора учетной записи до того, как пользователь инициирует шифрование SD-карты, модуль входа в систему с помощью учетной записи вычисляет хэш-значение идентификатора учетной записи, когда пользователь запускает шифрование SD-карты; или, если модуль входа в систему с помощью учетной записи вычисляет хеш-значение идентификатора учетной записи до того, как пользователь инициирует шифрование SD-карты, модуль входа в систему с помощью учетной записи напрямую получает хэш-значение идентификатора учетной записи, когда пользователь запускает шифрование SD-карты.
После получения хэш-значения идентификатора учетной записи, Vold вызывает TA мастера ключей с помощью CA, и TA мастера ключей шифрует и создает резервную копию FEKEK.
TA мастера ключей может использовать хеш-значение идентификатора учетной записи и шифровать FEKEK в соответствии с AES для генерации ciphertext 2 (пример первого зашифрованного текста). Затем ТА мастера ключей может использовать HUK и зашифровать хеш-значение идентификатора учетной записи в соответствии с AES, чтобы сгенерировать keymaster_key_blob_bak (пример второго зашифрованного текста). ТА мастера ключей вызывает API TEE для сохранения ciphertext 2 и keymaster_key_blob_bak в нестираемом разделе (/sec_storage path), тем самым завершая резервное копирование FEKEK.
Так как HUK разных устройств уникальны, хэш-значение идентификатора учетной записи шифруется с использованием HUK, чтобы гарантировать то, что вышеупомянутый keymaster_key_blob_bak может быть дешифрован только на устройстве 100, чтобы обеспечить безопасность зашифрованного файла на SD-карте.
В способе, показанном на фиг. 10, после того, как пользователь инициирует шифрование на SD-карте с помощью интерфейса настройки, устройство 100 может создать резервную копию FEKEK в любой момент перед выполнением сброса к заводским настройкам. Даже если устройство 100 затем выполняет сброс к заводским настройкам, устройство 100 может восстановить FEKEK после перезапуска, тем самым решая проблему невозможности дешифрования файла на SD-карте после сброса к заводским настройкам.
При необходимости после того как устройство 100 выполнит способ, показанный на фиг. 10, если пользователь переключает идентификатор зарегистрированной учетной записи, Vold получает хэш-значение нового идентификатора учетной записи и обновляет ciphertext 2 и keymaster_key_blob_bak, используя хэш-значение нового идентификатора учетной записи. Процесс обновления показан на фиг. 12.
Далее описывается процесс, в котором устройство 100 дешифрует файл на SD-карте после выполнения сброса к заводским настройкам.
Пользователь сначала блокирует экран (или выключает) устройства 100, и затем может нажать комбинацию клавиш (например, «клавиша громкости» + «клавиша питания»), чтобы позволить устройству 100 войти в режим восстановления и отображать интерфейс настройки сброса к заводским настройкам, показанный на фиг. 13. Затем устройство 100 отображает интерфейс подтверждения, показанный на фиг. 14, после того, как пользователь коснется надписи «восстановить заводские настройки». После того, как пользователь коснется надписи «восстановить заводские настройки» в интерфейсе, показанном на фиг. 13, устройство 100 выполняет сброс к заводским настройкам, чтобы отобразить интерфейс сброса к заводским настройкам, показанный на фиг. 15.
После завершения сброса к заводским настройкам устройство 100 перезапускается, запускает программу мастера включения питания и выполняет процедуру восстановления ключа, показанную на фиг. 16.
Программа мастера включения питания вызывает модуль поиска мобильного телефона, чтобы определить то, было ли активировано состояние защиты от сброса к заводским настройкам (factory reset protection, FRP). Модуль извлечения мобильного телефона с помощью CA для защиты от кражи вызывает TA для защиты от кражи, чтобы определить то, было ли запущено состояние FRP. Если состояние FRP было инициировано, модуль поиска мобильного телефона отображает интерфейс проверки учетной записи, показанный на фиг. 17. Учетная запись, которая проверяется интерфейсом проверки учетной записи, является учетной записью, связанной с состоянием FRP (то есть последней зарегистрированной учетной записью до того, как устройство 100 выполнит возврат к заводским настройкам). После того, как пользователь ввел правильный пароль на этом интерфейсе, модуль поиска мобильного телефона уведомляет об успешной проверке учетной записи Vold. Затем Vold вызывает, используя CA, ТА мастера ключей для выполнения следующих шагов по восстановлению ключа.
TA мастера ключей получает keymaster_key_blob_bak и ciphertext 2 из нестираемого раздела, сначала дешифрует keymaster_key_blob_bak с использованием HUK, чтобы получить хэш-значение идентификатора учетной записи, и затем дешифрует ciphertext 2 с использованием хеш-значения идентификатор учетной записи, чтобы получить FEKEK.
TA мастера ключей повторно шифрует FEKEK с использованием значения по умолчанию для генерации третьего зашифрованного текста и использует HUK для шифрования значения по умолчанию для генерации четвертого зашифрованного текста. Зашифрованный FEKEK и значение по умолчанию сохраняются в нестираемом разделе (/sec_storage path) как резервные ключи. Затем TA мастера ключей копирует зашифрованный FEKEK и значение по умолчанию в стираемый раздел (/data path), чтобы использовать их при шифровании или дешифровании файла на SD-карте. Старый пароль экрана блокировки удаляется после того, как устройство 100 выполняет сброс к заводским настройкам. В предыдущем варианте осуществления устройство 100 может дешифровать SD-карту, используя значение по умолчанию в качестве ключа, когда не установлен новый пароль блокировки экрана.
При необходимости TA мастера ключей может зашифровать FEKEK без использования значения по умолчанию и напрямую скопировать keymaster_key_blob_bak и ciphertext 2 из нестираемого раздела в стираемый раздел. В этом случае устройство 100 может предложить пользователю установить новый пароль экрана блокировки, чтобы использовать новый пароль экрана блокировки для шифрования FEKEK.
Когда файл на SD-карте необходимо зашифровать, TA мастера ключей дешифрует FEKEK из стираемого раздела и передает FEKEK в набор ключей, используя Vold. После шифрования файла на SD-карте, используя FEK, файловая система получает FEKEK из набора ключей, шифрует FEK, используя FEKEK, и сохраняет зашифрованный FEK в виде метаданных файла.
Когда файл на SD-карте необходимо дешифровать, TA мастера ключей дешифрует FEKEK из стираемого раздела и передает FEKEK в набор ключей, используя Vold. Файловая система дешифрует FEK из метаданных файла SD-карты, используя FEKEK, и затем дешифрует файл, используя FEK.
В заключение, до и после того, как устройство 100 выполняет сброс к заводским настройкам, условие изменения ключа, которое сохраняется в области хранения, показано на фиг. 18.
Когда пользователь инструктирует устройство 100 зашифровать файл на SD-карте, устройство 100 инициируется для выполнения резервного копирования ключа. На этапе резервного копирования ключа стираемый раздел хранит ciphertext 1 и keymaster_key_blob, и нестираемый раздел сохраняет ciphertext 2 и keymaster_key_blob_bak. Ciphertext 1 – это FEKEK, зашифрованный с использованием хэш-значения пароля, keymaster_key_blob –хэш-значение пароля, зашифрованное с использованием HUK, ciphertext 2 – FEKEK, зашифрованный с использованием хэш-значения идентификатора учетной записи, и keymaster_key_blob_bak –хэш-значение идентификатора учетной записи, зашифрованное с использованием HUK.
После того, как пользователь инструктирует устройство 100 выполнить сброс к заводским настройкам, устройство 100 входит в стадию сброса к заводским настройкам и выполняет форматирование. На этапе сброса к заводским настройкам данные в стираемом разделе очищаются, и данные в нестираемом разделе сохраняются.
После завершения форматирования устройство 100 переходит к стадии восстановления ключа. На стадии восстановления ключа зашифрованный текст (ciphertext 2 и keymaster_key_blob_bak) в нестираемом разделе дешифруется, шифруется и копируется в стираемый раздел в виде «FEKEK, зашифрованного с использованием значения по умолчанию и значения по умолчанию, зашифрованного с использованием HUK», тем самым завершая восстановление ключа.
Выше был подробно описан пример способа сохранения зашифрованного текста согласно настоящей заявке. Можно понять, что для реализации вышеуказанных функций соответствующее устройство включает в себя соответствующую аппаратную структуру и/или программный модуль, который выполняет каждую функцию. Специалисту в данной области техники будет очевидно, что со ссылкой на примеры, описанные в вариантах осуществления, раскрытых в этом описании, блоки и этапы алгоритма могут быть реализованы в виде аппаратных средств или комбинации аппаратных средств и компьютерного программного обеспечения, представленных в настоящей заявке. То, реализуется ли функция аппаратными средствами или аппаратными средствами под управлением компьютерного программного обеспечения, зависит от конкретного приложения и конструктивных ограничений технического решения. Специалист в данной области техники может использовать разные способы для реализации описанных функций для каждого конкретного приложения, но такую реализацию не следует рассматривать как выходящую за рамки настоящей заявки.
В настоящей заявке устройство для сохранения зашифрованного текста может быть разделено на функциональные блоки на основе приведенных выше примеров способов. Например, каждый функциональный блок может быть получен путем разделения на основе соответствующей функции, или две или более функции могут быть объединены в один блок. Вышеупомянутый интегрированный блок может быть реализован в виде аппаратных средств или может быть реализован в виде функционального блока программного обеспечения. Следует отметить, что модульное разделение в настоящей заявке является примером и является просто логическим разделением функций, и во время фактической реализации может использоваться другой способ разделения.
На фиг. 19 показано схематичное представление структуры устройства для сохранения зашифрованного текста согласно настоящей заявке. Устройство 1900 включает в себя блок 1910 обработки и блок 1920 ввода.
Блок 1920 ввода выполнен с возможностью получения инструкции шифрования, где инструкция шифрования инструктирует зашифровать файл во внешней памяти.
Блок 1910 обработки выполнен с возможностью: получения собственного значения первого идентификатора учетной записи на основе инструкции шифрования; шифрования первого ключа с использованием собственного значения первого идентификатора учетной записи для генерации первого зашифрованного текста, где первый ключ используется для шифрования второго ключа, и второй ключ используется для шифрования первого файла во внешней памяти; шифрования собственного значения первого идентификатора учетной записи, чтобы сгенерировать второй зашифрованный текст; и сохранения первого зашифрованного текста и второго зашифрованного текста в нестираемом разделе.
При необходимости блок 1920 ввода дополнительно выполнен с возможностью получения информации указателя для переключения учетной записи.
Блок 1910 обработки дополнительно выполнен с возможностью: проверки первого идентификатора учетной записи на основе информации указания; получения собственного значения второго идентификатора учетной записи после проверки первого идентификатора учетной записи; и обновления первого зашифрованного текста и второго зашифрованного текста на основе собственного значения второго идентификатора учетной записи.
При необходимости процессор 1910 дополнительно выполнен с возможностью определения того, активировано ли состояние FRP; проверки первого идентификатора учетной записи при инициировании состояния FRP; и, когда первый идентификатор учетной записи проверен успешно, дешифрования первого зашифрованного текста и второго зашифрованного текста, чтобы сгенерировать первый ключ.
При необходимости процессор 1910 дополнительно выполнен с возможностью: шифрования первого ключа с использованием значения по умолчанию для генерации третьего зашифрованного текста; шифрования значения по умолчанию для генерации четвертого зашифрованного текста; и сохранения третьего зашифрованного текста и четвертого зашифрованного текста в нестираемом разделе.
При необходимости блок 1910 обработки дополнительно выполнен с возможностью: копирования третьего зашифрованного текста и четвертого зашифрованного текста из нестираемого раздела в стираемый раздел; генерации первого ключа на основе третьего зашифрованного текста и четвертого зашифрованного текста в стираемом разделе; и дешифрования файла во внешней памяти на основе первого ключа.
Что касается конкретного способа, в котором устройство 1900 выполняет способ сохранения зашифрованного текста, и полученного полезного эффекта, смотри соответствующее описание вариантов осуществления способа.
На фиг. 20 показано схематичное представление структуры электронного устройства согласно настоящей заявке. Пунктирная линия на фиг. 20 указывает то, что устройство или модуль являются дополнительными. Устройство 2000 может быть выполнено с возможностью реализации способа, описанного в предыдущих вариантах осуществления способа.
Устройство 2000 включает в себя один или несколько процессоров 2001. Один или несколько процессоров 2001 могут поддерживать устройство 2000 для реализации способа в вариантах осуществления способа. Процессор 2001 может быть процессором общего назначения или процессором специального назначения. Например, процессор 2001 может быть центральным процессором (central processing unit, CPU), процессором цифровых сигналов (digital signal processor, DSP), специализированной интегральной схемой (application specific integrated circuit, ASIC), программируемой пользователем вентильной матрицей (field programmable gate array, FPGA) или другим программируемым логическим устройством, таким как дискретный вентиль, транзисторное логическое устройство или дискретный аппаратный компонент.
Процессор 2001 может быть выполнен с возможностью управления устройством 2000, исполнения программы программного обеспечения и обработки данных программы программного обеспечения. Устройство 2000 может дополнительно включать в себя блок 2005 связи, который может быть выполнен с возможностью осуществления ввода (приема) и вывода (передачи) сигнала.
Например, устройство 2000 может быть микросхемой, блок 2005 связи может быть входной схемой и/или выходной схемой микросхемы, или блок 2005 связи может быть интерфейсом связи микросхемы, и микросхема может использоваться как неотъемлемая часть терминального устройства или другого электронного устройства.
В качестве другого примера, устройство 2000 может быть терминальным устройством, и блок 2005 связи может быть приемопередатчиком терминального устройства, или блок 2005 связи может быть схемой приемопередатчика терминального устройства.
Устройство 2000 может включать в себя одно или несколько устройств памяти 2002. Программа 2004 хранится в памяти 2002. Программа 2004 может запускаться процессором 2001 для выработки инструкции 2003, позволяющей процессору 2001 выполнять на основе инструкции 2003, способ, описанный в приведенных выше вариантах осуществления способе. При необходимости память 2002 может дополнительно хранить данные. При необходимости процессор 2001 может дополнительно считывать данные (например, первый зашифрованный текст и второй зашифрованный текст), хранящиеся в памяти 2002, где данные могут храниться с теми же самыми адресами ячеек памяти, как и программа 2004, или данные могут храниться с разными адресами ячеек памяти, как и программа 2004.
Процессор 2001 и память 2002 могут быть расположены отдельно, или могут быть интегрированы вместе, например, интегрированы в систему на кристалле (system on chip, SOC) терминального устройства.
Настоящая заявка дополнительно предусматривает компьютерный программный продукт. Когда компьютерный программный продукт исполняется процессором 2001, реализуется способ согласно любому варианту осуществления способа, представленному в настоящей заявке.
Компьютерный программный продукт может храниться в памяти 2002, например, может быть программой 2004, и программа 2004 окончательно преобразуется в исполняемый целевой файл, который может исполняться процессором 2001 после процесса обработки, такого как предварительная обработка, компиляция, сборка и компоновка.
Настоящая заявка дополнительно предусматривает машиночитаемый носитель данных. Машиночитаемый носитель данных хранит компьютерную программу. Когда компьютерная программа исполняется компьютером, реализуется способ согласно любому варианту осуществления способа, представленному в настоящей заявке. Компьютерная программа может быть программой, написанной на языке высокого уровня, или может быть исполняемой целевой программой.
Например, машиночитаемый носитель данных представляет собой память 2002. Память 2002 может быть энергозависимой памятью или энергонезависимой памятью, или память 2002 может включать в себя как энергозависимую память, так и энергонезависимую память. Энергонезависимая память может быть постоянной памятью (read-only memory, ROM), программируемой ROM (programmable ROM, PROM), стираемой PROM (erasable PROM, EPROM), электрически стираемой EPROM (electrically EPROM, EEPROM) или флэш-памятью. Энергонезависимая память может быть оперативной памятью (random access memory, RAM) и использоваться в качестве внешнего кэша. Например, но не для ограничения, доступны многие формы RAM, такие как статическая RAM (static RAM, SRAM), динамическая RAM (dynamic RAM, DRAM), синхронная DRAM (synchronous DRAM, SDRAM), SDRAM с удвоенной скоростью передачи данных (double data rate SDRAM, DDR SDRAM), улучшенная SDRAM (enhanced SDRAM, ESDRAM), DRAM с синхронной связью (synchlink DRAM, SLDRAM) и RAM с шиной прямого резидентного доступа (direct rambus RAM, DR RAM).
Специалист в данной области техники должен четко понимать, что для удобства и краткости описания подробного рабочего процесса и технического эффекта вышеописанного аппаратного устройства и устройства может быть сделана ссылка на соответствующий процесс и технический эффект в приведенных выше вариантах осуществления способа, и подробности в данном документе повторно не описываются.
В нескольких вариантах осуществления, представленных в настоящей заявке, раскрытые система, устройство и способ могут быть реализованы другими способами. Например, некоторые особенности описанных выше вариантов осуществления способа могут быть проигнорированы или не выполнены. Описанный вариант осуществления устройства является просто примером. Разделение на блоки является просто логическим разделением функций и в фактической реализации может быть другим разделением. Множество блоков или компонентов могут быть объединены или интегрированы в другую систему. В дополнение к этому, связи между блоками или связи между компонентами могут быть прямыми связями или косвенными связями. Связи включают в себя соединения в электронной, механической или другой форме.
Следует понимать, что в различных вариантах осуществления настоящей заявки порядковые номера вышеупомянутых процессов не означают последовательности выполнения. Последовательности выполнения процессов должны определяться на основе функций и внутренней логики процессов и не должны рассматриваться как какое-либо ограничение процессов реализации вариантов осуществления настоящей заявки.
В дополнение к этому, термины «система» и «сеть» в данном описании часто используются взаимозаменяемо. В этой спецификации термин «и/или» используется только для описания отношения ассоциации между ассоциированными объектами и указывает то, что могут существовать три отношения. Например, A и/или B могут означать следующее: существует только A, существуют как A, так и B, и существует только B. В дополнение к этому, символ «/» в этой спецификации обычно указывает на отношение «или» между ассоциированными объектами.
В заключение, предыдущие описания являются просто предпочтительными вариантами технических решений настоящей заявки и не предназначены для ограничения объема охраны настоящей заявки. Любые модификации, эквиваленты, модификации и т.п, выполненные в соответствии с сущностью и принципами настоящей заявки, должны подпадать под объем охраны настоящей заявки.
название | год | авторы | номер документа |
---|---|---|---|
ФУНКЦИЯ ВЫРАБОТКИ КЛЮЧА НА ОСНОВЕ ИЗОБРАЖЕНИЯ | 2014 |
|
RU2676231C2 |
АДМИНИСТРИРОВАНИЕ ЗАЩИЩЕННЫМИ УСТРОЙСТВАМИ | 2010 |
|
RU2557756C2 |
УСТРОЙСТВО ЗАЩИТЫ ИНФОРМАЦИИ ОТ НЕСАНКЦИОНИРОВАННОГО ДОСТУПА ДЛЯ КОМПЬЮТЕРОВ ИНФОРМАЦИОННО-ВЫЧИСЛИТЕЛЬНЫХ СИСТЕМ | 2006 |
|
RU2321055C2 |
Система и способ автоматического развертывания системы шифрования для пользователей, ранее работавших на ПК | 2013 |
|
RU2618684C2 |
ОДНОРАНГОВАЯ АУТЕНТИФИКАЦИЯ И АВТОРИЗАЦИЯ | 2005 |
|
RU2390945C2 |
ДОСТУП НЕ ОТВЕЧАЮЩЕГО СПЕЦИФИКАЦИЯМ 3GPP УСТРОЙСТВА К БАЗОВОЙ СЕТИ | 2019 |
|
RU2779029C1 |
СИСТЕМА И СПОСОБ ПРЕДОСТАВЛЕНИЯ ПРАВ ДОСТУПА ПРИЛОЖЕНИЯМ К ФАЙЛАМ КОМПЬЮТЕРА | 2013 |
|
RU2546585C2 |
СПОСОБЫ И УСТРОЙСТВО ДЛЯ КРУПНОМАСШТАБНОГО РАСПРОСТРАНЕНИЯ ЭЛЕКТРОННЫХ КЛИЕНТОВ ДОСТУПА | 2013 |
|
RU2595904C2 |
СИСТЕМА И СПОСОБ ПРИМЕНЕНИЯ ПРАВИЛ ДОСТУПА К ФАЙЛАМ ПРИ ИХ ПЕРЕДАЧЕ МЕЖДУ КОМПЬЮТЕРАМИ | 2013 |
|
RU2573785C2 |
ПРИЛОЖЕНИЕ ДЛЯ ОБЕСПЕЧЕНИЯ ГОТОВНОСТИ К ПЕРВОМУ ЗАПУСКУ ПОСЛЕ ИЗВЛЕЧЕНИЯ ИЗ УПАКОВКИ, ПРЕДНАЗНАЧЕННОЕ ДЛЯ СБОРА ДАННЫХ ДЛЯ НОВОГО КОМПЬЮТЕРА, И СПОСОБ ИЗГОТОВЛЕНИЯ | 2010 |
|
RU2498518C2 |
Изобретение относится к способу, микросхеме и машиночитаемому носителю данных для обработки файла, хранящегося во внешней памяти. Технический результат заключается в повышении безопасности хранения файла во внешнем носителе. Способ применяется к электронному устройству, при этом электронное устройство содержит внутреннюю память, которая содержит стираемый раздел и нестираемый раздел, и электронное устройство подключено к внешней памяти, в котором способ содержит: отображение интерфейса настройки шифрования внешней памяти; прием первой операции, которая выполняется пользователем в интерфейсе настройки шифрования, в котором прием первой операции, которая выполняется пользователем в интерфейсе настройки шифрования, содержит: получение инструкции шифрования, в котором инструкция шифрования инструктирует зашифровать первый файл, хранящийся во внешней памяти; шифрование первого файла, хранящегося во внешней памяти, с использованием второго ключа в ответ на инструкции шифрования; получение первого идентификатора учетной записи на основе инструкции шифрования; шифрование первого ключа на основе первого идентификатора учетной записи для генерации первого зашифрованного текста, причем первый ключ используется для шифрования второго ключа; шифрование первого идентификатора учетной записи для генерации второго зашифрованного текста; и сохранение первого зашифрованного текста и второго зашифрованного текста в нестираемом разделе; прием второй операции пользователя; отображение интерфейса настройки сброса к заводским настройкам в ответ на вторую операцию; прием третьей операции, которая выполняется пользователем в интерфейсе заводских настроек; выполнение сброса к заводским настройкам в ответ на третью операцию, в котором данные в стираемом разделе удаляются при сбросе к заводским настройкам, а данные в нестираемом разделе сохраняются при сбросе к заводским настройкам; отображение интерфейса проверки учетной записи; прием информации проверки, которая вводится пользователем в интерфейсе проверки учетной записи; и проверку первого идентификатора учетной записи на основе информации проверки, когда первый идентификатор учетной записи проверен успешно, и, когда принята операция, в которой пользователь осуществляет доступ к первому файлу во внешней памяти, дешифрование первого файла, зашифрованного во внешней памяти на основе первого зашифрованного текста и второго зашифрованного текста, хранящихся в нестираемом разделе. 3 н. и 11 з.п. ф-лы, 20 ил.
1. Способ обработки файла, хранящегося во внешней памяти, в котором способ применяется к электронному устройству, при этом электронное устройство содержит внутреннюю память, которая содержит стираемый раздел и нестираемый раздел, и электронное устройство подключено к внешней памяти, в котором способ содержит:
отображение интерфейса настройки шифрования внешней памяти;
прием первой операции, которая выполняется пользователем в интерфейсе настройки шифрования, в котором прием первой операции, которая выполняется пользователем в интерфейсе настройки шифрования, содержит: получение инструкции шифрования, в котором инструкция шифрования инструктирует зашифровать первый файл, хранящийся во внешней памяти;
шифрование первого файла, хранящегося во внешней памяти, с использованием второго ключа в ответ на инструкции шифрования;
получение первого идентификатора учетной записи на основе инструкции шифрования;
шифрование первого ключа на основе первого идентификатора учетной записи для генерации первого зашифрованного текста, причем первый ключ используется для шифрования второго ключа;
шифрование первого идентификатора учетной записи для генерации второго зашифрованного текста; и
сохранение первого зашифрованного текста и второго зашифрованного текста в нестираемом разделе;
прием второй операции пользователя;
отображение интерфейса настройки сброса к заводским настройкам в ответ на вторую операцию;
прием третьей операции, которая выполняется пользователем в интерфейсе заводских настроек;
выполнение сброса к заводским настройкам в ответ на третью операцию, в котором данные в стираемом разделе удаляются при сбросе к заводским настройкам, а данные в нестираемом разделе сохраняются при сбросе к заводским настройкам;
отображение интерфейса проверки учетной записи;
прием информации проверки, которая вводится пользователем в интерфейсе проверки учетной записи; и
проверку первого идентификатора учетной записи на основе информации проверки, когда первый идентификатор учетной записи проверен успешно, и, когда принята операция, в которой пользователь осуществляет доступ к первому файлу во внешней памяти, дешифрование первого файла, зашифрованного во внешней памяти на основе первого зашифрованного текста и второго зашифрованного текста, хранящихся в нестираемом разделе.
2. Способ по п. 1, в котором
шифрование первого ключа на основе первого идентификатора учетной записи содержит:
вызов модуля управления ключами для шифрования первого ключа с использованием хэш-значения первого идентификатора учетной записи; и
шифрование первого идентификатора учетной записи содержит:
вызов модуля управления ключами для шифрования хэш-значения первого идентификатора учетной записи;
в котором сохранение первого зашифрованного текста и второго зашифрованного текста в нестираемом разделе содержит:
вызов интерфейса прикладного программирования доверенной среды исполнения для сохранения первого зашифрованного текста и второго зашифрованного текста в нестираемом разделе.
3. Способ по п. 1, в котором способ дополнительно содержит:
получение информации указателя для переключения учетной записи;
проверку первого идентификатора учетной записи на основе информации указателя;
получение второго идентификатора учетной записи после проверки первого идентификатора учетной записи; и
обновление первого зашифрованного текста и второго зашифрованного текста на основе второго идентификатора учетной записи.
4. Способ по п. 1, в котором перед дешифрованием зашифрованного первого файла, который зашифрован во внешней памяти, на основе первого зашифрованного текста и второго зашифрованного текста, хранящихся в нестираемом разделе, способ дополнительно содержит:
дешифрование первого зашифрованного текста и второго зашифрованного текста для генерации первого ключа,
в котором проверка первого идентификатора учетной записи на основе информации проверки содержит:
проверку первого идентификатора учетной записи на основе информации проверки тогда, когда инициировано состояние FRP защиты от сброса к заводским настройкам.
5. Способ по любому одному из пп. 1-4, в котором способ дополнительно содержит:
шифрование первого ключа с использованием значения по умолчанию для генерации третьего зашифрованного текста;
шифрование значения по умолчанию для генерации четвертого зашифрованного текста; и
сохранение третьего зашифрованного текста и четвертого зашифрованного текста в нестираемом разделе.
6. Способ по п. 5, в котором способ дополнительно содержит:
копирование третьего зашифрованного текста и четвертого зашифрованного текста из нестираемого раздела в стираемый раздел;
генерацию первого ключа на основе третьего зашифрованного текста и четвертого зашифрованного текста в стираемом разделе; и
дешифрование на основе первого ключа первого файла, зашифрованного во внешней памяти.
7. Способ по любому одному из пп. 1-6, в котором выполнение сброса к заводским настройкам в ответ на третью операцию содержит:
получение инструкции сброса к заводским настройкам, которая инициируется третьей операцией в интерфейсе настройки сброса к заводским настройкам; и
форматирование данных в стираемом разделе на основе инструкции сброса к заводским настройкам.
8. Способ по любому одному из пп. 1-7, в котором первый ключ дополнительно используется для шифрования третьего ключа и третий ключ используется для шифрования второго файла, который зашифрован во внешней памяти.
9. Способ по любому одному из пп. 1-8, в котором способ дополнительно содержит:
получение пароля экрана блокировки на основе инструкции шифрования;
шифрование первого ключа на основе пароля экрана блокировки для генерации пятого зашифрованного текста;
шифрование пароля экрана блокировки для генерации шестого зашифрованного текста; и
сохранение пятого зашифрованного текста и шестого зашифрованного текста в стираемом разделе,
в котором шифрование первого ключа на основе пароля экрана блокировки содержит:
вызов модуля управления ключами для шифрования первого ключа с использованием собственного значения пароля экрана блокировки; и
шифрование пароля экрана блокировки содержит:
вызов модуля управления ключами для шифрования хэш-значения пароля экрана блокировки.
10. Способ по п. 9, в котором способ дополнительно содержит:
получение пользовательской инструкции сброса, которая инициируется интерфейсом настройки; и
резервное копирование пятого зашифрованного текста и шестого зашифрованного текста в нестираемый раздел на основе пользовательской инструкции сброса.
11. Способ по п. 10, в котором резервное копирование пятого зашифрованного текста и шестого зашифрованного текста в нестираемый раздел на основе пользовательской инструкции сброса содержит:
дешифрование первого ключа из пятого зашифрованного текста и шестого зашифрованного текста на основе пользовательской инструкции сброса;
шифрование первого ключа с использованием значения по умолчанию для генерации седьмого зашифрованного текста;
шифрование значения по умолчанию для генерации восьмого зашифрованного текста; и
сохранение седьмого зашифрованного текста и восьмого зашифрованного текста в нестираемом разделе.
12. Способ по п. 11, в котором способ дополнительно содержит:
копирование седьмого зашифрованного текста и восьмого зашифрованного текста из нестираемого раздела в стираемый раздел после завершения пользовательского сброса;
дешифрование первого ключа из седьмого зашифрованного текста и восьмого зашифрованного текста в стираемом разделе; и
дешифрование на основе первого ключа первого файла, зашифрованного во внешней памяти.
13. Микросхема, содержащая процессор, в которой, когда процессор исполняет инструкции, процессор выполняет способ по любому одному из пп. 1-12.
14. Машиночитаемый носитель данных, в котором машиночитаемый носитель данных хранит компьютерную программу, и, когда компьютерная программа исполняется процессором, процессор может выполнять способ по любому одному из пп. 1-12.
CN 111614698 A, 01.09.2020 | |||
Способ восстановления спиралей из вольфрамовой проволоки для электрических ламп накаливания, наполненных газом | 1924 |
|
SU2020A1 |
US 10164955 B1, 25.12.2018 | |||
CN 112262548 A, 22.01.2021 | |||
Изложница с суживающимся книзу сечением и с вертикально перемещающимся днищем | 1924 |
|
SU2012A1 |
CN 105809045 A, 27.07.2016 | |||
Способ защиты переносных электрических установок от опасностей, связанных с заземлением одной из фаз | 1924 |
|
SU2014A1 |
US 7729690 B1, 01.06.2010 | |||
Автомобиль-сани, движущиеся на полозьях посредством устанавливающихся по высоте колес с шинами | 1924 |
|
SU2017A1 |
Авторы
Даты
2023-12-15—Публикация
2022-05-11—Подача