Intel-логотип

Безопасность устройств Intel Agilex 7

Intel-Agilex-7-Device-Security-image

Информация о продукте

Технические характеристики

  • Номер модели: УГ-20335
  • Дата выпуска: 2023.05.23

Инструкции по применению продукта

1. Приверженность безопасности продукта

Корпорация Intel заботится о безопасности продуктов и рекомендует пользователям ознакомиться с предоставленными ресурсами по безопасности продуктов. Эти ресурсы следует использовать на протяжении всего срока службы продукта Intel.

2. Планируемые функции безопасности

Следующие функции безопасности запланированы в будущем выпуске программного обеспечения Intel Quartus Prime Pro Edition:

  • Проверка безопасности битового потока частичной реконфигурации: обеспечивает дополнительную гарантию того, что битовые потоки частичной реконфигурации (PR) не смогут получить доступ или помешать другим битовым потокам персоны PR.
  • Самоликвидация устройства для Physical Anti-Tamper: выполняет очистку устройства или ответ на обнуление устройства и программирует eFuses, чтобы предотвратить повторную настройку устройства.

3. Доступная документация по безопасности

В следующей таблице приведена доступная документация по функциям безопасности устройств Intel FPGA и структурированных ASIC:

Название документа Цель
Методология безопасности для пользователей Intel FPGA и структурированных ASIC
Гид
Документ верхнего уровня, содержащий подробное описание
функции и технологии безопасности в программируемых решениях Intel
Продукты. Помогает пользователям выбрать необходимые функции безопасности для
достичь своих целей безопасности.
Руководство пользователя по безопасности устройств Intel Stratix 10 Инструкция для пользователей устройств Intel Stratix 10 по реализации
функции безопасности, определенные с использованием Методологии безопасности.
Руководство пользователя.
Руководство пользователя по безопасности устройств Intel Agilex 7 Инструкция для пользователей устройств Intel Agilex 7 по реализации
функции безопасности, определенные с использованием Методологии безопасности.
Руководство пользователя.
Руководство пользователя по безопасности устройств Intel eASIC N5X Инструкция для пользователей устройств Intel eASIC N5X по реализации
функции безопасности, определенные с использованием Методологии безопасности.
Руководство пользователя.
Криптографические службы Intel Agilex 7 и Intel eASIC N5X HPS
Руководство пользователя
Информация для инженеров-программистов HPS по внедрению
и использование программных библиотек HPS для доступа к криптографическим службам.
предоставлено СДМ.
Краткое руководство по предоставлению услуг Black Key AN-968 Полный набор шагов по настройке Black Key Provisioning
услуга.

Часто задаваемые вопросы

Вопрос: Какова цель Руководства пользователя по методологии безопасности?

Ответ: Руководство пользователя по методологии безопасности содержит подробное описание функций и технологий безопасности в программируемых решениях Intel. Это помогает пользователям выбирать необходимые функции безопасности для достижения своих целей безопасности.

Вопрос: Где я могу найти руководство пользователя Intel Agilex 7 Device Security?

Ответ: Руководство пользователя Intel Agilex 7 Device Security можно найти в Центре ресурсов и дизайна Intel. webсайт.

Вопрос: Что такое услуга подготовки черного ключа?

О: Услуга предоставления ключей Black Key — это услуга, которая предоставляет полный набор шагов по настройке предоставления ключей для безопасных операций.

Руководство пользователя по безопасности устройств Intel Agilex® 7
Обновлено для Intel® Quartus® Prime Design Suite: 23.1

Онлайн-версия Отправить отзыв

УГ-20335

683823 2023.05.23

Руководство пользователя по безопасности устройств Intel Agilex® 7 2

Отправить отзыв

Руководство пользователя по безопасности устройств Intel Agilex® 7 3

683823 | 2023.05.23 Отправить отзыв
1. Intel Agilex® 7

Безопасность устройства оконченаview

Intel® разрабатывает устройства Intel Agilex® 7 со специализированным аппаратным обеспечением и встроенным программным обеспечением для обеспечения безопасности с широкими возможностями настройки.
Этот документ содержит инструкции, которые помогут вам использовать программное обеспечение Intel Quartus® Prime Pro Edition для реализации функций безопасности на ваших устройствах Intel Agilex 7.
Кроме того, Руководство пользователя по методологии безопасности для FPGA и структурированных ASIC Intel доступно в Центре ресурсов и дизайна Intel. Этот документ содержит подробные описания функций и технологий безопасности, доступных в продуктах Intel Programmable Solutions, которые помогут вам выбрать функции безопасности, необходимые для достижения ваших целей безопасности. Свяжитесь со службой поддержки Intel по номеру 14014613136, чтобы получить доступ к Руководству пользователя по методологии безопасности для FPGA и структурированных ASIC Intel.
Документ организован следующим образом: · Аутентификация и авторизация: Содержит инструкции по созданию
ключи аутентификации и цепочки подписей, применение разрешений и отзыв, подписывание объектов и функции программной аутентификации на устройствах Intel Agilex 7. · Шифрование битового потока AES: содержит инструкции по созданию корневого ключа AES, шифрованию битовых потоков конфигурации и предоставлению корневого ключа AES устройствам Intel Agilex 7. · Подготовка устройств: содержит инструкции по использованию встроенного программного обеспечения Intel Quartus Prime Programmer и Secure Device Manager (SDM) для программирования функций безопасности на устройствах Intel Agilex 7. · Расширенные функции: Содержит инструкции по включению расширенных функций безопасности, включая безопасную авторизацию отладки, отладку системы жесткого процессора (HPS) и удаленное обновление системы.
1.1. Приверженность безопасности продукта
Многолетняя приверженность Intel обеспечению безопасности никогда не была столь сильной. Intel настоятельно рекомендует вам ознакомиться с нашими ресурсами по безопасности продуктов и запланировать их использование на протяжении всего срока службы вашего продукта Intel.
Сопутствующая информация · Безопасность продуктов Intel · Рекомендации Центра безопасности продуктов Intel

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

Сертификат ISO 9001: 2015

1. Защита устройств Intel Agilex® 7 закончиласьview 683823 | 2023.05.23

1.2. Планируемые функции безопасности

Функции, упомянутые в этом разделе, запланированы для будущей версии программного обеспечения Intel Quartus Prime Pro Edition.

Примечание:

Информация в этом разделе является предварительной.

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

1.2.2. Самоликвидация устройства для Physical Anti-Tamper
Самоликвидация устройства выполняет очистку устройства или ответ на обнуление устройства, а также программирует eFuses, чтобы предотвратить повторную настройку устройства.

1.3. Доступная документация по безопасности

В следующей таблице перечислена доступная документация по функциям безопасности устройств Intel FPGA и структурированных ASIC:

Таблица 1.

Доступная документация по безопасности устройства

Название документа
Руководство пользователя по методологии безопасности для FPGA и структурированных ASIC Intel

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

Идентификатор документа 721596

Руководство пользователя по безопасности устройств Intel Stratix 10
Руководство пользователя по безопасности устройств Intel Agilex 7

Для пользователей устройств Intel Stratix 10 это руководство содержит инструкции по использованию программного обеспечения Intel Quartus Prime Pro Edition для реализации функций безопасности, определенных в Руководстве пользователя по методологии безопасности.
Для пользователей устройств Intel Agilex 7 это руководство содержит инструкции по использованию программного обеспечения Intel Quartus Prime Pro Edition для реализации функций безопасности, определенных в Руководстве пользователя по методологии безопасности.

683642 683823

Руководство пользователя по безопасности устройств Intel eASIC N5X

Для пользователей устройств Intel eASIC N5X это руководство содержит инструкции по использованию программного обеспечения Intel Quartus Prime Pro Edition для реализации функций безопасности, определенных в Руководстве пользователя по методологии безопасности.

626836

Руководство пользователя криптографических служб Intel Agilex 7 и Intel eASIC N5X HPS

Это руководство содержит информацию, которая поможет разработчикам программного обеспечения HPS во внедрении и использовании библиотек программного обеспечения HPS для доступа к криптографическим службам, предоставляемым SDM.

713026

Краткое руководство по предоставлению услуг Black Key AN-968

Это руководство содержит полный набор шагов по настройке службы Black Key Provisioning.

739071

Местоположение ресурсов Intel и
Центр дизайна
Intel.com
Intel.com
Центр ресурсов и дизайна Intel
Центр ресурсов и дизайна Intel
Центр ресурсов и дизайна Intel

Отправить отзыв

Руководство пользователя по безопасности устройств Intel Agilex® 7 5

683823 | 2023.05.23 Отправить отзыв

Аутентификация и авторизация

Чтобы включить функции аутентификации устройства Intel Agilex 7, вы начинаете с использования программного обеспечения Intel Quartus Prime Pro Edition и связанных с ним инструментов для создания цепочки подписей. Цепочка подписи состоит из корневого ключа, одного или нескольких ключей подписи и применимых авторизаций. Вы применяете цепочку подписей к своему проекту Intel Quartus Prime Pro Edition и компилируете программу. fileс. Используйте инструкции в разделе «Подготовка устройств», чтобы запрограммировать корневой ключ на устройствах Intel Agilex 7.
Сопутствующая информация
Инициализация устройства на стр. 25

2.1. Создание цепочки подписей
Вы можете использовать инструмент quartus_sign или эталонную реализацию agilex_sign.py для выполнения операций с цепочкой подписей. Этот документ предоставляет exampфайлы, используя quartus_sign.
Чтобы использовать эталонную реализацию, вы заменяете вызов интерпретатора Python, включенного в программное обеспечение Intel Quartus Prime, и опускаете параметр –family=agilex; все остальные варианты эквивалентны. Для бывшегоample, команда quartus_sign, найденная далее в этом разделе.
quartus_sign –family=agilex –operation=make_root root_public.pem root.qky можно преобразовать в эквивалентный вызов эталонной реализации следующим образом:
pgm_py agilex_sign.py –operation=make_root root_public.pem root.qky

Программное обеспечение Intel Quartus Prime Pro Edition включает инструменты quartus_sign, pgm_py и agilex_sign.py. Вы можете использовать инструмент командной оболочки Nios® II, который автоматически устанавливает соответствующие переменные среды для доступа к инструментам.

Следуйте этим инструкциям, чтобы открыть командную оболочку Nios II. 1. Откройте командную оболочку Nios II.

Вариант Windows
линукс

Описание
В меню «Пуск» выберите «Программы» Intel FPGA Nios II EDS и нажмите «Командная оболочка Nios II ».
В командной оболочке перейдите в /nios2eds и выполните следующую команду:
./nios2_command_shell.sh

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

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

Сертификат ISO 9001: 2015

2. Аутентификация и авторизация 683823 | 2023.05.23
находится в текущем рабочем каталоге. Вы можете выбрать, какие каталоги использовать, и инструменты поддерживают относительную file пути. Если вы решите оставить ключ fileна file системе, вы должны тщательно управлять разрешениями доступа к этим files.
Корпорация Intel рекомендует использовать имеющийся в продаже аппаратный модуль безопасности (HSM) для хранения криптографических ключей и выполнения криптографических операций. Инструмент quartus_sign и эталонная реализация включают интерфейс прикладного программирования (API) стандарта криптографии с открытым ключом № 11 (PKCS № 11) для взаимодействия с HSM при выполнении операций цепочки подписей. Эталонная реализация agilex_sign.py включает в себя аннотацию интерфейса, а такжеampинтерфейс для SoftHSM.
Вы можете использовать эти бывшиеample интерфейсы для реализации интерфейса к вашему HSM. Обратитесь к документации вашего поставщика HSM для получения дополнительной информации о реализации интерфейса и эксплуатации вашего HSM.
SoftHSM — это программная реализация универсального криптографического устройства с интерфейсом PKCS #11, предоставляемого проектом OpenDNSSEC®. Вы можете найти дополнительную информацию, включая инструкции по загрузке, сборке и установке OpenHSM, в проекте OpenDNSSEC. ЭксampВ файлах этого раздела используется SoftHSM версии 2.6.1. ЭксampФайлы в этом разделе дополнительно используют утилиту pkcs11-tool из OpenSC для выполнения дополнительных операций PKCS #11 с токеном SoftHSM. Вы можете найти дополнительную информацию, включая инструкции по загрузке, сборке и установке pkcs11tool из OpenSC.
Сопутствующая информация
· Проект OpenDNSSEC. Подписывающая зона на основе политик для автоматизации процесса отслеживания ключей DNSSEC.
· SoftHSM Информация о реализации криптографического хранилища, доступного через интерфейс PKCS #11.
· OpenSC Предоставляет набор библиотек и утилит для работы со смарт-картами.
2.1.1. Создание пар ключей аутентификации на локальном компьютере File Система
Вы используете инструмент quartus_sign для создания пар ключей аутентификации на локальном компьютере. file системе с помощью операций инструментов make_private_pem и make_public_pem. Сначала вы генерируете закрытый ключ с помощью операции make_private_pem. Вы указываете эллиптическую кривую, секретный ключ fileимя и, при необходимости, следует ли защищать закрытый ключ парольной фразой. Intel рекомендует использовать кривую secp384r1 и следовать передовым отраслевым практикам для создания надежной случайной парольной фразы для всех закрытых ключей. fileс. Intel также рекомендует ограничить file системные разрешения для закрытого ключа .pem files может читать только владелец. Вы получаете открытый ключ из закрытого ключа с помощью операции make_public_pem. Полезно назвать ключ .pem. fileописательно. В этом документе используется соглашение _.pem в следующем примере.ampлес.
1. В командной оболочке Nios II выполните следующую команду, чтобы создать закрытый ключ. Закрытый ключ, показанный ниже, используется в качестве корневого ключа в более поздних примерах.ampфайлы, которые создают цепочку подписей. Устройства Intel Agilex 7 поддерживают несколько корневых ключей, поэтому вы

Отправить отзыв

Руководство пользователя по безопасности устройств Intel Agilex® 7 7

2. Аутентификация и авторизация 683823 | 2023.05.23

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

Вариант с парольной фразой

Описание
quartus_sign –family=agilex –operation=make_private_pem –curve=secp384r1 root0_private.pem Введите парольную фразу, когда будет предложено это сделать.

Без парольной фразы

quartus_sign –family=agilex –operation=make_private_pem –curve=secp384r1 –no_passphrase root0_private.pem

2. Выполните следующую команду, чтобы создать открытый ключ, используя закрытый ключ, созданный на предыдущем шаге. Вам не нужно защищать конфиденциальность открытого ключа.
quartus_sign –family=agilex –operation=make_public_pem root0_private.pem root0_public.pem
3. Запустите команды еще раз, чтобы создать пару ключей, используемую в качестве ключа подписи проекта в цепочке подписей.
quartus_sign –family=agilex –operation=make_private_pem –curve=secp384r1 design0_sign_private.pem

quartus_sign –family=agilex –operation=make_public_pem design0_sign_private.pem design0_sign_public.pem

2.1.2. Создание пар ключей аутентификации в SoftHSM
Бывший сотрудник SoftHSMampФайлы в этой главе самосогласованы. Определенные параметры зависят от вашей установки SoftHSM и инициализации токена в SoftHSM.
Инструмент quartus_sign зависит от библиотеки API PKCS #11 вашего HSM.
БывшийampВ этом разделе предполагается, что библиотека SoftHSM установлена ​​в одном из следующих мест: · /usr/local/lib/softhsm2.so в Linux · C:SoftHSM2libsofthsm2.dll в 32-разрядной версии Windows · C:SoftHSM2libsofthsm2-x64 .dll в 64-разрядной версии Windows.
Инициализируйте токен в SoftHSM с помощью инструмента softhsm2-util:
softhsm2-util –init-token –label agilex-token –pin agilex-token-pin –so-pin agilex-so-pin –free
Параметры опции, в частности метка токена и PIN-код токена, являются прежними.ampфайлы, используемые в этой главе. Intel рекомендует следовать инструкциям поставщика HSM для создания токенов и ключей и управления ими.
Вы создаете пары ключей аутентификации с помощью утилиты pkcs11-tool для взаимодействия с токеном в SoftHSM. Вместо явной ссылки на закрытый и открытый ключ .pem fileв file система exampВ файлах вы ссылаетесь на пару ключей по ее метке, и инструмент автоматически выбирает соответствующий ключ.

Руководство пользователя по безопасности устройств Intel Agilex® 7 8

Отправить отзыв

2. Аутентификация и авторизация 683823 | 2023.05.23

Выполните следующие команды, чтобы создать пару ключей, которая будет использоваться в качестве корневого ключа в более поздних примерах.ampфайлы, а также пару ключей, используемую в качестве ключа подписи проекта в цепочке подписи:
pkcs11-tool –module=/usr/local/lib/softhsm/libsofthsm2.so –метка токена agilex-token –login –pin agilex-token-pin –keypairgen –механизм ECDSA-KEY-PAIR-GEN –тип ключа EC :secp384r1 –usage-sign –label root0 –id 0
pkcs11-tool –module=/usr/local/lib/softhsm/libsofthsm2.so –метка токена agilex-token –login –pin agilex-token-pin –keypairgen –механизм ECDSA-KEY-PAIR-GEN –тип ключа EC :secp384r1 –usage-sign –label design0_sign –id 1

Примечание:

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

