Лучшие вопросы
Таймлайн
Чат
Перспективы

WolfSSL

Из Википедии, свободной энциклопедии

Remove ads

wolfSSL (более раннее название: CyaSSL, or yet another SSL) - это небольшая, портативная, встроенная библиотека SSL / TLS, предназначенная для разработчиков встраиваемых систем. Это реализация TLS с открытым исходным кодом (SSL 3.0, TLS 1.0, 1.1, 1.2, 1.3 и DTLS 1.0 и 1.2), написанная на языке Си. Включает в себя клиентские библиотеки SSL / TLS и реализацию сервера SSL / TLS, а также поддержку нескольких API, в том числе определенных SSL и TLS. wolfSSL также включает интерфейс совместимости OpenSSL с наиболее часто используемыми функциями OpenSSL.[3][4]

Краткие факты Тип, Разработчик ...

Предшественник wolfSSL yaSSL - это библиотека SSL на основе C++ для встраиваемых сред и операционных систем реального времени с ограниченными ресурсами.

Remove ads

Платформы

В настоящее время wolfSSL доступна для Win32/64, Linux, macOS, Solaris, Threadx, VxWorks, FreeBSD, NetBSD, OpenBSD, встраиваемый Linux, Yocto Project, OpenEmbedded, WinCE, Haiku, OpenWrt, iPhone, Android, Nintendo Wii и Gamecube при поддержке DevKitPro, QNX, MontaVista Linux, вариантов системы Tron, NonStop, OpenCL, Micrium's MicroC/OS-II, FreeRTOS, SafeRTOS, Freescale MQX, Nucleus, TinyOS, TI-RTOS, HP-UX, uTasker, uT-kernel, embOS, INtime, mbed, RIOT, CMSIS-RTOS, FROSTED, Green Hills INTEGRITY, Keil RTX, TOPPERS, PetaLinux и Apache Mynewt.

Remove ads

История создания

Создание yaSSL, or yet another SSL, датируется 2004 годом. В то время уже существовала OpenSSL, которая распространялась под двойной лицензией OpenSSL License и SSLeay license.[5] В качестве альтернативы, yaSSL получил двойную коммерческую и GPL лицензию.[6] yaSSL предложил более современный API, поддержку для коммерческого ПО и был дополнен уровнем совместимости с OpenSSL.[3] MySQL стала первым крупным клиентом wolfSSL/CyaSSL/yaSSL.[7] Благодаря поддержке MySQL, yaSSL достигла чрезвычайно больших объемов распространения в миллионы копий.

Remove ads

Протоколы

Легкая SSL-библиотека wolfSSL реализует следующие протоколы:[8]

  • SSL 3.0, TLS 1.0, TLS 1.1, TLS 1.2, TLS 1.3
  • DTLS 1.0, DTLS 1.2

Дополнительные замечания по протоколам:

  • SSL 2.0 - протокол SSL 2.0 устарел и, согласно RFC 6176, запрещен к использованию с 2011 года. wolfSSL ее не поддерживает.
  • SSL 3.0 - протокол SSL 3.0 устарел и, согласно RFC 7568, запрещен к использованию с 2015 года. SSL 3.0 был отключен по умолчанию, начиная с wolfSSL 3.6.6 в ответ на атаку POODLE, но его можно включить при помощи параметра времени компиляции.[9]

Алгоритмы

Суммиров вкратце
Перспектива

wolfSSL использует следующие криптографические библиотеки:

wolfCrypt

По умолчанию, wolfSSL использует криптографические сервисы библиотеки wolfCrypt.[10] wolfCrypt предоставляет RSA, ECC, DSS, Diffie–Hellman, EDH, NTRU, DES, Triple DES, AES (CBC, CTR, CCM, GCM), Camellia, IDEA, ARC4, HC-128, ChaCha20, MD2, MD4, MD5, SHA-1, SHA-2, SHA-3, BLAKE2, RIPEMD-160, Poly1305, генерацию случайных чисел, поддержку больших целых чисел, и Base16/64 кодирование/декодирование. Также включены экспериментальный шифр Rabbit и поточный шифр для ПО в общественном достоянии из проекта eSTREAM. Rabbit потенциально полезен для тех, кто шифрует потоковое мультимедиа в высокопроизводительных средах с высокими требованиями.

wolfCrypt также включает в себя поддержку последних алгоритмов Curve25519 и Ed25519.

wolfCrypt выступает в качестве программно-аппаратной (бекенд) криптографической реализации для нескольких популярных пакетов программного обеспечения и библиотек, включая MIT Kerberos[11] (где его можно включить с помощью опции сборки).

NTRU

CyaSSL+ включает шифрование открытым ключом NTRU[12]. Добавление NTRU в CyaSSL+ стало результатом партнерства между компаниями yaSSL и Security Innovation.[12] NTRU хорошо работает в мобильных и встраиваемых системах, благодаря уменьшенному количеству бит, необходимых для обеспечения такой же безопасности, как и в других системах с открытым ключом. Кроме того, не подтверждено, что он уязвим для квантовых атак. В пакете CyaSSL+ доступны несколько наборов шифров, использующих NTRU, включая AES-256, RC4 и HC-128.

Remove ads

SGX

wolfSSL поддерживает использование Intel SGX (Software Guard Extensions)[13]. Intel SGX позволяет уменьшить площадь атаки и, как было показано, обеспечивает более высокий уровень безопасности для выполнения кода без существенного негативного влияния на производительность.

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

Суммиров вкратце
Перспектива

Поддержка проверенных элементов

В настоящее время, wolfSSL поддерживает следующие проверенные элементы:

  • STSAFE
  • ATECC508A

Поддержка аппаратного шифрования

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

Подробнее Устройство, AES-GCM ...

"Все" означает, что поддерживаются размеры блоков 128, 192 и 256 бит.

Подробнее Device, DES-CBC ...
Подробнее Устройство, RC4 ...
Подробнее Устройство, MD5 ...
Подробнее Устройство, RSA ...
Подробнее Устройство, HMAC-MD5 ...
Подробнее Устройство, RNG ...
Remove ads

Лицензирование

wolfSSL - это ПО с открытым исходным кодом, распространяемое по лицензии GNU General Public License GPLv2.[14]

См. также

Примечания

Ссылки

Loading related searches...

Wikiwand - on

Seamless Wikipedia browsing. On steroids.

Remove ads