「S/MIMEはどんな技術か」
そんな疑問を持つ方に当記事ではS/MIMEの仕組みを解説します。S/MIMEは暗号化と電子署名でメールのセキュリティ強化を実現する技術です。メールのセキュリティ強化には別の技術もありますが、それぞれの技術との違い、またS/MIMEの対象外となるメールセキュリティ強化方法を解説しているので参考にしてください。
S/MIMEはメールのセキュリティ強化の仕組み
S/MIME(Secure/Multipurpose Internet Mail Extensions)はメールのセキュリティを強化するための仕組みです。エスマイムと読みます。
メールは世界中でやり取りされている連絡手段の1つになりました。しかし、それは誰でも通信ができる経路を通過していることの裏返しです。適切なセキュリティ対策を行わなければ、メールのやり取りに危険が及ぶことになります。
メールにおける危険性の例はメール内容の盗聴や改ざんです。これらの被害を受けると正しい情報の伝達ができません。こうした事態を防ぐためにS/MIMEがメールを安全にやり取りできる仕組みとして生まれました。
S/MIMEはメールのセキュリティ強化対策として、GmailやOutlookなど各メールサービスにも搭載されています。
S/MIMEの機能
S/MIMEによってメールのセキュリティ強化が実現されることを解説しました。セキュリティ強化について理解を深めるために、S/MIMEの機能を確認しておきましょう。S/MIMEの主な機能を解説します。
メール暗号化
メールの内容が第三者に読まれてしまっても解読できないようにする技術です。
メールは盗み見されないように安全な経路を通ることが望ましいです。しかし、実際はインターネットを介して、誰でもアクセスできることから、安全な経路での送信は実現が難しい現状にあります。そこで暗号化によってメール自体を見られても問題のない形に変換することで、盗み見されても情報が流出しないようにする仕組みです。
暗号化は本文だけでなく、タイトルや添付ファイルにも行われます。暗号化にはさまざまなアルゴリズムがあり、安全性が高いアルゴリズムを選択すれば、強度を高めることが可能です。
これにより、メールの盗み見に対する対策が実現します。
電子署名
送信者から受信者に届くまでに送信時の内容から変更がないことを証明するための技術で、仮にメールが途中で改ざんされた場合は、間違っていることを検出できる仕組みです。
電子署名のやり取りを実現するためには、事前に公開鍵と秘密鍵を作っておきます。そして認証局という第三者機関から証明書を発行してもらうことで、自身の証明書を取得可能です。
受信者は証明書と送信者の公開鍵を用いて改ざんされていないことを確認します。よって、証明書や鍵を正しくやり取りできるかどうかが、身分証明を正しく行うための1つのポイントです。
S/MIMEによる暗号化の仕組み
暗号化の仕組みを送信者側、受信側それぞれの視点から解説します。
送信者側は鍵の生成と暗号化、およびメールの送信を実施します。受信者側はメールの復号化をすれば暗号化前の形に戻ったメールを取得可能です。
【送信者側】共通鍵の生成と暗号化したメールの送信
送信側の暗号化の流れは以下のとおりです。
- 共通鍵の生成
- 共通鍵でメールを暗号化
- 受信者側の公開鍵を入手する(デジタル証明書またはメールにて)
- 公開鍵で1で作った共通鍵を暗号化
- 2の暗号化したメールと4の暗号化した共通鍵を送信
ポイントは共通鍵と公開鍵が登場することです。S/MIMEの暗号化ではこの2種類の鍵を使ったハイブリッド方式で安全なメール送信が実現します。
1の共通鍵と3の公開鍵を用いて暗号化をすることで、強固なセキュリティを実現しています。攻撃者はどちらかの鍵を盗めたとしても、もう一方の鍵がなければ内容の盗み見ができないためです。
【受信者側】受信した暗号化メールの復号化
受信側の復号化の流れは以下のとおりです。
- 送られてきたメールのうち、暗号化されている共通鍵を自分の秘密鍵で復号化
- 2で復号化された共通鍵で暗号化されているメールを復号化
受信者側の対応は、秘密鍵を使って共通鍵を復号化します。共通鍵は受信者の秘密鍵以外では復号化できません。受信者側が事前に2つの鍵のセットを発行して暗号化をしているためです。
共通鍵の復号化をすれば暗号化前の共通鍵を取得可能です。取得した鍵でメールを復号化することでメール内容を確認できます。
S/MIMEによる電子署名の仕組み
S/MIMEは暗号化だけでなく、電子署名による改ざんされていないことの証明が可能です。前項と同様に、送信者側と受信者側の流れに沿って解説します。
なお注意点として当記事では解説のために暗号化と電子署名の流れを分けて解説していますが、実際には同時進行しています。
【送信者側】データの圧縮と電子署名をしてメールを送信
送信側の電子署名の流れは以下のとおりです。
- メールを特別な関数(ハッシュ関数)を用いてハッシュ値を計算
- ハッシュ値に対して送信者が秘密鍵で電子署名を作成(ハッシュ値の暗号化)
- 電子署名されたメールを送信
送信者はメールをハッシュ関数という特別な関数でデータ圧縮します。この関数はデータを圧縮するためのアルゴリズムです。アルゴリズムに基づいてデータの圧縮を行いハッシュ値を計算します。
ハッシュ値はメールの内容を変換したものです。メールの内容とハッシュ関数を掛け合わせることでハッシュ値が求められます。
求めたハッシュ値に対して秘密鍵で電子署名を行います。これにより送信者が作成したメールであることが証明される仕組みです。
【受信者側】署名済みメールのハッシュ値検証と復号化
S/MIMEを利用したメールをする際の受信側の電子署名の流れは以下のとおりです。
- 受信したメールについている電子署名を送信者の公開鍵で復号化し、送られてきたハッシュ値を確認
- 受信したメールの内容にハッシュ関数を掛け合わせてメール本文のハッシュ値を計算
- 2と3のハッシュ値を比較して同じなら改ざんされていないことが証明される
受信者側はまず、送られてきたメールについた電子署名を複合化してハッシュ値を確認します。そして、送られてきたメールの内容もハッシュ関数を掛け合わせてハッシュ値を求めることで、比較が可能です。
それぞれのハッシュ値を比較して同じであれば問題ありませんが、異なっている場合はメールが改ざんされていることになります。メールの内容が同じならハッシュ値が同じになるはずだからです。
S/MIMEは上記の方法でメールが改ざんされていないことを確認します。
S/MIMEのメリット
S/MIMEを利用してメールを行うことのメリットを3つご紹介します。
なりすまし被害の防止
S/MIMEは電子署名によって身元確認をするため、なりすまし被害の防止ができます。
先述したように、S/MIMEは電子署名をします。電子署名は2つの鍵のペアを作成し、それを所有するユーザーのみが身元の証明ができます。
それ以外のユーザーによるなりすましは検出されます。S/MIMEによってなりすましを防げば、上記の被害が引き起こされる可能性を低減可能です。
メールの改ざん検知
S/MIMEは電子署名によって届いたメールの改ざんの検知が可能です。
こちらも先述したように、S/MIMEはハッシュ関数とハッシュ値を利用することで改ざんを検知できる仕組みです。もしメール送受信の間に改ざんがおこれば、送られてきたハッシュ値と、届いたメールから計算した値が一致しません。値が異なれば改ざんされていることが確認できます。
メールが改ざんされていると、誤った情報の伝達や、怪しいサイトへの誘導が行われてしまいます。S/MIMEによって事前に検知できれば被害を防止可能です。
メールの盗み見を防止
S/MIMEは暗号化によってメールの盗み見を防止できます。
先述したように、S/MIMEはメールを暗号化するためたとえ盗まれても、内容を解読できません。解読されなければ被害につながることはないでしょう。
メールは盗み見されないことが1番です。しかし、インターネットを経由して送受信が行われる以上、リスクは伴います。このリスクを下げるのではなく、盗み見されても内容を確認されるリスクを下げる仕組みが暗号化です。
S/MIMEによってメールの盗み見を防ぎ、情報漏えいの被害を防ぎましょう。
S/MIMEのデメリット
S/MIMEには導入のコストが大きいというデメリットが存在します。
具体的には、設定が必要な点や、証明書の取得に費用がかかることといった運用面と費用面でのコストです。
各ユーザーのメールソフトに対して個人の設定が必要なケースもあります。正しく設定できなければ、メールの送受信に不具合が生じる可能性もあるため、S/MIMEに知見があるユーザーによる指導が必要な場合も出てくるでしょう。
またS/MIMEは外部からのメールに対する盗み見や改ざんには対応できますが、内部の人的ミスやスパイによる行動には対応できません。よって内部のセキュリティ対策には別の技術を利用する必要があります。
S/MIMEに限らずセキュリティ対策は必要ですが、コストをかけても企業の売り上げに直結するものではありません。セキュリティ対策に多くのコストをかけられない企業は、S/MIMEを社内全体で利用するために、経費削減や従業員の教育といった方法で乗り切る必要があります。
S/MIME設定の手順
S/MIMEを以下のメールサービスで設定する手順を解説します。
- Gmail
- Outlook
Google(Gmail)でのS/MIME設定
GmailでS/MIMEを設定する方法は以下の通りです。
- 管理者アカウントでGoogle管理コンソールにログイン
- 管理コンソールで、メニュー アイコンを開き「アプリ」「Google Workspace」「Gmail」 「ユーザー設定」の順に画面遷移
- 左ペインの「組織」で、設定するドメインまたは組織を選択
- 「S/MIME」で「メール送受信で S/MIME 暗号化を有効にする」のチェックボックスをオン
- 「保存」をクリック
Gmailでは各ユーザーの画面でS/MIMEを有効化する必要はありません。管理者による設定のみで、配下のユーザー全体に有効化が可能です。
なお証明書のアップロードや暗号化レベルなどの設定も上記の手順3以降で実施が可能です。設定を終えたら5の保存を忘れずに実施してください。
OutlookでのS/MIME設定
OutlookでS/MIMEを設定する方法は以下の通りです。
- 電子証明書の取得
- Outlookで「設定」「メール」「S/MIME」の順に画面遷移
- 「S/MIME を使用するには S/MIME コントロールをインストールする必要があります」と表示されるので「ここをクリック」をクリック
- インストール完了後、1度Outlookを閉じて再び開く
- ドメインのS/MIME許可を行う
a. 「メール ドメイン <ドメインが S/MIME コントロールを使用して受信トレイ内のメッセージを暗号化および復号化> 許可しますか? 信頼できるドメインのみを許可します。」と表示された場合は「はい」を選択
b. 「ブラウザーの設定のS/MIME拡張オプションページでドメインを追加できます。」と表示された場合は設定ページでドメインを追加する
上記の方法でS/MIMEの有効化が可能です。
S/MIMEと他のメールセキュリティ強化の違い
S/MIMEの他にもメールセキュリティを強化する仕組みがいくつかあります。以下のメールセキュリティとの違いを解説します。
- PGP
- SSL/TLS
- SPF/DKIM/DMARC
PGPとの違い
S/MIMEとPGPの違いは公開鍵の扱いです。
PGPは公開鍵暗号方式に基づくメールセキュリティ強化です。S/MIME、PGPのどちらも公開鍵を使って暗号化や電子署名を行います。しかし、両者には公開鍵の扱いに違いがあります。
S/MIMEは送信者、受信者以外の第三者として認証局が公開鍵の正当性を証明します。一方でPGPは何らかの方法で自身で公開鍵の正当性を証明する必要があります。
よってPGPよりもS/MIMEの方が信頼性や客観性が高いです。しかし、コストもS/MIMEの方が高くなる点がデメリットです。
SSL/TLSとの違い
S/MIMEとSSL/TLSの違いは暗号化対象です。
SSL/TLSは通信経路の暗号化をする技術です。通信経路を暗号化することで、盗聴自体を防ぎます。一方でS/MIMEは通信経路ではなくメールの本文や見出しなどの内容を暗号化する技術です。よってS/MIMEはメールを暗号化しますが、SSL/TLSは通信経路を暗号化するという違いがあります。
SSL/TLSについては別記事で解説していますので、あわせてご覧ください。
SPF/DKIM/DMARCとの違い
S/MIMEとSPF/DKIM/DMARCとの違いはなりすましを防止する方法です。
S/MIMEは電子署名によって改ざん検知を行います。またS/MIMEは暗号化もメールのセキュリティ強化の一環として行う技術です。
SPF/DKIM/DMARCはそれぞれ以下を実施する技術です。
- SPF:IPアドレス検証によるなりすましを防止
- DKIM:送信元ドメイン認証
- DMARC:SPF/DKIMの調査結果を補強
S/MIMEは電子署名によってなりすましを防ぎますが、SPF/DKIM/DMARCは送信元を別の方法で認証してなりすましを防止します。
SPF/DKIM/DMARCは別記事で解説していますので、あわせてご覧ください。
HENNGEのDLP EditionはBoxとの連携も可能
弊社のHENNGE DLP Editionは情報漏えいを改ざんするためのセキュリティサービスが組み込まれたソリューションパッケージです。
当記事ではS/MIMEについて解説してきました。S/MIMEはメールを安全に送受信するために外部からの盗聴や改ざんを防止できる技術です。しかし、S/MIMEでは防げないタイプの情報漏えいがあります。それが内部の人的ミスです。
例えば、メールの送信先を誤ってしまった、適切でないアクセス権限を設定してしまったなどのケースはS/MIMEでは対応できません。そこでHENNGE DLP Editionを利用することで内部の人的ミスによる情報漏えいへの対策が可能です。
具体的には以下のソリューションが組み込まれています。
- 誤送信対策フィルター
- 脱PPAPのファイル送信
- 大容量ファイル転送
- メール監査
- Box連携
- ファイル共有ミス対策
Boxとの連携や脱PPAPのファイル送信により、メールでファイルのやり取りをする必要がなくなります。また誤送信対策により、誤った送信先にメールを送るリスクも低減可能です。
S/MIMEとHENNGE DLP Editionを併用することで、より強化されたセキュリティでメールの送受信やファイル共有が実現します。気になる方は下記リンクからお問い合わせください。
https://hennge.com/jp/service/one/dlp/
まとめ
S/MIMEはメールのセキュリティを強化する技術です。暗号化によるメールの盗み見防止と、電子署名によるなりすましや改ざんの防止ができるため、安全なメールの送受信を実現します。
S/MIMEは外部のメールに対する攻撃には有効ですが、内部の人的ミスには対応できません。弊社のHENNGE DLP Editionも用いることで、メールのセキュリティを内部外部それぞれから強化が可能です。
- カテゴリ:
- メールセキュリティ