Контрольная сумма Sha256 на терминале с отображением странных символов
Я установил hashalot
сначала использовать sha256.
Затем произошло нечто странное при использовании команды + имя файла:
mlockall: Cannot allocate memory
Warning: couldn't lock memory, are you root?
Enter passphrase:
Мне никогда не нужно было вводить парольную фразу для этого, насколько я помню. И если я предоставлю пароль или использовать sudo
перед запуском команды я получаю странные символы в результате:
��z�9��E-�c���F�K��"�x~�(8�J��
Я работаю на ОС на основе Ubuntu (Элементарная ОС Freya).
2 ответа
Вы читали описание установленного вами пакета?
Эта программа будет читать парольную фразу из стандартного ввода и печатать двоичный (не для печати) хэш в стандартный вывод.
Вы пытались распечатать вывод на консоль; то, что вы видите, это ожидаемое поведение.
Максимальная общая память на пользователя для Ubuntu 16.04 по умолчанию составляет 64 КБ. Я поднял его до 1 ГБ для всех пользователей, ошибка исчезает.
добавив строку в конец файла /etc/security/limits.conf, это исправит это. не нужно перезагружать систему, вам нужно будет выйти из системы.
$ echo test | sha256 -s test | base64
mlockall: Cannot allocate memory
Warning: couldn't lock memory, are you root?
NyaDNd1pMQRb3N+SYj/4GaZCRLU9DnRtQ4eXNJ1NpXg=
$ ulimit -l
64
$ sudo bash
# echo "* - memlock 1048576" >> /etc/security/limits.conf
выйдите сейчас.
$ ulimit -l
1048576
$ echo test | sha256 -s test | base64
NyaDNd1pMQRb3N+SYj/4GaZCRLU9DnRtQ4eXNJ1NpXg=
нет больше слез!
Я предполагаю, что это предупреждение о том, что ваши секреты должны быть выгружены из памяти, и кто-то обнаружит их в пространстве tmp.
Я думаю ты ищешь
sha256 -x
. На странице руководства: "Если задана опция -x, то хэш будет напечатан как строка шестнадцатеричных цифр". (https://manpages.debian.org/jessie/hashalot/sha256.1.en.html)