Криптографическая платформа OpenBSD
![]() | Эта статья может быть слишком технической для понимания большинства читателей . ( Июль 2022 г. ) |
OpenBSD Cryptographic Framework ( OCF ) — это уровень виртуализации служб для единообразного управления криптографическим оборудованием операционной системы . Это часть проекта OpenBSD , включенная в операционную систему начиная с OpenBSD 2.8 (декабрь 2000 г.). Как и другие проекты OpenBSD, такие как OpenSSH , он был портирован на другие системы на базе Berkeley Unix, такие как FreeBSD и NetBSD , а также на Solaris и Linux . [1] [2] Один из портов Linux поддерживается корпорацией Intel для использования с ее собственным криптографическим программным и аппаратным обеспечением для обеспечения аппаратно-ускоренного SSL- шифрования для HTTP-сервера Apache с открытым исходным кодом . [3]
Фон
[ редактировать ]Криптография требует больших вычислительных ресурсов и используется во многих различных контекстах. Реализации программного обеспечения часто служат узким местом для потока информации или увеличивают задержку в сети . Специальное оборудование, такое как криптографические ускорители, может смягчить проблему узких мест за счет введения параллелизма . Определенные виды аппаратного обеспечения, например, аппаратные генераторы случайных чисел , также могут генерировать случайность более надежно, чем псевдослучайный программный алгоритм , используя энтропию естественных событий. [ нужна ссылка ]
В отличие от графических приложений, таких как игры и обработка фильмов, где аналогичные аппаратные ускорители широко используются и имеют надежную поддержку операционной системы, использование аппаратного обеспечения в криптографии получило относительно низкое распространение. [ нужна ссылка ] К концу 1990-х годов возникла потребность в едином уровне операционной системы, который был бы посредником между криптографическим оборудованием и прикладным программным обеспечением, которое его использовало. Отсутствие этого уровня привело к созданию приложений, которые были жестко запрограммированы для работы с одним или очень небольшим набором криптографических ускорителей.
Проект OpenBSD, имеющий опыт интеграции надежной, тщательно проверенной криптографии в ядро своей операционной системы, создал основу для обеспечения аппаратного криптографического ускорения в качестве службы операционной системы.
/dev/крипто
[ редактировать ]Поддержка уровня приложения осуществляется через псевдоустройство. /dev/crypto , который обеспечивает доступ к драйверам оборудования через стандартный интерфейс ioctl . Это упрощает написание приложений и устраняет необходимость для программиста приложения понимать детали работы фактического оборудования, которое будет использоваться. [4] /dev/crypto был удален в OpenBSD 5.7 и заменен на crypto_ набор системных вызовов .
Последствия для других подсистем
[ редактировать ]Реализация OpenBSD IPsec , протокола шифрования на уровне пакетов, была изменена таким образом, чтобы пакеты можно было декодировать в пакетном режиме, что повышает пропускную способность . Одним из объяснений этого является максимизация эффективности использования оборудования (большие пакеты уменьшают накладные расходы на передачу по шине), но на практике разработчики IPsec обнаружили, что эта стратегия повышает эффективность даже программных реализаций.
Многие концентраторы встроенного ПО Intel на материнских платах i386 оснащены аппаратным генератором случайных чисел, и там, где это возможно, эта функция используется для обеспечения энтропии в IPsec.
Поскольку OpenSSL использует OCF, системы с оборудованием, поддерживающим криптографические протоколы RSA , DH или DSA, будут автоматически использовать оборудование без какой-либо модификации программного обеспечения.
Обвинения в бэкдоре расследованы
[ редактировать ]11 декабря 2010 года бывший государственный подрядчик по имени Грегори Перри отправил электронное письмо руководителю проекта OpenBSD Тео де Раадту, утверждая, что 10 лет назад ФБР заплатило некоторым бывшим разработчикам OpenBSD за то, что они поставили под угрозу безопасность системы, вставив «ряд бэкдоров». и механизмы утечки ключей побочного канала в OCF». Тео де Раадт обнародовал электронное письмо 14 декабря, переслав его в список рассылки openbsd-tech, и предложил провести аудит кодовой базы IPsec . [5] [6] Де Раадт отреагировал на отчет скептически и предложил всем разработчикам самостоятельно просмотреть соответствующий код. В последующие недели ошибки были исправлены, но никаких признаков существования бэкдоров обнаружено не было. [7]
Продукт с аналогичным названием Solaris
[ редактировать ]Oracle Собственная операционная система Solaris (первоначально разработанная Sun ) включает в себя несвязанный продукт под названием Solaris Cryptographic Framework, систему подключаемых модулей для криптографических алгоритмов и аппаратного обеспечения.
См. также
[ редактировать ]Ссылки
[ редактировать ]- ^ Linux-cryptodev. Архивировано 20 марта 2012 г. на Wayback Machine.
- ^ Керомитис, Райт, де Раадт и Бернсайд, Криптография как служба операционной системы: практический пример , Транзакции ACM в вычислительных системах, том 23, № 1, февраль 2006 г., страницы 1-38, PDF
- ^ Корпорация Intel, 2008, OpenSSL и Apache – Программное обеспечение
- ^ crypto(4) в руководстве OpenBSD
- ^ де Раадт, Тео (14 декабря 2010 г.). «Обвинения относительно OpenBSD IPSEC» . openbsd-tech (список рассылки).
- ^ Холверда, Том (14 декабря 2010 г.), «ФБР добавило секретные бэкдоры в OpenBSD IPSEC» , OSNews , получено 13 декабря 2011 г.
- ^ Райан, Пол (23 декабря 2010 г.), «Аудит кода OpenBSD выявляет ошибки, но не обнаруживает бэкдора» , Ars Technica , Condé Nast Digital , получено 9 января 2011 г.
Внешние ссылки
[ редактировать ]- Криптография в OpenBSD , обзорный документ, предоставленный проектом OpenBSD.
- Проект OCF Linux .