アカウント名:
パスワード:
1Passwordはデータを・ユーザーが決めたパスワード・シークレットキー(アカウントセットアップ時に生成される128ビットの乱数列)を繋げたキーで暗号化している。サーバー側には暗号化されたデータしか保持していないし、シークレットキーはサーバー側に送信されない(はず)。常にクライアント側で復号するようになってる。アプリやWebサイトが改竄されて両方セットで盗まれたらどうしようもないが、システムに侵入されただけで一発アウトということにはならない。パスワードからクレカ番号に至るまで全部預けるにはこれぐらいやってほしい。
8文字以上だったのを12文字以上に義務付けって対応に筋悪感があるんだよな。マスターパスワードの変更強制は既存ユーザーの手間が割と大きいのだから、手間のかかる事をさせるならそれに見合う抜本的に効果のある対応が期待されるけど、文字数増やしても総当たり攻撃の耐性が高まる効果しかない。
総当たり攻撃に対してほどほどに耐性があるパスワードを使ってさえいればそうそう破られません。安易なパスワードを使っている人がいっぱいいるので、クラッカーは先にそっちを破るのを優先してくれるます。強いパスワードを破るまで総当たりしたりしません。
以前,*ランダム*な12文字であれば、総当たりするのに最速のコンピュータでも3年ぐらいはかかるって計算したことがあります。ランダムでありさえすれば12文字ぐらいでも程々に強いので十分だとワタシは思います。
全員が12文字以上なので、12文字で安易なパスワードを使ってる人をクラッカーは優先してくれますよね。
クラッカーは「12文字で安易なパスワードを使ってる人」をどうやって探し出すのだろう…
探し出す必要ありません。多数のユーザに対して12文字で安易なパスワードを試せば、脆弱なパスワードを使用している人が見つかります。同じ回数なら一人のユーザに対して10万回試行するのではなく、10万ユーザに対して1回試行すればいいのです。
それは「12文字で安易なパスワードを使ってる人をクラッカーは優先」とは違うアプローチじゃないですか
シークレットキーがサーバー側に送信されないなら、ローカルのデータを削除したり失ったら、パスワード覚えていてもパスワードを復元できなくならない?
ユーザーがシークレットキーの存在を認識していて、バックアップ取っていれば別だけど。複数クライアントがある場合、どうやってシークレットキーを同期させるのか、という問題もあるし。
> ローカルのデータを削除したり失ったら、パスワード覚えていてもパスワードを復元できなくならない?その通りです。アカウントセットアップ時にシークレットキーが提示されて、必ずこれをメモするか印刷するかしておけ、と言われます。(任意のタイミングで別の値にリセットすることは可能)このシークレットキーはアプリの初回起動時に入力すると永続的に記憶されるようになっているので普段ユーザーが使うのはマスターパスワードだけですが、もちろんデバイス間で同期はされないので複数デバイスで利用する際は個別に入力しなければなりません。
なるほど。確かに、これなら問題ない。
1passwordで全く新しいデバイスのログインに必要な情報は以下の3つ。・メールアドレス・シークレットキー(306E5514-BC07-A381-5140-C4A0EF392983 の様な、充分に長いランダムな文字列の組み合わせ)・ユーザーが入力するパスワード(ユーザーが決める事ができる文字列。短くても問題ない)
で、新しいPCで最初にログインする時は3つ全部必要。それ以降は(同じPC、ブラウザなら)ユーザーが入力するパスワードだけでログインできる。本質的なパスワードはシークレットキーとユーザーが入力するパスワードを組み合わせた文字列って事なんだろうな。これならユーザーが入力するパスワードが短くてもシークレットキーで一定数の長さ ランダムさが確約される。
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
日本発のオープンソースソフトウェアは42件 -- ある官僚
1Passwordの方が筋がいい気がする (スコア:1)
1Passwordはデータを
・ユーザーが決めたパスワード
・シークレットキー(アカウントセットアップ時に生成される128ビットの乱数列)
を繋げたキーで暗号化している。
サーバー側には暗号化されたデータしか保持していないし、シークレットキーはサーバー側に送信されない(はず)。
常にクライアント側で復号するようになってる。
アプリやWebサイトが改竄されて両方セットで盗まれたらどうしようもないが、システムに侵入されただけで一発アウトということにはならない。
パスワードからクレカ番号に至るまで全部預けるにはこれぐらいやってほしい。
Re:1Passwordの方が筋がいい気がする (スコア:1)
8文字以上だったのを12文字以上に義務付けって対応に筋悪感があるんだよな。
マスターパスワードの変更強制は既存ユーザーの手間が割と大きいのだから、
手間のかかる事をさせるならそれに見合う抜本的に効果のある対応が期待されるけど、
文字数増やしても総当たり攻撃の耐性が高まる効果しかない。
Re: (スコア:0)
総当たり攻撃に対してほどほどに耐性があるパスワードを使ってさえいればそうそう破られません。安易なパスワードを使っている人がいっぱいいるので、クラッカーは先にそっちを破るのを優先してくれるます。強いパスワードを破るまで総当たりしたりしません。
以前,*ランダム*な12文字であれば、総当たりするのに最速のコンピュータでも3年ぐらいはかかるって計算したことがあります。ランダムでありさえすれば12文字ぐらいでも程々に強いので十分だとワタシは思います。
Re: (スコア:0)
全員が12文字以上なので、12文字で安易なパスワードを使ってる人をクラッカーは優先してくれますよね。
Re: (スコア:0)
クラッカーは「12文字で安易なパスワードを使ってる人」をどうやって探し出すのだろう…
Re: (スコア:0)
あんまり根拠ないけど、多分、100単語ぐらいの辞書を作っておけば100人に一人ぐらいは当りますよ。(パスワードスプレー攻撃)
クラッカーの目的が経済的利益なら、何人か破れたヤツから金を盗めばいいので、敗れなかった他のアカウントを破るために時間かけたりしません。
Re: (スコア:0)
探し出す必要ありません。
多数のユーザに対して12文字で安易なパスワードを試せば、脆弱なパスワードを使用している人が見つかります。
同じ回数なら一人のユーザに対して10万回試行するのではなく、10万ユーザに対して1回試行すればいいのです。
Re: (スコア:0)
それは「12文字で安易なパスワードを使ってる人をクラッカーは優先」とは違うアプローチじゃないですか
Re:1Passwordの方が筋がいい気がする (スコア:1)
シークレットキーがサーバー側に送信されないなら、ローカルのデータを削除したり失ったら、パスワード覚えていてもパスワードを復元できなくならない?
ユーザーがシークレットキーの存在を認識していて、バックアップ取っていれば別だけど。
複数クライアントがある場合、どうやってシークレットキーを同期させるのか、という問題もあるし。
Re:1Passwordの方が筋がいい気がする (スコア:2, 参考になる)
> ローカルのデータを削除したり失ったら、パスワード覚えていてもパスワードを復元できなくならない?
その通りです。
アカウントセットアップ時にシークレットキーが提示されて、必ずこれをメモするか印刷するかしておけ、と言われます。
(任意のタイミングで別の値にリセットすることは可能)
このシークレットキーはアプリの初回起動時に入力すると永続的に記憶されるようになっているので
普段ユーザーが使うのはマスターパスワードだけですが、
もちろんデバイス間で同期はされないので複数デバイスで利用する際は個別に入力しなければなりません。
Re: (スコア:0)
なるほど。
確かに、これなら問題ない。
Re: (スコア:0)
1passwordで全く新しいデバイスのログインに必要な情報は以下の3つ。
・メールアドレス
・シークレットキー(306E5514-BC07-A381-5140-C4A0EF392983 の様な、充分に長いランダムな文字列の組み合わせ)
・ユーザーが入力するパスワード(ユーザーが決める事ができる文字列。短くても問題ない)
で、新しいPCで最初にログインする時は3つ全部必要。
それ以降は(同じPC、ブラウザなら)ユーザーが入力するパスワードだけでログインできる。
本質的なパスワードはシークレットキーとユーザーが入力するパスワードを組み合わせた文字列って事なんだろうな。
これならユーザーが入力するパスワードが短くてもシークレットキーで一定数の長さ ランダムさが確約される。