2.1.3. Создание корневой записи цепочки подписей
Преобразуйте корневой открытый ключ в корневую запись цепочки подписей, хранящуюся на локальном компьютере. file система в формате ключа Intel Quartus Prime (.qky). file, с помощью операции make_root. Повторите этот шаг для каждого сгенерированного вами корневого ключа.
Выполните следующую команду, чтобы создать цепочку подписей с корневой записью, используя корневой открытый ключ из file система:
quartus_sign –family=agilex –operation=make_root –key_type=владелец root0_public.pem root0.qky
Запустите следующую команду, чтобы создать цепочку подписей с корневой записью, используя корневой ключ токена SoftHSM, установленного в предыдущем разделе:
quartus_sign –family=agilex –operation=make_root –key_type=owner –module=softHSM –module_args=»–token_label=agilex-token –user_pin=agilex-token-pin –hsm_lib=/usr/local/lib/softhsm/libsofthsm2.so root0 root0.qky

2.1.4. Создание записи открытого ключа цепочки подписей
Создайте новую запись открытого ключа для цепочки подписей с помощью операции Append_key. Вы указываете предыдущую цепочку подписей, закрытый ключ для последней записи в предыдущей цепочке подписей, открытый ключ следующего уровня, разрешения и идентификатор отмены, которые вы назначаете открытому ключу следующего уровня, и новую цепочку подписей. file.
Обратите внимание, что библиотека softHSM недоступна при установке Quartus и ее необходимо устанавливать отдельно. Для получения дополнительной информации о softHSM обратитесь к разделу «Создание цепочки подписей» выше.

Отправить отзыв

Руководство пользователя по безопасности устройств Intel Agilex® 7 9

2. Аутентификация и авторизация 683823 | 2023.05.23
В зависимости от использования вами клавиш на file системе или в HSM вы используете один из следующих примеровample для добавления открытого ключа design0_sign к корневой цепочке подписей, созданной в предыдущем разделе:
quartus_sign –family=agilex –operation=append_key –previous_pem=root0_private.pem –previous_qky=root0.qky –permission=6 –cancel=0 –input_pem=design0_sign_public.pem design0_sign_chain.qky
quartus_sign –family=agilex –operation=append_key –module=softHSM –module_args=»–token_label=agilex-token –user_pin=agilex-token-pin –hsm_lib=/usr/local/lib/softhsm/libsofthsm2.so» –previous_keyname= root0 –previous_qky=root0.qky –permission=6 –cancel=0 –input_keyname=design0_sign design0_sign_chain.qky
Вы можете повторить операцию Append_key еще два раза, максимум для трех записей открытого ключа между корневой записью и записью блока заголовка в любой одной цепочке подписей.
Следующий примерampПредполагается, что вы создали еще один открытый ключ аутентификации с теми же разрешениями и назначили идентификатор отмены 1, называемый design1_sign_public.pem, и добавляете этот ключ к цепочке подписей из предыдущего примера.ampль:
quartus_sign –family=agilex –operation=append_key –previous_pem=design0_sign_private.pem –previous_qky=design0_sign_chain.qky –permission=6 –cancel=1 –input_pem=design1_sign_public.pem design1_sign_chain.qky
quartus_sign –family=agilex –operation=append_key –module=softHSM –module_args=»–token_label=agilex-token –user_pin=agilex-token-pin –hsm_lib=/usr/local/lib/softhsm/libsofthsm2.so» –previous_keyname= design0_sign –previous_qky=design0_sign_chain.qky –permission=6 –cancel=1 –input_keyname=design1_sign design1_sign_chain.qky
Устройства Intel Agilex 7 включают дополнительный счетчик отмены ключа, который упрощает использование ключа, который может периодически меняться в течение срока службы данного устройства. Вы можете выбрать этот счетчик отмены ключа, изменив аргумент опции –cancel на pts:pts_value.
2.2. Подписание битового потока конфигурации
Устройства Intel Agilex 7 поддерживают счетчики номера версии безопасности (SVN), которые позволяют отозвать авторизацию объекта без отмены ключа. Вы назначаете счетчик SVN и соответствующее значение счетчика SVN во время подписания любого объекта, например раздела битового потока, прошивки .zip. file, или компактный сертификат. Вы назначаете счетчик SVN и значение SVN, используя опцию –cancel и svn_counter:svn_value в качестве аргумента. Допустимые значения для svn_counter: svnA, svnB, svnC и svnD. svn_value — это целое число в диапазоне [0,63].

Руководство пользователя по безопасности устройств Intel Agilex® 7 10

Отправить отзыв

2. Аутентификация и авторизация 683823 | 2023.05.23
2.2.1. Квартусовый ключ File Назначение
Вы указываете цепочку подписей в своем проекте программного обеспечения Intel Quartus Prime, чтобы включить функцию аутентификации для этого проекта. В меню «Назначения» выберите «Устройство» и «Параметры контакта». Security Quartus Key. File, затем перейдите к цепочке подписей .qky file вы создали, чтобы подписать этот дизайн.
Рис. 1. Включить настройку битового потока конфигурации

Альтернативно вы можете добавить следующий оператор присваивания в настройки Intel Quartus Prime. file (.qsf):
set_global_assignment -name QKY_FILE design0_sign_chain.qky
Чтобы создать .sof file из ранее скомпилированного проекта, включающего этот параметр, в меню «Обработка» выберите «Запустить Запустить ассемблер». Новый вывод .sof file включает назначения для включения аутентификации с помощью предоставленной цепочки подписей.

Отправить отзыв

Руководство пользователя по безопасности устройств Intel Agilex® 7 11

2. Аутентификация и авторизация 683823 | 2023.05.23
2.2.2. Совместное подписание прошивки SDM
Вы используете инструмент quartus_sign для извлечения, подписания и установки соответствующего ZIP-файла встроенного ПО SDM. file. Совместно подписанная прошивка затем включается в программу программирования. file инструмент-генератор при конвертации .sof file в битовый поток конфигурации .rbf file. Следующие команды используются для создания новой цепочки подписей и подписи прошивки SDM.
1. Создайте новую пару ключей подписи.
а. Создайте новую пару ключей подписи на file система:
quartus_sign –family=agilex –operation=make_private_pem –curve=secp384r1 прошивка1_private.pem
quartus_sign –family=agilex –operation=make_public_pem прошивка1_private.pem прошивка1_public.pem
б. Создайте новую пару ключей подписи в HSM:
pkcs11-tool –module=/usr/local/lib/softhsm/libsofthsm2.so –метка-токена agilex-token –login –pin agilex-token-pin –keypairgen –mechanism ECDSA-KEY-PAIR-GEN –тип ключа EC :secp384r1 –usage-sign –метка прошивки1 –id 1
2. Создайте новую цепочку подписей, содержащую новый открытый ключ:
quartus_sign –family=agilex –operation=append_key –previous_pem=root0_private.pem –previous_qky=root0.qky –permission=0x1 –cancel=1 –input_pem=firmware1_public.pem прошивка1_sign_chain.qky
quartus_sign –family=agilex –operation=append_key –module=softHSM –module_args=»–token_label=agilex-token –user_pin=agilex-token-pin –hsm_lib=/usr/local/lib/softhsm/libsofthsm2.so» –previous_keyname= root0 –previous_qky=root0.qky –permission=1 –cancel=1 –input_keyname=firmware1 прошивка1_sign_chain.qky
3. Скопируйте прошивку .zip file из каталога установки программного обеспечения Intel Quartus Prime Pro Edition (/devices/programmer/firmware/agilex.zip) в текущий рабочий каталог.
quartus_sign –family=agilex –get_firmware=.
4. Подписать прошивку .zip file. Инструмент автоматически распаковывает ZIP-файл. file и индивидуально подписывает все прошивки .cmf files, затем пересобирает .zip file для использования инструментами из следующих разделов:
quartus_sign –family=agilex –operation=sign –qky=firmware1_sign_chain.qky –cancel=svnA:0 –pem=firmware1_private.pem agilex.zip Signed_agilex.zip
quartus_sign –family=agilex –operation=sign –module=softHSM –module_args=»–token_label=agilex-token –user_pin=agilex-token-pin –hsm_lib=/usr/local/lib/softhsm/libsofthsm2.so»

Руководство пользователя по безопасности устройств Intel Agilex® 7 12

Отправить отзыв

2. Аутентификация и авторизация 683823 | 2023.05.23

–keyname=firmware1 –cancel=svnA:0 –qky=firmware1_sign_chain.qky agilex.zip Signed_agilex.zip

2.2.3. Подписание битового потока конфигурации с помощью команды quartus_sign
Чтобы подписать битовый поток конфигурации с помощью команды quartus_sign, вы сначала конвертируете .sof file в беззнаковый необработанный двоичный файл file (.rbf) формат. При желании вы можете указать совместно подписанную прошивку, используя параметр fw_source на этапе преобразования.
Вы можете сгенерировать беззнаковый необработанный битовый поток в формате .rbf, используя следующую команду:
quartus_pfg c o fw_source=signed_agilex.zip -o Sign_later=ON design.sof unsigned_bitstream.rbf
Выполните одну из следующих команд, чтобы подписать битовый поток с помощью инструмента quartus_sign в зависимости от расположения ваших ключей:
quartus_sign –family=agilex –operation=sign –qky=design0_sign_chain.qky –pem=design0_sign_private.pem –cancel=svnA:0 unsigned_bitstream.rbf Signed_bitstream.rbf
quartus_sign –family=agilex –operation=sign –module=softHSM –module_args=»–token_label=agilex-token –user_pin=agilex-token-pin –hsm_lib=/usr/local/lib/softhsm/libsofthsm2.so» –keyname= design0_sign –qky=design0_sign_chain.qky –cancel=svnA:0 unsigned_bitstream.rbf Signed_bitstream.rbf
Вы можете конвертировать подписанный .rbf files в битовый поток другой конфигурации file форматы.
Напримерample, если вы используете проигрыватель стандартного языка тестирования и программирования Jam* (STAPL) для программирования потока битов через JTAGвы используете следующую команду для преобразования .rbf file в формат .jam, который требуется для Jam STAPL Player:
quartus_pfg -c Signed_bitstream.rbf Signed_bitstream.jam

2.2.4. Частичная реконфигурация

Устройства Intel Agilex 7 поддерживают многоуровневую аутентификацию с частичной реконфигурацией, при которой владелец устройства создает и подписывает статический битовый поток, а отдельный владелец PR создает и подписывает битовые потоки PR-персоны. Устройства Intel Agilex 7 реализуют поддержку нескольких полномочий путем назначения слотов первого корневого ключа аутентификации владельцу устройства или статического битового потока и назначения слота окончательного корневого ключа аутентификации владельцу битового потока персоны частичной реконфигурации.
Если функция аутентификации включена, все изображения PR-персонажа должны быть подписаны, включая вложенные изображения PR-персонажа. Изображения PR-персонажа могут быть подписаны либо владельцем устройства, либо владельцем PR; однако битовые потоки статической области должны быть подписаны владельцем устройства.

Примечание:

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

Отправить отзыв

Руководство пользователя по безопасности устройств Intel Agilex® 7 13

2. Аутентификация и авторизация 683823 | 2023.05.23

Рисунок 2.

Внедрение поддержки нескольких органов власти при частичной реконфигурации требует нескольких шагов:
1. Владелец устройства или статического битового потока генерирует один или несколько корневых ключей аутентификации, как описано в разделе «Создание пар ключей аутентификации в SoftHSM» на странице 8, где параметр –key_type имеет значение «владелец».
2. Владелец битового потока частичной реконфигурации генерирует корневой ключ аутентификации, но меняет значение опции –key_type на Secondary_owner.
3. Владельцы проектов статического битового потока и частичной реконфигурации должны убедиться, что флажок «Включить поддержку нескольких полномочий» включен на вкладке «Назначения устройств» «Устройство и параметры контактов» «Безопасность».
Intel Quartus Prime Включить настройки нескольких полномочий

4. Владельцы проектов статического битового потока и частичной реконфигурации создают цепочки подписей на основе соответствующих корневых ключей, как описано в разделе «Создание цепочки подписей» на стр. 6.
5. Владельцы проектов статического битового потока и проектов частичной реконфигурации преобразуют свои скомпилированные проекты в формат .rbf. files и подпишите .rbf files.
6. Владелец устройства или статического битового потока генерирует и подписывает компактный сертификат авторизации программы с открытым ключом PR.
quartus_pfg –ccert или ccert_type=PR_PUBKEY_PROG_AUTH или Owner_qky_file=”root0.qky;root1.qky” unsigned_pr_pubkey_prog.ccert
quartus_sign –family=agilex –operation=sign –qky=design0_sign_chain.qky –pem=design0_sign_private.pem –cancel=svnA:0 unsigned_pr_pubkey_prog.ccert Signed_pr_pubkey_prog.ccert
quartus_sign –family=agilex –operation=sign –module=softHSM –module_args=»–token_label=s10-token –user_pin=s10-token-pin –hsm_lib=/usr/local/lib/softhsm/libsofthsm2.so» –keyname= design0_sign –qky=design0_sign_chain.qky –cancel=svnA:0 unsigned_pr_pubkey_prog.ccert Signed_pr_pubkey_prog.ccert

Руководство пользователя по безопасности устройств Intel Agilex® 7 14

Отправить отзыв

2. Аутентификация и авторизация 683823 | 2023.05.23

7. Владелец устройства или статического битового потока предоставляет устройству свои хэши корневых ключей аутентификации, затем программирует компактный сертификат авторизации программы открытого ключа PR и, наконец, предоставляет устройству корневой ключ владельца битового потока частичной реконфигурации. В разделе «Инициализация устройства» описан процесс подготовки.
8. Устройство Intel Agilex 7 настроено со статическим регионом .rbf. file.
9. Устройство Intel Agilex 7 частично переконфигурировано с использованием индивидуального дизайна .rbf. file.
Сопутствующая информация
· Создание цепочки подписей на стр. 6
· Создание пар ключей аутентификации в SoftHSM на стр. 8
· Инициализация устройства на стр. 25

2.2.5. Проверка цепочек подписей битового потока конфигурации
После создания цепочек подписей и подписанных битовых потоков вы можете убедиться, что подписанный битовый поток правильно настраивает устройство, запрограммированное с данным корневым ключом. Сначала вы используете операцию Fuse_info команды quartus_sign для печати хеша корневого открытого ключа в текстовый файл. file:
quartus_sign –family=agilex –operation=fuse_info root0.qky hash_fuse.txt

Затем вы используете опцию check_integrity команды quartus_pfg для проверки цепочки подписей в каждом разделе подписанного потока битов в формате .rbf. Опция check_integrity выводит следующую информацию:
· Статус общей проверки целостности битового потока
· Содержимое каждой записи в каждой цепочке подписей, прикрепленной к каждому разделу битового потока .rbf. file,
· Ожидаемое значение предохранителя для хеша корневого открытого ключа для каждой цепочки подписей.
Значение вывода Fuse_info должно совпадать со строками Fuse в выводе check_integrity.
quartus_pfg –check_integrityподписанный_bitstream.rbf

Вот бывшийampфайл вывода команды check_integrity:

Информация: Команда: quartus_pfg –check_integrity Signed_bitstream.rbf Статус целостности: ОК

Раздел

Тип: КМФ

Дескриптор подписи…

Цепочка подписей №0 (записей: -1, смещение: 96)

Запись #0

Fuse: 34FD3B5F 7829001F DE2A24C7 3A7EAE29 C7786DB1 D6D5BC3C 52741C79

72978B22 0731B082 6F596899 40F32048 AD766A24

Сгенерировать ключ…

Кривая: secp384r1

X

: 29C39C3064AE594A36DAA85602D6AF0B278CBB0B207C4D97CFB6967961E5F0ECA

456FF53F5DBB3A69E48A042C62AB6B0

Y

: 3E81D40CBBBEAC13601247A9D53F4A831308A24CA0BDFFA40351EE76438C7B5D2

2826F7E94A169023AFAE1D1DF4A31C2

Сгенерировать ключ…

Кривая: secp384r1

X

: 29C39C3064AE594A36DAA85602D6AF0B278CBB0B207C4D97CFB6967961E5F0ECA

Отправить отзыв

Руководство пользователя по безопасности устройств Intel Agilex® 7 15

2. Аутентификация и авторизация 683823 | 2023.05.23

456FF53F5DBB3A69E48A042C62AB6B0

Y

: 3E81D40CBBBEAC13601247A9D53F4A831308A24CA0BDFFA40351EE76438C7B5D2

2826F7E94A169023AFAE1D1DF4A31C2

Запись #1

Сгенерировать ключ…

Кривая: secp384r1

X

: 015290C556F1533E5631322953E2F9E91258472F43EC954E05D6A4B63D611E04B

C120C7E7A744C357346B424D52100A9

Y

: 68696DEAC4773FF3D5A16A4261975424AAB4248196CF5142858E016242FB82BC5

08A80F3FE7F156DEF0AE5FD95BDFE05

Запись № 2. Разрешение связки ключей: SIGN_CODE. Связку ключей можно отменить по идентификатору: 3. Цепочка подписи № 1 (записи: -1, смещение: 648).

Запись #0

Fuse: FA6528BE 9281F2DB B787E805 6BF6EE0E 28983C56 D568B141 8EEE4BF6

DAC2D422 0A3A0F27 81EFC6CD 67E973BF AC286EAE

Сгенерировать ключ…

Кривая: secp384r1

X

: 47A453474A8D886AB058615EB1AB38A75BAC9F0C46E564CB5B5DCC1328244E765

0411C4592FAFFC71DE36A105B054781

Y

: 6087D3B4A5C8646B4DAC6B5C863CD0E705BD0C9D2C141DE4DE7BDDEB85C0410D8

6B7312EEE8241189474262629501FCD

