web-dev-qa-db-ja.com

奇妙な文字を表示する端末のSha256チェックサム

Sha256を使用するために最初にhashalotをインストールしました。
次に、コマンド+ファイル名を使用すると何か奇妙なことが起こりました。

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(Elementary OS Freya)ベースのOSを使用しています。

7
anon

インストールしたパッケージの説明を読みましたか?

このプログラムは、標準入力からパスフレーズを読み取り、バイナリ(印刷不可)ハッシュを標準出力に出力します。

出力をコンソールに出力しようとしました。あなたが見ているのは期待される振る舞いです。

5
Darth Android

ubuntu16.04ユーザーあたりのデフォルトの最大共有メモリは64kです。すべてのユーザーで1GBに上げましたが、エラーはなくなりました。

/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スペースで後でそれを見つけたというコーナーケースに関するものだと思います。

3
Jeffrey Gong

私はあなたが探していると思いますsha256 -x。マニュアルページから:「-xオプションを指定すると、ハッシュは16進数の文字列として出力されます。」 ( https://manpages.debian.org/jessie/hashalot/sha256.1.en.html

0
Jongmin Baek