stringtranslate.com

Крапива (криптографическая библиотека)

Nettle — это криптографическая библиотека, разработанная для легкого использования в широком спектре наборов инструментов и приложений. Он начался как набор функций низкоуровневой криптографии из lsh в 2001 году. [2] С июня 2009 года (версия 2.0) Nettle является пакетом GNU. [3]

Функции

Начиная с версии 3, Nettle предоставляет блочный шифр AES (подмножество Rijndael) (с оптимизацией сборки для x86 и sparc), потоковый шифр ARCFOUR (также известный как RC4) (с сборкой x86 и sparc), ARCTWO ( также известный как RC2), потоковый шифр BLOWFISH , CAMELLIA (с оптимизацией сборки x86 и x86_64), блочные шифры CAST-128 , DES и 3DES , потоковый шифр ChaCha (со сборкой для x86_64), GOSTHASH94 , MD2 , MD4 и MD5 (с x86). сборки) дайджесты , функция деривации ключей PBKDF2 , коды аутентификации сообщений POLY1305 (со сборкой для x86_64) и UMAC , RIPEMD160 , поточный шифр Salsa20 (со сборкой для x86_64 и ARM), блочный шифр SERPENT (со сборкой для x86_64), SHA-1 (со сборкой x86, x86_64 и ARM), дайджесты SHA-2 (SHA-224, SHA-256, SHA-384 и SHA-512), SHA-3 (подмножество семейства дайджестов Keccak), блочный шифр TWOFISH , алгоритмы открытого ключа RSA , DSA и ECDSA , Yarrow PRNG . В версии 3.1 появилась поддержка операций Curve25519 и EdDSA . [4] Алгоритмы с открытым ключом используют GMP . [5]

Nettle используется GnuTLS .

Лицензия и мотивация

API, который хорошо подходит для одного приложения, может не работать хорошо в другом контексте, что приводит к быстрому увеличению количества криптографических библиотек, предназначенных для конкретных приложений. Nettle — это попытка избежать этой проблемы, выполняя одну задачу (низкоуровневую криптографию) и предоставляя для нее простой и общий интерфейс. В частности, Nettle не выполняет выбор алгоритма, распределение памяти или какой-либо ввод-вывод. Таким образом, Nettle призвана предоставить базовую криптографическую библиотеку, на основе которой могут быть построены многочисленные интерфейсы, специфичные для приложений и контекста. Код, тестовые примеры, тесты, документация и т. д. этих интерфейсов затем можно будет использовать совместно без необходимости копировать криптографический код Nettle. [6]

Nettle в основном лицензируется по схеме двойной лицензии, включающей Стандартную общественную лицензию GNU версии 2 или более позднюю и Меньшую стандартную общественную лицензию GNU версии 3 или более позднюю. Некоторые отдельные файлы лицензируются по более либеральным лицензиям или находятся в свободном доступе . Уведомления об авторских правах в верхней части исходных файлов библиотеки точно определяют статус лицензии конкретных файлов. [7]

Руководство Nettle «находится в свободном доступе» и может использоваться и воспроизводиться свободно. [8]

Смотрите также

Рекомендации

  1. ^ Нильс Мёллер (1 июня 2023 г.). «Крапива-3.9.1» . Проверено 1 июня 2023 г.
  2. ^ Нильс Мёллер (25 сентября 2001 г.). «АНОНС: Крапива-1.0» . Проверено 29 ноября 2010 г.
  3. ^ Нильс Мёллер (30 июня 2009 г.). «Криптографическая библиотека GNU Nettle» . Проверено 29 ноября 2010 г.
  4. ^ "Файл новостей Nettle @ git tag nettle3.5_rc1" . Проверено 25 июня 2019 г.
  5. ^ Нильс Мёллер. «Уведомление об авторских правах библиотеки Неттла» . Проверено 5 июня 2014 г.
  6. ^ Нильс Мёллер. «Библиотека Крапивы: Введение» . Проверено 5 июня 2014 г.
  7. ^ Нильс Мёллер. «Уведомление об авторских правах библиотеки Неттла» . Проверено 5 июня 2014 г.
  8. ^ Нильс Мёллер. «Уведомление об авторских правах библиотеки Неттла» . Проверено 5 июня 2014 г.