Сгенерировать ключ…

Кривая: secp384r1

X

: 47A453474A8D886AB058615EB1AB38A75BAC9F0C46E564CB5B5DCC1328244E765

0411C4592FAFFC71DE36A105B054781

Y

: 6087D3B4A5C8646B4DAC6B5C863CD0E705BD0C9D2C141DE4DE7BDDEB85C0410D8

6B7312EEE8241189474262629501FCD

Запись #1

Сгенерировать ключ…

Кривая: secp384r1

X

: 1E8FBEDC486C2F3161AFEB028D0C4B426258293058CD41358A164C1B1D60E5C1D

74D982BC20A4772ABCD0A1848E9DC96

Y

: 768F1BF95B37A3CC2FFCEEB071DD456D14B84F1B9BFF780FC5A72A0D3BE5EB51D

0DA7C6B53D83CF8A775A8340BD5A5DB

Запись #2

Сгенерировать ключ…

Кривая: secp384r1

X

: 13986DDECAB697A2EB26B8EBD25095A8CC2B1A0AB0C766D029CDF2AFE21BE3432

76896E771A9C6CA5A2D3C08CF4CB83C

Y

: 0A1384E9DD209238FF110D867B557414955354EE6681D553509A507A78CFC05A1

49F91CABA72F6A3A1C2D1990CDAEA3D

Запись №3 Разрешение на связку ключей: SIGN_CODE Связку ключей можно отменить по идентификатору: 15 Цепочка подписи №2 (записи: -1, смещение: 0) Цепочка подписи №3 (записи: -1, смещение: 0) Цепочка подписи №4 (записи: -1, смещение: 0) Цепочка подписи №5 (записи: -1, смещение: 0) Цепочка подписи №6 (записи: -1, смещение: 0) Цепочка подписи №7 (записи: -1, смещение: 0)

Тип раздела: Дескриптор подписи ввода-вывода… Цепочка подписи № 0 (записи: -1, смещение: 96)

Запись #0

Fuse: FA6528BE 9281F2DB B787E805 6BF6EE0E 28983C56 D568B141 8EEE4BF6

DAC2D422 0A3A0F27 81EFC6CD 67E973BF AC286EAE

Сгенерировать ключ…

Кривая: secp384r1

X

: 47A453474A8D886AB058615EB1AB38A75BAC9F0C46E564CB5B5DCC1328244E765

0411C4592FAFFC71DE36A105B054781

Руководство пользователя по безопасности устройств Intel Agilex® 7 16

Отправить отзыв

2. Аутентификация и авторизация 683823 | 2023.05.23

Y

: 6087D3B4A5C8646B4DAC6B5C863CD0E705BD0C9D2C141DE4DE7BDDEB85C0410D8

6B7312EEE8241189474262629501FCD

Сгенерировать ключ…

Кривая: secp384r1

X

: 47A453474A8D886AB058615EB1AB38A75BAC9F0C46E564CB5B5DCC1328244E765

0411C4592FAFFC71DE36A105B054781

Y

: 6087D3B4A5C8646B4DAC6B5C863CD0E705BD0C9D2C141DE4DE7BDDEB85C0410D8

6B7312EEE8241189474262629501FCD

Запись #1

Сгенерировать ключ…

Кривая: secp384r1

X

: 646B51F668D8CC365D72B89BA8082FDE79B00CDB750DA0C984DC5891CDF57BD21

44758CA747B1A8315024A8247F12E51

Y

: 53513118E25E16151FD55D7ECDE8293AF6C98A74D52E0DA2527948A64FABDFE7C

F4EA8B8E229218D38A869EE15476750

Запись #2

Сгенерировать ключ…

Кривая: secp384r1

X

: 13986DDECAB697A2EB26B8EBD25095A8CC2B1A0AB0C766D029CDF2AFE21BE3432

76896E771A9C6CA5A2D3C08CF4CB83C

Y

: 0A1384E9DD209238FF110D867B557414955354EE6681D553509A507A78CFC05A1

49F91CABA72F6A3A1C2D1990CDAEA3D

Запись №3 Разрешение на связку ключей: SIGN_CORE Связку ключей можно отменить с помощью идентификатора: 15 Цепочка подписи №1 (записи: -1, смещение: 0) Цепочка подписи №2 (записи: -1, смещение: 0) Цепочка подписи №3 (записи: -1, смещение: 0) Цепочка подписей №4 (записей: -1, смещение: 0) Цепочка подписей №5 (записей: -1, смещение: 0) Цепочка подписей №6 (записей: -1, смещение: 0) Подпись цепочка №7 (записи: -1, смещение: 0)

Раздел

Тип: ГПС

Дескриптор подписи…

Цепочка подписей №0 (записей: -1, смещение: 96)

Запись #0

Fuse: FA6528BE 9281F2DB B787E805 6BF6EE0E 28983C56 D568B141 8EEE4BF6

DAC2D422 0A3A0F27 81EFC6CD 67E973BF AC286EAE

Сгенерировать ключ…

Кривая: secp384r1

X

: 47A453474A8D886AB058615EB1AB38A75BAC9F0C46E564CB5B5DCC1328244E765

0411C4592FAFFC71DE36A105B054781

Y

: 6087D3B4A5C8646B4DAC6B5C863CD0E705BD0C9D2C141DE4DE7BDDEB85C0410D8

6B7312EEE8241189474262629501FCD

Сгенерировать ключ…

Кривая: secp384r1

X

: 47A453474A8D886AB058615EB1AB38A75BAC9F0C46E564CB5B5DCC1328244E765

0411C4592FAFFC71DE36A105B054781

Y

: 6087D3B4A5C8646B4DAC6B5C863CD0E705BD0C9D2C141DE4DE7BDDEB85C0410D8

6B7312EEE8241189474262629501FCD

Запись #1

Сгенерировать ключ…

Кривая: secp384r1

X

: FAF423E08FB08D09F926AB66705EB1843C7C82A4391D3049A35E0C5F17ACB1A30

09CE3F486200940E81D02E2F385D150

Y

: 397C0DA2F8DD6447C52048CD0FF7D5CCA7F169C711367E9B81E1E6C1E8CD9134E

5AC33EE6D388B1A895AC07B86155E9D

Запись #2

Сгенерировать ключ…

Кривая: secp384r1

X

: 13986DDECAB697A2EB26B8EBD25095A8CC2B1A0AB0C766D029CDF2AFE21BE3432

76896E771A9C6CA5A2D3C08CF4CB83C

Y

: 0A1384E9DD209238FF110D867B557414955354EE6681D553509A507A78CFC05A1

49F91CABA72F6A3A1C2D1990CDAEA3D

Отправить отзыв

Руководство пользователя по безопасности устройств Intel Agilex® 7 17

2. Аутентификация и авторизация 683823 | 2023.05.23

Запись №3 Разрешение на связку ключей: SIGN_HPS Связку ключей можно отменить с помощью идентификатора: 15 Цепочка подписи №1 (записи: -1, смещение: 0) Цепочка подписи №2 (записи: -1, смещение: 0) Цепочка подписи №3 (записи: -1, смещение: 0) Цепочка подписи №4 (записи: -1, смещение: 0) Цепочка подписи №5 (записи: -1, смещение: 0) Цепочка подписи №6 (записи: -1, смещение: 0) Подпись цепочка №7 (записи: -1, смещение: 0)

Тип раздела: CORE Дескриптор подписи… Цепочка подписей № 0 (записи: -1, смещение: 96)

Запись #0

Fuse: FA6528BE 9281F2DB B787E805 6BF6EE0E 28983C56 D568B141 8EEE4BF6

DAC2D422 0A3A0F27 81EFC6CD 67E973BF AC286EAE

Сгенерировать ключ…

Кривая: secp384r1

X

: 47A453474A8D886AB058615EB1AB38A75BAC9F0C46E564CB5B5DCC1328244E765

0411C4592FAFFC71DE36A105B054781

Y

: 6087D3B4A5C8646B4DAC6B5C863CD0E705BD0C9D2C141DE4DE7BDDEB85C0410D8

6B7312EEE8241189474262629501FCD

Сгенерировать ключ…

Кривая: secp384r1

X

: 47A453474A8D886AB058615EB1AB38A75BAC9F0C46E564CB5B5DCC1328244E765

0411C4592FAFFC71DE36A105B054781

Y

: 6087D3B4A5C8646B4DAC6B5C863CD0E705BD0C9D2C141DE4DE7BDDEB85C0410D8

6B7312EEE8241189474262629501FCD

Запись #1

Сгенерировать ключ…

Кривая: secp384r1

X

: 646B51F668D8CC365D72B89BA8082FDE79B00CDB750DA0C984DC5891CDF57BD21

44758CA747B1A8315024A8247F12E51

Y

: 53513118E25E16151FD55D7ECDE8293AF6C98A74D52E0DA2527948A64FABDFE7C

F4EA8B8E229218D38A869EE15476750

Запись #2

Сгенерировать ключ…

Кривая: secp384r1

X

: 13986DDECAB697A2EB26B8EBD25095A8CC2B1A0AB0C766D029CDF2AFE21BE3432

76896E771A9C6CA5A2D3C08CF4CB83C

Y

: 0A1384E9DD209238FF110D867B557414955354EE6681D553509A507A78CFC05A1

49F91CABA72F6A3A1C2D1990CDAEA3D

Запись №3 Разрешение на связку ключей: SIGN_CORE Связку ключей можно отменить с помощью идентификатора: 15 Цепочка подписи №1 (записи: -1, смещение: 0) Цепочка подписи №2 (записи: -1, смещение: 0) Цепочка подписи №3 (записи: -1, смещение: 0) Цепочка подписей №4 (записей: -1, смещение: 0) Цепочка подписей №5 (записей: -1, смещение: 0) Цепочка подписей №6 (записей: -1, смещение: 0) Подпись цепочка №7 (записи: -1, смещение: 0)

Руководство пользователя по безопасности устройств Intel Agilex® 7 18

Отправить отзыв

683823 | 2023.05.23 Отправить отзыв

Шифрование битового потока AES

Шифрование битового потока Advanced Encryption Standard (AES) — это функция, которая позволяет владельцу устройства защитить конфиденциальность интеллектуальной собственности в битовом потоке конфигурации.
Чтобы защитить конфиденциальность ключей, при шифровании битового потока конфигурации используется цепочка ключей AES. Эти ключи используются для шифрования данных владельца в битовом потоке конфигурации, где первый промежуточный ключ шифруется с помощью корневого ключа AES.

3.1. Создание корневого ключа AES

Вы можете использовать инструмент quartus_encrypt или эталонную реализацию stratix10_encrypt.py для создания корневого ключа AES в формате ключа шифрования программного обеспечения Intel Quartus Prime (.qek). file.

Примечание:

stratix10_encrypt.py file используется для устройств Intel Stratix® 10 и Intel Agilex 7.

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

Необходимо указать семейство устройства, вывести .qek file местоположение и парольную фразу при появлении запроса.
Выполните следующую команду, чтобы сгенерировать корневой ключ AES, используя случайные данные для базового ключа и значения по умолчанию для количества промежуточных ключей и максимального использования ключа.
Чтобы использовать эталонную реализацию, вы заменяете вызов интерпретатора Python, включенного в программное обеспечение Intel Quartus Prime, и опускаете параметр –family=agilex; все остальные варианты эквивалентны. Для бывшегоample, команда quartus_encrypt, найденная далее в разделе

quartus_encrypt –family=agilex –operation=MAKE_AES_KEY aes_root.qek

можно преобразовать в эквивалентный вызов эталонной реализации следующим образом: pgm_py stratix10_encrypt.py –operation=MAKE_AES_KEY aes_root.qek

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

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

Сертификат ISO 9001: 2015

Рисунок 3. Настройки шифрования Intel Quartus Prime

3. Шифрование битового потока AES 683823 | 2023.05.23

Альтернативно вы можете добавить следующий оператор присваивания в настройки Intel Quartus Prime. file .qsf:
set_global_assignment -name ENCRYPT_PROGRAMMING_BITSTREAM на set_global_assignment -name PROGRAMMING_BITSTREAM_ENCRYPTION_KEY_SELECT eFuses
Если вы хотите включить дополнительные меры защиты от векторов атак по побочным каналам, вы можете включить раскрывающийся список Коэффициент обновления шифрования и флажок Включить скремблирование.

Руководство пользователя по безопасности устройств Intel Agilex® 7 20

Отправить отзыв

3. Шифрование битового потока AES 683823 | 2023.05.23

Соответствующие изменения в .qsf:
set_global_assignment -name PROGRAMMING_BITSTREAM_ENCRYPTION_CNOC_SCRAMBLING на set_global_assignment -name PROGRAMMING_BITSTREAM_ENCRYPTION_UPDATE_RATIO 31

3.3. Шифрование битового потока конфигурации
Вы шифруете битовый поток конфигурации перед его подписанием. Программирование Intel Quartus Prime File Инструмент-генератор может автоматически шифровать и подписывать битовый поток конфигурации с помощью графического интерфейса пользователя или командной строки.
При желании вы можете создать частично зашифрованный битовый поток для использования с инструментами quartus_encrypt и quartus_sign или эквивалентами эталонной реализации.

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

Рисунок 4.

1. На Intel Quartus Prime File меню выберите Программирование File Генератор. 2. На выходе Fileвкладка s, укажите вывод file введите вашу конфигурацию
схема.
Выход File Спецификация

Схема конфигурации Выход file вкладка
Выход file тип

3. На входе Files, нажмите «Добавить битовый поток» и перейдите к своему .sof. 4. Чтобы указать параметры шифрования и аутентификации, выберите .sof и нажмите
Характеристики. а. Включите «Включить инструмент подписи». б. Для закрытого ключа file выберите личный ключ подписи .pem file. в. Включите Завершить шифрование.

Отправить отзыв

Руководство пользователя по безопасности устройств Intel Agilex® 7 21

3. Шифрование битового потока AES 683823 | 2023.05.23

Рисунок 5.

д. Для ключа шифрования file, выберите свой AES .qek file. Ввод (.sof) File Свойства аутентификации и шифрования

Включить аутентификацию. Указать частный корневой файл .pem.
Включить шифрование. Указать ключ шифрования.
5. Чтобы сгенерировать подписанный и зашифрованный битовый поток, на входе Fileна вкладке s нажмите «Создать». Появятся диалоговые окна пароля, в которых вы сможете ввести парольную фразу для ключа AES.qek. file и подписываем закрытый ключ .pem file. Программирование file генератор создает зашифрованный и подписанный вывод_file.рбф.
3.3.2. Конфигурация шифрования битового потока с помощью программирования File Интерфейс командной строки генератора
Сгенерируйте зашифрованный и подписанный битовый поток конфигурации в формате .rbf с помощью интерфейса командной строки quartus_pfg:
quartus_pfg -c Encryption_enabled.sof top.rbf -o Finalize_encryption=ON -o qek_file=aes_root.qek -o Signing=ON -o pem_file=design0_sign_private.pem
Вы можете преобразовать зашифрованный и подписанный битовый поток конфигурации в формате .rbf в другой битовый поток конфигурации. file форматы.
3.3.3. Генерация битового потока частично зашифрованной конфигурации с использованием интерфейса командной строки
Вы можете создать частично зашифрованную программу file чтобы завершить шифрование и подписать образ позже. Создать частично зашифрованную программу file в формате .rbf с интерфейсом командной строкиquartus_pfg: quartus_pfg -c -o Finalize_encryption_later=ON -o Sign_later=ON top.sof top.rbf

Руководство пользователя по безопасности устройств Intel Agilex® 7 22

Отправить отзыв

3. Шифрование битового потока AES 683823 | 2023.05.23
Вы используете инструмент командной строки quartus_encrypt для завершения шифрования битового потока:
quartus_encrypt –family=agilex –operation=ENCRYPT –key=aes_root.qek top.rbf Encrypted_top.rbf
Вы используете инструмент командной строки quartus_sign для подписи зашифрованного битового потока конфигурации:
quartus_sign –family=agilex –operation=SIGN –qky=design0_sign_chain.qky –pem=design0_sign_private.pem –cancel=svnA:0 Encrypted_top.rbf Signed_encrypted_top.rbf
quartus_sign –family=agilex –operation=sign –module=softHSM –module_args=»–token_label=agilex-token –user_pin=agilex-token-pin –hsm_lib=/usr/local/lib/softhsm/libsofthsm2.so» –keyname= design0_sign –qky=design0_sign_chain.qky –cancel=svnA:0 Encrypted_top.rbf Signed_encrypted_top.rbf
3.3.4. Шифрование битового потока с частичной реконфигурацией
Вы можете включить шифрование битового потока в некоторых конструкциях Intel Agilex 7 FPGA, которые используют частичную реконфигурацию.
Схемы частичной реконфигурации, использующие иерархическую частичную реконфигурацию (HPR) или частичную реконфигурацию статического обновления (SUPR), не поддерживают шифрование битового потока. Если ваш дизайн содержит несколько регионов PR, вы должны зашифровать все персоны.
Чтобы включить шифрование битового потока с частичной реконфигурацией, выполните одну и ту же процедуру во всех версиях проекта. 1. На Intel Quartus Prime File меню выберите Назначение Устройство Устройство
и Безопасность параметров контактов. 2. Выберите желаемое место хранения ключа шифрования.
Рисунок 6. Настройка шифрования битового потока частичной реконфигурации

Отправить отзыв

Руководство пользователя по безопасности устройств Intel Agilex® 7 23

