Слияние кода завершено, страница обновится автоматически
**Intel Multi-Buffer Crypto for IPsec Library** Март 2018 г. Содержание: — Обзор; — Процессорные расширения; — Рекомендации; — Содержимое пакета; — Компиляция; — Установка; — Правовая оговорка. Обзор Intel Multi-Buffer Crypto for IPsec Library представляет собой оптимизированные программные реализации основных криптографических процессов для IPsec, которые обеспечивают лучшую в отрасли производительность на различных процессорах Intel(R). Для получения информации о том, как создать и использовать эту библиотеку, см. «Белую книгу» Intel: «Быстрые многобуферные реализации IPsec на процессорах архитектуры Intel». Авторы: Джим Гилфорд, Шон Галли и др. Самый простой способ найти её — это поискать в интернете по названию и «Белой книге» Intel. Таблица 1. Список поддерживаемых алгоритмов шифрования и их реализаций. | | Реализация | | :-- |:--:| | Шифрование | x86_64 | SSE | AVX | AVX2 | AVX512 | VAES(6)| | --- | --- | --- | --- | --- | --- | --- | | AES128-GCM | N | Y by8 | Y by8 | Y by8 | Y by8 | Y x4by8| | AES192-GCM | N | Y by8 | Y by8 | Y by8 | Y by8 | Y x4by8| | AES256-GCM | N | Y by8 | Y by8 | Y by8 | Y by8 | Y x4by8| | AES128-CCM | Y(1) | Y by4 | Y by8 | N | N | N | | AES128-CBC | N | Y(2) | Y(4) | N | N | N | | AES192-CBC | N | Y(2) | Y(4) | N | N | N | | AES256-CBC | N | Y(2) | Y(4) | N | N | N | | AES128-CTR | N | Y by4 | Y by8 | N | N | N | | AES192-CTR | N | Y by4 | Y by8 | N | N | N | | AES256-CTR | N | Y by4 | Y by8 | N | N | N | | NULL | Y | N | N | N | N | N | | AES128-DOCSIS | N | Y(3) | Y(5) | N | N | N | | DES-DOCSIS | Y | N | N | N | Y x16 | N | | 3DES | Y | N | N | N | Y x16 | N | | DES | Y | N | N | N | Y x16 | N | Примечания: (1) — код планировщика AES128-CCM реализован на C в настоящее время. Базовый алгоритм AES128-CTR использует SSE и AVX. (2,3) — расшифровка by4, шифрование x4. (4,5) — расшифровка by8, шифрование x8. (6) — AVX512 плюс расширения VAES и VPCLMULQDQ. Легенда: byY — один буфер Y блоков за раз. xY — Y буферов одновременно. В качестве примера того, как читать таблицы 1 и 2, если кто-то использует интерфейс AVX512 для выполнения шифрования AES128-CBC, то нет собственной реализации AVX512 для этого шифра. В таком случае библиотека использует наилучшую доступную реализацию, которая является AVX для AES128-CBC. Таблица 2. Список поддерживаемых алгоритмов целостности и их реализаций. +-------------------------------------------------------------------------+ | | Implementation | | Integrity +-----------------------------------------------------| | | x86_64 | SSE | AVX | AVX2 | AVX512 | VAES(4)| |-------------------+--------+--------+--------+--------+--------+--------| | AES-XCBC-96 | N | Y x4 | Y x8 | N | N | N | | HMAC-MD5-96 | Y(1) | Y x4x2 | Y x4x2 | Y x8x2 | N | N | | HMAC-SHA1-96 | N | Y(3)x4 | Y x4 | Y x8 | Y x16 | N | | HMAC-SHA2-224_112 | N | Y(3)x4 | Y x4 | Y x8 | Y x16 | N | | HMAC-SHA2-256_128 | N | Y(3)x4 | Y x4 | Y x8 | Y x16 | N | | HMC-SHA2-384_192 | N | Y x2 | Y x2 | Y x4 | Y x8 | N | | HMC-SHA2-512_256 | N | Y x2 | Y x2 | Y x4 | Y x8 | N | | AES128-GMAC | N *Примечание: в тексте запроса могут быть неточности перевода.* **Перевод текста на русский язык:** Алгоритмы, перечисленные в таблице ниже, реализованы в библиотеке для поддержки устаревших приложений. Пожалуйста, используйте соответствующие альтернативные алгоритмы. | № | Алгоритм | Рекомендация | Альтернатива | |---|----------|-------------|--------------| | 1 | DES-шифрование | Избегать | AES-шифрование | |---|----------|-------------|--------------| | 2 | 3DES-шифрование | Избегать | AES-шифрование | |---|----------|-------------|--------------| | 3 | HMAC-MD5 целостность | Устаревший | HMAC-SHA1 | **Содержание пакета** LibTestApp — тестовое приложение библиотеки LibPerfApp — приложение для тестирования производительности библиотеки sse — оптимизированные процедуры Intel(R) SSE avx — оптимизированные процедуры Intel(R) AVX avx2 — оптимизированные процедуры Intel(R) AVX2 avx512 — оптимизированные процедуры Intel(R) AVX512 no-aesni — неоптимизированные процедуры **Компиляция** Linux (только 64-битная версия) ------------------- Необходимые инструменты: — GNU make — NASM версии 2.13.03 или новее — gcc (GCC) версии 4.8.3 или новее Общая библиотека: > make Статическая библиотека: > make SHARED=n Очистка сборки: > make clean или > make clean SHARED=n Сборка с отладочной информацией: > make DEBUG=y Примечание: сборка с отладочной информацией не рекомендуется для использования в производстве. Windows (только x64) ------------------ Необходимые инструменты: — Microsoft (R) Visual Studio 2015: — NMAKE: Microsoft (R) Program Maintenance Utility Version 14.00.24210.0 — CL: Microsoft (R) C/C++ Optimizing Compiler Version 19.00.24215.1 for x64 — LIB: Microsoft (R) Library Manager Version 14.00.24215.1 — LINK: Microsoft (R) Incremental Linker Version 14.00.24215.1 — Примечание: сборка на более поздних версиях должна работать, но не проверена — NASM версии 2.13.03 или новее Общая библиотека (DLL): > nmake /f win_x64.mak Статическая библиотека: > nmake /f win_x64.mak SHARED=n Очистка сборки: > nmake /f win_x64.mak clean или > nmake /f win_x64.mak clean SHARED=n Сборка с отладочной информацией: > nmake /f win_x64.mak DEBUG=y Примечание: сборка с отладочной информацией не рекомендуется для использования в производстве. **Установка** Linux (только 64-битная версия) ------------------- Сначала скомпилируйте библиотеку, затем установите: > make > sudo make install Чтобы удалить библиотеку, выполните: > sudo make uninstall Если вы хотите изменить место установки, определите PREFIX > sudo make install PREFIX=<путь> Если нет необходимости запускать ldconfig на этапе установки, используйте опцию NOLDCONFIG=y. > sudo make install NOLDCONFIG=y Если библиотека была скомпилирована как архив (не по умолчанию), установите её с помощью опции SHARED=n: > sudo make install SHARED=n Windows (только x64) ------------------ Сначала скомпилируйте библиотеку, а затем установите из командной строки в режиме администратора: > nmake /f win_x64.mak > nmake /f win_x64.mak install Чтобы удалить библиотеку, запустите: > nmake /f win_x64.mak uninstall Если вы хотите изменить местоположение установки, определите PREFIX (по умолчанию C:\Program Files) > nmake /f win_x64.mak install PREFIX=<path> Если библиотека была скомпилирована как статическая библиотека (не по умолчанию), то установите её, используя опцию SHARED=n: > nmake /f win_x64.mak install SHARED=n **Отказ от ответственности** ДАННОЕ ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ ПРЕДОСТАВЛЯЕТСЯ КОМПАНИЕЙ INTEL «КАК ЕСТЬ». НИКАКИЕ ЛИЦЕНЗИИ, ЯВНЫЕ ИЛИ ПОДРАЗУМЕВАЕМЫЕ, ОТСТУПНЫЕ ИЛИ ИНЫЕ, НА ЛЮБЫЕ ПРАВА ИНТЕЛЛЕКТУАЛЬНОЙ СОБСТВЕННОСТИ НЕ ПРЕДОСТАВЛЯЮТСЯ ЧЕРЕЗ ИСПОЛЬЗОВАНИЕ. ЗА ИСКЛЮЧЕНИЕМ СЛУЧАЕВ, ПРЕДУСМОТРЕННЫХ УСЛОВИЯМИ ПРОДАЖИ INTEL, INTEL НЕ ПРИНИМАЕТ НА СЕБЯ КАКОЙ-ЛИБО ОТВЕТСТВЕННОСТИ И INTEL ОТКАЗЫВАЕТСЯ ОТ ЛЮБЫХ ЯВНЫХ ИЛИ ПОДРАЗУМЕВАЕМЫХ ГАРАНТИЙ, КАСАЮЩИХСЯ ПРОДАЖИ И/ИЛИ ИСПОЛЬЗОВАНИЯ ПРОДУКТОВ INTEL, ВКЛЮЧАЯ ОТВЕТСТВЕННОСТЬ ИЛИ ГАРАНТИИ В ОТНОШЕНИИ ПРИГОДНОСТИ ДЛЯ КОНКРЕТНОЙ ЦЕЛИ, КОММЕРЧЕСКОЙ ЦЕННОСТИ ИЛИ НАРУШЕНИЯ ЛЮБОГО ПАТЕНТА, АВТОРСКОГО ПРАВА ИЛИ ДРУГОГО ПРАВА INTEL НА ИНТЕЛЛЕКТУАЛЬНУЮ СОБСТВЕННОСТЬ.
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Комментарии ( 0 )