URL: https://www.opennet.dev/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID3
Нить номер: 107598
[ Назад ]

Исходное сообщение
"Выпуск криптографической библиотеки Libgcrypt 1.7.0 "

Отправлено opennews , 16-Апр-16 11:18 
После двух с половиной лет разработки проект GNU представил (http://lists.gnu.org/archive/html/info-gnu/2016-04/msg00005....) выпуск библиотеки Libgcrypt 1.7.0 (http://www.gnu.org/software/libgcrypt/), с реализацией компонентов, лежащих в основе механизмов шифрования, применяемых в GnuPG. Библиотека предоставляет функции для использования в сторонних приложениях различных криптоалгоритмов, включая симметричные шифры (AES, DES, Blowfish, CAST5, Twofish, SEED, Camellia, Arcfour), алгоритмы хэширования (MD4, MD5, RIPE-MD160, SHA-1, SHA_224, SHA-256, SHA-384, SHA-512, TIGER-192, Whirlpool), шифрование с использованием публичных ключей (RSA, Elgamal, DSA, ECDSA). Новая ветка полностью совместима на уровне API и ABI с веткой 1.6.x (для использования новой версии не требуется пересборка программ).

Ключевые улучшения:


-  Поддержка новых алгоритмов и режимов:


-  Алгоритмы хэширования SHA3-224, SHA3-256, SHA3-384, SHA3-512 и MD2;

-  Алгоритмы хэширования SHAKE128 и SHAKE256;

-  Потоковый шифр ChaCha20;

-  Алгоритм аутентификации сообщений Poly1305;

-  Алгоритм аутентифицированного шифрования ChaCha20-Poly1305;

-  Режим OCB;
-  Поддержка HMAC-MD2 для устаревших приложений;

-  Поддержка эллиптических кривых Curve25519, sec256k1, GOST R 34.10-2001 и GOST R 34.10-2012;

-  Увеличение производительности функций KDF;
-  Ассемблерные оптимизации для Blowfish и Serpent для CPU ARM,  3DES  для x86;
-  Задействование инструкций AVX/BMI для SHA-1 и SHA-256
SHA-1, и SSSE3  для AES.  Новая AVX-реализация SHA-1 быстрее на 20% по сравнению с версией на базе SSSE3  и на 100% по сравнению с реализацией в libc;

-  На 40% ускорена реализация SHA-512 и на 72% реализация SHA-1 для ARM Cortex-A8;
-  На 60-90% ускорена реализация Whirlpool для x86;
-  На 300%  ускорена реализация RIPE MD-160;
-  Вычисление CRC на системах x86 ускорено в 11 раз;
-  Улучшена совместимость с ECDSA и FIPS 186-4.

URL: http://lists.gnu.org/archive/html/info-gnu/2016-04/msg00005....
Новость: http://www.opennet.dev/opennews/art.shtml?num=44256


Содержание

Сообщения в этом обсуждении
"Выпуск криптографической библиотеки Libgcrypt 1.7.0 "
Отправлено Аноним , 16-Апр-16 12:38 
LPGL? Sayonara, Libgcrypt.

"Выпуск криптографической библиотеки Libgcrypt 1.7.0 "
Отправлено Аноним , 16-Апр-16 13:02 
LGPL aka lesser gpl
ну давай, анончик, расскажи чем он плох.

"Выпуск криптографической библиотеки Libgcrypt 1.7.0 "
Отправлено Andrey Mitrofanov , 16-Апр-16 19:32 
> LGPL aka lesser gpl
> ну давай, анончик, расскажи чем он плох.

Пермиссивный аненчег покупает PGP и линкует его со своей фриб3дешечкой, как завещал великий коретиим.


"Выпуск криптографической библиотеки Libgcrypt 1.7.0 "
Отправлено Аноним , 16-Апр-16 21:31 
> ну давай, анончик, расскажи чем он плох.

В мою проприетарочку плохо встраивается, так что не очень много смыслка когда есть более интересные альтернативы.


"Выпуск криптографической библиотеки Libgcrypt 1.7.0 "
Отправлено Crazy Alex , 16-Апр-16 23:55 
Так это не "чем плох" - это "чем хорош"

"Выпуск криптографической библиотеки Libgcrypt 1.7.0 "
Отправлено Андрей , 17-Апр-16 01:13 
LGPL? Это ж самая справедливая лицензия: пользуйся нашим кодом, не открывая свой. И только если улучшил наш код, тогда уж будь другом в конце концов.

"Выпуск криптографической библиотеки Libgcrypt 1.7.0 "
Отправлено Аноним , 17-Апр-16 18:37 
Задумка действительно хорошая, но LGPL запрещает статическую линковку, что в общем не всегда удобно. Для такого рода библиотек проприетращик и так будет заинтересован отдать в апстрим свои изменения, чтобы не патчить их каждый раз.

"Выпуск криптографической библиотеки Libgcrypt 1.7.0 "
Отправлено Андрей , 18-Апр-16 09:10 
Вроде, нет: просто тогда нужно предоставить свой закрытый код большим .o файлом. Чтобы пользователь смог его слинковать с libgcrypt.a. А значительных отличий готового исполняемого файла от объектного практически нет. Кроме чувства, что как будто ты отдаёшь что-то больше чем обычно. Лично мне попадалась проприетарная прога, которая требовала наличие libgcrypt.so определённой версии.

"Выпуск криптографической библиотеки Libgcrypt 1.7.0 "
Отправлено Andrey Mitrofanov , 17-Апр-16 06:27 
>>расскажи чем он плох.
> В мою проприетарочку плохо встраивается,

Пока ты рассказал, чем ты плох.  Попытайся ещё!


"Выпуск криптографической библиотеки Libgcrypt 1.7.0 "
Отправлено Аноним , 16-Апр-16 14:21 
А libsodium как?

"Выпуск криптографической библиотеки Libgcrypt 1.7.0 "
Отправлено Аноним , 16-Апр-16 23:12 
> А libsodium как?

А это в другой ветке.


"Выпуск криптографической библиотеки Libgcrypt 1.7.0 "
Отправлено ttwo , 16-Апр-16 15:52 
> -  Вычисление CRC на системах x86 ускорено в 11 раз;

Резервы x86, или...?


"Выпуск криптографической библиотеки Libgcrypt 1.7.0 "
Отправлено anonymous , 16-Апр-16 16:24 
...или преждевременная оптимизация...

"Выпуск криптографической библиотеки Libgcrypt 1.7.0 "
Отправлено Аноним , 16-Апр-16 16:37 
На новых процах есть аппаратная инструкция для crc32, наверно применили ее.

"Выпуск криптографической библиотеки Libgcrypt 1.7.0 "
Отправлено Andrey Mitrofanov , 16-Апр-16 19:52 
>> -  Вычисление CRC на системах x86 ускорено в 11 раз;
> Резервы x86, или...?

Либо, как уже сказали, использование расширенных инструкций вроде SSE4.2 http://www.drdobbs.com/parallel/fast-parallelized-crc-comput...

, либо выжимание соков из компилятора, кеша процессора и ширины регистров http://create.stephan-brumme.com/crc32/ [гы, "GCC 4.7 produces faster code than Visual C++ 2010 for "...]

, либо ещё чего. По lists.gnupg.org не насёрчилось, чего конкретно в этом релизе - мож у кого под рукой есть ейный git (или чего там) и время, расскажет праздно инртересующейся аудитории.

И +1 :)) к "преждевременной оптимизации" === не утерпели, "После двух с половиной лет", могли бы ещё пару порядков %) выждать. То-ро-пы-ги.