3. Шифрование битового потока AES 683823 | 2023.05.23
Альтернативно вы можете добавить следующий оператор присваивания в настройках Quartus Prime. file .qsf:
set_global_assignment -name –ENABLE_PARTIAL_RECONFIGURATION_BITSTREAM_ENCRYPTION на
После того как вы скомпилируете базовый проект и версии, программа сгенерирует файл .sof.file и один или несколько.pmsffiles, представляющие персоны. 3. Создавайте зашифрованные и подписанные программы. files из.sof и.pmsf fileАналогично проектам без частичной реконфигурации. 4. Конвертируйте скомпилированный файл persona.pmsf. file в частично зашифрованный.rbf file:
quartus_pfg -c -o Finalize_encryption_later=ВКЛ -o Sign_later=ВКЛ шифрование_enabled_persona1.pmsf persona1.rbf
5. Завершите шифрование битового потока с помощью инструмента командной строки quartus_encrypt:
quartus_encrypt –family=agilex –operation=ENCRYPT –key=aes_root.qek persona1.rbf Encrypted_persona1.rbf
6. Подпишите зашифрованный битовый поток конфигурации с помощью инструмента командной строки quartus_sign:
quartus_sign –family=agilex –operation=SIGN –qky=design0_sign_chain.qky –pem=design0_sign_private.pem Encrypted_persona1.rbf Signed_encrypted_persona1.rbf
quartus_sign –family=agilex –operation=SIGN –module=softHSM –module_args=»–token_label=agilex-token –user_pin=agilex-token-pin –hsm_lib=/usr/local/lib/softhsm/libsofthsm2.so» –qky= design0_sign_chain.qky –cancel=svnA:0 –keyname=design0_sign Encrypted_persona1.rbf Signed_encrypted_persona1.rbf

Руководство пользователя по безопасности устройств Intel Agilex® 7 24

Отправить отзыв

683823 | 2023.05.23 Отправить отзыв

Подготовка устройства

Первоначальная подготовка функций безопасности поддерживается только в микропрограмме обеспечения SDM. Используйте программатор Intel Quartus Prime для загрузки прошивки SDM и выполнения операций подготовки.
Вы можете использовать любой тип JTAG Загрузите кабель для подключения Quartus Programmer к устройству Intel Agilex 7 для выполнения операций подготовки.
4.1. Использование встроенного ПО SDM
Программист Intel Quartus Prime автоматически создает и загружает вспомогательный образ по умолчанию, когда вы выбираете операцию инициализации и команду для программирования чего-то иного, чем битовый поток конфигурации.
В зависимости от указанной команды программирования заводской вспомогательный образ по умолчанию может быть одного из двух типов:
· Вспомогательный образ обеспечения — состоит из одного раздела битового потока, содержащего встроенное ПО обеспечения SDM.
· Вспомогательный образ QSPI — состоит из двух разделов битового потока, один из которых содержит основную прошивку SDM, а другой — раздел ввода-вывода.
Вы можете создать вспомогательный образ по умолчанию. file для загрузки в ваше устройство перед выполнением любой команды программирования. После программирования хэша корневого ключа аутентификации необходимо создать и подписать вспомогательный образ QSPI по умолчанию, поскольку в него включен раздел ввода-вывода. Если вы дополнительно программируете настройку безопасности совместно подписанного встроенного ПО eFuse, вам необходимо создать вспомогательные образы обеспечения и заводские вспомогательные образы QSPI по умолчанию с совместно подписанным встроенным ПО. Вы можете использовать совместно подписанный вспомогательный образ по умолчанию на неинициализированном устройстве, поскольку неинициализированное устройство игнорирует цепочки подписей, не относящиеся к Intel, в прошивке SDM. Дополнительную информацию о создании, подписании и использовании вспомогательного образа QSPI по умолчанию см. в разделе «Использование вспомогательного образа QSPI по умолчанию на принадлежащих ему устройствах».
Вспомогательный образ заводской настройки по умолчанию выполняет действия по подготовке, такие как программирование хэша корневого ключа аутентификации, предохранителей настроек безопасности, регистрацию PUF или подготовку черного ключа. Вы используете программу Intel Quartus Prime. File Инструмент командной строки Generator для создания вспомогательного образа подготовки, указав параметр helper_image, имя helper_device, подтип вспомогательного образа подготовки и, при необходимости, ZIP-файл прошивки с совместной подписью. file:
quartus_pfg –helper_image -o helper_device=AGFB014R24A -o subtype=PROVISION -o fw_source=signed_agilex.zip Signed_provision_helper_image.rbf
Запрограммируйте вспомогательный образ с помощью инструмента Intel Quartus Prime Programmer:
quartus_pgm -c 1 -mjtag -o «p;signed_provision_helper_image.rbf» –force

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

Сертификат ISO 9001: 2015

4. Подготовка устройств 683823 | 2023.05.23

Примечание:

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

4.2. Использование вспомогательного образа QSPI по умолчанию на принадлежащих ему устройствах
Программатор Intel Quartus Prime автоматически создает и загружает вспомогательный образ QSPI по умолчанию при выборе операции инициализации для программирования флэш-памяти QSPI. file. После программирования хэша корневого ключа аутентификации необходимо создать и подписать вспомогательный образ фабрики QSPI по умолчанию и запрограммировать подписанный вспомогательный образ фабрики QSPI отдельно перед программированием флэш-памяти QSPI. 1. Вы используете программу Intel Quartus Prime. File Инструмент командной строки генератора для
создайте вспомогательный образ QSPI, указав параметр helper_image, тип helper_device, подтип вспомогательного образа QSPI и, при необходимости, ZIP-файл с совместной подписью прошивки. file:
quartus_pfg –helper_image -o helper_device=AGFB014R24A -o subtype=QSPI -o fw_source=signed_agilex.zip qspi_helper_image.rbf
2. Вы подписываете вспомогательный образ QSPI по умолчанию:
quartus_sign –family=agilex –operation=sign –qky=design0_sign_chain.qky –pem=design0_sign_private.pem qspi_helper_image.rbf Signed_qspi_helper_image.rbf
3. Вы можете использовать любое флэш-программирование QSPI. file формат. Следующий бывшийampфайлы используют битовый поток конфигурации, преобразованный в .jic file формат:
quartus_pfg -c Signed_bitstream.rbf Signed_flash.jic -o устройство = MT25QU128 -o flash_loader = AGFB014R24A -o режим = ASX4
4. Вы программируете подписанный вспомогательный образ с помощью инструмента Intel Quartus Prime Programmer:
quartus_pgm -c 1 -mjtag -o «p;signed_qspi_helper_image.rbf» –force
5. Вы программируете образ .jic для прошивки с помощью инструмента Intel Quartus Prime Programmer:
quartus_pgm -c 1 -mjtag -o «p;signed_flash.jic»

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

Руководство пользователя по безопасности устройств Intel Agilex® 7 26

Отправить отзыв

4. Подготовка устройств 683823 | 2023.05.23
Чтобы запрограммировать хэши корневого ключа аутентификации, вы программируете вспомогательный образ встроенного ПО и запускаете одну из следующих команд для программирования корневого ключа .qky files.
// Для физических (энергонезависимых) eFuses quartus_pgm -c 1 -m jtag -o «p;root0.qky;root1.qky;root2.qky» –non_voluty_key
// Для виртуальных (зависимых) eFuses quartus_pgm -c 1 -m jtag -o «p;root0.qky;root1.qky;root2.qky»
4.3.1. Частичная реконфигурация Программирование корневого ключа с несколькими полномочиями
После подготовки корневых ключей владельца битового потока устройства или статического региона вы снова загружаете вспомогательный образ подготовки устройства, программируете подписанный компактный сертификат авторизации программы открытого ключа PR, а затем подготавливаете корневой ключ владельца битового потока PR persona.
// Для физических (энергонезависимых) eFuses quartus_pgm -c 1 -m jtag -o «p;root_pr.qky» –pr_pubkey –non_voluty_key
// Для виртуальных (зависимых) eFuses quartus_pgm -c 1 -m jtag -o «p;p;root_pr.qky» –pr_pubkey
4.4. Программирование ключа отмены идентификатора предохранителей
Начиная с версии 21.1 программного обеспечения Intel Quartus Prime Pro Edition, для программирования предохранителей идентификатора отмены ключа Intel и владельца требуется использование подписанного компактного сертификата. Вы можете подписать компактный сертификат идентификатора отмены ключа с помощью цепочки подписей, имеющей разрешения на подпись раздела FPGA. Вы создаете компактный сертификат с помощью программирования file Инструмент командной строки генератора. Вы подписываете неподписанный сертификат с помощью инструмента quartus_sign или эталонной реализации.
Устройства Intel Agilex 7 поддерживают отдельные банки идентификаторов отмены ключей владельца для каждого корневого ключа. Когда компактный сертификат идентификатора отмены ключа владельца программируется в FPGA Intel Agilex 7, SDM определяет, какой корневой ключ подписал компактный сертификат, и сбрасывает предохранитель идентификатора отмены ключа, соответствующий этому корневому ключу.
Следующий примерampФайлы создадут сертификат отмены ключа Intel для идентификатора ключа Intel 7. Вы можете заменить 7 соответствующим идентификатором отмены ключа Intel от 0 до 31.
Выполните следующую команду, чтобы создать компактный сертификат неподписанного идентификатора отмены ключа Intel:
quartus_pfg –ccert -o ccert_type=CANCEL_INTEL_KEY -o cancel_key=7 unsigned_cancel_intel7.ccert
Выполните одну из следующих команд, чтобы подписать компактный сертификат неподписанного идентификатора отмены ключа Intel:
quartus_sign –family=agilex –operation=SIGN –qky=design0_sign_chain.qky –pem=design0_private.pem –cancel=svnA:0 unsigned_cancel_intel7.ccert Signed_cancel_intel7.ccert
quartus_sign –family=agilex –operation=sign –module=softHSM –module_args=»–token_label=agilex-token –user_pin=agilex-token-pin –hsm_lib=/usr/local/lib/softhsm/libsofthsm2.so»

Отправить отзыв

Руководство пользователя по безопасности устройств Intel Agilex® 7 27

4. Подготовка устройств 683823 | 2023.05.23
–keyname=design0_sign –qky=design0_sign_chain.qky –cancel=svnA:0 unsigned_cancel_intel7.ccert Signed_cancel_intel7.ccert
Выполните следующую команду, чтобы создать компактный сертификат неподписанного идентификатора отмены ключа владельца:
quartus_pfg –ccert -o ccert_type=CANCEL_OWNER_KEY -o cancel_key=2 unsigned_cancel_owner2.ccert
Выполните одну из следующих команд, чтобы подписать компактный сертификат неподписанного идентификатора отмены ключа владельца:
quartus_sign –family=agilex –operation=SIGN –qky=design0_sign_chain.qky –pem=design0_private.pem –cancel=svnA:0 unsigned_cancel_owner2.ccert Signed_cancel_owner2.ccert
quartus_sign –family=agilex –operation=sign –module=softHSM –module_args=»–token_label=agilex-token –user_pin=agilex-token-pin –hsm_lib=/usr/local/lib/softhsm/libsofthsm2.so» –keyname= design0_sign –qky=design0_sign_chain.qky –cancel=svnA:0 unsigned_cancel_owner2.ccert Signed_cancel_owner2.ccert
После того как вы создали компактный сертификат с подписанным идентификатором отмены ключа, вы используете Intel Quartus Prime Programmer для программирования компактного сертификата на устройство через JTAG.
//Для физических (энергонезависимых) eFuses quartus_pgm -c 1 -m jtag -o «pi;signed_cancel_intel7.ccert» –non_VOLUS_key quartus_pgm -c 1 -m jtag -o «pi;signed_cancel_owner2.ccert» –non_voluty_key
//Для виртуальных (зависимых) eFuses quartus_pgm -c 1 -m jtag -o «pi;signed_cancel_intel7.ccert» quartus_pgm -c 1 -m jtag -o «pi;signed_cancel_owner2.ccert»
Вы можете дополнительно отправить компактный сертификат в SDM, используя интерфейс почтового ящика FPGA или HPS.
4.5. Отмена корневых ключей
Устройства Intel Agilex 7 позволяют отменять хэши корневого ключа при наличии другого неотмененного хеша корневого ключа. Вы отменяете хеш корневого ключа, сначала настраивая устройство с использованием конструкции, цепочка подписи которой основана на другом хэше корневого ключа, а затем программируете подписанный компактный сертификат отмены хэша корневого ключа. Вы должны подписать компактный сертификат отмены хэша корневого ключа с помощью цепочки подписей, основанной на корневом ключе, который необходимо отменить.
Выполните следующую команду, чтобы сгенерировать компактный сертификат отмены хэша без знака корневого ключа:
quartus_pfg –ccert -o –ccert_type=CANCEL_KEY_HASH unsigned_root_cancel.ccert

Руководство пользователя по безопасности устройств Intel Agilex® 7 28

Отправить отзыв

4. Подготовка устройств 683823 | 2023.05.23

Выполните одну из следующих команд, чтобы подписать компактный сертификат отмены хеширования неподписанного корневого ключа:
quartus_sign –family=agilex –operation=SIGN –qky=design0_sign_chain.qky –pem=design0_private.pem –cancel=svnA:0 unsigned_root_cancel.ccert Signed_root_cancel.ccert
quartus_sign –family=agilex –operation=sign –module=softHSM –module_args=»–token_label=agilex-token –user_pin=agilex-token-pin –hsm_lib=/usr/local/lib/softhsm/libsofthsm2.so» –keyname= design0_sign –qky=design0_sign_chain.qky –cancel=svnA:0 unsigned_root_cancel.ccert Signed_root_cancel.ccert
Вы можете запрограммировать компактный сертификат отмены хеширования корневого ключа через JTAGПочтовые ящики FPGA или HPS.

4.6. Программирование предохранителей счетчика
Вы обновляете номер версии безопасности (SVN) и псевдовремя St.amp (PTS) противопредохранители с использованием подписанных компактных сертификатов.

Примечание:

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

Выполните одну из следующих команд, соответствующую сертификату приращения счетчика, который вы хотите создать.
quartus_pfg –ccert -o ccert_type=PTS_COUNTER -o counter= unsigned_pts.ccert

quartus_pfg –ccert -o ccert_type=SVN_COUNTER_A -o counter= unsigned_svnA.ccert

quartus_pfg –ccert -o ccert_type=SVN_COUNTER_B -o counter= unsigned_svnB.ccert

quartus_pfg –ccert -o ccert_type=SVN_COUNTER_C -o counter= unsigned_svnC.ccert

quartus_pfg –ccert -o ccert_type=SVN_COUNTER_D -o counter= unsigned_svnD.ccert

Значение счетчика 1 создает сертификат авторизации приращения счетчика. Программирование компактного сертификата авторизации приращения счетчика позволяет запрограммировать дополнительные неподписанные сертификаты приращения счетчика для обновления соответствующего счетчика. Инструмент quartus_sign используется для подписи компактных сертификатов счетчика аналогично компактным сертификатам с идентификатором отмены ключа.
Вы можете запрограммировать компактный сертификат отмены хеширования корневого ключа через JTAGПочтовые ящики FPGA или HPS.

Отправить отзыв

Руководство пользователя по безопасности устройств Intel Agilex® 7 29

4. Подготовка устройств 683823 | 2023.05.23

4.7. Предоставление корневого ключа службы защищенных объектов данных
Вы используете Intel Quartus Prime Programmer для подготовки корневого ключа Secure Data Object Service (SDOS). Программатор автоматически загружает вспомогательный образ прошивки для подготовки корневого ключа SDOS.
quartus_pgm c 1 м jtag –service_root_key –non_voluty_key

4.8. Настройка предохранителя настройки безопасности
Используйте программу Intel Quartus Prime для проверки предохранителей настроек безопасности устройства и записи их в текстовый файл .fuse. file следующее:
quartus_pgm -c 1 -mjtag -o “ei;программирование_file.предохранитель;AGFB014R24B»

Опции · i: Программатор загружает вспомогательный образ встроенного ПО в устройство. · e: Программатор считывает предохранитель с устройства и сохраняет его в файле .fuse. file.

Предохранитель file содержит список пар имя-значение предохранителя. Значение указывает, перегорел ли предохранитель, или содержимое поля предохранителя.

Следующий примерample показывает формат .fuse file:

# Совместно подписанная прошивка

= «Не продувается»

# Разрешение на уничтожение устройства

= «Не продувается»

# Устройство не защищено

= «Не продувается»

# Отключить отладку HPS

= «Не продувается»

# Отключить регистрацию внутреннего идентификатора PUF

= «Не продувается»

# Отключить JTAG

= «Не продувается»

# Отключить ключ шифрования, заключенный в PUF.

= «Не продувается»

# Отключить ключ шифрования владельца в BBRAM = «Не перенесено»

# Отключить ключ шифрования владельца в eFuses = «Не перегорело»

# Отключить хэш открытого корневого ключа владельца 0

= «Не продувается»

# Отключить хэш открытого корневого ключа владельца 1

= «Не продувается»

# Отключить хэш открытого корневого ключа владельца 2

= «Не продувается»

# Отключить виртуальные eFuses

= «Не продувается»

# Принудительно использовать тактовый сигнал SDM для внутреннего генератора = «Не перегорел»

# Принудительное обновление ключа шифрования

= «Не продувается»

# Явная отмена ключа Intel

= «0»

# Блокировка электронных предохранителей безопасности

= «Не продувается»

# Программа ключа шифрования владельца завершена

= «Не продувается»

