メールに「1]パスワードを付与したEXCELファイル[2]AES256でパスワード付与したファイルを

送信した時 「1」「2」の添付ファイルについて、その中身が盗み見られる可能性はどう違うのでしょうか?

メールを盗んだ場合…
EXCELの場合はパスワードが分からなくても 中身を解読できる (暗号化をしてないから)
AES256の場合はパスワードが分からなくても 中身を解読しにくい(暗号化が強いから)
という理解で正しいでしょうか?

であれば、つまりパスワード付与はメールが誤送された場合にのみ効いていることになるのでしょうか?(暗号化されたファイルのパスワードの解読については、まず暗号化が解けてからその次にパスフレーズの解読が必要になる…ということでしょうか?)

的外れな質問になってしまっていたら申し訳ありません。
よろしくお願い致します。


回答の条件
  • 1人3回まで
  • 登録:
  • 終了:2008/12/16 17:23:38
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

ベストアンサー

id:goodvn No.2

回答回数228ベストアンサー獲得回数18

ポイント150pt

他の質問を見てても,暗号化をちょっと誤解されているかな,と思う面があるので,簡単な解説もつけておきます

まず,暗号化には,アルゴリズムと鍵,という要素があります.暗号化の強度を決めるのは,アルゴリズムと鍵とそれを扱う人間の行動の3点がメインの要素です

例えば,アルゴリズムの比較,例えば,zipの暗号化と,AES256 のどちらが強度が高いでしょうか?という質問は,アルゴリズム以外の,鍵と行動が同じという前提であれば,zip < AES256 という回答ができます

しかし,例えば zip の暗号化では,鍵はしっかりした鍵長があり,辞書アタックにも耐えられ,かつしかるべき手段で取り扱われている状況と,AES256 の暗号化だけど,鍵は辞書に載った簡単な短い文字列で,その鍵はメイル本文に書いてある,なんて状況を比較したら,どちらが暗号化の強度として高いかは議論できません(直感的には後者)


暗号化と復号には,鍵を使いますが,この鍵にはパスフレーズを使うアルゴリズムが多いので,暗号化されたデータを不正に復号するには,イコールパスフレーズを探す事,と考えて良いと思います(パスフレーズとは違う鍵もあります)


アルゴリズム単体で暗号化強度の高い AES256 を使ったとしても,復号の鍵である,パスフレーズが分かってしまえば,その復号は何も困難ではありません

このパスフレーズは,ホンモノを知らなくても,ある程度予測する技術があります.これは,辞書アタックと呼ばれる手法なのですが,パスフレーズには,よく使われる文字列に法則があることから,パスフレーズと思われる文字列を順にパスフレーズと仮定して復号を試みる,ということを行います

分かりやすい例で言うと,銀行口座の暗証番号が,数字4文字だとします.苦労しますが,0000,0001,0002 と入れていけば,平均,5,000回試せば,どこかで本当の暗証番号に当たりますよね.銀行口座と違って,コンピュータは非常に高速にこういうことを試せるので,パスフレーズが短いと,すぐに突き止められてしまいます

この辞書アタックを行う場合も,AES256 などは復号に計算量を必要とするアルゴリズムのため,1回ごと試すのに時間が掛かるため,パスフレーズを突き止めるまで時間が掛かります.DES などの古いアルゴリズムは,復号に掛かる計算量が少ないため,同じ時間で,より多くの文字列を試す事ができます


辞書アタックを避ける方法として,

・大文字,小文字,数字,記号を必ず全て使う

・文字長を長く取る

・意味の無い文字列にする

というポリシーが良いと思います.しかし難しくする事で,今度は,パスフレーズを紙にメモしたりする人が出てきます.これでは,パスフレーズを工夫した意味がなくなります(3つの要素のうち,行動に問題がある)


辞書アタックは,パスフレーズを求めるクラック手法ですが,それ以外にも,アルゴリズム自体の脆弱性を付いたクラック手法もあり,以前の質問で出た,パスワード付 zip が劣る要因としては,アルゴリズム自体に脆弱性があるためです

アルゴリズムの脆弱性の議論については経験則でしかなく,"誰かが発見" するか否か,です.多くの人が使ってるにも関わらず,長時間脆弱性が発見されないから暗号化強度が高い,という結論になります

その他の回答1件)

id:pahoo No.1

回答回数5960ベストアンサー獲得回数633

ポイント100pt

いいえ、違います。


Excelでパスワードを指定した場合も、Excelブック全体がRC4という共通鍵暗号で暗号化されています。Word2003以降では、鍵の長さ128ビットを選択でき、AES-256まではいかないにせよ、そこそこの暗号強度があると言われています。


