S/MIMEとは
S/MIME(Secure / Multipurpose Internet Mail Extensions:エスマイム)とは、暗号化技術と電子署名を使った安全に電子メールを送受信するための規格です。
主に銀行のようなセキュリティが重要なメールの送受信で採用されている方式です。
S/MIMEを利用するには、メールの送信者と受信者が S/MIME に対応しているメーラー(メールソフト)を使う必要がありますが、Microsoft社のOutlookやiPhone・iPadのメーラーなど多くのメーラーが対応しています。
スポンサーリンク
S/MIMEと同じように電子メールを暗号化する手法には、電子メールを送信する際に暗号化する SMTPS や、受信時に暗号化する POP3S(もしくは IMAPS) が存在しています。
送信者のメールを管理しているメールサーバに、SMTPSを導入することで送信者と送信者のメールサーバ間の通信を暗号化できます。
ただし、その先の通信経路は受信者のメールサーバが SMTPS、POP3S(もしくは IMAPS) に対応していないと暗号化されずにメールが平文で送信されてしまいます。
このようにSMTPS、POP3S(もしくは IMAPS)を利用する場合は、両者のメールサーバが対応している必要がありますが、S/MIMEでは、相手のメールサーバの設定に依存することはなく、送信から受信までの通信を全て暗号化できます。
S/MIMEはどうして必要なの?
メール内容の盗聴(個人情報の漏洩)
インターネット上での通信は専用機器(※1)を使えば簡単に盗聴できます。そのため、通信内容を暗号化していないとメールの内容が漏洩してしまう危険性があります。
S/MIMEを使用して通信内容を暗号化することで、仮に通信内容を盗聴されたとしてもメールの内容は暗号化されているため解読することは困難です。
※1:本来はネットワークの問題を解決のために使用する専用機器。
「なりすまし」によるフィッシング詐欺行為
「なりすまし」とは本家のサイトになりすまして、偽のサイトに誘導し個人情報などを盗み取ったり、盗んだ情報を悪用するなどの行為ことをいいます。フィッシング詐欺とも呼ばれています。
近年では「なりすまし」による偽メールや、偽サイトが本家そっくりに作られることも多く、見た目で見抜くことが難しくなってきています。
S/MIMEでは電子署名を使った「なりすまし」防止、そしてメール内容の「改ざん」防止を行う仕組みが存在しているため、フィッシング詐欺を防ぐ効果が期待できます。
S/MIMEによるメール暗号化の仕組み
ここからは、S/MIMEによるメール暗号化の仕組みを送信者は企業、受信者は契約者のイメージで解説していきます。
[手順1] 共通の鍵を生成
送信者は、送信者と受信者の間で使用する「共通の鍵」を生成します。そして、生成した「共通の鍵」でメールを暗号化します。
ここで登場している鍵は次の通りです。
- 共通の鍵:送信者側で生成
- 受信者の秘密鍵:受信者の公開鍵とペアになっている公開してはいけない鍵
- 受信者の公開鍵:受信者の秘密鍵とペアになっている公開してもよい鍵
[手順2] 共通の鍵を暗号化する
受信者から公開鍵を入手し「共通の鍵」を「受信者の公開鍵」で暗号化します。
[手順3] 暗号化したメールと「共通の鍵」を送信する
暗号化したメールと「共通の鍵」を送信します。
[手順4] 受信者側で「共通の鍵」を復号する
暗号化したメールと「共通の鍵」を受信した受信側は、「受信者の秘密鍵」で「共通の鍵」を復号します。
これで「共通の鍵」を送信側と受信側で共有することができました。
[手順5] 「共通の鍵」でメールを復号
「共通の鍵」で受信した暗号化されているメールを復号します。これで受信者はメールの内容を確認できます。
スポンサーリンク
S/MIMEによる電子署名の仕組み
ここからは、S/MIMEによる電子署名の仕組みを送信者は企業、受信者は契約者のイメージで解説していきます。
[手順1] メールをハッシュ化する
送信側でメールをハッシュ関数と呼ばれる関数でデータを圧縮(ハッシュ化)します。
ここで登場している鍵は次の通りです。
- 送信者の秘密鍵:送信者の公開鍵とペアになっている公開してはいけない鍵
- 送信者の公開鍵:送信者の秘密鍵とペアになっている公開してもよい鍵
[手順2] 送信者の秘密鍵で電子署名する
「送信者の秘密鍵」を使いハッシュ化したメールを利用して電子署名をします。
[手順3] 電子署名付きのメールを送信する
「送信者の公開鍵」と「電子署名」付きの暗号化されたメールを送信します。(※メールの暗号化は暗号化の仕組みの通り)
[手順4] 電子署名を検証し、ハッシュ値を取り出す
「送信者の公開鍵」と「電子署名」付きの暗号化されたメールを受信した受信側は、「電子署名」が信頼できる機関から発行されているかを検証します。
そして「電子署名」を「送信者の公開鍵」で復号してハッシュ値を取り出します。
電子署名 そして 送信者の公開鍵で復号できた事実から「なりすまし」によるメールではないということが判断できます。
[手順5] 受信メールをハッシュ化する
受信側は、暗号化された受信メールを復号(※メールの復号は暗号化の仕組みの通り)、そして平文になったメールをハッシュ関数でハッシュ化します。
[手順6] 署名のハッシュ値と比較
電子署名から復号したハッシュ値と、受信メールをハッシュ化したハッシュ値を比較します。ハッシュ値が同じであれば、メール内容が「改ざん」されていないと判断できます。