CRYPT(3C)                                             CRYPT(3C)
НАЗВАНИЕ
crypt, setkey, encrypt - шифровка хешированием
СИНТАКСИС
       |char *crypt (key, salt)
       |char *key, *salt;
       |
       |void setkey (key)
       |char *key;
       |
       |void encrypt (block, ignored)
       |char *block;
       |int ignored;
ОПИСАНИЕ
Функция  crypt  предназначена  для шифровки пароля. Она
        основана на алгоритме шифровки хешированием, назначение
        которого, помимо всего прочего, - предупредить  исполь-
        зование аппаратных средств раскрытия ключа.
        Аргумент key представляет собой пароль, введенный поль-
        зователем. Salt - это двухсимвольная цепочка,  выбирае-
        мая из множества [a-zA-Z0-9./]. Она  настраивает  алго-
        ритм хеширования на один из 4096 вариантов, после  чего
        пароль используется как ключ для  циклической  шифровки
        некоторой текстовой  константы.  Возвращаемое  значение
        указывает на зашифрованный пароль. Его первые два  сим-
        вола равны salt.
                               
        Функции setkey и encrypt обеспечивают  доступ  (на  до-
        вольно примитивном уровне) к алгоритму хеширования. Ар-
        гумент  функции  setkey  - это символьный массив длиной
        64, содержащий только символы с числовым значением 0  и
        1  и изображающий цепочку бит. В каждой из восьми групп
        по 8 символов наименее значащий "бит" игнорируется. По-
        лученный 56-битный ключ передается компьютеру и исполь-
        зуется в алгоритме  хеширования  для  шифровки  цепочки
        block в функции encrypt.
        
Аргумент функции encrypt - символьный массив длиной 64,
        содержащий  только  символы с числовым значением 0 и 1.
        Аргумент преобразуется на месте в массив того же  вида,
        изображающий  биты аргумента после применения алгоритма
        хеширования с ключом, установленным в  функции  setkey.
        Аргумент ignored не используется, но должен быть  задан.
                                                               
СМ. ТАКЖЕ                                                      
        getpass(3C), passwd(4).                                
        login(1), makekey(1), passwd(1) в Справочнике пользова-
        теля.                                                  
                                                               
ОГРАНИЧЕНИЯ             
        Значение, возвращаемое  функцией  crypt,  указывает  на
        один и тот же статический массив,  содержимое  которого
        полностью изменяется после каждого вызова.