RC4はストリーム暗号の一種で、リアルタイムで暗号化するのを得意としており、AESより高速なアルゴリズムを使っています。その分、暗号強度は弱いのですが、Webでお馴染みのSSLもRC4がベースになっています。ちなみに、WinnyもRC4暗号です。

id:nil55

ご回答ありがとうございます。

申し訳ありません。私の理解が乏しいので、質問がぼやけてしまいました。

あくまで前提として暗号化されていないメールに 暗号化した添付ファイルを付与する場合なのですが…

仮に暗号化がもし完璧と言えるのであれば、パスワード付与は不要ということになるのでしょうか?

つまり暗号化によりメールの受信者に、その添付ファイルがとどくまでは暗号化された状態がずっと続いている?といえるということでしょうか?

何度も質問してしまい申しわけありません。よろしくお願い致します。

EXCELのパスワード付与についても暗号化されているとは知りませんでした!!

とても勉強になりました。

2008/12/10 02:01:02
id:goodvn No.2

回答回数228ベストアンサー獲得回数18ここでベストアンサー

ポイント150pt

他の質問を見てても,暗号化をちょっと誤解されているかな,と思う面があるので,簡単な解説もつけておきます

まず,暗号化には,アルゴリズムと鍵,という要素があります.暗号化の強度を決めるのは,アルゴリズムと鍵とそれを扱う人間の行動の3点がメインの要素です

例えば,アルゴリズムの比較,例えば,zipの暗号化と,AES256 のどちらが強度が高いでしょうか?という質問は,アルゴリズム以外の,鍵と行動が同じという前提であれば,zip < AES256 という回答ができます

しかし,例えば zip の暗号化では,鍵はしっかりした鍵長があり,辞書アタックにも耐えられ,かつしかるべき手段で取り扱われている状況と,AES256 の暗号化だけど,鍵は辞書に載った簡単な短い文字列で,その鍵はメイル本文に書いてある,なんて状況を比較したら,どちらが暗号化の強度として高いかは議論できません(直感的には後者)


暗号化と復号には,鍵を使いますが,この鍵にはパスフレーズを使うアルゴリズムが多いので,暗号化されたデータを不正に復号するには,イコールパスフレーズを探す事,と考えて良いと思います(パスフレーズとは違う鍵もあります)


アルゴリズム単体で暗号化強度の高い AES256 を使ったとしても,復号の鍵である,パスフレーズが分かってしまえば,その復号は何も困難ではありません

このパスフレーズは,ホンモノを知らなくても,ある程度予測する技術があります.これは,辞書アタックと呼ばれる手法なのですが,パスフレーズには,よく使われる文字列に法則があることから,パスフレーズと思われる文字列を順にパスフレーズと仮定して復号を試みる,ということを行います

分かりやすい例で言うと,銀行口座の暗証番号が,数字4文字だとします.苦労しますが,0000,0001,0002 と入れていけば,平均,5,000回試せば,どこかで本当の暗証番号に当たりますよね.銀行口座と違って,コンピュータは非常に高速にこういうことを試せるので,パスフレーズが短いと,すぐに突き止められてしまいます

この辞書アタックを行う場合も,AES256 などは復号に計算量を必要とするアルゴリズムのため,1回ごと試すのに時間が掛かるため,パスフレーズを突き止めるまで時間が掛かります.DES などの古いアルゴリズムは,復号に掛かる計算量が少ないため,同じ時間で,より多くの文字列を試す事ができます


辞書アタックを避ける方法として,

・大文字,小文字,数字,記号を必ず全て使う

・文字長を長く取る

・意味の無い文字列にする

というポリシーが良いと思います.しかし難しくする事で,今度は,パスフレーズを紙にメモしたりする人が出てきます.これでは,パスフレーズを工夫した意味がなくなります(3つの要素のうち,行動に問題がある)


辞書アタックは,パスフレーズを求めるクラック手法ですが,それ以外にも,アルゴリズム自体の脆弱性を付いたクラック手法もあり,以前の質問で出た,パスワード付 zip が劣る要因としては,アルゴリズム自体に脆弱性があるためです

