Применение криптографии для обеспечения безопасности аппаратно-программных платформ

BIS Journal №3(62)2026

4 сентября, 2026

Применение криптографии для обеспечения безопасности аппаратно-программных платформ

Криптографические механизмы широко применяются при обеспечении информационной безопасности на уровне аппаратно-программных платформ средств вычислительной техники. Такие механизмы могут быть реализованы в выделенном компоненте аппаратно-программной платформы, называемом корнем доверия. Обсудим в данной статье корни доверия, сервисы, предоставляемые корнями доверия на основе реализованных в них криптографических механизмов, и некоторые типовые сценарии их применения.

 

Реализация криптографических механизмов в корне доверия

Под понятием «корень доверия» (для обозначения корня доверия часто используется аббревиатура RoT – от Root of Trust)обычно подразумевается неотъемлемый компонент аппаратно-программной платформы, на котором может быть основано обеспечение безопасности функционирования средства вычислительной техники, построенного на данной платформе.

Для выполнения своих функций корень доверия должен включать в себя реализации криптографических механизмов, а также так называемые критические данные, которые в совокупности необходимы для обеспечения безопасности платформы. В качестве примеров криптографических операций, реализуемых в корне доверия, могут быть приведены следующие:

  • хеширование и вычисление кодов аутентификации сообщений;
  • вычисление цифровой подписи на неизвлекаемом закрытом ключе;
  • проверка цифровой подписи и/или цепочки сертификатов открытых ключей;
  • вычисление общего ключа на неизвлекаемом закрытом ключе;
  • симметричное шифрование данных;
  • диверсификация ключей;
  • генерация псевдослучайных чисел.

Для выполнения вышеперечисленных операций в процессе функционирования корня доверия он должен содержать в себе, как минимум, следующие данные:

  • неизвлекаемые закрытые ключи для цифровой подписи и обмена ключами;
  • открытые ключи для проверки цифровой подписи;
  • корневые сертификаты открытых ключей для проверки цепочек сертификатов;
  • мастер-ключи для диверсификации ключей и генерации псевдослучайных чисел;
  • секретные ключи для симметричного шифрования и вычисления кодов аутентификации сообщений;
  • параметры реализованных криптографических механизмов (например, настройки режимов работы алгоритмов симметричного шифрования или параметры схем цифровой подписи);
  • различные важные настройки как самого корня доверия, так и других компонентов платформы, для которых должно быть обеспечено доверенное хранение и авторизованное обновление.

Корень доверия может быть как активным, т. е. он может управлять определенными процессами функционирования аппаратно-программной платформы (например, на этапе ее начальной загрузки, которая будет рассмотрена далее), так и пассивным, когда корень доверия выполняет свои функции по запросам других компонентов платформы. В последнем случае корень доверия должен предоставлять свои функции внешним компонентам только после их надлежащей аутентификации и авторизации, для чего он также должен содержать в себе соответствующие ключи для аутентификации и правила доступа к реализованным в нем функциям.

Ясно, что для обеспечения безопасности средства вычислительной техники в целом, корень доверия сам должен соответствовать определенным требованиям по обеспечению его собственной безопасности. Вот только основные из них:

  • обеспечение высокого уровня надежности функционирования корня доверия и его защиты от различных сбоев;
  • защищенность корня доверия от несанкционированного доступа;
  • неизвлекаемость криптографических ключей (для которых это применимо), в частности, возможность генерации ключевой пары непосредственно в корне доверия без возможности экспорта закрытого ключа;
  • обеспечение невозможности воздействия на выполняемые корнем доверия операции извне.

 

Концепция применения и иерархия доверия

Поскольку корень доверия является основополагающим компонентом обеспечения безопасности платформы, который не может быть проверен какими-либо другими компонентами платформы (такая проверка возможна извне средства вычислительной техники, например, в рамках его удаленной аттестации, но данный сценарий в этой статье рассматриваться не будет), доверие к нему должно формироваться другими методами, например, с помощью сертификации корня доверия. С целью упрощения процедуры сертификации (а также с рядом других целей, в частности, для обеспечения надежности и снижения количества возможных ошибок) к корню доверия обычно также предъявляется требование минималистичности реализуемого в нем функционала.

Под минималистичностью в данном случае имеется в виду реализация в корне доверия минимально необходимых именно для корневого элемента обеспечения безопасности функций, которые могут быть расширены путем реализации дополнительных функций во внешних по отношению к корню доверия компонентах средства вычислительной техники (см. рис. 1):

  • прочих аппаратных (аппаратно-программных) компонентах платформы;
  • программных компонентах средства вычислительной техники на различных уровнях: от ядра операционной системы до приложений.

Реализация такого расширения криптографических функций должна сопровождаться обеспечением доверия к тем компонентам, в которых реализованы дополнительные функции. В данном случае можно говорить о формировании иерархии доверия, в которой корневым элементом является корень доверия (см. рис. 2).

