Крапива (криптографическая библиотека) - Nettle (cryptographic library)
Разработчики) | Нильс Мёллер |
---|---|
Стабильный выпуск | 3.6.0 / 29 апреля 2020 г. |
Репозиторий | |
Написано в | C |
Платформа | x86, x86-64 |
Тип | Криптографическая библиотека |
Лицензия | LGPLv3, GPLv2, GPLv3 |
Интернет сайт | лизатор |
Крапива - это криптографическая библиотека, разработанная, чтобы легко вписаться в широкий спектр наборов инструментов и приложений. Он начался как сборник низкоуровневых криптографических функций от lsh в 2001.[1] С июня 2009 года (версия 2.0) Nettle является пакетом GNU.[2]
Функции
Начиная с версии 3, крапива обеспечивает AES блочный шифр (подмножество Rijndael) (с оптимизацией сборки для x86 и sparc), ARCFOUR (также известный как RC4) потоковый шифр (со сборкой x86 и sparc), ARCTWO (также известный как RC2) потоковый шифр, BLOWFISH, КАМЕЛИЯ (с оптимизацией сборки x86 и x86_64), CAST-128, DES и 3DES блочные шифры, ЧаЧа потоковый шифр (со сборкой для x86_64), GOSTHASH94, то MD2, MD4, и MD5 (со сборкой x86) переваривает, то PBKDF2 ключевая деривационная функция, то POLY1305 (со сборкой для x86_64) и UMAC коды аутентификации сообщений, RIPEMD160, то Сальса20 потоковый шифр (со сборкой для x86_64 и ARM), ЗМЕЯ блочный шифр (со сборкой для x86_64), SHA-1 (со сборкой x86, x86_64 и ARM) SHA-2 (SHA-224, SHA-256, SHA-384 и SHA-512) дайджесты, SHA-3 (часть семейства дайджестов Keccak), ДВА РЫБЫ блочный шифр, ЮАР, DSA и ECDSA алгоритмы с открытым ключом, то Тысячелистник pRNG. Версия 3.1 представила поддержку Подкрутка25519 и EdDSA операции.[3] Алгоритмы открытого ключа используют GMP.[4]
Крапива используется GnuTLS.
Лицензия и мотивация
API, который хорошо подходит для одного приложения, может плохо работать в другом контексте, что приведет к увеличению числа криптографических библиотек, предназначенных для конкретных приложений. Nettle - это попытка избежать этой проблемы, сделав что-то одно (низкоуровневую криптографию) и предоставив для нее простой и общий интерфейс. В частности, Nettle не выполняет выбор алгоритма, выделение памяти или какие-либо операции ввода-вывода. Таким образом, Nettle призван предоставить базовую библиотеку криптографии, на которой могут быть построены многочисленные интерфейсы, специфичные для приложений и контекста. Затем код, тестовые примеры, тесты, документация и т. Д. Этих интерфейсов можно совместно использовать без репликации криптографического кода Nettle.[5]
Nettle в основном лицензируется по схеме двойной лицензии, включающей The Стандартная общественная лицензия GNU версия 2 или более поздняя и Стандартная общественная лицензия ограниченного применения GNU версия 3 или новее. Несколько отдельных файлов находятся под более разрешительные лицензии или в всеобщее достояние. Уведомления об авторских правах в верхней части исходных файлов библиотеки точно определяют статус лицензии для конкретных файлов.[6]
Руководство по крапиве «находится в общественном достоянии» и может свободно использоваться и воспроизводиться.[7]
Смотрите также
Рекомендации
- ^ Нильс Мёллер (25 сентября 2001 г.). «АНОНС: Крапива-1.0». Получено 29 ноябрь 2010.
- ^ Нильс Мёллер (30 июня 2009 г.). «Криптографическая библиотека GNU Nettle». Получено 29 ноябрь 2010.
- ^ "Файл новостей о крапиве @ git tag nettle3.5_rc1". Получено 25 июн 2019.
- ^ Нильс Мёллер. «Уведомление об авторских правах библиотеки Nettle». Получено 5 июн 2014.
- ^ Нильс Мёллер. «Библиотека крапивы: введение». Получено 5 июн 2014.
- ^ Нильс Мёллер. «Уведомление об авторских правах библиотеки Nettle». Получено 5 июн 2014.
- ^ Нильс Мёллер. «Уведомление об авторских правах библиотеки Nettle». Получено 5 июн 2014.