web-dev-qa-db-ja.com

覚えやすいパスワードを生成するためのコマンドラインツール?

覚えやすいパスワードを生成するLinux用のツール、コマンドライン、またはGUIを探しています。

私が探しているものと同等のものは、Mac OS Xキーチェーンが生成できるパスワードで、apples12$/fourteenのようなものです。何か強いが、ユーザーが簡単に覚えることができる。

21
James McMahon

それ以来、ほとんどのパスワードについて XCKDスタイルのパスフレーズ に移行しました。パスフレーズを生成するための commandlinef からの1つのライナーは次のとおりです。

shuf -n4 /usr/share/dict/words | tr -d '\n'
22
James McMahon

2020:私は2011年にこの回答を投稿しました。過ぎ去った年月で、サイバーセキュリティの顔とそれに対する要求は急速にそして大きく変化しました。 anarcatで指摘されているように、pwgenは高セキュリティシステムのセキュリティ保護には適していない(またはもはや適していない)可能性があります。彼は、 彼の記事 で、pwgenが、状況によっては、利用可能なエントロピーからパスワードを導出する安全でない方法をどのように使用できるかについての技術的な詳細を説明しようとしています。パスワードを生成して自分で覚えて自分で覚える必要はなくなったと思いますが、私には検証する技術的な適性がないため、引用された記事の内容を保証することはできないので、読んで結論を出してください。そうは言っても、攻撃の可能性が非常に低い低セキュリティシステムにはpwgenで十分であると私は確信しています。

pwgenアプリケーションをチェックアウトすることもできます。 Ubuntu、Fedora、Debian、Suseのリポジトリで利用できることを知っています。

manページ から:

Pwgenプログラムは、可能な限り安全でありながら、人間が簡単に覚えられるように設計されたパスワードを生成します。人間が記憶できるパスワードは、完全にランダムなパスワードほど安全になることはありません。特に、-sオプションなしでpwgenによって生成されたパスワードは、オフラインのブルートフォース攻撃によってパスワードが攻撃される可能性のある場所では使用しないでください。一方、完全にランダムに生成されたパスワードは書き留められる傾向があり、そのように侵害される可能性があります。

Pwgenプログラムは、対話式とシェルスクリプトの両方で使用するように設計されています。したがって、そのデフォルトの動作は、標準出力がttyデバイスであるか別のプログラムへのパイプであるかによって異なります。インタラクティブに使用すると、pwgenはパスワードの画面を表示し、ユーザーが単一のパスワードを選択できるようにし、画面をすばやく消去します。これにより、ユーザーが選択したパスワードを誰かが「ショルダーサーフィン」することができなくなります。

11
BloodPhilia

私は人々にpwgenの使用をやめることをお勧めします-その主な関心は「人間が記憶できるパスワード」を生成することでしたが、正確にそれを行うことで複数の脆弱性を示しました。また、完全にランダムな文字列を生成するためにそれを使用することも、それほど役に立ちません。

そのトピックについて 詳細な記事 を書きましたが、基本的には、 diceware プログラムを使用することです(または、サイコロが好きなら、実際の ダイスウェアシステム )または xkcdpass 。強力で覚えやすいパスワードを生成するために、私は通常、次の構成ファイルでダイスウェアを使用します。

[diceware]
caps = off
delimiter = "-"
wordlist = en_eff

例:

$ diceware
turkey-eligibly-underwire-recite-lifter-wasp
$ diceware
lend-rubdown-cornflake-tint-shawl-ozone
$ diceware
syndrome-ramp-cresting-resolved-flinch-veneering
$ diceware
alto-badass-Eclipse-surplus-rudder-quit

キャップとスペースは、攻撃者が利用できる明確な可聴ノイズを生成するため、オフにします。 -区切り文字はそれほど悪ではありません。セパレータを使用しない方がよいでしょう。en_effワードリストは、その目的のために特別に作成されています。しかし、some区切り文字があると、パスワードの伝達と共有が簡単になります。

完全にランダムなパスワードを生成するには、次のシェル関数を使用します。

# secure password generator or, as dkg puts it:
# high-entropy compact printable/transferable string generator
# a password generator would be pwqgen or diceware
pwg() {
    ENTROPY=${1:-20} # in bytes
    # strip possible newlines if output is wrapped and trailing = signs as they add nothing to the password's entropy
    head -c $ENTROPY /dev/random | base64 | tr -d '\n='
    echo
}

これについて言及するのは、lessパスワードを記憶し、代わりにパスワードマネージャーを使用して推測が難しい大きな文字列を格納することが重要であると考えているためです。これらの選択の背後にある根拠についての詳細は、前述の記事と私の パスワードマネージャーレビュー で説明されています。

8
anarcat

'gpw'を試してください。次のようなパスワードが生成されます:ubsonsin morimplo demenump esselymn kidentst anenterg essonsuf iesssssi bestruss tnestese

説明:Trigraph Password Generatorこのパッケージは、発音可能なパスワードを生成します。それはあなたがそれを養うどんな辞書からも取られた3文字の組み合わせ(トリグラフ)の統計を使用します。したがって、発音能力は言語によって異なる場合があります。 Morrie GasserのMultics用パスワードジェネレーターとDan EdwardsのCTSS用ジェネレーターのアイデアに基づいています。 FIPS標準181は同様のことを説明しています
Gasserから派生したダイグラフベースのジェネレータ。

4
Thomas

私がこれを尋ねて以来ポップアップした良いオプションは 編集済みのXKCD-password-generator です。

これは、アクロスティックサポートなどのいくつかの高度なオプションを備えたXKCDスタイルのパスワードを生成するための素晴らしいPythonスクリプトです。

1
James McMahon

sf-pwgen は、OSXのSecurityFoundationフレームワークを使用してパスワードを生成するコマンドラインツールです。

0
vdm