При этом доверие должно обеспечиваться путем применения криптографических методов, с помощью которых должна контролироваться целостность и аутентичность доверяемых компонентов. В качестве таких методов можно использовать, в частности, цифровую подпись или хеширование программного кода доверяемого компонента с их проверкой при активизации компонента.

В этом случае можно говорить о формировании некоего композитного корня доверия средства вычислительной техники, в котором корень доверия платформы является изначальным корнем доверия, формирующим иерархию доверия, а остальные доверяемые компоненты являются вторичными корнями доверия, каждый из которых может рассматриваться как корень доверия на своем уровне (например, программный корень доверия на уровне ядра операционной системы).

Рис. 1. Концепция применения корня доверия

 

Рис. 2. Иерархия доверия

 

Набор криптографических операций, реализуемых в корне доверия, напрямую зависит от сервисов (служб), предоставляемых корнем доверия. В качестве примеров сервисов корня доверия приведу следующие (список не является исчерпывающим):

  • сервис аутентификации;
  • сервис управления доступом;
  • сервис обеспечения конфиденциальности;
  • сервис обеспечения (контроля) целостности;
  • сервис генерации отчетов;
  • сервис доверенного обновления;
  • сервис доверенного хранения.

В частности, в корне доверия, предоставляющего сервисы обеспечения целостности и конфиденциальности, необходима реализация следующих криптографических механизмов:

  • механизмов обеспечения целостности и аутентификации данных и их источника (которыми могут быть алгоритмы цифровой подписи, хеширования и/или вычисления кодов аутентификации сообщений) для сервиса обеспечения (контроля) целостности;
  • механизмов симметричного шифрования или гибридных криптографических механизмов с выработкой общего ключа на основе асимметричных ключевых пар для сервиса обеспечения конфиденциальности.

Различные сервисы корня доверия могут как реализовываться в отдельных компонентах, каждый из которых в этом случае представляет собой отдельный корень доверия, формирующий собственную иерархию доверия с соответствующим назначением, так и комбинироваться в составе одного компонента, представляющего собой многофункциональный корень доверия.

 

Примеры применения

Приведу два примера применения криптографических механизмов, реализованных в корне доверия, для обеспечения безопасности средств вычислительной техники.

Пример 1. Доверенная загрузка средства вычислительной техники на основе последовательной криптографической верификации загружаемых модулей

Доверенная загрузка может быть построена путем контроля целостности всех загружаемых компонентов. Пример обеспечения доверенной загрузки с помощью данного метода приведен на рис. 3.

Рис. 3. Пример организации доверенной загрузки

 

Как видно из рисунка, доверенная загрузка обеспечивается за счет формирования цепочки загрузки доверенных программных компонентов с поочередным контролем целостности на основе криптографических механизмов, причем средства такой верификации программных компонентов располагаются на нижележащих уровнях цепочки:

  • на нижнем уровне находится программно-аппаратный корень доверия, реализующий криптографический механизм контроля целостности (в примере на рисунке – алгоритм проверки цифровой подписи) и содержащий необходимые данные для контроля (в данном примере – открытый ключ для проверки цифровой подписи);
  • при загрузке программного компонента нижнего уровня (в примере – BIOS) корень доверия проверяет его цифровую подпись и разрешает или инициирует загрузку только в случае, когда подпись верна;
  • программный компонент нижнего уровня аналогичным образом проверяет целостность следующего в очередности загрузки программного компонента (загрузчика операционной системы) перед его загрузкой; здесь может применяться как цифровая подпись, так и, например, хеширование, в этом случае в BIOS реализуется алгоритм хеширования и содержится эталонный хеш-код загрузчика операционной системы;
  • и так далее до загрузки операционной системы средства вычислительной техники; при этом обеспечение доверия может распространяться и далее – на запускаемые в процессе работы средства вычислительной техники приложения: контроль их целостности (и авторизация запуска) может производиться на основе программного корня доверия, работающего на уровне операционной системы.

Здесь мы также можем видеть пример иерархии доверия (в данном случае – цепочки доверия), построенной на основе корня доверия с применением криптографических механизмов и обеспечивающей как распространение доверия на вышележащие уровни, так и расширение реализованных криптографических механизмов.

Пример 2. Обновление встроенного программного обеспечения аппаратно-программной платформы с криптографической проверкой аутентичности обновлений

Встроенное программное обеспечение компонентов аппаратно-программной платформы может быть как изменяемым, так и неизменяемым.

Неизменяемое программное обеспечение (в частности, загружаемое из модулей памяти, доступ к которым технически возможен только на чтение) не подвержено риску его несанкционированной модификации при хранении, однако его использование предполагает невозможность обновления, поэтому в данном случае должен быть тщательно оценен риск обнаружения ошибок и/или уязвимостей в процессе эксплуатации аппаратно-программной платформы.

