[Tokyo.pm] crypt() eq 'DES' || 'MD5'

Dan Kogai dankogai @ dan.co.jp
2002年 7月 10日 (水) 19:53:31 CDT


On Thursday, July 11, 2002, at 04:44 AM, Hiroyuki OYAMA wrote:
> クレイフィッシュの小山です。
>
> Perlからcrypt()がDESベースかMD5ベースかを判定する手近な方
> 法って何がありえますか?

*BSDに限って言えば、非常に単純な手法が使えます。

$isDES = !($crypted =~ /^\$/o);

なぜそうなのかは man 3 crypt にて。

わりとまっとうそうなのは

$isDES =~ ($crypted =~ /^[\.\/0-9A-Za-z]{13}$/o);

かな。少なくともMD5の場合にはもっと長くなるので、これで判別がついたと思
います。

Dan the Crypted Man




Tokyo-pm メーリングリストの案内