[oss-gost-crypto] Модули Linux с криптографией ГОСТ [PATCH]

Vitaly Chikunov vt at altlinux.org
Tue Oct 9 03:46:56 MSK 2018


On Mon, Oct 08, 2018 at 09:19:11PM +0300, Dmitry Belyavsky wrote:
>    Привет!
>    Виталий, у меня в тестах на Стрибог был тест на корректную работу
>    add512.
>    [1]https://github.com/gost-engine/engine/tree/master/etalon файл carry.
>    В реализации исходно была ошибка, и на этом файле она вылезала.

Я протестил с этим вектором, но не добавлял его в патч. Если кому надо,
то патч прилагаю.

>    По XLPS - доступны ли в ядре gcc-шные intrinsics?

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

Например, include/uapi/linux/swab.h:

  #ifdef __HAVE_BUILTIN_BSWAP64__
  #define __swab64(x) (__u64)__builtin_bswap64((__u64)(x))
  #else
  #define __swab64(x)                             \
	  (__builtin_constant_p((__u64)(x)) ?     \
	  ___constant_swab64(x) :                 \
	  __fswab64(x))
  #endif

где __fswab64 использует __arch_swab64, который может быть определен на
разных архитектурах, если нет то используется generic версия (она может
использовать __arch_swab32, если он есть, если нет то ещё более generic.).

---
ps. PATCH s carry векторами из gost-engine:



More information about the oss-gost-crypto mailing list