# Запуск программы ключа шифрования владельца

= «Не продувается»

# Явная отмена ключа владельца 0

знак равно

# Явная отмена ключа владельца 1

знак равно

# Явная отмена ключа владельца 2

знак равно

# Предохранители владельца

=

«0x00000000000000000000000000000000000000000000000000000

00000000000000000000000000000000000000000000000000000

0000000000000000000000”

# Хэш корневого открытого ключа владельца 0

=

«0x00000000000000000000000000000000000000000000000000000

0000000000000000000000000000000000000000000”

# Хэш корневого открытого ключа владельца 1

=

«0x00000000000000000000000000000000000000000000000000000

0000000000000000000000000000000000000000000”

# Хэш корневого открытого ключа владельца 2

=

«0x00000000000000000000000000000000000000000000000000000

0000000000000000000000000000000000000000000”

# Размер корневого открытого ключа владельца

= «Нет»

# счетчик PTS

= «0»

# База счетчиков PTS

= «0»

Руководство пользователя по безопасности устройств Intel Agilex® 7 30

Отправить отзыв

4. Подготовка устройств 683823 | 2023.05.23

# Задержка запуска QSPI # Счетчик RMA # SDMIO0 — I2C # Счетчик SVN A # Счетчик SVN B # Счетчик SVN C # Счетчик SVN D

= «10мс» = «0» = «Не перегорает» = «0» = «0» = «0» = «0»

Измените .fuse file чтобы установить нужные предохранители настроек безопасности. Строка, начинающаяся с #, рассматривается как строка комментария. Чтобы запрограммировать предохранитель настройки безопасности, удалите начальный # и установите значение «Перегорел». Для бывшегоample, чтобы включить предохранитель настройки безопасности совместно подписанной прошивки, измените первую строку предохранителя file к следующему:
Совместно подписанная прошивка = «Сгорела»

Вы также можете выделить и запрограммировать предохранители владельца в соответствии с вашими требованиями.
Вы можете использовать следующую команду для выполнения пустой проверки, программирования и проверки корневого открытого ключа владельца:
quartus_pgm -c 1 -mjtag -o «ibpv;root0.qky»

Опции · i: Загрузка вспомогательного образа встроенного ПО на устройство. · b: Выполняет пустую проверку, чтобы убедиться, что предохранители нужных настроек безопасности не
уже взорван. · p: Программирует предохранитель. · v: проверяет запрограммированный ключ на устройстве.
После программирования .qky file, вы можете проверить информацию Fuse, проверив ее еще раз, чтобы убедиться, что хеш открытого ключа владельца и размер открытого ключа владельца имеют ненулевые значения.
Хотя следующие поля недоступны для записи через .fuse file метод, они включаются в выходные данные операции проверки для проверки: · Устройство не защищено · Устройство разрешает уничтожение · Отключить хеш корневого открытого ключа владельца 0 · Отключить хеш корневого открытого ключа владельца 1 · Отключить хеш корневого открытого ключа владельца 2 · Отмена ключа Intel · Запуск программы ключа шифрования владельца · Программа ключа шифрования владельца завершена · Отмена ключа владельца · Хэш открытого ключа владельца · Размер открытого ключа владельца · Хеш корневого открытого ключа владельца 0 · Хэш корневого открытого ключа владельца 1 · Хэш корневого открытого ключа владельца 2

Отправить отзыв

Руководство пользователя по безопасности устройств Intel Agilex® 7 31

4. Подготовка устройств 683823 | 2023.05.23
· Счетчик PTS · База счетчика PTS · Задержка запуска QSPI · Счетчик RMA · SDMIO0 — I2C · Счетчик SVN A · Счетчик SVN B · Счетчик SVN C · Счетчик SVN D
Используйте программатор Intel Quartus Prime для программирования .fuse. file обратно к устройству. Если вы добавите опцию i, программатор автоматически загрузит прошивку для программирования предохранителей настроек безопасности.
//Для физических (энергонезависимых) eFuses quartus_pgm -c 1 -m jtag -o «пи;программирование_file.fuse» –non_voluty_key
//Для виртуальных (зависимых) eFuses quartus_pgm -c 1 -m jtag -o «пи;программирование_file.предохранитель"
Вы можете использовать следующую команду, чтобы проверить, совпадает ли хэш корневого ключа устройства с .qky, указанным в команде:
quartus_pgm -c 1 -mjtag -o «v;root0_another.qky»
Если ключи не совпадают, программатор выходит из строя с сообщением об ошибке «Операция не удалась».
4.9. Предоставление корневого ключа AES
Для программирования корневого ключа AES на устройстве Intel Agilex 7 необходимо использовать подписанный компактный сертификат корневого ключа AES.
4.9.1. Компактный сертификат корневого ключа AES
Вы используете инструмент командной строки quartus_pfg для преобразования корневого ключа AES .qek. file в компактный формат сертификата .ccert. Место хранения ключей вы указываете при создании компактного сертификата. Вы можете использовать инструмент quartus_pfg для создания неподписанного сертификата для последующей подписи. Чтобы успешно подписать компактный сертификат корневого ключа AES, необходимо использовать цепочку подписей с включенным разрешением на подпись сертификата корневого ключа AES, бит разрешения 6.

Руководство пользователя по безопасности устройств Intel Agilex® 7 32

Отправить отзыв

4. Подготовка устройств 683823 | 2023.05.23
1. Создайте дополнительную пару ключей, используемую для подписи компактного сертификата ключа AES, используя одну из следующих команд:ampле:
quartus_sign –family=agilex –operation=make_private_pem –curve=secp384r1 aesccert1_private.pem
quartus_sign –family=agilex –operation=make_public_pem aesccert1_private.pem aesccert1_public.pem
pkcs11-tool –module=/usr/local/lib/softhsm/libsofthsm2.so –метка-токена agilex-token –login –pin agilex-token-pin –keypairgen механизм ECDSA-KEY-PAIR-GEN –тип ключа EC: secp384r1 –usage-sign –label aesccert1 –id 2
2. Создайте цепочку подписей с правильным битом разрешения, используя одну из следующих команд:
quartus_sign –family=agilex –operation=append_key –previous_pem=root0_private.pem –previous_qky=root0.qky –permission=0x40 –cancel=1 –input_pem=aesccert1_public.pem aesccert1_sign_chain.qky
quartus_sign –family=agilex –operation=append_key –module=softHSM -module_args=»–token_label=agilex-token –user_pin=agilex-token-pin –hsm_lib=/usr/local/lib/softhsm/libsofthsm2.so» –previous_keyname= root0 –previous_qky=root0.qky –permission=0x40 –cancel=1 –input_keyname=aesccert1 aesccert1_sign_chain.qky
3. Создайте неподписанный компактный сертификат AES для нужного места хранения корневого ключа AES. Доступны следующие варианты хранения корневых ключей AES:
· EFUSE_WRAPPED_AES_KEY
· IID_PUF_WRAPPED_AES_KEY
· UDS_IID_PUF_WRAPPED_AES_KEY
· BBRAM_WRAPPED_AES_KEY
· BBRAM_IID_PUF_WRAPPED_AES_KEY
· BBRAM_UDS_IID_PUF_WRAPPED_AES_KEY
//Создаем неподписанный сертификат корневого ключа eFuse AES quartus_pfg –ccert -o ccert_type=EFUSE_WRAPPED_AES_KEY -o qek_file=aes.qek unsigned_efuse1.ccert
4. Подпишите компактный сертификат с помощью команды quartus_sign или эталонной реализации.
quartus_sign –family=agilex –operation=sign –pem=aesccert1_private.pem –qky=aesccert1_sign_chain.qky unsigned_1.ccert Signed_1.ccert
quartus_sign –family=agilex –operation=sign –module=softHSM –module_args=»–token_label=agilex-token –user_pin=agilex-token-pin –hsm_lib=/usr/local/lib/softhsm/libsofthsm2.so»

Отправить отзыв

Руководство пользователя по безопасности устройств Intel Agilex® 7 33

4. Подготовка устройств 683823 | 2023.05.23

–keyname=aesccert1 –qky=aesccert1_sign_chain.qky unsigned_1.ccert Signed_1.ccert
5. Используйте программатор Intel Quartus Prime для программирования компактного сертификата корневого ключа AES для устройства Intel Agilex 7 через JTAG. Программист Intel Quartus Prime по умолчанию программирует виртуальные eFuse при использовании компактного типа сертификата EFUSE_WRAPPED_AES_KEY.
Вы добавляете опцию –non_voluty_key, чтобы указать физические предохранители программирования.
//Для физического (энергонезависимого) корневого ключа eFuse AES quartus_pgm -c 1 -m jtag -o «pi;signed_efuse1.ccert» –non_voluty_key

//Для виртуального (независимого) корневого ключа eFuse AES quartus_pgm -c 1 -m jtag -o «pi;signed_efuse1.ccert»

//Для корневого ключа BBRAM AES quartus_pgm -c 1 -m jtag -o «pi;signed_bbram1.ccert»

Прошивка обеспечения SDM и основная прошивка поддерживают программирование сертификата корневого ключа AES. Вы также можете использовать интерфейс почтового ящика SDM из структуры FPGA или HPS для программирования сертификата корневого ключа AES.

Примечание:

Команда quartus_pgm не поддерживает параметры b и v для компактных сертификатов (.ccert).

4.9.2. Предоставление корневого ключа Intrinsic ID® PUF AES
Реализация ключа AES с внутренним идентификатором PUF включает следующие шаги: 1. Регистрация PUF с внутренним идентификатором через JTAG. 2. Упаковка корневого ключа AES. 3. Программирование вспомогательных данных и упакованного ключа во флэш-память с четырьмя SPI. 4. Запрос статуса активации внутреннего идентификатора PUF.
Для использования технологии Intrinsic ID требуется отдельное лицензионное соглашение с Intrinsic ID. Программное обеспечение Intel Quartus Prime Pro Edition ограничивает операции PUF без соответствующей лицензии, такие как регистрация, упаковка ключей и программирование данных PUF во флэш-память QSPI.

4.9.2.1. Регистрация PUF с внутренним идентификатором
Чтобы зарегистрировать PUF, необходимо использовать встроенное ПО SDM. Прошивка подготовки должна быть первой, загружаемой после выключения и включения питания, и перед любой другой командой необходимо ввести команду регистрации PUF. Прошивка поддержки поддерживает другие команды после регистрации PUF, включая перенос корневого ключа AES и программирование четырехканального SPI, однако для загрузки битового потока конфигурации необходимо выключить и включить питание устройства.
Вы используете Intel Quartus Prime Programmer для запуска регистрации PUF и создания вспомогательных данных PUF.puf. file.

Руководство пользователя по безопасности устройств Intel Agilex® 7 34

Отправить отзыв

4. Подготовка устройств 683823 | 2023.05.23

Рисунок 7.

Регистрация PUF с внутренним идентификатором
quartus_pgm Регистрация в PUF

Вспомогательные данные PUF для регистрации

Диспетчер безопасных устройств (SDM)

Вспомогательные данные Wrapper.puf
Программатор автоматически загружает вспомогательный образ встроенного ПО, когда вы указываете как операцию i, так и аргумент .puf.
quartus_pgm -c 1 -mjtag -o «ei;help_data.puf;AGFB014R24A»
Если вы используете совместно подписанное встроенное ПО, вы программируете совместно подписанное вспомогательное встроенное ПО перед использованием команды регистрации PUF.
quartus_pgm -c 1 -mjtag -o «p;signed_provision_helper_image.rbf» –force quartus_pgm -c 1 -m jtag -o «e;help_data.puf;AGFB014R24A»
PUF UDS IID регистрируется во время производства устройства и не доступен для повторной регистрации. Вместо этого вы используете программатор, чтобы определить расположение вспомогательных данных UDS PUF в IPCS, загрузите файл .puf. file напрямую, а затем используйте UDS .puf file так же, как и .puf file извлечено из устройства Intel Agilex 7.
Используйте следующую команду программиста для создания текста file содержащий список URLs указывает на специфичное для устройства fileпо IPCS:
quartus_pgm -c 1 -mjtag -o «е;ipcs_urls.txt;AGFB014R24B» –ipcs_urls
4.9.2.2. Обертывание корневого ключа AES
Вы создаете корневой ключ AES в оболочке IID PUF .wkey. file отправив подписанный сертификат в SDM.
Вы можете использовать Intel Quartus Prime Programmer для автоматического создания, подписания и отправки сертификата для упаковки вашего корневого ключа AES, или вы можете использовать Intel Quartus Prime Programming File Генератор для создания неподписанного сертификата. Вы подписываете неподписанный сертификат, используя свои собственные инструменты или инструмент подписи Quartus. Затем вы используете программист для отправки подписанного сертификата и переноса корневого ключа AES. Подписанный сертификат можно использовать для программирования всех устройств, которые могут проверять цепочку подписей.

Отправить отзыв

Руководство пользователя по безопасности устройств Intel Agilex® 7 35

4. Подготовка устройств 683823 | 2023.05.23

Рисунок 8.

Обертывание ключа AES с помощью программатора Intel Quartus Prime
.pem Частный
Ключ

.qky

quartus_pgm

Перенос ключа AES

Ключ AES.QSKigYnature RootCPhuabilnic

Создать упакованный ключ PUF

Завернутый ключ AES

СДМ

.qek Шифрование
Ключ

.wkey в ПУФ-обертке
Ключ AES

1. Вы можете сгенерировать корневой ключ AES в обертке IID PUF (.wkey) с помощью программатора, используя следующие аргументы:
· .qky file содержащий цепочку подписей с разрешением сертификата корневого ключа AES
· Частный .pem file для последнего ключа в цепочке подписи
· .qek file удерживая корневой ключ AES
· 16-байтовый вектор инициализации (iv).

quartus_pgm -c 1 -mjtag –qky_file=aes0_sign_chain.qky –pem_file=aes0_sign_private.pem –qek_file=aes.qek –iv=1234567890ABCDEF1234567890ABCDEF -o «ei;aes.wkey;AGFB014R24A»

2. Альтернативно вы можете создать неподписанный сертификат корневого ключа AES IID PUF с помощью раздела Программирование. File Генератор, использующий следующие аргументы:

quartus_pfg –ccert -o ccert_type=IID_PUF_WRAPPED_AES_KEY -o qek_file=aes.qek –iv=1234567890ABCDEF1234567890ABCDEF unsigned_aes.ccert

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

quartus_sign –family=agilex –operation=sign –qky=aes0_sign_chain.qky –pem=aes0_sign_private.pem unsigned_aes.ccert Signed_aes.ccert

4. Затем вы используете программатор для отправки подписанного сертификата AES и возврата упакованного ключа (.wkey). file:

quarts_pgm -c 1 -mjtag –ccert_file=signed_aes.ccert -o «ei;aes.wkey;AGFB014R24A»

Примечание. Операция i не требуется, если вы ранее загрузили вспомогательный образ встроенного ПО, напримерampле, чтобы записаться в ППУ.

4.9.2.3. Вспомогательные данные программирования и упакованный ключ во флэш-память QSPI
Вы используете программирование Quartus File Графический интерфейс генератора для создания исходного флэш-образа QSPI, содержащего раздел PUF. Вам необходимо сгенерировать и запрограммировать весь образ программирования флэш-памяти, чтобы добавить раздел PUF во флэш-память QSPI. Создание ППУ

Руководство пользователя по безопасности устройств Intel Agilex® 7 36

Отправить отзыв

4. Подготовка устройств 683823 | 2023.05.23

Рисунок 9.

раздел данных и использование вспомогательных данных PUF и упакованного ключа files для генерации флэш-образов не поддерживается через Программирование File Интерфейс командной строки генератора.
Следующие шаги демонстрируют создание образа программирования флэш-памяти с помощью вспомогательных данных PUF и упакованного ключа:
1. На File меню, нажмите Программирование File Генератор. На выходе FileНа вкладке s выберите следующие параметры:
а. В качестве семейства устройств выберите Agilex 7.
б. В режиме конфигурации выберите Active Serial x4.
в. В каталоге вывода перейдите к выходному файлу. file каталог. Этот бывшийampфайл использует вывод_files.
д. В поле «Имя» укажите имя для программирования. file быть сгенерировано. Этот бывшийampфайл использует вывод_file.
е. В разделе «Описание» выберите программирование. files для генерации. Этот бывшийample генерирует JTAG Косвенная конфигурация File (.jic) для конфигурации устройства и необработанного двоичного файла File вспомогательного образа программирования (.rbf) для вспомогательного образа устройства. Этот бывшийample также выбирает дополнительную карту памяти File (.map) и необработанные данные программирования File (.rpd). Необработанные данные программирования file необходим только в том случае, если вы планируете в будущем использовать сторонний программатор.
Программирование File Генератор – Выход FileВкладка s – выберите JTAG Косвенная конфигурация

Режим конфигурации семейства устройств
Выход file вкладка
Выходной каталог
JTAG Косвенная (.jic) карта памяти File Необработанные данные программирования помощника по программированию
На входе Files, выберите следующие параметры: 1. Нажмите «Добавить битовый поток» и перейдите к своему файлу .sof. 2. Выберите свой .sof file а затем нажмите «Свойства».

Отправить отзыв

Руководство пользователя по безопасности устройств Intel Agilex® 7 37

