Какие еще команды включает команда passwd?

Я думал, что команда passwd использовала команду mcrypt для шифрования своего ввода, но вместо этого это crypt и / или encrypt? Исходный код crypt / encrypt недоступен.

Когда это не смутило - тогда в более ранние времена Linux passwd использовала команду mcrypt? - Кто может просветить меня?

Я спрашиваю об этом, потому что я хочу расширить возможности своего пароля.

Чтобы уточнить этот вопрос:
Команда passwd запрашивает ввод вашего пароля, затем в фоновом режиме ваш пароль будет зашифрован, после того как вы закончите предоставлять его в качестве ввода. Этот зашифрованный пароль хранится в файле shadow. Я думал, что в прежние времена это шифрование было выполнено mcrypt? Теперь мой вопрос: какие другие команды и / или файлы включает команда passwd в дополнение к командам shadow?

1
задан 12 October 2017 в 04:01

1 ответ

crypt - это утилита Unix. По ссылке:

В дистрибутивы Linux обычно не входит Unix-совместимая версия команды crypt. Во многом это связано с сочетанием трех основных факторов:

  • crypt относительно неясен и редко используется для вложений электронной почты, а также в качестве формата файла
  • crypt считается слишком криптографическим слабые, чтобы противостоять атакам грубой силы со стороны современных вычислительных систем (системы Linux обычно поставляются с GNU Privacy Guard, который считается достаточно безопасным по современным стандартам)
  • В первые годы разработки и внедрения Linux существовала некоторая обеспокоенность тем, что даже несмотря на слабость алгоритма, использованного в crypt, он все еще может противоречить экспортному контролю ITAR [необходима цитата]; поэтому разработчики основных дистрибутивов в Соединенных Штатах, как правило, исключали его [нужную ссылку] (и оставляли своих клиентов для получения GnuPG / GPG или другого надежного криптографического программного обеспечения с международных сайтов, иногда предоставляя пакеты или скрипты для автоматизации этого процесса).

Исходный код для склепа можно найти на Unix Archive Sites .


mcrypt является преемником / Linux-версией крипты, и мы использовали ее (по крайней мере) с Lucid . Замена для старого unix crypt (1) это указано в деталях пакета.

Исходный код для mcrypt можно найти здесь: mcrypt_2.6.8-1.3_i386.deb на машинах Intel x86

Но он не установлен в Ubuntu по умолчанию. [ 1120]


Но то, что вы ищете, вероятно, зарегистрировано в ...

/etc/login.defs

Это место, где системы Linux хранят то, что использовать. По умолчанию для Ubuntu это SHA512. Так что это не шифрование, а хешированный пароль, начинающийся с $ 6 $.

Пример использования sha1sum :

$ echo hello|sha1sum
f572d396fae9206628714fb2ce00f72e94f2258f  -

-

По поводу комментариев см .: http://packages.ubuntu.com/ raring / makepasswd Это тот, который призван сделать пароль из простого текста.

Вот источник: http://people.defora.org/~khorben/projects/makepasswd/

Неполный код:

switch(encryption)
    {
        case PE_BASE64:
            return _hash_base64(password);
        case PE_BLOWFISH:
            return _hash_blowfish(password, salt, iterations);
        case PE_DES:
            return _hash_des(password, salt);
        case PE_MD5:
            return _hash_md5(password);
        case PE_NONE:
            return _hash_none();
        case PE_SHA1:
            return _hash_sha1(password, salt, iterations);
        case PE_SHA256:
            return _hash_sha256(password, salt);
        case PE_SHA512:
            return _hash_sha512(password, salt);
        case PE_SHMD5:
            return _hash_shmd5(password, salt);
        default:
            errno = ENOSYS;
            _error("encryption", 1);
            return NULL;
    }

все используемые функции находятся ниже этого бита кода.

0
ответ дан 12 October 2017 в 04:01

Другие вопросы по тегам:

Похожие вопросы: