68user's page 掲示板

Prev< No. 3355〜3360> Next  [最新発言に戻る] [過去ログ一覧]
No. 3355 # 68user 2003/10/02 (木) 06:16:15
>>3344 Tsun
> 共通鍵暗号のページで3DESでの鍵長が56*3にならない訳ですが
せっかく教えていただいたので、勉強してみました。といっても
    暗号技術大全
          http://www.amazon.co.jp/exec/obidos/ASIN/4797319119/ref%3Db%5Fbb%5F1%5F25/249-2894126-9073950
を読んだだけですが。


「鍵Aで暗号化 → 鍵Bで復号化 → 鍵Aで暗号化」という方法を
EDE (Encrypt-Decrypt-Encrypt) と言う。DES なら DES-EDE
などと書く。

Encrypt-Decrypt-Encrypt が特に解読しづらいわけではないので、
Encrypt-Encrypt-Encrypt でも別に構わない。

ただ、EDE の利点は、鍵A と 鍵B を同じにすれば一度だけ暗号化
したのと同じ結果が得られること (DES-EDE に対応しておけば、
DES にも対応したことになる)。

なぜ 3回必要なのか、2回の暗号化 (つまり 2DES) ではダメな
理由はというと、2回の暗号化では中間値探索 (meet-in-the-middle)
攻撃に弱いため。56bit の DES で 2回暗号化した場合、総当たり
攻撃に限ると 112bit の強さを持つが、中間値探索には 57bit の
強さしかない。


3DES には鍵を 2つ使う方法と、3つ使う方法がある。

鍵を 3つ使う 3DES は総当たりに対しては 56*3=168bit の強度が
あるが、中間値探索に対しては 112bit の相当の強度になる。

一方、鍵を 2つ使う 3DES は中間値探索の弱点はないため、総当たりと
中間値探索のいずれに対しても 112bit の強度になる。

よって、現実的な強さとしては鍵 3つの方が優秀である。

OpenSSL で実装されている暗号で言うと、
    鍵2つの 3DES: des-ede-cbc(=des-ede), des-ede-cfb, des-ede-ofb
    鍵3つの 3DES: des-ede3-cbc(=des-ede3=des3), des-ede3-cfb, des-ede3-ofb
となる。

ただ、
> 鍵長と演算量の比は対数的ですから、112ビットの鍵を使って
> 1回演算するより、56ビットの鍵を使って、3回演算するほうが
> 有利となります。
ここはよくわかりませんでした。DES の鍵は結局は 16ラウンド
それぞれの 48bit 内部鍵の元となるだけなので、対数的ではない
のではないかと思いました。

No. 3356 # has 2003/10/05 (日) 01:56:39
ども。おひさしぶりです。
これまでときどき私のlinux環境からDNSの名前解決ができない
という件でいろいろと相談させて戴いていましたが、今回たまたま
Redhat 9 publisher editionをインストールし試してみたところ、
なぜか無事名前解決できるようになりました。

もしかしたらこれまでインストール時に何かのチェックボックスに
チェックを入れなかったなど、気づいていなかったミスがあったかも
しれませんが、とにかく使えるようになりましたのでまずはご報告
します(もうしないかもしれませんが…^^;)。

というわけでこれまでいろいろアドバイスいただきまして、どうも
ありがとうございました。これで晴れて開発環境を手に入れ、無事
プログラミングにいそしむことができます。今後もどうぞよろしく
お願いします。

No. 3357 # 68user 2003/10/05 (日) 01:58:24
「ネットワークプログラミングの基礎知識」の「リンク集・参考書籍」
      http://x68000.startshop.co.jp/~68user/net/link-book.html
を更新し、以下の書籍の紹介を追加しました。

    - C言語による TCP/IP ネットワークプログラミング
    - IPv6 ネットワークプログラミング
    - 暗号技術大全
    - 暗号解読―ロゼッタストーンから量子暗号まで―

一番お勧めなのは、「暗号解読」のところで触れている
    フェルマーの最終定理
        http://shinchosha.co.jp/cgi-bin/webfind3.cfm?ISBN=539301-4
だったりします。

# 次点が「暗号解読」

No. 3358 # yudai 2003/10/08 (水) 02:19:23
はじめましてyudaiと申します。
突然お邪魔して誠に失礼とは思いますが、ご教授いただけませんでしょうか?

Perlでファイルオープン
    open(TESDAT, "tesdata.txt" ); #エラー処理略
    @list=<TESDAT>;

#testdata.txt内容
m_A9<>太郎<>26歳
f_C5<>花子<>23歳
m_G7<>一郎<>19歳
#ここまで

等として読み込むと
1行ごとに配列の要素となると思うのですが、、この場合に添え字[2]でなく要素の値(f_C5等)で参照する方法はございませんか?
htmlフォームから"f_C5"の入力を受け取りtesdata.txtを読み込み文字列を参照して
$ID="f_C5";
$name="花子";
$old="23歳";
のような結果を得たいのです。
尚、データベースモジュールは使えない環境です。
乱文にて恐縮ではございますがどうかお教えください。

No. 3359 # 68user 2003/10/08 (水) 18:58:09
>>3356 has
> なぜか無事名前解決できるようになりました。
そうですか、原因がわからず解決してしまって残念です :-)

ときにウチの環境でも返ってくる AAAA レコードが壊れていたり、
DNS サーバからの返事がなかなか返ってこなかったり、と思ったら
急になおったり、使用する DNS サーバを変えると再現しなかったり、
でも動作がおかしい DNS サーバはひとつではなかったり、と
なかなか大変です。

>>3358 yudai
案1:
    my $input_id = 'f_C5'; # web からの入力
    open(TESDAT, "tesdata.txt" );
    while (<TESDAT>){
            chomp;
            my ($ID, $name, $old) = split($_, '<>');
            if ( $ID eq $input_id ){
                    # なんらかの処理
            }
    }

案2:
    my $input_id = 'f_C5'; # web からの入力
    my %namehash;
    my %oldhash;
    open(TESDAT, "tesdata.txt" );
    while (<TESDAT>){
            chomp;
            my ($ID, $name, $old) = split($_, '<>');
            $namehash{$ID} = $name;
            $oldhash{$ID} = $old;
    }
    if ( defined $namehash{$input_id} ){
          # なんらかの処理。
          # print "$input_id $namehash{$input_id} $oldhash{$input_id}\n";
          # とか。
    }
というのが回答になっていますか?

No. 3360 # yoshi 2003/10/14 (火) 09:23:49
はじめまして、yoshiと申します。
FTPについてご教授頂きたく思い、書き込ませていただきます。

同一ネットワーク内において、
パソコン(Windows98)→ワークステーション(UNIX)へのFTPでのログインはcmd.exe上からFTPにてログインする事で、可能なのですが、
ワークステーション(UNIX)→パソコン(Windows98)へのFTPでのログインは可能でしょうか?
普通にFTPでログインしようとすると、「接続が拒否されました」と弾かれてしまいます。
可能だとしても、パソコン側で何か設定変更が必要なのでしょうか。

初歩的な質問で申し訳御座いませんが、よろしくお願い致します。

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