"Выпуск криптографической библиотеки Libgcrypt 1.7.0 "
Отправлено Нимано , 16-Апр-16 23:09 
>> -  Вычисление CRC на системах x86 ускорено в 11 раз;
> Резервы x86, или...?

И раз:
http://git.gnupg.org/cgi-bin/gitweb.cgi?p=libgcrypt.git;a=co...
> More optimized CRC implementations
> Patch adds more optimized CRC implementations generated with universal_crc
> tool by Danjel McGougan: http://www.mcgougan.se/universal_crc/

----------------------------------
Sat, 2 May 2015 21:34:34 +0000 (00:34 +0300)
Before:
CRC32          |      2.52 ns/B     378.3 MiB/s      8.07 c/B
CRC32RFC1510   |      2.52 ns/B     378.1 MiB/s      8.07 c/B
CRC24RFC2440   |     46.62 ns/B     20.46 MiB/s     149.2 c/B

After:
CRC32          |     0.918 ns/B    1039.3 MiB/s      2.94 c/B
CRC32RFC1510   |     0.918 ns/B    1039.0 MiB/s      2.94 c/B
CRC24RFC2440   |     0.918 ns/B    1039.4 MiB/s      2.94 c/B
--------------------------------

И два:
http://git.gnupg.org/cgi-bin/gitweb.cgi?p=libgcrypt.git;a=co...
> Add Intel PCLMUL implementations of CRC algorithms

--------------------------------
Sat, 12 Mar 2016 15:16:41 +0000 (17:16 +0200)
Benchmark on Intel Core i5-4570 (x86_64, 3.2 Ghz):

Before:
                 |  nanosecs/byte   mebibytes/sec   cycles/byte
  CRC32          |     0.865 ns/B    1103.0 MiB/s      2.77 c/B
  CRC32RFC1510   |     0.865 ns/B    1102.7 MiB/s      2.77 c/B
  CRC24RFC2440   |     0.865 ns/B    1103.0 MiB/s      2.77 c/B

