68user's page 掲示板

Prev< No. 1477〜1482> Next  [最新発言に戻る] [過去ログ一覧]
No. 1477 # gixs 2000/12/19 (火) 22:10:02
>>1474 ぷに辻
> 管理モードのパスワードとかって、普通crypt()でハッシュしますよね。
DESやmd5を1方向関数として使用している点は了解していると仮定します。
(余談1
ハッシュ関数と1方向関数は同義と言ってもよいですが、一応別物です。
1方向関数は(結果的に)ハッシュ関数ですが、逆は必ずしも真ではありません。
moduloはハッシュ関数ですが、出力から元の値が容易に推測可能なので良い1方向関数ではありません。)

> でもDESの場合辞書アタックとかで簡単に破られちゃいますよね。
辞書アタックと言っているのは、1方向関数でエンコードされたパスワードを奪われて、それに対して、しらみつぶしにパスワードを探索していると仮定します。
(余談2
暗号化パスワードと呼ぶ場合もありますが、復号化するわけではないので、誤用に近いと思っています。)
辞書アタックは、ワードを同じ1方向関数でエンコードして、マッチするものを探すことですから、同じ長さのパスワードなら、探索にかかるコストは、DESでもmd5でも大差無いと思います。
ただ、DESの場合、鍵長が56bitで、パスワード自体を鍵に使うことで(本来、暗号化アルゴリズムであるDESを)1方向関数にしているので、パスワードの長さが8文字に制限されます。
md5は(本来から1方向関数で)元データの長さに(現実的な)制限はないので、もっと長いパスワードが選べます。
この差は大きいですが、弱い(or 短い)パスワードを使っている限り、辞書アタックに対する強さは変わらないと思います。
(辞書アタック以外の探索法に対する強さは分かりません。
DESが簡単に破られる、と言っているのは、3年ぐらい前(もっと前?)のRSAコンテストで、約半年かかって破られたことを根拠にしていると思いますが、逆に言えば、未だ辞書アタックしか有効な手が無いという辺り、腐ってもDESと思わせるものもあります。)

No. 1478 # 68user 2000/12/20 (水) 00:59:20
>>1476 SabaCurry
> 永久保存版の過去ログなかったっすか?
はい、ありました。半永久保存版は1997年9月16日だけですが、
一応 1997/9/29〜1998/09/20 の分は保存してあります。

データはありながらも閲覧用 CGI スクリプトがどっか行っちゃって
見られない状態が続いてましたが、さきほど発掘してきました。

見てたら恥ずかしくなったので (笑)、URL はメールで送ります。
そのうちアナウンスもなくひっそりと公開します。

>>1474 ぷに辻
> crypt()のDES、MD5($1$...$)と比べてどっちがセキュリティ的に
> よろしいのでしょうか。
md5 より crypt+md5 の方が、salt という仕組みがある分
強固ではないかと思います。推測にしか過ぎませんが。

>>1477 gixs
> RSAコンテストで、約半年かかって破られたこと
専用ハードウェアを使うと、56bit DES 解読に要する時間は
22時間くらいでしたっけ。剣呑剣呑。

No. 1479 # 68user 2000/12/20 (水) 02:34:41
>>1478 68user
> URL はメールで送ります。
    From: MAILER-DAEMON@lala.v3.com (Mail Delivery System)
    <tetuya@i.am>: unknown user: "tetuya"
ということで、メールが送れませんでした。

No. 1480 # rosegarden 2000/12/20 (水) 02:39:01
>>1478 68user さん
>md5 より crypt+md5 の方が、salt という仕組みがある分
>強固ではないかと思います。推測にしか過ぎませんが。

そう言えば、perl スクリプトなどから crypt 使うと FreeBSD の最近の
RELEASE では DES で決めうちになっていることが多いようです。
ことに 4.1.1-RELEASE 以降の暗号解禁リリースの話です。
無論 DES 入れなければ、MD5 ですが。
システム全体では、切替え用のライブラリ関数もあって
DES と MD5 を切替えて使えるのに
perl が FreeBSD の切替えメカニズムに追従できていないようなんです。
それともできるのかな?ご存知の方いたらスクリプトレベルでの
切替え法を教わりたいです。

断定はしませんが、ソースをちょっと見た印象として、
-current は、login.conf で切替えられて、
デフォルトは MD5 です。今の所。4-stable は DES 入れると
有無を言わさず DES みたいですね。

No. 1481 # rosegarden 2000/12/20 (水) 02:43:57
>>1480 参照
>ことに 4.1.1-RELEASE 以降の暗号解禁リリースの話です。
正確にはDES が気軽に使えるようになったのは 4.0-RELEASE からですね。

No. 1482 # 68user 2000/12/20 (水) 02:55:43
>>1480 rosegarden
> システム全体では、切替え用のライブラリ関数もあって
> DES と MD5 を切替えて使えるのに perl が FreeBSD の
> 切替えメカニズムに追従できていないようなんです。
あ、そうなんですか。全然知りませんでした。
    /usr/lib/libcrypt* -> libscript*
というリンクなら MD5、
    /usr/lib/libcrypt* -> libdescript*
なら DES、くらいの切り替え方法しかないのかと思ってました。

4.2-BETA (make world しなきゃな〜) のソースを見た限りでは
よくわからなかったのですが、切り替え用ライブラリ関数とは
どれのことでしょうか?

Prev< No. 1477〜1482> Next  [最新発言に戻る] [過去ログ一覧]