4. Подготовка устройств 683823 | 2023.05.23
а. Включите параметр «Включить инструмент подписи». б. Для закрытого ключа file выберите свой .pem file. в. Включите Завершить шифрование. д. Для ключа шифрования file выберите свой .qek file. е. Нажмите «ОК», чтобы вернуться к предыдущему окну. 3. Чтобы указать вспомогательные данные PUF file, нажмите «Добавить необработанные данные». Изменить Files из раскрывающегося меню типа Quartus Physical Unclonable Function File (*.пуф). Перейдите к своему .puf file. Если вы используете и IID PUF, и UDS IID PUF, повторите этот шаг, чтобы .puf files для каждого PUF добавляются в качестве входных данных fileс. 4. Чтобы указать упакованный ключ AES file, нажмите «Добавить необработанные данные». Изменить Fileраскрывающееся меню типа Quartus Wrapped Key File (*.wkey). Перейдите к своему .wkey file. Если вы обернули ключи AES, используя как IID PUF, так и UDS IID PUF, повторите этот шаг, чтобы .wkey files для каждого PUF добавляются в качестве входных данных files.
Рисунок 10. Укажите входные данные Files для настройки, аутентификации и шифрования

Добавить битовый поток Добавить необработанные данные
Характеристики
Закрытый ключ file
Завершить шифрование. Ключ шифрования.
На вкладке «Устройство конфигурации» выберите следующие параметры: 1. Нажмите «Добавить устройство» и выберите свое флэш-устройство из списка доступных флэш-устройств.
устройства. 2. Выберите только что добавленное конфигурационное устройство и нажмите «Добавить раздел». 3. В диалоговом окне «Редактировать раздел» для ввода file и выберите свой .sof из
выпадающий список. Вы можете сохранить значения по умолчанию или изменить другие параметры в диалоговом окне «Редактировать раздел».

Руководство пользователя по безопасности устройств Intel Agilex® 7 38

Отправить отзыв

4. Подготовка устройств 683823 | 2023.05.23
Рисунок 11. Указание раздела битового потока конфигурации .sof

Устройство конфигурации
Редактировать раздел Добавить .sof file

Добавить раздел

4. Когда вы добавляете .puf и .wkey в качестве входных данных files, Программирование File Генератор автоматически создает раздел PUF на вашем конфигурационном устройстве. Чтобы сохранить файлы .puf и .wkey в разделе PUF, выберите раздел PUF и нажмите «Изменить». В диалоговом окне «Редактировать раздел» выберите файлы .puf и .wkey. files из раскрывающихся списков. Если вы удалите раздел PUF, вам необходимо удалить и повторно добавить устройство настройки для программирования. File Генератор для создания еще одного PUF-раздела. Вы должны убедиться, что выбрали правильные файлы .puf и .wkey. file для ИИД ППУ и ​​УДС ИИД ППУ соответственно.
Рисунок 12. Добавьте файлы .puf и .wkey. files в раздел PUF

ППУ перегородка

Редактировать

Изменить раздел

Флэш-загрузчик

Выберите Создать

5. В качестве параметра Flash Loader выберите семейство устройств Intel Agilex 7 и имя устройства, соответствующее вашему Intel Agilex 7 OPN.

Отправить отзыв

Руководство пользователя по безопасности устройств Intel Agilex® 7 39

4. Подготовка устройств 683823 | 2023.05.23
6. Нажмите «Создать», чтобы сгенерировать выходные данные. files, которые вы указали на Выходных данных Files таб.
7. Программирование File Генератор читает ваш .qek file и предложит вам ввести парольную фразу. Введите парольную фразу в ответ на запрос «Введите парольную фразу QEK». Нажмите клавишу Enter.
8. Нажмите «ОК», когда появится окно «Программирование». File Генератор сообщает об успешной генерации.
Вы используете программатор Intel Quartus Prime для записи образа программирования QSPI во флэш-память QSPI. 1. В меню Intel Quartus Prime Tools выберите «Программист». 2. В программаторе нажмите «Настройка оборудования», а затем выберите подключенный Intel.
Кабель для загрузки FPGA. 3. Нажмите Добавить. File и перейдите к своему .jic file.
Рисунок 13. Программа .jic

Программирование file

Программа/Настройка

JTAG цепь сканирования
4. Снимите флажок, связанный с изображением помощника. 5. Выберите «Программировать/Настроить» для вывода .jic. file. 6. Нажмите кнопку «Пуск», чтобы запрограммировать флэш-память с четырьмя SPI. 7. Выключите и включите питание платы. Дизайн запрограммирован на флэш-память с четырьмя SPI.
устройство впоследствии загружается в целевую FPGA.
Вам необходимо сгенерировать и запрограммировать весь образ программирования флэш-памяти, чтобы добавить раздел PUF во флэш-память с четырьмя SPI.
Если раздел PUF уже существует во флэш-памяти, можно использовать программатор Intel Quartus Prime для прямого доступа к вспомогательным данным PUF и упакованному ключу. fileс. НапримерampТо есть, если активация не удалась, можно повторно зарегистрировать PUF, перенаписать ключ AES и в дальнейшем только запрограммировать PUF. files без необходимости перезаписывать всю флэш-память.

Руководство пользователя по безопасности устройств Intel Agilex® 7 40

Отправить отзыв

4. Подготовка устройств 683823 | 2023.05.23
Программатор Intel Quartus Prime поддерживает следующий аргумент операции для PUF files в уже существующем разделе PUF:
· п: программа
· v: проверить
· р: стереть
· b: пустой чек
Вы должны соблюдать те же ограничения для регистрации PUF, даже если раздел PUF существует.
1. Используйте аргумент операции i, чтобы загрузить вспомогательный образ встроенного ПО для первой операции. Для бывшегоample, следующая последовательность команд повторно регистрирует PUF, повторно переносит корневой ключ AES, стирает старые вспомогательные данные PUF и упакованный ключ, затем программирует и проверяет новые вспомогательные данные PUF и корневой ключ AES.
quartus_pgm -c 1 -mjtag -o «ei;new.puf;AGFB014R24A» quartus_pgm -c 1 -m jtag –ccert_file=signed_aes.ccert -o «e;new.wkey;AGFB014R24A» quartus_pgm -c 1 -m jtag -o «r;old.puf» quartus_pgm -c 1 -m jtag -o «r;old.wkey» quartus_pgm -c 1 -m jtag -o «p;new.puf» quartus_pgm -c 1 -m jtag -o «p;new.wkey» quartus_pgm -c 1 -m jtag -o «v;new.puf» quartus_pgm -c 1 -m jtag -o «v;new.wkey»
4.9.2.4. Запрос статуса активации внутреннего идентификатора PUF
После регистрации внутреннего идентификатора PUF добавьте ключ AES и сгенерируйте флэш-программирование. files и обновите флэш-память с четырьмя SPI, вы выключаете и включаете свое устройство, чтобы активировать и настроить PUF из зашифрованного потока битов. SDM сообщает о статусе активации PUF вместе со статусом конфигурации. Если активация PUF не удалась, SDM вместо этого сообщает о статусе ошибки PUF. Используйте команду quartus_pgm для запроса состояния конфигурации.
1. Используйте следующую команду, чтобы запросить статус активации:
quartus_pgm -c 1 -mjtag --status --status_type="КОНФИГ"
Вот сampвывод файла об успешной активации:
Информация (21597): Ответ CONFIG_STATUS Устройство работает в пользовательском режиме. 00006000 RESPONSE_CODE=OK, LENGTH=6 00000000 STATE=IDLE 00160300 Версия C000007B MSEL=QSPI_NORMAL, nSTATUS=1, nCONFIG=1, VID=1,
CLOCK_SOURCE=INTERNAL_PLL 0000000B CONF_DONE=1, INIT_DONE=1, CVP_DONE=0, SEU_ERROR=1 00000000 Местоположение ошибки 00000000 Подробности ошибки Ответ PUF_STATUS 00002000 RESPONSE_CODE=OK, LENGTH=2 00000500 XNUMX USER_IID STATUS=PUF_ACTIVATION_SUCCESS,
RELIABILITY_DIAGNOSTIC_SCORE=5, TEST_MODE=0 00000500 UDS_IID STATUS=PUF_ACTIVATION_SUCCESS,
RELIABILITY_DIAGNOSTIC_SCORE=5, TEST_MODE=0

Отправить отзыв

Руководство пользователя по безопасности устройств Intel Agilex® 7 41

4. Подготовка устройств 683823 | 2023.05.23

Если вы используете только IID PUF или UDS IID PUF и не запрограммировали вспомогательные данные .puf file для любой PUF во флэш-памяти QSPI эта PUF не активируется, а состояние PUF отражает, что вспомогательные данные PUF недействительны. Следующий бывшийampФайл показывает состояние PUF, когда вспомогательные данные PUF не были запрограммированы ни для одного из PUF:
Ответ PUF_STATUS 00002000 RESPONSE_CODE=OK, LENGTH=2 00000002 USER_IID STATUS=PUF_DATA_CORRUPTED,
RELIABILITY_DIAGNOSTIC_SCORE=0, TEST_MODE=0 00000002 UDS_IID STATUS=PUF_DATA_CORRUPTED,
RELIABILITY_DIAGNOSTIC_SCORE=0, TEST_MODE=0

4.9.2.5. Расположение PUF во флэш-памяти
Расположение ППУ file отличается для конструкций, поддерживающих RSU, и конструкций, не поддерживающих функцию RSU.

Для проектов, которые не поддерживают RSU, необходимо включить файлы .puf и .wkey. files при создании обновленных флэш-образов. Для проектов, поддерживающих RSU, SDM не перезаписывает разделы данных PUF во время обновлений заводского образа или образа приложения.

Таблица 2.

Макет подразделов Flash без поддержки RSU

Смещение флэш-памяти (в байтах)

Размер (в байтах)

Содержание

Описание

0К 256К

256К 256К

Прошивка управления конфигурацией Прошивка управления конфигурацией

Прошивка, работающая на SDM.

512К

256К

Прошивка управления конфигурацией

768К

256К

Прошивка управления конфигурацией

1M

32К

Копия данных PUF 0

Структура данных для хранения вспомогательных данных PUF и копии корневого ключа AES в PUF 0

1M+32K

32К

Копия данных PUF 1

Структура данных для хранения вспомогательных данных PUF и копии корневого ключа AES в PUF 1

Таблица 3.

Макет подразделов Flash с поддержкой RSU

Смещение флэш-памяти (в байтах)

Размер (в байтах)

Содержание

Описание

0К 512К

512К 512К

Прошивка решения Прошивка решения

Прошивка для определения и загрузки изображения с наивысшим приоритетом.

1M 1.5M

512К 512К

Прошивка решения Прошивка решения

2M

8К + 24К

Данные прошивки решения

Прокладка

Зарезервировано для использования прошивки Decision.

2М + 32К

32К

Зарезервировано для SDM

Зарезервировано для СДМ.

2М + 64К

Переменная

Изображение завода

Простой образ, который вы создаете в качестве резервной копии, если все остальные образы приложений не загружаются. Этот образ включает CMF, работающий на SDM.

Следующий

32К

Копия данных PUF 0

Структура данных для хранения вспомогательных данных PUF и копии корневого ключа AES в PUF 0
продолжение…

Руководство пользователя по безопасности устройств Intel Agilex® 7 42

Отправить отзыв

4. Подготовка устройств 683823 | 2023.05.23

Смещение флэш-памяти (в байтах)

Размер (в байтах)

Далее +32 тыс. 32 тыс.

Содержание копии данных PUF 1

Далее + 256K 4K Далее +32K 4K Далее +32K 4K

Копия таблицы подразделов 0 Копия таблицы подразделов 1 Копия блока указателей CMF 0

Далее +32K _

Копия блока указателя CMF 1

переменная переменная

переменная переменная

Изображение приложения 1 Изображение приложения 2

4.9.3. Предоставление черного ключа

Описание
Структура данных для хранения вспомогательных данных PUF и копии корневого ключа AES в PUF 1
Структура данных для облегчения управления флэш-накопителем.
Список указателей на образы приложений в порядке приоритета. Когда вы добавляете изображение, оно становится самым высоким.
Вторая копия списка указателей на образы приложений.
Ваше первое изображение приложения.
Ваше второе изображение приложения.

Примечание:

Программист Intel Quartus Prime помогает установить безопасное соединение с взаимной аутентификацией между устройством Intel Agilex 7 и службой предоставления черного ключа. Безопасное соединение устанавливается через https и требует нескольких сертификатов, идентифицируемых с помощью текстового сообщения. file.
При использовании Black Key Provisioning Intel рекомендует избегать внешнего подключения контакта TCK для подтягивания или понижения резистора, продолжая использовать его для J.TAG. Однако вы можете подключить вывод TCK к источнику питания VCCIO SDM, используя резистор 10 кОм. Существующие рекомендации по подключению контактов TCK к понижающему резистору 1 кОм включены для подавления помех. Изменение направления на подтягивающий резистор 10 кОм не влияет на функциональность устройства. Дополнительную информацию о подключении контакта TCK см. в Руководстве по 7-контактному подключению Intel Agilex.
Thebkp_tls_ca_certcertificate аутентифицирует ваш экземпляр службы предоставления черного ключа для вашего экземпляра программиста предоставления черного ключа. Сертификаты bkp_tls_* аутентифицируют ваш экземпляр программатора предоставления черного ключа для экземпляра службы предоставления черного ключа.
Вы создаете текст file содержащий необходимую информацию для программиста Intel Quartus Prime для подключения к службе предоставления черного ключа. Чтобы инициировать предоставление черного ключа, используйте интерфейс командной строки программиста, чтобы указать текст параметров предоставления черного ключа. file. Затем предоставление черного ключа происходит автоматически. Чтобы получить доступ к услуге предоставления «черных ключей» и соответствующей документации, обратитесь в службу поддержки Intel.
Вы можете включить предоставление черного ключа с помощью командыquartus_pgm:
quartus_pgm -c -m –device –bkp_options=bkp_options.txt
Аргументы команды указывают следующую информацию:

Отправить отзыв

Руководство пользователя по безопасности устройств Intel Agilex® 7 43

4. Подготовка устройств 683823 | 2023.05.23

· -c: номер кабеля · -m: указывает режим программирования, например JTAG · –device: указывает индекс устройства на JTAG цепь. Значение по умолчанию — 1. · –bkp_options: указывает текст. file содержащий параметры предоставления черных ключей.
Сопутствующая информация Рекомендации по подключению контактов семейства устройств Intel Agilex 7

4.9.3.1. Варианты подготовки черного ключа
Параметры настройки черного ключа представляют собой текст. file передается программисту через команду quartus_pgm. file содержит необходимую информацию для запуска предоставления черного ключа.
Ниже приведен примерampфайл bkp_options.txt file:
bkp_cfg_id = 1 bkp_ip = 192.167.1.1 bkp_port = 10034 bkp_tls_ca_cert = root.cert bkp_tls_prog_cert = prog.cert bkp_tls_prog_key = prog_key.pem bkp_tls_prog_key_pass = 1234 = https://192.167.5.5:5000 bkp_proxy_user = proxy_user bkp_proxy_password = proxy_password

Таблица 4.

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

Название опции

Тип

Описание

bkp_ip

Необходимый

Указывает IP-адрес сервера, на котором работает служба подготовки черного ключа.

bkp_port

Необходимый

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

bkp_cfg_id

Необходимый

Идентифицирует идентификатор потока настройки подготовки черного ключа.
Служба предоставления черного ключа создает потоки конфигурации предоставления черного ключа, включая корневой ключ AES, желаемые настройки eFuse и другие параметры авторизации для предоставления черного ключа. Номер, назначенный во время настройки службы предоставления черного ключа, идентифицирует потоки настройки предоставления черного ключа.
Примечание. Несколько устройств могут относиться к одному и тому же потоку настройки службы предоставления черных ключей.

bkp_tls_ca_cert

Необходимый

Корневой сертификат TLS, используемый для идентификации служб предоставления черного ключа программисту Intel Quartus Prime (программист). Этот сертификат выдает доверенный центр сертификации для экземпляра службы подготовки черного ключа.
Если вы запускаете Программатор на компьютере с операционной системой Microsoft® Windows® (Windows), вам необходимо установить этот сертификат в хранилище сертификатов Windows.

bkp_tls_prog_cert

Необходимый

Сертификат, созданный для экземпляра программатора подготовки черного ключа (программатора BKP). Это сертификат клиента https, используемый для идентификации этого экземпляра программатора BKP.
продолжение…

Руководство пользователя по безопасности устройств Intel Agilex® 7 44

Отправить отзыв

4. Подготовка устройств 683823 | 2023.05.23

Название опции

Тип

bkp_tls_prog_key

Необходимый

bkp_tls_prog_key_pass Необязательно

bkp_proxy_address bkp_proxy_user bkp_proxy_password

Опционально Опционально Опционально

Описание
к службе предоставления черных ключей. Вы должны установить и авторизовать этот сертификат в службе предоставления черного ключа до начала сеанса предоставления черного ключа. Если вы запускаете программатор в Windows, эта опция недоступна. В этом случае bkp_tls_prog_key уже включает этот сертификат.
Закрытый ключ, соответствующий сертификату программиста BKP. Ключ подтверждает подлинность экземпляра BKP Programmer для службы предоставления черных ключей. Если вы запустите Programmer в Windows, файл .pfx file объединяет сертификат bkp_tls_prog_cert и закрытый ключ. Параметр bkp_tlx_prog_key передает файл .pfx. file в bkp_options.txt file.
Пароль для закрытого ключа bkp_tls_prog_key. Не требуется в тексте параметров конфигурации подготовки черного ключа (bkp_options.txt). file.
Указывает прокси-сервер URL адрес.
Указывает имя пользователя прокси-сервера.
Указывает пароль аутентификации прокси.