After:
                 |  nanosecs/byte   mebibytes/sec   cycles/byte
  CRC32          |     0.079 ns/B   12051.7 MiB/s     0.253 c/B
  CRC32RFC1510   |     0.079 ns/B   12050.6 MiB/s     0.253 c/B
  CRC24RFC2440   |     0.079 ns/B   12100.0 MiB/s     0.252 c/B
---------------------------------


"Выпуск криптографической библиотеки Libgcrypt 1.7.0 "
Отправлено Андрей , 17-Апр-16 01:29 
Спасибо за поиск! Кстати, первый бенч - Intel Haswell. Эх, а написано x86. Как-то SSE & Co. у меня с x86 не совсем ассоциируются. Это уже какой-то пост-x86. Вообще было бы неплохо, если в коммитах почётче было бы написано на каких имеющихся на сегодняшний день процах можно это получить.
А то
> Select PCLMUL implementation if SSE4.1 and PCLMUL HW features detected.

Т.е. может быть SSE4.1 без PCLMUL? Ох уж этот пост-x86.


"Выпуск криптографической библиотеки Libgcrypt 1.7.0 "
Отправлено Тимур Мансорунов , 16-Апр-16 19:04 
Все хорошо, но эта версия Libgcrypt 1.7.0 при долгой работе иногда роняет сервак. Даже запущенная в виртуалке VMware виснет и виртуалака и хост. Касперский палит троян дроппер и вырубает копм в синий экран смерти. Линукс при этом тоже глючит и по экрану лезут пауки.

"Выпуск криптографической библиотеки Libgcrypt 1.7.0 "
Отправлено Вареник , 16-Апр-16 21:48 
> Все хорошо, но эта версия Libgcrypt 1.7.0 при долгой работе иногда роняет
> сервак. Даже запущенная в виртуалке VMware виснет и виртуалака и хост.
> Касперский палит троян дроппер и вырубает копм в синий экран смерти.
> Линукс при этом тоже глючит и по экрану лезут пауки.

Багрепорт составил?


"Выпуск криптографической библиотеки Libgcrypt 1.7.0 "
Отправлено Андрей , 17-Апр-16 01:32 
Конечно, полезное дело. Но бывает в ответ получаешь: требуется минимальная программа, воспроизводящая ошибочное поведение или закрываем баг как невоспроизводимый или у меня всё работает. Иногда дело 5 минут, иногда нескольких часов, а иногда практически нереально.

"Выпуск криптографической библиотеки Libgcrypt 1.7.0 "
Отправлено Аноним , 17-Апр-16 12:59 
Ох эти minimal working example и could not reproduce

"Выпуск криптографической библиотеки Libgcrypt 1.7.0 "
Отправлено Led , 17-Апр-16 16:59 
> Но бывает в ответ получаешь: требуется минимальная программа, воспроизводящая
> ошибочное поведение или закрываем баг как невоспроизводимый или у меня всё
> работает. Иногда дело 5 минут, иногда нескольких часов, а иногда практически
> нереально.

Да, никто школоту не любит:(


"Выпуск криптографической библиотеки Libgcrypt 1.7.0 "
Отправлено Аноним , 18-Апр-16 17:13 
>Прошлый патч не был принят в состав ядра Linux, так как некоторые пользователи отмечали возникновение проблем, которые Мэтью Гаррет не смог повторить на своей системе
>https://www.opennet.dev/opennews/art.shtml?num=44264

Твои оправдания, "гуру" багрепортов?


"Выпуск криптографической библиотеки Libgcrypt 1.7.0 "
Отправлено Led , 17-Апр-16 16:56 
> Касперский палит троян дроппер и вырубает копм в синий экран смерти.

Мальчик, иди в винду.


"Выпуск криптографической библиотеки Libgcrypt 1.7.0 "
Отправлено Андрей , 17-Апр-16 01:33 
Хорошие новости. Приятно видеть не только новые фичи, а и работу над оптимизацией уже имеющихся, что часто более важно.

"Выпуск криптографической библиотеки Libgcrypt 1.7.0 "
Отправлено Аноним , 18-Апр-16 17:00 
А как это может быть, что 34.10 есть, а 28147 нет?

"Выпуск криптографической библиотеки Libgcrypt 1.7.0 "
Отправлено iZEN , 24-Апр-16 11:53 
И на FreeBSD портировали: http://www.freshports.org/security/libgcrypt/

"Выпуск криптографической библиотеки Libgcrypt 1.7.0 "
Отправлено Аноним , 09-Май-16 22:18 
С помощью этой библиотеки libgcrypt-1.7.0 и кое-каких доработок gnupg, libksba и т.д. (см. http://soft.lissi.ru/articles/2/ ) Kleopatra и KMail подружились с российской криптографией.