長所:
- とにかく「良い」パスワードを思い出せないので、覚えていても問題ありません。
- パスワードのようには見えません
- それらは推測するのがほぼ不可能です(128ビットのエントロピー)
- 簡単に生成できます (「良い PRNG」の問題を軽減します)
短所:
- ???
特に; 一部のセットアップでのデータベースへのログインのように、コンピューターが入力するパスワードについてはどうですか。
主な欠点の 1 つは、元の質問で述べたように、必ずしも「128 ビットのエントロピー」があるとは限らないことです。
多くの GUID アルゴリズムには、コンピューターの MAC アドレス、日付/時刻、増分シーケンスなど、予測可能なパターンで情報が埋め込まれています。WinAPI GUID の暗号解析は、関数 UuidCreate によって返される次の最大 250,000 GUID を予測できる初期状態が与えられていることを示しています
たとえば、3 番目の数字グループの最初の位置にある最初の数字を推測する確率は約 50% です。これは、1 (V1 GUID の場合) または 4 (V4 GUID の場合) になるためです。
ソース: http://en.wikipedia.org/wiki/Globally_Unique_Identifier
短所:
したがって、めったに変更されないシステムパスワードでない限り、適切なパスワードであるとは思えません。
短所:
32バイトの英数字の文字列を覚えることはほぼ不可能です。
本当に安全なパスワードが必要な場合は、代わりにパスフレーズを検討してください。長いパスフレーズは簡単に覚えられ、力ずくで攻撃するのは非常に困難です。
短所:
短所:
...長所:
大きな乱数のパスワードは以前に作成されています。それらはOTPと呼ばれ、時間の経過とともに変化し、安全なデバイスによって生成される傾向があるため、提案されているものよりもはるかに安全です。もちろん、これはパスワード システムを設計している場合にのみ関連します。
誰かがパスワードとして入力する必要がありますか?それとも、それを1回限りのものとして使用しますか?真剣に、誰もパスワードフィールドにGUIDを入力したくないからです。WEP / WPA2のwifiネットワークキーを入力するだけで、人々はそれなりに問題を抱えています。そして、ほとんどの場合、それらは1回限りです。
@Miyagi:それは当然のことです。彼らはそれを書き留める必要があります。
技術的には、それらは優れたパスワードになります実生活では、それらは恐ろしいパスワードになります
パスワードを書き留めたり、パスワードマネージャーを使用したり、その他の形式で実際にパスワードを使用したりする必要があります...ある意味で、障害点をパスワードから別の側面に移動します。
パスフレーズの使用を検討してください。特定の文字や他の文字、および数字の代わりにShiftを使用して入力し、覚えやすい数字を明確に定義された文字シーケンスに変換する文。
たとえば、bcs19850101bcsはbcs!(*%)!)!bcsになります。
UNIX ライクなシステムのパスワード マネージャーに残しておきたい安全なパスワードが必要な場合は、/dev/random からパスワードを取得して、読み取り可能なものにエンコードするだけの方がはるかに優れています。128ビットのエントロピーの場合、次のような単純なものを使用できます
head -c 16 /dev/random | openssl enc -a -e
次のようなパスワードを提供します5eqIviKu4pFTqSPnYosVKg==
不当に長くなく、安全で、ランダムで、思い出そうとする自殺。
編集:UUIDに対するこの方法の追加の利点には、PRNG(/ dev/random)の追加のセキュリティと短いパスワード、同様の欠点が含まれます
あなたが実際に必要としているのは、GUID ではなく、暗号化された乱数だと思います。GUID と UUID はランダムではありません。JohnFx が言ったように、一意性を保証するために、MAC アドレスや現在のタイムスタンプなどの発見可能な値を組み込む傾向があります。
代わりに、利用可能な暗号化 API を調べて、エントロピーの高い乱数のソースを見つける必要があります。出力が通常の PRNG だけでなく、暗号化に適していることをドキュメントが約束していることを確認してください。たとえば、Unix システムの /dev/random は適切なソースです。次に、必要なだけランダムなバイトを展開します。
個人的には、これは少しハードコアすぎるようです。文字あたりのエントロピーが少し少ない文字列を生成したいのですが、入力と覚えが簡単です。たとえば、ランダムな音節を組み合わせて発音可能な無意味な単語を作成するアルゴリズムがいくつかあります。いくつかの数字と句読点を散在させると、適切なパスワードが得られます.
私は最近、チェックサムの最初の 64 ビットを一連の 4 つの英単語に変換するコードを書きました。これにより、適切なチェックサムが作成されます (16 進数の混乱よりもはるかに覚えやすい) が、これをパスワードとして信頼できるかどうかはわかりません。安全なものを保護している場合は、覚えて書き留めない強力なパスワードを使用する必要があります。そうでない場合は、古いパスワードで十分です。
私は自分のパスワードが強力で発音しやすいのが好きです(オンラインデモのためにここにリストされているサイトの1つを試してください。発音ガイドを入手するには、必ず「v2」サイトを選択してください)。
短所: 再入力できないため、コピーして貼り付ける必要があります。システムにパスワード管理プログラムがある場合は、実際には問題ありません。しかし、そうでないシステムになってしまった場合、単にタイプし直すだけでも非常に困難になります。
そして、数回試した後、ロックアウトされます....
人生は非常に面倒になる可能性があります。
書き留めたとしても、適切なパスワードとは、間違いなく一貫して入力できるものです。