4.10. Преобразование корневого ключа владельца, сертификатов корневого ключа AES и предохранителя files to Jam STAPL File Форматы

Вы можете использовать команду командной строки quartus_pfg для преобразования .qky, корневого ключа AES, .ccert и .fuse. files в формат Jam STAPL File (.jam) и формат байт-кода Jam File (.jbc). Вы можете использовать эти files для программирования FPGA Intel с использованием Jam STAPL Player и Jam STAPL Byte-Code Player соответственно.

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

Осторожность:

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

Вот бывшиеampфайлы команд преобразования quartus_pfg:

quartus_pfg -c -o helper_device=AGFB014R24A «root0.qky;root1.qky;root2.qky» RootKey.jam quartus_pfg -c -o helper_device=AGFB014R24A «root0.qky;root1.qky;root2.qky» RootKey.jbc quartus_pfg - c -o helper_device=AGFB014R24A aes.ccert aes_ccert.jam quartus_pfg -c -o helper_device=AGFB014R24A aes.ccert aes_ccert.jbc quartus_pfg -c -o helper_device=AGFB014R24A settings.fuse settings_fuse.jam quartus_pfg -c -o helper _device=Настройки AGFB014R24A. настройки предохранителя_fuse.jbc

Дополнительную информацию об использовании Jam STAPL Player для программирования устройств см. в документе AN 425: Использование решения Jam STAPL из командной строки для программирования устройств.

Отправить отзыв

Руководство пользователя по безопасности устройств Intel Agilex® 7 45

4. Подготовка устройств 683823 | 2023.05.23
Выполните следующие команды, чтобы запрограммировать корневой открытый ключ владельца и ключ шифрования AES:
//Загрузить вспомогательный битовый поток в FPGA. // Вспомогательный поток битов включает в себя прошивку quartus_jli -c 1 -a CONFIGURE RootKey.jam
//Чтобы запрограммировать корневой открытый ключ владельца в виртуальные eFuses quartus_jli -c 1 -a PUBKEY_PROGRAM RootKey.jam
//Чтобы запрограммировать корневой открытый ключ владельца в физические eFuses quartus_jli -c 1 -a PUBKEY_PROGRAM -e DO_UNI_ACT_DO_EFUSES_FLAG RootKey.jam
//Чтобы запрограммировать открытый корневой ключ владельца PR в виртуальные eFuses quartus_jli -c 1 -a PUBKEY_PROGRAM -e DO_UNI_ACT_DO_PR_PUBKEY_FLAG pr_rootkey.jam
//Для программирования открытого корневого ключа владельца PR в физических eFuses quartus_jli -c 1 -a PUBKEY_PROGRAM -e DO_UNI_ACT_DO_PR_PUBKEY_FLAG -e DO_UNI_ACT_DO_EFUSES_FLAG pr_rootkey.jam
//Чтобы запрограммировать ключ шифрования AES CCERT в BBRAM quartus_jli -c 1 -a CCERT_PROGRAM EncKeyBBRAM.jam
//Для программирования ключа шифрования AES CCERT в физических eFuses quartus_jli -c 1 -a CCERT_PROGRAM -e DO_UNI_ACT_DO_EFUSES_FLAG EncKeyEFuse.jam
Информация, связанная с данной AN 425: Использование решения Jam STAPL из командной строки для программирования устройств

Руководство пользователя по безопасности устройств Intel Agilex® 7 46

Отправить отзыв

683823 | 2023.05.23 Отправить отзыв

Расширенные функции

5.1. Безопасная авторизация отладки
Чтобы включить безопасную авторизацию отладки, владельцу отладки необходимо сгенерировать пару ключей аутентификации и использовать программатор Intel Quartus Prime Pro для создания информации об устройстве. file для устройства, на котором выполняется отладочный образ:
quartus_pgm -c 1 -mjtag -o «ei;device_info.txt;AGFB014R24A» –dev_info
Владелец устройства использует инструмент quartus_sign или эталонную реализацию для добавления записи условного открытого ключа в цепочку подписи, предназначенную для операций отладки, с использованием открытого ключа от владельца отладки, необходимых авторизаций, текста информации об устройстве. fileи применимые дополнительные ограничения:
quartus_sign –family=agilex –operation=append_key –previous_pem=debug_chain_private.pem –previous_qky=debug_chain.qky –permission=0x6 –cancel=1 –dev_info=device_info.txt –restriction=”1,2,17,18″ –input_pem= debug_authorization_public_key.pem secure_debug_auth_chain.qky
Владелец устройства отправляет полную цепочку подписей обратно владельцу отладки, который использует цепочку подписей и свой закрытый ключ для подписи образа отладки:
quartus_sign –family=agilex –operation=sign –qky=secure_debug_auth_chain.qky –pem=debug_authorization_private_key.pem unsigned_debug_design.rbfauthorized_debug_design.rbf
Вы можете использовать команду quartus_pfg для проверки цепочки подписей каждого раздела этого подписанного потока битов безопасной отладки следующим образом:
quartus_pfg –check_integrityauthorized_debug_design.rbf
В выводе этой команды выводятся значения ограничений 1,2,17,18 условного открытого ключа, который использовался для генерации подписанного потока битов.
Владелец отладки может затем запрограммировать безопасно авторизованный дизайн отладки:
quartus_pgm -c 1 -mjtag -o «p;authorized_debug_design.rbf»
Владелец устройства может отозвать авторизацию безопасной отладки, отменив идентификатор явной отмены ключа, назначенный в цепочке подписей авторизации безопасной отладки.
5.2. Сертификаты отладки HPS
Включение только авторизованного доступа к порту доступа к отладке HPS (DAP) через JTAG интерфейс требует нескольких шагов:

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

Сертификат ISO 9001: 2015

5. Расширенные функции 683823 | 2023.05.23
1. Щелкните меню «Назначения» программного обеспечения Intel Quartus Prime и выберите вкладку «Устройство устройства и конфигурация контактов».
2. На вкладке «Конфигурация» включите порт доступа к отладке HPS (DAP), выбрав «Пины HPS» или «Пины SDM» в раскрывающемся меню и убедившись, что флажок «Разрешить отладку HPS без сертификатов» не установлен.
Рис. 14. Укажите контакты HPS или SDM для HPS DAP.

Порт доступа к отладке HPS (DAP)
Альтернативно вы можете установить назначение ниже в настройках Quartus Prime .qsf. file:
set_global_assignment -name HPS_DAP_SPLIT_MODE «ПИНЫ SDM»
3. Скомпилируйте и загрузите дизайн с этими настройками. 4. Создайте цепочку подписей с соответствующими разрешениями для подписи отладки HPS.
сертификат:
quartus_sign –family=agilex –operation=append_key –previous_pem=root_private.pem –previous_qky=root.qky –permission=0x8 –cancel=1 –input_pem=hps_debug_cert_public_key.pem hps_debug_cert_sign_chain.qky
5. Запросите неподписанный сертификат отладки HPS с устройства, на которое загружен проект отладки:
quartus_pgm -c 1 -mjtag -o «e;unsigned_hps_debug.cert;AGFB014R24A»
6. Подпишите неподписанный сертификат отладки HPS с помощью инструмента quartus_sign или эталонной реализации и цепочки подписей отладки HPS:
quartus_sign –family=agilex –operation=sign –qky=hps_debug_cert_sign_chain.qky –pem=hps_debug_cert_private_key.pem unsigned_hps_debug.cert Signed_hps_debug.cert

Руководство пользователя по безопасности устройств Intel Agilex® 7 48

Отправить отзыв

5. Расширенные функции 683823 | 2023.05.23
7. Отправьте подписанный сертификат отладки HPS обратно на устройство, чтобы разрешить доступ к порту доступа к отладке HPS (DAP):
quartus_pgm -c 1 -mjtag -o «p;signed_hps_debug.cert»
Сертификат отладки HPS действителен только с момента его создания до следующего включения и выключения устройства или до загрузки другого типа или версии встроенного ПО SDM. Вы должны сгенерировать, подписать и запрограммировать подписанный сертификат отладки HPS, а также выполнить все операции отладки перед выключением и включением устройства. Вы можете сделать недействительным подписанный сертификат отладки HPS, выключив и выключив устройство.
5.3. Аттестация платформы
Вы можете создать манифест ссылочной целостности (.rim). file с помощью программирования file инструмент-генератор:
quartus_pfg -c Signed_encrypted_top.rbf top_rim.rim
Выполните следующие действия, чтобы обеспечить аттестацию платформы в вашем проекте: 1. Используйте программатор Intel Quartus Prime Pro, чтобы настроить свое устройство с помощью
проект, для которого вы создали манифест ссылочной целостности. 2. Используйте средство проверки аттестации платформы, чтобы зарегистрировать устройство, передав команды
SDM через почтовый ящик SDM для создания сертификата идентификатора устройства и сертификата встроенного ПО при перезагрузке. 3. Используйте программатор Intel Quartus Prime Pro, чтобы изменить конфигурацию вашего устройства. 4. Используйте средство проверки аттестации платформы для подачи команд SDM для получения идентификатора устройства аттестации, встроенного ПО и псевдонимов сертификатов. 5. Используйте средство проверки аттестации, чтобы ввести команду почтового ящика SDM, чтобы получить свидетельство аттестации, и средство проверки проверит возвращенное свидетельство.
Вы можете реализовать собственную службу проверки с помощью команд почтового ящика SDM или использовать службу проверки аттестации платформы Intel. Для получения дополнительной информации о сервисном программном обеспечении для проверки аттестации платформы Intel, его доступности и документации обращайтесь в службу поддержки Intel.
Сопутствующая информация Рекомендации по подключению контактов семейства устройств Intel Agilex 7
5.4. Физический Анти-Тamper
Вы включаете физическую защитуampфункции, используя следующие шаги: 1. Выбор желаемой реакции на обнаруженную tampсобытие 2. Настройка желаемого tampметоды и параметры обнаружения 3. Включая анти-tampвключите IP в логику вашего проекта, чтобы помочь управлять защитой отamper
события

Отправить отзыв

Руководство пользователя по безопасности устройств Intel Agilex® 7 49

5. Расширенные функции 683823 | 2023.05.23
5.4.1. Анти-Тampэээ Ответы
Вы включаете физическую защитуampэ-э, выбрав ответ из списка Anti-tampОтвет: раскрывающийся список в разделе «Назначения устройства» «Параметры устройства и контактов» Security Anti-Tampэ-э, вкладка. По умолчанию анти-тampответ отключен. Пять категорий анти-тampответ доступен. Когда вы выбираете желаемый ответ, активируются параметры включения одного или нескольких методов обнаружения.
Рисунок 15. Доступные Анти-Тampэээ варианты ответа

Соответствующее назначение в настройках Quartus Prime .gsf file следующее:
set_global_assignment -name ANTI_TAMPER_RESPONSE «УСТРОЙСТВО УВЕДОМЛЕНИЯ БЛОКИРОВКА УСТРОЙСТВА И ОБНУЛЕНИЕ»
Когда вы включаете анти-tampВ ответ вы можете выбрать два доступных выделенных контакта ввода-вывода SDM для вывода сигнала.ampПроверьте обнаружение событий и состояние ответа с помощью окна «Назначения устройства» «Параметры устройства и контактов». Конфигурация «Параметры контактов».

Руководство пользователя по безопасности устройств Intel Agilex® 7 50

Отправить отзыв

5. Расширенные функции 683823 | 2023.05.23
Рисунок 16. Доступные выделенные контакты ввода-вывода SDM для Tampэ-э Обнаружение событий

Вы также можете сделать следующие назначения контактов в настройках: file: set_global_assignment -name USE_TAMPER_DETECT SDM_IO15 set_global_assignment -name ANTI_TAMPER_RESPONSE_FAILED SDM_IO16

5.4.2. Анти-Тampэ Обнаружение

Вы можете индивидуально включить частоту, температуру и громкость.tage особенности обнаружения SDM. Обнаружение FPGA зависит от включения Anti-Tamper Lite Intel FPGA IP в вашем дизайне.

Примечание:

Частота и громкость SDMtagэтampНовые методы обнаружения зависят от внутренних эталонов и измерительного оборудования, которые могут различаться в зависимости от устройства. Intel рекомендует охарактеризовать поведение tampнастройки обнаружения.

Отправить отзыв

Руководство пользователя по безопасности устройств Intel Agilex® 7 51

5. Расширенные функции 683823 | 2023.05.23
Частота тampОбнаружение er работает на источнике синхронизации конфигурации. Чтобы включить частоту tampВ случае обнаружения необходимо указать параметр, отличный от «Внутренний генератор», в раскрывающемся списке «Источник тактовой частоты конфигурации» на вкладке «Назначения устройства» и «Параметры контактов» «Общие». Вы должны убедиться, что флажок «Запустить конфигурацию ЦП от внутреннего генератора» включен, прежде чем включать частоту t.ampэ-э обнаружение. Рисунок 17. Настройка SDM на внутренний генератор
Чтобы включить частоту tampПри обнаружении выберите Включить частоту tampустановите флажок «Обнаружение» и выберите нужную частоту.ampдальность обнаружения из раскрывающегося меню. Рисунок 18. Включение частоты Tampэ Обнаружение

Руководство пользователя по безопасности устройств Intel Agilex® 7 52

Отправить отзыв

5. Расширенные функции 683823 | 2023.05.23
Альтернативно вы можете включить частоту T.amper Обнаружение путем внесения следующих изменений в настройки Quartus Prime .qsf file:
set_global_assignment -name AUTO_RESTART_CONFIGURATION OFF set_global_assignment -name DEVICE_INITIALIZATION_CLOCK OSC_CLK_1_100MHZ set_global_assignment -name RUN_CONFIG_CPU_FROM_INT_OSC ON set_global_assignment -name ENABLE_FREQUENCY_TAMPER_DETECTION ON set_global_assignment -name FREQUENCY_TAMPER_DETECTION_RANGE 35
Чтобы включить температуру tampПри обнаружении выберите Включить температуру t.ampустановите флажок обнаружения ошибки и выберите желаемые верхнюю и нижнюю границы температуры в соответствующих полях. Верхняя и нижняя границы по умолчанию заполняются соответствующим диапазоном температур для устройства, выбранного в проекте.
Чтобы включить громкостьtagэтampВ случае обнаружения вы выбираете один или оба параметра Enable VCCL vol.tagэтampобнаружение ошибки или включить VCCL_SDM vol.tagэтamper обнаружение флажков и выберите нужный Voltagэтampэ-э, процент срабатывания триггера обнаруженияtagе в соответствующем поле.
Рисунок 19. Включение Voltagе Тampэ Обнаружение

Альтернативно вы можете включить Vol.tagе Тamper Обнаружение путем указания следующих назначений в файле .qsf file:
set_global_assignment -name ENABLE_TEMPERATURE_TAMPER_DETECTION ON set_global_assignment -name TEMPERATURE_TAMPER_UPPER_BOUND 100 set_global_assignment -name ENABLE_VCCL_VOLTAGЕ_ТAMPER_DETECTION ON set_global_assignment -name ENABLE_VCCL_SDM_VOLTAGЕ_ТAMPER_DETECTION ВКЛ.
5.4.3. Анти-Тamper Lite Intel FPGA IP
Анти-Тamper Lite Intel FPGA IP, доступный в каталоге IP в программном обеспечении Intel Quartus Prime Pro Edition, облегчает двустороннюю связь между вашим проектом и SDM дляampэээ события.

Отправить отзыв

Руководство пользователя по безопасности устройств Intel Agilex® 7 53

Рисунок 20. Анти-Тamper Lite Intel FPGA IP

5. Расширенные функции 683823 | 2023.05.23

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

Таблица 5.

Анти-Тamper Lite Intel FPGA IP-сигналы ввода-вывода

Имя сигнала

Направление

Описание

gpo_sdm_at_event gpi_fpga_at_event

Выход Вход

Сигнал SDM на логику структуры FPGA о том, что SDM обнаружил tampэээ событие. Логика FPGA имеет примерно 5 мс для выполнения любой желаемой очистки и ответа на SDM через gpi_fpga_at_response_done и gpi_fpga_at_zeroization_done. SDM продолжается с tamper ответные действия, когда утверждается gpi_fpga_at_response_done или после того, как ответ не получен в течение отведенного времени.
Прерывание FPGA для SDM, которое вы разработалиampСхема обнаружения обнаружила tamper событие и SDM tampдолжен сработать ответ.

gpi_fpga_at_response_done

Вход

Прерывание FPGA в SDM о том, что логика FPGA выполнила требуемую очистку.

gpi_fpga_at_zeroization_d один

Вход

FPGA сигнализирует SDM о том, что логика FPGA завершила необходимое обнуление проектных данных. Этот сигналampсветодиод, когда утверждается gpi_fpga_at_response_done.

5.4.3.1. Информация о выпуске

Номер схемы управления версиями IP (XYZ) меняется от одной версии программного обеспечения к другой. Изменение в:
· X указывает на основную редакцию IP. Если вы обновляете программное обеспечение Intel Quartus Prime, вы должны заново сгенерировать IP-адрес.
· Y указывает, что IP включает новые функции. Восстановите свой IP-адрес, чтобы включить эти новые функции.
· Z означает, что IP содержит незначительные изменения. Восстановите свой IP-адрес, чтобы включить эти изменения.

Таблица 6.

Анти-ТampИнформация о выпуске er Lite Intel FPGA IP

IP-версия

Элемент

Описание 20.1.0

