Операционная система ЗОСРВ «Нейтрино» > Руководство разработчика > Программные интерфейсы общего назначения > Системные библиотеки > Системные библиотеки > библиотека хэширования > API > crypt()



crypt()

Хэшировать пароль по ГОСТ Р 34.11-2012

Прототип:

#include <unistd.h>
char * crypt( const char *key,
const char *salt );

Аргументы:

key
Строка, завершаемая NUL (обычно - пароль, вводимый пользователем).
salt
Cтрока длинной от 3 до 12 символов. Функция проверяет значение salt, варианты значений: $G$<salt> (новая реализация, рекомендуемая к применению) или $g$<salt> (старая реализация, нерекомендуемая к применению), значения вне указанного диапазона приведут к вызову устаревшего алгоритма DES(см. crypt_des()), где <salt> - строка увеличивающая стойкость алгоритма (длина от 0 до 9 символов).

Библиотека:

libcrypt

Описание:

Функция crypt() выполняет шифрование пароля. Она основана на алгоритме из ГОСТ 34.11-2012.

Возвращаемое значение:


Warning: При работе с DES-алгоритмом(передача salt отличной от $G$/$g$) возвращаемое значение совпадает с значением из crypt_des()

Указатель на 94-символьное зашифрованное значение или NULL в случае неудачи. Первые два символа зашифрованного значения имеют значение salt.

Классификация:

POSIX 1003.1 X/Open Systems Interfaces Extension

Безопасность использования
Точка остановки потока
Нет
Обработчик прерываний
Нет
Обработчик сигналов
Нет
В потоке
Нет

Предостережения:

Возвращаемое значение указывает на статические данные, которые перезаписываются при каждом вызове crypt().

Тематические ссылки:

crypt_des(), encrypt(), getpass(), setkey()

login




Предыдущий раздел: Описание API библиотеки хэширования