Традиционная функция crypt шифрования пароля
Стандартный механизм идентификации AIX использует функцию необратимого шифрования crypt для проверки подлинности пользователей. Функция crypt применяет модифицированный алгоритм DES. Она выполняет необратимое шифрование массива фиксированной длины для пароля и дополнительной строки.
Функция crypt использует только первые восемь символов из пароля, остальные символы отбрасываются. Если пароль содержит менее восьми символов, то он дополняется нулями справа. На основе 7 битов из каждого символа вычисляется 56-разрядный ключ DES.
В алгоритме DES используются 12 битов дополнительной строки. Дополнительная строка - это два символа из набора "A-Z", "a-z","0-9","." (точка) и "/". Дополнительная строка позволяет усложнить алгоритм хэша, и один и тот же пароль может порождать 4096 зашифрованных строк. Кроме того, в алгоритме DES меняются местами биты i и i+24 в выводе DES E-Box, когда бит i задан в дополнительной строке, что устраняет возможность использования аппаратных средств шифрования DES для подбора пароля.
Ключом DES 25 раз шифруется 64-разрядный нулевой битовый массив. Выводом является строка, составленная из 12 бит дополнительной строки и зашифрованного 64-разрядного битового массива. Получившиеся 76 бит преобразуются в 13 символов ASCII в формате base64.