В свою очередь, изменяемое программное обеспечение может быть обновлено в течение жизненного цикла аппаратно-программной платформы, что позволяет, в числе прочего, исправлять ошибки и устранять уязвимости, обнаруживаемые на этапе ее эксплуатации. При этом, во избежание несанкционированных изменений такого программного обеспечения (которые могут привести, в частности, к внедрению вредоносного кода) необходимо контролировать целостность и аутентичность устанавливаемых обновлений программного обеспечения.

С этой целью могут быть применены криптографические механизмы цифровой подписи, функционирующие (с рядом упрощений) следующим образом:

  • разработчик аппаратно-программной платформы генерирует ключевую пару, предназначенную для контроля целостности программного обеспечения ее компонентов;
  • на этапе производства аппаратно-программной платформы в ее корень доверия записывается открытый ключ данной ключевой пары для последующей проверки образов обновлений программного обеспечения;
  • в процессе эксплуатации аппаратно-программной платформы при возникновении необходимости обновления встроенного программного обеспечения образ обновления подписывается закрытым ключом разработчика;
  • перед выполнением обновления с помощью хранимого открытого ключа корень доверия аппаратно-программной платформы проверяет цифровую подпись образа обновления и санкционирует обновление только в случае, когда подпись верна.

Возможны варианты, когда при разработке аппаратно-программной платформы используются заимствованные компоненты и корень доверия и компонент с обновляемым программным обеспечением разработаны разными организациями. В этом случае может быть сформирована цепочка сертификатов открытых ключей, где производителю корня доверия принадлежит закрытый ключ, соответствующий корневому сертификату. Тогда открытый ключ производителя компонентаможет быть подписан закрытым ключом производителя корня доверия, а в корень доверия записывается корневой сертификат, что позволяет организовать проверку цифровой подписи обновлений программного обеспечения аналогичным образом.

Для реализации контроля целостности и аутентичности обновлений программного обеспечения описанным выше способом в корне доверия аппаратно-программной платформы должны быть реализованы алгоритмы хеширования и проверки цифровой подписи, а также должен быть размещен открытый ключ для проверки образов обновлений или сертификат открытого ключа для проверки соответствующей цепочки сертификатов.

 

Заключение

Криптографические механизмы, необходимые для обеспечения безопасности аппаратно-программных платформ и средств вычислительной техники в целом, могут быть реализованы в аппаратном (аппаратно-программном) корне доверия.

Реализация корня доверия в соответствии с требованиями по обеспечению его безопасности позволит применять реализованные в нем криптографические механизмы в различных сценариях, примерами которых является доверенная загрузка средств вычислительной техники и обновление встроенного программного обеспечения с контролем его целостности и аутентичности.

 

Список рекомендуемой литературы

Наиболее информативными документами по корням доверия можно считать следующие спецификации международных технологических сообществ:

В специальной публикации NISTSP 800-193 Platform Firmware Resiliency Guidelines («Рекомендации по отказоустойчивости встроенного программного обеспечения платформы») даны подробные рекомендации по применению корней доверия и их криптографических возможностей для решения следующих задач обеспечения отказоустойчивости платформы:

  • доверенного обновления встроенного программного обеспечения;
  • обнаружения его несанкционированных модификаций, ошибок или сбоев;
  • восстановлениявстроенного программного обеспечения до корректной версии при обнаружении вышеперечисленных проблем.

Среди русскоязычных публикаций можно отметить детальный обзор требований к корням доверия, а также ряда их возможных реализаций и сценариев применения, сделанный Андреем Самоделовым на конференции «РусКрипто’26»: «Корни доверия. Требования, архитектура, реализация».

В Техническом комитете по стандартизации №362, в числе прочих работ, ведется разработка комплекса национальных стандартов ГОСТ Р «Защита информации. Доверенный компонент безопасности», в которых будут установлены требования к корням доверия и их реализациям в виде доверенных компонентов безопасности.

Стать автором BIS Journal

Смотрите также

Подписаться на новости BIS Journal / Медиа группы Авангард

Подписаться
Введите ваш E-mail

Отправляя данную форму вы соглашаетесь с политикой конфиденциальности персональных данных

07.09.2026
«Оператор фактически теряет и бизнес, и сети»
07.09.2026
Suzu Labs: Новое лицо получить невозможно
07.09.2026
Daybreak станет вкладом OpenAI в защиту слабых
07.09.2026
Thomson Reuters признала утечку судебных документов
07.09.2026
Олег Лиманский возглавил коммерческое направление Cloud.ru
07.09.2026
ANSSI призвало G7 начать переход к PQC уже сегодня
04.09.2026
НСФР: Деньги возьмут у абонентов, за интересы которых борется Минцифры
04.09.2026
«Алиса AI» сможет сканировать банковские приложения?
04.09.2026
Anthropic сделала послабление в отношении корпораций
04.09.2026
Минцифры — о требованиях к сертификатам безопасности НУЦ

Стать автором BIS Journal

Поля, обозначенные звездочкой, обязательные для заполнения!

Отправляя данную форму вы соглашаетесь с политикой конфиденциальности персональных данных