PGP(GnuPG)の導入方法教えてやるから、いい加減、ファイルをZIP暗号化して、別メールでパスワードを送るのは、やめてくれ！ ～セットアップ編～

# このエントリーのきっかけ
いろいろな企業に使われている、電子メール(以下、メール)でのファイル送信方法。
内容は、暗号化ZIPを相手に送り、別メールでパスワードを相手に送るもの。

はっきり言って意味ないじゃんというのが、私の持論です。

# なぜ意味ないのか?
[過去の私のブログ](http://kwd.blog.jp/archives/1804820.html)にも書いてあるが、

1. 同じメールアドレス宛に送信されていること  
そりゃそうだけど、同じメールアドレスに送っているので、意味ないです。  
もし、意味があるとしたら、パスワードを送る際にメールアドレスを確認できることくらいです。
2. ZIPのパスワードが平文であること  
当然だけど、ZIPのパスワードをメールで送るときは、平文です。  
なので、添付のZIPファイルとパスワードが盗めてしまえば、余裕で解読できます。
3. メールの特性上、経路で盗み取られる可能性がある  
メールのシステムの特性上、いろんなメールサーバーを経由する場合があります。  
その時、メールが盗まれてしまう可能性もあります。  
もちろん、平文で書かれたパスワードなんて、簡単に盗まれます。  
＃メールサーバーサイドのウイルス対策は、メールの中を見て、スキャンします。
4. これも、メールの特性上、プールされているときに盗み取られる  
これも、メールの特性ですが、サーバーにプールされます。  
その時に、クラッカーだったり、サーバー管理者だったりが盗める可能性があります。

結論としましては、メールは、誰かに見られています。
昔は、メールは葉書だというたとえがありました。
今も昔も変わりません。

# んじゃどうしたらいいのか?
昔から、標準化されているS/MIMEがあるが、一向に普及しない。
そのわりに、root証明書からの署名してもらう等で導入にコストがかかる。
＃最近は、[Let's Encrypt](https://letsencrypt.jp/)が流行っているけど、クライアント証明書は発行していない。

なので、PGP(GnuPG)である。

# PGP自体も昔からあった
PGP自体も昔からあった。  
私自身も、一番古い証明書は、1998年です。  
なぜ、普及しなかったかというと…

1. 導入するのに、手間がかかりすぎた  
GUIで操作できる(当時も、WinPTだったっけ?)というのも、あったが、日本語化が遅かったり、詳しい解説書がほとんど英語でした。  
2. PGPの権利関係  
PGPは、暗号化輸出の規制があって、国際版とアメリカ版が分かれていました。  
あと、RSAの技術が使われているんだけど、そのライセンスの関係で、商用利用をするには、お金がかかりました。  
その時点で、導入をためらった企業も多いと思います。
3. 日本語特有の文字コードが複雑に入り混じっていた  
Shift-jisやら、eucやら、jisコードやらで、文字コードが統一されていませんでした。  
それにより、署名が不正というエラーが出て、使いずらいものでした。

# 今は、違う!
時代は変わり、RSAの特許も切れて、PGPは、息を吹き返そうとしています。
PGPはいまだに、企業のもの(シマンテック社)ですが、その互換で、GnuPGだったり、OpenPGPがあります。 
GnuPGは、完全オープンソースで、無料で自由に扱えます(Gnuライセンス)。  
そして、今現在、GnuPG2系ができて、Windows版は、GPG4WINという統合型アプリケーションとして、配布されています。

そのアプリが使いやすく、昔みたいにいろんな設定をしなくてもいいのが、特徴です。  

# では、実際の導入方法

1. GnuPGの公式サイトへ行く  
[The GNU Privacy Guard](https://www.gnupg.org/)
2. 「Download」をクリックし、下のほうにある、「Gpg4win」をクリックする
3. Gpg4winの緑色をクリックする
4. 「$0」をクリックし、「Download」をする  
もちろん寄付してもOK(むしろ、推奨)
5. ダウンロードしたファイルを開き、セットアップを開始する
6. ほとんどデフォルトでOK
7. セットアップが完了し、「Finish」をクリックしたら、「Kleopatra」が起動される
8. ほとんどの人が初めてと仮定して、「New Key Pair」をクリックする  
![kleo01.png](https://qiita-image-store.s3.amazonaws.com/0/221663/b2a1b79d-6bce-281b-62bc-443ba1888b05.png)
9. 名前とメールアドレスを入れる前に、詳細設定をクリックする  
![kleo02.png](https://qiita-image-store.s3.amazonaws.com/0/221663/1648241f-b703-fbc4-58e9-d86d75334b82.png)
10. 鍵の要素で「RSA」の項目を2つとも4096ビットにして、次へをクリックする  
![kleo03.png](https://qiita-image-store.s3.amazonaws.com/0/221663/2722777a-99da-f2be-ebc5-e89301cadd1c.png)  
別にデフォルトでもいいが、大きいに越したことはない。  
ほかの要素でもいいが、互換性を重視して、「RSA」にしました。
11. 名前とメールアドレスを入力し、次へをクリックする  
![kleo04.png](https://qiita-image-store.s3.amazonaws.com/0/221663/3b3ac6e2-bed6-4bb1-6a87-10dc5d44c8b5.png)
12. すべての詳細を表示にチェックを入れて、ちゃんと、設定があっているか確認し、「Create」をクリックする  
![kleo05.png](https://qiita-image-store.s3.amazonaws.com/0/221663/2e366078-613d-3aa4-416f-545db0bb084e.png)
13.  パスフレーズの入力項目が出るので、パスフレーズを入力し、同じものをもう一度入力し、OKをクリックする  
![kleo06.png](https://qiita-image-store.s3.amazonaws.com/0/221663/267d128a-c33f-5af6-372f-c24d09f9a73c.png)  
できうる限り、品質が100%になるようにしましょう。  
あと、お約束ですが、このパスフレーズ(以下、パスワード)、ほかのサイト等で使用していないパスワードにしておきましょう。  
![kleo07.png](https://qiita-image-store.s3.amazonaws.com/0/221663/e578facd-a572-5cd5-def6-ca75f42f53ac.png)
14. 以下の画面が出るので、しばらく待つ  
![kleo08.png](https://qiita-image-store.s3.amazonaws.com/0/221663/442456a3-59c6-f7b0-e590-eea401d10828.png)  
PCのスペックによっては、結構時間がかかる可能性がありますので、気長に待ちましょう。  
あと、止まっているからと言って、このウィンドウを閉じるようなことをしないようにしましょう。  
＃バックグランドで頑張って鍵を生成しています
15.  作成が完了すると、以下の画面が出るので、「Make a Backup Of Your Key Pair...」をクリックし、秘密鍵をバックアップする  
![kleo09.png](https://qiita-image-store.s3.amazonaws.com/0/221663/0c5c350e-56be-6738-8d4b-5787290a96b5.png)
16. ASCII形式にチェックを入れて、出力ファイルのフォルダーアイコンをクリックして、保存先及び、ファイル名を入力するし、「OK」をクリックする  
![kleo10.png](https://qiita-image-store.s3.amazonaws.com/0/221663/333b17c5-d884-e930-0456-e2bc958bc9c8.png)  
拡張子は、自動的に付与されます(.asc)  
このバックアップキーは、盗まれないように安全な場所に入れておきましょう。  
あと、後述でスマートフォンやブラウザ(Webメール)で使うときにも、使用します。
17. パスワードを求められるので、設定したパスワードを入力して「OK」をクリックする  
![kleo12.png](https://qiita-image-store.s3.amazonaws.com/0/221663/59d5e0d1-9eab-0df2-ac3f-6e30b6908408.png)
18. 秘密鍵のエクスポートが完了したら、以下のダイアログが出るので、「OK」をクリックする  
![kleo13.png](https://qiita-image-store.s3.amazonaws.com/0/221663/7879da3b-413e-bfb1-b23e-c8f48d9853e1.png)
19. 晴れて自分の証明書ができました  
![kleo14.png](https://qiita-image-store.s3.amazonaws.com/0/221663/c67425cd-54d5-492c-78b1-1f35aed3d798.png)
20. このウィンドウが閉じられても、タスクバーにKleopatraがいます  
![kleo16.png](https://qiita-image-store.s3.amazonaws.com/0/221663/5acd5401-a5c7-f9c2-3acd-03f821d0cd9c.png)  
悪さはしないけど、気持ち悪い人は、終了しておきましょう。  

ただ、暗号化や復号するときに立ち上げが遅くなる可能性があります。

# 力尽きた…
本当は、ファイル暗号化編とか、メール編、スマホでの運用編と書きたかったんだけど、力尽きましたorz  
続きが読みたい方は、いいね等シェアをして、励ましてください。  
よろしくお願いいたします。

#続編を作りました
[PGP(GnuPG)の導入方法教えてやるから、いい加減、ファイルをZIP暗号化して、別メールでパスワードを送るのは、やめてくれ！～公開キー配布編～ - Qiita](https://qiita.com/karkwind/items/d56976616780e8460513)

よろしくお願いいたします。

# さらに続編を作りました
[PGP(GnuPG)の導入方法教えてやるから、いい加減、ファイルをZIP暗号化して、別メールでパスワードを送るのは、やめてくれ！ ～ファイル添付編～ - Qiita](https://qiita.com/karkwind/items/0639ddd026be69e72e64)

# さらにOutlookでの使用方法を作りました

[GnuPG(PGP)を利用した、暗号メール(Outlook編) - Qiita](https://qiita.com/karkwind/items/2eed88611b9e99be25dc)

よろしくお願いいたします。