このエントリーのきっかけ
いろいろな企業に使われている、電子メール(以下、メール)でのファイル送信方法。
内容は、暗号化ZIPを相手に送り、別メールでパスワードを相手に送るもの。
はっきり言って意味ないじゃんというのが、私の持論です。
なぜ意味ないのか?
過去の私のブログにも書いてあるが、
- 同じメールアドレス宛に送信されていること
そりゃそうだけど、同じメールアドレスに送っているので、意味ないです。
もし、意味があるとしたら、パスワードを送る際にメールアドレスを確認できることくらいです。 - ZIPのパスワードが平文であること
当然だけど、ZIPのパスワードをメールで送るときは、平文です。
なので、添付のZIPファイルとパスワードが盗めてしまえば、余裕で解読できます。 - メールの特性上、経路で盗み取られる可能性がある
メールのシステムの特性上、いろんなメールサーバーを経由する場合があります。
その時、メールが盗まれてしまう可能性もあります。
もちろん、平文で書かれたパスワードなんて、簡単に盗まれます。
#メールサーバーサイドのウイルス対策は、メールの中を見て、スキャンします。 - これも、メールの特性上、プールされているときに盗み取られる
これも、メールの特性ですが、サーバーにプールされます。
その時に、クラッカーだったり、サーバー管理者だったりが盗める可能性があります。
結論としましては、メールは、誰かに見られています。
昔は、メールは葉書だというたとえがありました。
今も昔も変わりません。
んじゃどうしたらいいのか?
昔から、標準化されているS/MIMEがあるが、一向に普及しない。
そのわりに、root証明書からの署名してもらう等で導入にコストがかかる。
#最近は、Let's Encryptが流行っているけど、クライアント証明書は発行していない。
なので、PGP(GnuPG)である。
PGP自体も昔からあった
PGP自体も昔からあった。
私自身も、一番古い証明書は、1998年です。
なぜ、普及しなかったかというと…
- 導入するのに、手間がかかりすぎた
GUIで操作できる(当時も、WinPTだったっけ?)というのも、あったが、日本語化が遅かったり、詳しい解説書がほとんど英語でした。 - PGPの権利関係
PGPは、暗号化輸出の規制があって、国際版とアメリカ版が分かれていました。
あと、RSAの技術が使われているんだけど、そのライセンスの関係で、商用利用をするには、お金がかかりました。
その時点で、導入をためらった企業も多いと思います。 - 日本語特有の文字コードが複雑に入り混じっていた
Shift-jisやら、eucやら、jisコードやらで、文字コードが統一されていませんでした。
それにより、署名が不正というエラーが出て、使いずらいものでした。
今は、違う!
時代は変わり、RSAの特許も切れて、PGPは、息を吹き返そうとしています。
PGPはいまだに、企業のもの(シマンテック社)ですが、その互換で、GnuPGだったり、OpenPGPがあります。
GnuPGは、完全オープンソースで、無料で自由に扱えます(Gnuライセンス)。
そして、今現在、GnuPG2系ができて、Windows版は、GPG4WINという統合型アプリケーションとして、配布されています。
そのアプリが使いやすく、昔みたいにいろんな設定をしなくてもいいのが、特徴です。
では、実際の導入方法
- GnuPGの公式サイトへ行く
The GNU Privacy Guard - 「Download」をクリックし、下のほうにある、「Gpg4win」をクリックする
- Gpg4winの緑色をクリックする
- 「$0」をクリックし、「Download」をする
もちろん寄付してもOK(むしろ、推奨) - ダウンロードしたファイルを開き、セットアップを開始する
- ほとんどデフォルトでOK
- セットアップが完了し、「Finish」をクリックしたら、「Kleopatra」が起動される
- ほとんどの人が初めてと仮定して、「New Key Pair」をクリックする
- 名前とメールアドレスを入れる前に、詳細設定をクリックする
- 鍵の要素で「RSA」の項目を2つとも4096ビットにして、次へをクリックする
別にデフォルトでもいいが、大きいに越したことはない。
ほかの要素でもいいが、互換性を重視して、「RSA」にしました。 - 名前とメールアドレスを入力し、次へをクリックする
- すべての詳細を表示にチェックを入れて、ちゃんと、設定があっているか確認し、「Create」をクリックする
- パスフレーズの入力項目が出るので、パスフレーズを入力し、同じものをもう一度入力し、OKをクリックする
できうる限り、品質が100%になるようにしましょう。
あと、お約束ですが、このパスフレーズ(以下、パスワード)、ほかのサイト等で使用していないパスワードにしておきましょう。
- 以下の画面が出るので、しばらく待つ
PCのスペックによっては、結構時間がかかる可能性がありますので、気長に待ちましょう。
あと、止まっているからと言って、このウィンドウを閉じるようなことをしないようにしましょう。
#バックグランドで頑張って鍵を生成しています - 作成が完了すると、以下の画面が出るので、「Make a Backup Of Your Key Pair...」をクリックし、秘密鍵をバックアップする
- ASCII形式にチェックを入れて、出力ファイルのフォルダーアイコンをクリックして、保存先及び、ファイル名を入力するし、「OK」をクリックする
拡張子は、自動的に付与されます(.asc)
このバックアップキーは、盗まれないように安全な場所に入れておきましょう。
あと、後述でスマートフォンやブラウザ(Webメール)で使うときにも、使用します。 - パスワードを求められるので、設定したパスワードを入力して「OK」をクリックする
- 秘密鍵のエクスポートが完了したら、以下のダイアログが出るので、「OK」をクリックする
- 晴れて自分の証明書ができました
- このウィンドウが閉じられても、タスクバーにKleopatraがいます
悪さはしないけど、気持ち悪い人は、終了しておきましょう。
ただ、暗号化や復号するときに立ち上げが遅くなる可能性があります。
力尽きた…
本当は、ファイル暗号化編とか、メール編、スマホでの運用編と書きたかったんだけど、力尽きましたorz
続きが読みたい方は、いいね等シェアをして、励ましてください。
よろしくお願いいたします。
#続編を作りました
PGP(GnuPG)の導入方法教えてやるから、いい加減、ファイルをZIP暗号化して、別メールでパスワードを送るのは、やめてくれ!~公開キー配布編~ - Qiita
よろしくお願いいたします。
さらに続編を作りました
PGP(GnuPG)の導入方法教えてやるから、いい加減、ファイルをZIP暗号化して、別メールでパスワードを送るのは、やめてくれ! ~ファイル添付編~ - Qiita
さらにOutlookでの使用方法を作りました
GnuPG(PGP)を利用した、暗号メール(Outlook編) - Qiita
よろしくお願いいたします。