アルゴリズムの脆弱性の議論については経験則でしかなく,"誰かが発見" するか否か,です.多くの人が使ってるにも関わらず,長時間脆弱性が発見されないから暗号化強度が高い,という結論になります

  • id:Mook
    暗号化の使用がどのように安全であるか、ということを知るのは大切ですが
    厳密に理解しようとすると暗号化理論を理解しなければなりません。

    そのあたりは回答される方にお任せして、

    盲信的に使用するのを勧めるわけではありませんが、AES 方式はアメリカが
    合衆国の暗号規格として採用しているものです。
    http://ja.wikipedia.org/wiki/AES%E6%9A%97%E5%8F%B7

    数ある暗号化方式の中で、現時点では最も安全性の高いと考えられているものの
    一つと理解して間違いではないと思います。
  • id:pahoo
    暗号化アルゴリズムと鍵の関係については、goodvnさんが#2で回答しているとおりです。

    > 仮に暗号化がもし完璧と言えるのであれば、パスワード付与は不要ということになるのでしょうか?

    いいえ。
    まず、AESやRC4といった共通鍵方式の場合、暗号をかけるための「鍵」が必須です。
    これを「パスワード」と称しているプログラムや解説もありますが、厳密には「鍵」と「パスワード」は同義ではありません。なぜなら、弱い共通鍵暗号方式では、パスワードとして入力した文字の一部しか「鍵」として使われないからです。また、プログラムによっては、パスワードが「鍵」を隠すためのキーになっていることもあります。

    共通鍵方式以外にも、「鍵」を使う暗号として秘密鍵方式があります。
    しかし、世の中には「鍵」を使わない暗号方式も存在しています。

    よって、お答えとしては、以下のようになります。
    ・AES、RC4では、暗号化を行うために「鍵」が必須です。
    ・暗号化プログラムの中で「パスワード」と「鍵」が同じ意味で使われているなら、パスワードは必須です。
  • id:JULY
    細かい話で、質問の回答ではないので、コメントにします。

    >DES などの古いアルゴリズムは,復号に掛かる計算量が少ないため

    必ずしもそうではありません。AES と DES の処理比較では、一般に AES の方が高速と言われています。

    http://itpro.nikkeibp.co.jp/article/Keyword/20070202/260555/

    DES に関して言うと、鍵長が 56 bit と短いことが問題になりました(他にも線形解読法による解読実験に成功した、というのもあります)。DES の暗号化処理を3回繰り返す Triple-DES にすると、鍵の使い方によって 112 bit、168 bit の鍵を使うことが出来ますが、単純に DES の処理を3回繰り返すために、処理速度の面で不利でした。

    AES は最初から 128、192、256 bit の鍵長が使え、かつ、鍵長が長くても、処理速度に影響が少ないことが知られています。

    http://www.omron.co.jp/r_d/omtec/backnumber/147/pdf/147-14.pdf

    で、鍵の長さは結構大切で、56 bit と 128 bit で、存在しうる鍵のバリエーションは、

    56 bit:72,057,594,037,927,936通り
    128 bit:340,282,366,920,938,463,463,374,607,431,768,211,456通り

    で、128 bit 鍵の方が約 470 兆倍のバリエーションを持っています。仮に、56 bit の鍵をすべて確認するのが1日で確認できるような計算機が現れても、その計算機で 128bit の鍵を全部調べるには 1 兆年以上かかることになります。なので、暗号化/復号化処理が「こっちの方が 100 倍早い」といった程度の差は、鍵長の違いに比べると極めて小さなものになります。
  • id:kuro-yo
    > 暗号化されていないメールに 暗号化した添付ファイルを付与する場合なのですが…
    > 暗号化によりメールの受信者に、
    > その添付ファイルがとどくまでは暗号化された状態がずっと続いている?
    > といえるということでしょうか?

    ひょっとすると質問者さんは、

    暗号化されたファイルをメールに添付すると、
    メールが送信される直前に添付ファイルの暗号化が一旦解除され、
    それがメール本文とともに送信され、
    メールが受け取られた時に再び暗号化される、

    …という手順が踏まれているのではないだろうか、
    と考えていらっしゃるのでしょうか?

    そのような手順が全く現実的でない事は、
    たぶん質問者さんにもお分かりいただけると思います。

    つまり、実際には、そのような暗号化の解除や再暗号化は全く行われません。
    添付されたファイルは、そのファイルの内容がそのまま、相手に届くだけです。

    注意していただきたいのは、ここで言う「ファイルの内容」というのが、
    そのファイルに格納されているバイナリーデータそのものの事を指しているのであって、
    それをアプリケーションで開いた時に見えるものの事ではないという事です。

    例えば、アプリケーション上では全く同じ内容に見えるファイルであっても、
    暗号化されているファイルとそうでないファイルとでは、
    ファイルに格納されているバイナリーデータは全く異なるものになります。
  • id:nil55
    皆様すばらしい回答とコメントありがとうございます!
    私が如何に勘違いをしていたか分かりました(焦)
    コメントをくださった方にもポイントさしあげたい…
    大変勉強になりました。ありがとうございました

この質問への反応(ブックマークコメント)

トラックバック

  • 暗号化の強度 緑茶は命の水 2008-12-16 09:50:51
    暗号化には,アルゴリズムと鍵,という要素があります.暗号化の強度を決めるのは,アルゴリズムと鍵とそれを扱う人間の行動の3点がメインの要素です 例えば,アルゴリズムの比較,例
「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません