Представлен (https://keystone-enclave.org/#News) первый выпуск проекта Keystone (https://keystone-enclave.org/), в рамках которого подготовлен набор спецификаций и программных компонентов для встраивания функциональности защищённых анклавов в чипы на базе архитектуры RISC-V. Наработки проекта распространяются (https://github.com/keystone-enclave/) под лицензией BSD. Проект развивается исследовательской группой из Калифорнийского университета в Беркли и Массачусетского технологического института.
Анклав (TEE (https://en.wikipedia.org/wiki/Trusted_execution_environment)... Execution Environment) подразумевает предоставление процессором специальной изолированной области, которая позволяет вынести часть функциональности приложений и операционной системы в отдельное окружение, содержимое памяти и выполняемый код в котором недоступны из основной системы, независимо от уровня имеющихся привилегий. Для своего выполнения в анклав могут перемещаться реализации различных алгоритмов шифрования, функции обработки закрытых ключей и паролей, процедуры аутентификации, код для работы с конфиденциальными данными.
В случае компрометации основной системы злоумышленник не сможет определить хранимую в анклаве информацию и будет ограничен лишь внешним программным интерфейсом. Применение аппаратных анклавов может рассматриваться как альтернатива применению для защиты вычислений методов на основе гомоморфного (https://ru.wikipedia.org/wiki/%D0%93%D0%... шифрования или протоколов конфиденциального вычисления (https://ru.wikipedia.org/wiki/%D0%9F%D1%... но в отличие от данных технологий анклав практически не влияет на производительность вычислений с конфиденциальными данными и существенно упрощает разработку.
Keystone может рассматриваться как открытая альтернатива таким решениям, как Intel SGX (Software Guard Extensions), ARM TrustZone и AMD PSP (Platform Security Processor). Достоинством предлагаемого открытого решения является полная доступность для аудита на всех уровнях, в отличие от вышеупомянутых решений, полагающихся на принцип
"security by obscurity (https://ru.wikipedia.org/wiki/%D0%91%D0%... (безопасность через скрытие внутренней реализации). Как показала практика, подход основанный на ограничении не оградил Intel (https://www.opennet.ru/opennews/art.shtml?num=47597) SGX (https://www.opennet.ru/opennews/art.shtml?num=48173), ARM (https://www.opennet.ru/opennews/art.shtml?num=46911) TrustZone (https://www.opennet.ru/opennews/art.shtml?num=44718) и AMD (https://www.opennet.ru/opennews/art.shtml?num=48302) PSP (https://www.opennet.ru/opennews/art.shtml?num=47866) от критических уязвимостей.
Разработанные в рамках проекта Keystone спецификации позволяют интегрировать функциональность анклава в любой процессор на базе архитектуры RISC-V с минимальным числом вносимых изменений, обеспечивающих аппаратную изоляцию. Изменения касаются обеспечения физической изоляции доступа к памяти и изоляции таблиц страниц памяти. Для защиты от физических атак (анализ чипов памяти) содержимое памяти анклава и передаваемые по шине адреса шифруются. Для защиты от атак по сторонним каналам применяется полностью изолированная архитектура.
Для разработки приложений, выносящих часть функциональности и данных в анклав, предлагается специальный SDK (https://github.com/keystone-enclave/keystone-sdk). Проектом также развивается модифицированный вариант ядра Linux (https://github.com/keystone-enclave/riscv-linux), минимальный runtime (https://github.com/keystone-enclave/keystone-runtime), загрузчик (https://github.com/keystone-enclave/sanctum_bootloader) с поддержкой верификации загружаемого кода по цифровой подписи и специальное программное окружение (https://github.com/keystone-enclave/busybear-linux), формирующие операционную систему анклава, набор утилит для верификации окружений и генерации цифровых подписей. Для тестирования разрабатываемых анклавов предоставляются эмулятор (https://github.com/keystone-enclave/keystone) на базе QEMU и аппаратный симулятор (https://github.com/keystone-enclave/keystone-firesim) на базе FireSim, использующий платы FPGA.
URL: https://keystone-enclave.org/#News
Новость: https://www.opennet.ru/opennews/art.shtml?num=49760