Версия Intel Quartus Prime

21.2

Дата выпуска

2021.06.21

Руководство пользователя по безопасности устройств Intel Agilex® 7 54

Отправить отзыв

5. Расширенные функции 683823 | 2023.05.23
5.5. Использование функций безопасности проекта с удаленным обновлением системы
Удаленное обновление системы (RSU) — это функция FPGA Intel Agilex 7, которая помогает обновлять конфигурацию. files надежным способом. RSU совместим с проектными функциями безопасности, такими как аутентификация, совместная подпись встроенного ПО и шифрование битового потока, поскольку RSU не зависит от проектного содержимого битовых потоков конфигурации.
Создание образов RSU с помощью .sof Files
Если вы храните закрытые ключи на своем локальном fileсистеме вы можете создавать образы RSU с функциями безопасности, используя упрощенный процесс с .sof. files в качестве входных данных. Для создания изображений RSU с расширением .sof file, вы можете следовать инструкциям в разделе «Создание образа удаленного обновления системы». Files Использование программирования File Генератор руководства пользователя по настройке Intel Agilex 7. Для каждого .sof file указанный на входе FileНа вкладке s нажмите кнопку «Свойства…» и укажите соответствующие настройки и ключи для средств подписи и шифрования. Программирование file Инструмент-генератор автоматически подписывает и шифрует заводские образы и образы приложений при создании программирования RSU. files.
В качестве альтернативы, если вы храните закрытые ключи в HSM, вы должны использовать инструмент quartus_sign и, следовательно, использовать .rbf. fileс. В оставшейся части этого раздела подробно описаны изменения в процессе создания изображений RSU с помощью .rbf. files в качестве входных данных. Вы должны зашифровать и подписать формат .rbf. files до выбора их в качестве входных данных files для изображений RSU; однако информация о загрузке RSU file не должен быть зашифрован, а должен быть только подписан. Программирование File Генератор не поддерживает изменение свойств формата .rbf. files.
Следующий примерampфайлы демонстрируют необходимые изменения в командах из раздела «Создание образа обновления удаленной системы». Files Использование программирования File Генератор руководства пользователя по настройке Intel Agilex 7.
Создание исходного образа RSU с использованием .rbf Files: Модификация команды
Из создания исходного образа RSU с использованием .rbf Files, измените команды на шаге 1., чтобы включить необходимые функции безопасности проекта, используя инструкции из предыдущих разделов этого документа.
Напримерampле, ты бы указал подписанную прошивку file если вы использовали совместное подписание прошивки, используйте инструмент шифрования Quartus для шифрования каждого .rbf. fileи, наконец, используйте инструмент quartus_sign для подписи каждого file.
На шаге 2, если вы включили совместное подписание прошивки, необходимо использовать дополнительную опцию при создании загрузочного .rbf из заводского образа. file:
quartus_pfg -c Factory.sof boot.rbf -o rsu_boot=ON -o fw_source=signed_agilex.zip
После создания загрузочной информации .rbf fileиспользуйте инструмент quartus_sign, чтобы подписать файл .rbf. file. Вы не должны шифровать загрузочную информацию .rbf. file.

Отправить отзыв

Руководство пользователя по безопасности устройств Intel Agilex® 7 55

5. Расширенные функции 683823 | 2023.05.23
Генерация образа приложения: изменение команды
Чтобы создать образ приложения с функциями безопасности проекта, вы измените команду в разделе «Создание образа приложения», чтобы использовать файл .rbf с включенными функциями безопасности проекта, включая совместно подписанное встроенное ПО, если требуется, вместо исходного файла .sof приложения. file:
quartus_pfg -c cosigned_fw_signed_encrypted_application.rbf secure_rsu_application.rpd -o mode=ASX4 -o битовая замена=ON
Создание образа заводского обновления: изменение команды
После создания загрузочной информации .rbf fileвы используете инструмент quartus_sign для подписи файла .rbf. file. Вы не должны шифровать загрузочную информацию .rbf. file.
Чтобы создать образ заводского обновления RSU, вы измените команду из раздела «Создание образа заводского обновления», чтобы использовать файл .rbf. file с включенными функциями безопасности дизайна и добавить возможность указать использование совместно подписанной прошивки:
quartus_pfg -c cosigned_fw_signed_encrypted_factory.rbf secure_rsu_factory_update.rpd -o mode=ASX4 -o bitswap=ON -o rsu_upgrade=ON -o fw_source=signed_agilex.zip
Сопутствующая информация Руководство пользователя по настройке Intel Agilex 7
5.6. Криптографические службы SDM
SDM на устройствах Intel Agilex 7 предоставляет криптографические услуги, которые логика структуры FPGA или HPS может запросить через соответствующий интерфейс почтового ящика SDM. Дополнительную информацию о командах почтового ящика и форматах данных для всех криптографических служб SDM см. в Приложении B Руководства пользователя по методологии безопасности для FPGA и структурированных ASIC Intel.
Чтобы получить доступ к интерфейсу почтового ящика SDM к логике структуры FPGA для криптографических служб SDM, необходимо создать экземпляр IP-адреса Intel FPGA клиента почтового ящика в своем проекте.
Справочный код для доступа к интерфейсу почтового ящика SDM из HPS включен в код ATF и Linux, предоставленный Intel.
Сопутствующая информация Клиент почтового ящика Руководство пользователя Intel FPGA IP
5.6.1. Авторизованная загрузка поставщика
Intel предоставляет эталонную реализацию программного обеспечения HPS, которая использует авторизованную поставщиком функцию загрузки для аутентификации загрузочного программного обеспечения HPS с первой секунды.tage загрузчик через ядро ​​Linux.
Сопутствующая информация: демонстрационная конструкция безопасной загрузки процессора Intel Agilex 7 SoC

Руководство пользователя по безопасности устройств Intel Agilex® 7 56

Отправить отзыв

5. Расширенные функции 683823 | 2023.05.23
5.6.2. Служба защищенных объектов данных
Вы отправляете команды через почтовый ящик SDM для шифрования и дешифрования объектов SDOS. Вы можете использовать функцию SDOS после предоставления корневого ключа SDOS.
Сопутствующая информация. Предоставление корневого ключа службы объекта защищенных данных на стр. 30.
5.6.3. Криптографические примитивные службы SDM
Вы отправляете команды через почтовый ящик SDM, чтобы инициировать операции службы криптографических примитивов SDM. Некоторые криптографические примитивные службы требуют, чтобы в SDM и обратно передавалось больше данных, чем может принять интерфейс почтового ящика. В этих случаях команда формата изменяется, предоставляя указатели на данные в памяти. Кроме того, необходимо изменить создание экземпляра клиента почтового ящика Intel FPGA IP, чтобы использовать службы криптографических примитивов SDM из логики структуры FPGA. Кроме того, необходимо установить для параметра Enable Crypto Service значение 1 и подключить вновь открытый интерфейс инициатора AXI к памяти в вашем проекте.
Рис. 21. Включение криптографических служб SDM в клиенте почтовых ящиков Intel FPGA IP.

5.7. Настройки безопасности битового потока (FM/S10)
Параметры безопасности битового потока FPGA — это набор политик, которые ограничивают указанную функцию или режим работы в течение определенного периода.
Параметры безопасности Bitstream состоят из флагов, которые вы устанавливаете в программном обеспечении Intel Quartus Prime Pro Edition. Эти флаги автоматически копируются в битовые потоки конфигурации.
Вы можете постоянно применять параметры безопасности на устройстве, используя соответствующий параметр безопасности eFuse.
Чтобы использовать любые параметры безопасности в битовом потоке конфигурации или eFuses устройства, необходимо включить функцию аутентификации.

Отправить отзыв

Руководство пользователя по безопасности устройств Intel Agilex® 7 57

5. Расширенные функции 683823 | 2023.05.23
5.7.1. Выбор и включение параметров безопасности
Чтобы выбрать и включить параметры безопасности, выполните следующие действия: В меню «Назначения» выберите «Устройство» и «Параметры контактов». Безопасность Дополнительные параметры… Рисунок 22. Выбор и включение параметров безопасности

Затем выберите значения из раскрывающихся списков для параметров безопасности, которые вы хотите включить, как показано в следующем примере.ampль:
Рисунок 23. Выбор значений для параметров безопасности

Руководство пользователя по безопасности устройств Intel Agilex® 7 58

Отправить отзыв

5. Расширенные функции 683823 | 2023.05.23
Ниже приведены соответствующие изменения в файле Quartus Prime Settings .qsf. file:
set_global_assignment -name SECU_OPTION_DISABLE_JTAG «ON CHECK» set_global_assignment -name SECU_OPTION_FORCE_ENCRYPTION_KEY_UPDATE «ON STICKY» set_global_assignment -name SECU_OPTION_FORCE_SDM_CLOCK_TO_INT_OSC ON set_global_assignment -name SECU_OPTION_DISABLE_VIRTUAL_EFUSES ON set_global_assignment -name SECU_OPTION_LOC K_SECURITY_EFUSES ON set_global_assignment -name SECU_OPTION_DISABLE_HPS_DEBUG ON set_global_assignment -name SECU_OPTION_DISABLE_ENCRYPTION_KEY_IN_EFUSES ON set_global_assignment -name SECU_OPTION_DISABLE_ENCRYPTION_KEY_IN_EFUSES ON set_global_assignment -name SECU_OPTION_DISABLE_ ENCRYPTION_KEY_IN_EFUSES ON set_global_assignment -name SECU_OPTION_DISABLE_ENCRYPTION_KEY_IN_EFUSES ON set_global_assignment -name SECU_OPTION_DISABLE_ENCRYPTION_KEY_IN_BBRAM ON set_global_assignment -name SECU_OPTION_DISABLE_PUF_WRAPPED_ENCRYPTION_KEY ON

Отправить отзыв

Руководство пользователя по безопасности устройств Intel Agilex® 7 59

683823 | 2023.05.23 Отправить отзыв

Поиск неисправностей

В этой главе описаны распространенные ошибки и предупреждающие сообщения, с которыми вы можете столкнуться при попытке использовать функции безопасности устройства, а также меры по их устранению.
6.1. Использование команд Quartus при ошибке среды Windows
Ошибка quartus_pgm: команда не найдена Описание Эта ошибка отображается при попытке использовать команды Quartus в оболочке NIOS II в среде Windows с использованием WSL. Решение. Эта команда работает в среде Linux; Для хостов Windows используйте следующую команду: quartus_pgm.exe -h Аналогично примените тот же синтаксис к другим командам Quartus Prime, таким как quartus_pfg, quartus_sign, quartus_encrypt и другим командам.

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

Сертификат ISO 9001: 2015

6. Устранение неполадок 683823 | 2023.05.23

6.2. Генерация предупреждения о закрытом ключе

Предупреждение:

Указанный пароль считается небезопасным. Intel рекомендует использовать пароль длиной не менее 13 символов. Рекомендуется изменить пароль с помощью исполняемого файла OpenSSL.

openssl ec -in -out -aes256

Описание
Это предупреждение связано с надежностью пароля и отображается при попытке сгенерировать закрытый ключ с помощью следующих команд:

quartus_sign –family=agilex –operation=make_private_pem –curve=secp3841 root.pem

Решение. Используйте исполняемый файл openssl, чтобы указать более длинный и, следовательно, более надежный пароль.

Отправить отзыв

Руководство пользователя по безопасности устройств Intel Agilex® 7 61

6. Устранение неполадок 683823 | 2023.05.23
6.3. Добавление ключа подписи к ошибке проекта Quartus
Ошибка …File содержит информацию о корневом ключе…
Описание
После добавления ключа подписи .qky file в проект Quartus нужно пересобрать .sof file. Когда вы добавите этот восстановленный .sof file к выбранному устройству с помощью Quartus Programmer, следующее сообщение об ошибке указывает на то, что file содержит информацию о корневом ключе:
Не удалось добавить <file-имя-путь> к Программисту. file содержит информацию о корневом ключе (.qky). Однако программатор не поддерживает функцию подписи битового потока. Вы можете использовать Программирование File Генератор для преобразования file к подписанному необработанному двоичному файлу file (.rbf) для настройки.
Разрешение
Используйте программирование Quartus file генератор для преобразования file в подписанный необработанный двоичный файл File .rbf для конфигурации.
Дополнительная информация Битовый поток конфигурации подписи с помощью команды quartus_sign на стр. 13

Руководство пользователя по безопасности устройств Intel Agilex® 7 62

Отправить отзыв

6. Устранение неполадок 683823 | 2023.05.23
6.4. Генерация Quartus Prime Программирование File было неудачно
Ошибка
Ошибка (20353): X открытого ключа из QKY не совпадает с закрытым ключом из PEM. file.
Ошибка (20352): не удалось подписать битовый поток с помощью скрипта Python agilex_sign.py.
Ошибка: программирование Quartus Prime File Генератор вышел из строя.
Описание Если вы попытаетесь подписать битовый поток конфигурации, используя неверный закрытый ключ .pem file или .pem file который не соответствует добавленному в проект .qky, отображаются указанные выше распространенные ошибки. Решение. Убедитесь, что вы используете правильный закрытый ключ .pem для подписи битового потока.

Отправить отзыв

Руководство пользователя по безопасности устройств Intel Agilex® 7 63

6. Устранение неполадок 683823 | 2023.05.23
6.5. Неизвестные ошибки аргументов
Ошибка
Ошибка (23028): Неизвестный аргумент «ûc». Обратитесь к –help за юридическими аргументами.
Ошибка (213008): Строка параметра программирования «ûp» недопустима. Обратитесь к –help, чтобы узнать о легальных форматах опций программирования.
Описание Если вы скопируете и вставите параметры командной строки из PDF-файла file в оболочке Windows NIOS II вы можете столкнуться с ошибками неизвестного аргумента, как показано выше. Решение. В таких случаях вы можете вводить команды вручную, а не вставлять их из буфера обмена.

Руководство пользователя по безопасности устройств Intel Agilex® 7 64

Отправить отзыв

6. Устранение неполадок 683823 | 2023.05.23
6.6. Ошибка отключения опции шифрования битового потока
Ошибка
Невозможно завершить шифрование для file design .sof, потому что он был скомпилирован с отключенной опцией шифрования битового потока.
Описание Если вы попытаетесь зашифровать битовый поток через графический интерфейс или командную строку после компиляции проекта с отключенной опцией шифрования битового потока, Quartus отклонит команду, как показано выше.
Решение. Убедитесь, что вы компилируете проект с включенной опцией шифрования битового потока либо через графический интерфейс пользователя, либо через командную строку. Чтобы включить эту опцию в графическом интерфейсе, необходимо установить флажок для этой опции.

Отправить отзыв

Руководство пользователя по безопасности устройств Intel Agilex® 7 65

6. Устранение неполадок 683823 | 2023.05.23
6.7. Указание правильного пути к ключу
Ошибка
Ошибка (19516): обнаружено программирование. File Ошибка настроек генератора: невозможно найти ключ_file’. Убедитесь, что file находится в ожидаемом месте или обновите файл settings.sec.
Ошибка (19516): обнаружено программирование. File Ошибка настроек генератора: невозможно найти ключ_file’. Убедитесь, что file находится в ожидаемом месте, или обновите настройку.
Описание
Если вы используете ключи, хранящиеся на file системе вам необходимо убедиться, что они указывают правильный путь для ключей, используемых для шифрования и подписи битового потока. Если программирование File Генератор не может определить правильный путь, отображаются приведенные выше сообщения об ошибках.
Разрешение
См. настройки Quartus Prime .qsf. file чтобы найти правильные пути для ключей. Убедитесь, что вы используете относительные пути вместо абсолютных.

Руководство пользователя по безопасности устройств Intel Agilex® 7 66

Отправить отзыв

6. Устранение неполадок 683823 | 2023.05.23
6.8. Использование неподдерживаемого вывода File Тип
Ошибка
quartus_pfg -c design.sof выход_file.ebf -o Finalize_operation=ON -o qek_file=ae.qek -o Signing=ON -o pem_file=sign_private.pem
Ошибка (19511): Неподдерживаемый вывод. file тип (эбф). Используйте опцию «-l» или «-list», чтобы отобразить поддерживаемые file информация о типе.
Описание При использовании программирования Quartus File Генератор для генерации зашифрованного и подписанного битового потока конфигурации. Вы можете увидеть вышеуказанную ошибку, если неподдерживаемый вывод file тип указан. Решение. Используйте параметр -l или –list, чтобы просмотреть список поддерживаемых file типы.

Отправить отзыв

Руководство пользователя по безопасности устройств Intel Agilex® 7 67

683823 | 2023.05.23 Отправить отзыв
7. Архив руководства пользователя по безопасности устройств Intel Agilex 7
Последние и предыдущие версии данного руководства пользователя см. в Руководстве пользователя Intel Agilex 7 Device Security. Если версия IP или программного обеспечения не указана, применяется руководство пользователя для предыдущей версии IP или программного обеспечения.

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

Сертификат ISO 9001: 2015

683823 | 2023.05.23 Отправить отзыв

8. История изменений руководства пользователя Intel Agilex 7 Device Security.

Версия документа 2023.05.23
2022.11.22 2022.04.04 2022.01.20
2021.11.09

Документы/Ресурсы

Безопасность устройств Intel Agilex 7 [pdf] Руководство пользователя
Безопасность устройства Agilex 7, Agilex 7, Безопасность устройства, Безопасность

Ссылки

Оставьте комментарий

Ваш адрес электронной почты не будет опубликован. Обязательные поля отмечены *