Увидела свет библиотека GnuTLS 3.4.0

Представлен значительный выпуск GnuTLS 3.4.0, свободной библиотеки с реализацией протоколов SSL, TLS и DTLS, алгоритмов шифрования (включая AES и Camellia) и функций для работы с различными типами сертификатов и ключей. Ветка 3.4.x подготовлена примерно после года разработки в Git-репозитории и помечена как stable-next, что сигнализирует о достижении качества стабильной ветки, но пока неготовности заменить текущую стабильную ветку 3.3.x, поддержка которой будет продолжена.

В новом выпуске представлено достаточно внушительное число изменений, из которых можно выделить:

  • Поддержка потокового шифра ChaCha20 и алгоритма аутентификации сообщений Poly1305, разработанных Дэниэлом Бернштейном (Daniel J. Bernstein). По умолчанию данные шифры не активированы, для включения следует указать «+CHACHA20-POLY1305»;
  • Поддержка наборов шифров AES-CCM (RFC6655) и AES-CCM-8 (RFC7251);
  • Поддержка режима шифрования после аутентификации (ETM, encrypt-then-authenticate) для шифров CBC
  • Реализация TLS-расширения Extended Master Secret;
  • Представлен простой AEAD API (crypto.h), который трудно использовать некорректно;
  • SSL 3.0, ARCFOUR (RC4), DSA и DHE-DSS исключены из списка шифров и методов хэширования , доступных по умолчанию. Для включения следует указать «NORMAL:+VERS-SSL3.0», «NORMAL:+ARCFOUR-128» или «NORMAL:+DHE-DSS:+SIGN-DSA-SHA256:+SIGN-DSA-SHA1»;
  • Полностью удалена строка выбора экспортных шифров (EXPORT);
  • Добавлен API для работы с системными приватными ключами («gnutls/system-keys.h»);
  • В gnutls_x509_crt_check_hostname() и подобных функциях задействован новый метод сравнения доменных имён, соответствующий требованиям RFC6125;
  • Осуществлено задействование функций getrandom(), getentropy() и pthread_atfork(), при их наличии;
  • Добавлены функции для извлечения информации из структур PKCS
  • Добавлен API для переопределения существующих шифров, алгоритмов хэширования и MAC-ов. Например, можно задействовать собственную реализациют AES-GCM, использующую аппаратное ускорение;
  • Прекращена сборка прослойки libgnutls-openssl;
  • В утилиту certtool добавлены новые опции: —p8-info, —key-info, —key-id, —fingerprint, —verify-hostname, —verify-email,
    —verify-purpose, —p12-info, —set-id, —set-label;
  • В gnutls-cli добавлены опции —priority-list и —save-cert;
  • Проведена чистка API и ABI на предмет удаления устаревших функций.

Добавить комментарий

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

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.