Выпуск криптографической библиотеки Botan 2.9.0

Доступен выпуск криптографической библиотеки Botan 2.9.0, применяемой в проекте NeoPG, форке GnuPG 2. Библиотека предоставляет большую коллекцию готовых примитивов, используемых в протоколе TLS, сертификатах X.509, шифрах AEAD, модулях TPM, PKCS#11, хэшировании паролей и постквантовой криптографии. Библиотека написана на языке C++11 и поставляется под лицензией BSD.

Среди изменений в новом выпуске:

  • Оптимизированы операции с эллиптическими кривыми (ECC), в некоторых ситуациях отмечено увеличение производительности до 30%;
  • Проведена работа по усилению защиты от атак по сторонним каналам в коде вычислений с целыми числами, RSA и ECC;
  • Предложены новые реализации алгоритма ChaCha, использующие для ускорения инструкции NEON и AltiVec. Проведена оптимизация реализаций ChaCha, использующих инструкции SSE2 и AVX2;
  • Добавлена поддержка восстановления публичного ключа ECDSA из связок сообщение/цифровая подпись (Message-Signature Pair);
  • Добавлена поддержка кодирования и декодирования методом base58;
  • Для упрощения отладки в обработчик исключений добавлены функции error_type и error_code;
  • Прекращена поддержка компилятора Visual C++ 2013;
  • Устранена неопасная уязвимость CVE-2018–20187, допускающая утечку по сторонним каналам нескольких бит секретного значения, используемого при генерации ключа на базе ECC. На практике уязвимость может применяться для ускорения атак методом перебора.

© OpenNet