Article View: fj.lang.c
Article #566Re: Re: Q:暗号化
From: Masakatz Canada
Date: Wed, 01 Apr 1998 00:00
Date: Wed, 01 Apr 1998 00:00
54 lines
2821 bytes
2821 bytes
かなだです。 In article <vikzpi9kpzm.fsf_-_@eriko.is.s.u-tokyo.ac.jp>, takaaki@is.s.u-tokyo.ac.jp says... >ところで、同じキーを用いて暗号化と復号をやりたいということですが、 >crypt では基本的に復号はできません。 単に「crypt」と書くと誤解を招きそうですね。 例えばSolarisには復号化可能な"crypt"というコマンドがある らしいですし。使ったことはありませんが。 | CRYPT(1) USER COMMANDS CRYPT(1) | NAME | crypt - encode or decode a file | ^^^^^^ | Sun Release 4.1 Last change: 9 September 1987 1 で、takaakiさんの言う所のcryptは、多分UNIXのcrypt(3)の事を 指しているのだと仮定して話をしますが、 >crypt の使用例としては、パスワードを暗号化して記録しておいて、 >認証する時は入力されたパスワードも同じキーで暗号化して、 >その暗号同士の比較を行います。 これは必ずしもそうとは言えません。「キー」というのは「salt」 の事だと思いますが、crypt(3)でよく使われている方法は、 (ばっさり細部を省略して言ってしまえば)『ある定数文字列「を」、 パスワードやsaltから計算して得られた(あるいはそのままの)データ 「で」暗号化する』方法です。 saltは「キー」としての役割ではなく、「同じパスワードのユーザ 同士のパスワードフィールドが同じになってしまう」現象(というか 当然の結果)を回避するためにあるのだと思います。ですから、 「パスワードを、saltをキーにして暗号化する」方法を採っている crypt(3)は無いのではないでしょうか? 近くにオンラインヘルプ入りのUNIXマシンがあれば、man 3 crypt としてみるとよいでしょう。なお、 |****% uname -a |SunOS **** 4.1.4-JL 2 sun4m と |****% uname -a |FreeBSD **** 2.2.1-RELEASE FreeBSD 2.2.1-RELEASE (略) でman 3 cryptしてみましたが、やはり定数文字列をパスワードや saltから得られるなんらかのデータで暗号化する方法を採っていま した。どちらも割と詳しく書かれています。 # ただしFreeBSDのmanはDESでのcryptについて書かれていましたが、 # 実際に使われているのはMD5でした。 -- か な だ ま さ か つ canada@kt.rim.or.jp
Technical Details
Message-ID:
<6ftln1$g3$1@news.kt.rim.or.jp>Path:
arc1-ca.pugleaf.net!unknown!not-for-mailReferences:
<6fm8c9$a2h$1@news1.dti.ne.jp> <vikzpi9kpzm.fsf_-_@eriko.is.s.u-tokyo.ac.jp>Show Full Headers
Complete Article Headers
X-Google-Language: Japanese,JIS X-Google-Thread: 106434,d7a1f9e0b2aa78a4 X-Google-Attributes: gid106434,public From: canada@kt.rim.or.jp (Masakatz Canada) Subject: Re: Re: Q:暗号化 Date: 1998/04/01 Message-ID: <6ftln1$g3$1@news.kt.rim.or.jp> X-Deja-AN: 339850193 References: <6fm8c9$a2h$1@news1.dti.ne.jp> <vikzpi9kpzm.fsf_-_@eriko.is.s.u-tokyo.ac.jp> Mime-Version: 1.0 Content-Type: Text/Plain; charset=ISO-2022-JP Organization: RIMNET Newsgroups: fj.lang.c