インターネットが普及し始めたばかりのころ、ウェブサイトのやり取りはすべて「平文(ひらぶん)」とよばれる、暗号化されていない状態で送受信されていました。そのため、通信内容が第三者に盗み見られる危険性があり、クレジットカード番号など、大切な個人情報を送ることは極めてハイリスクでした。
こうした課題を解決するために、1990年代半ばに開発されたセキュリティ技術が「SSL(セキュア・ソケッツ・レイヤー)」です。ウェブ上で個人情報や決済情報など、重要なデータを安全に送受信するための仕組みとして使われるようになりました。
その後、SSLはさらに安全性を高めるために改良され、「TLS(トランスポート・レイヤー・セキュリティー)」という新しい仕組みに進化をとげました。現在では、SSL/TLSによる暗号化通信は、ECサイトをはじめ、あらゆるウェブサイトに欠かせないものとなっています。この記事では、SSLの意味や仕組み、種類などをまとめました。
目次
SSL/TLSとは
SSLは、データを暗号化して安全にやりとりするセキュリティ技術です。たんにSSLと呼ばれたり、SSL/TLSと呼ばれたりします。TLSは、SSLが改良されたものです。過去のSSL技術は、現在では使われていませんが、TLSが開発された当時、すでにSSLという名称が定着していたため、TLSもSSLと呼ばれています。SSL/TLSと併記されることもあります。この記事でも、SSLという用語を使って説明します。
SSL証明書とは
SSL証明書とは、SSL通信を使うために必要な証明書です。「このサイトは本物です」と証明してくれる身分証明書のようなもので、ブラウザと安全に通信できるようにする役割があります。SSL証明書があると、ウェブサイトとブラウザの間で、情報を暗号化してやりとりすることができるので、通信内容を第三者にのぞき見られたり、データを書きかえられたりするのを防ぐことができます。
例えるなら、SSL証明書がない状態は、情報をハガキで送っているようなものです。見ようと思えば、誰でも内容を見て、書きかえることができてしまいます。しかし、SSL証明書があり、SSL通信ができると、差出人の身元を保証した上で、情報を鍵付きのケースに入れて送ることができます。ケースの鍵は、受け取り手のみが開けることができ、第三者に開けられる心配がありません。
SSL証明書が発行される仕組み
SSL証明書は、ウェブサイトの身元を保証する第三者機関である認証局(CA)によって発行されます。
認証局は、厳しい基準をクリアした組織であり、現在も世界で100ほどしかありません。認証局自体が定期的に監査を受けることで、信頼性が保たれています。認証局は、SSL証明書を発行するにあたって、サイトの所有者、名前、所在地などの情報を調査し、審査します。そして、「問題なし」と判断した場合のみ証明書を発行します。
証明書には、認証局の「秘密鍵」でデジタル署名が行われるため、証明書の本物・偽物は、あとから誰でも確認できる仕組みになっています。多くの場合、SSL証明書の取得には、年間数千円〜数万円ほどの費用がかかりますが、一部のレンタルサーバーは、無料のSSL証明書を提供しています。
SSL証明書自体は、数キロバイト程度の小さなデジタルデータで、次のような情報が含まれています。
- 証明書が発行されたドメイン名(例:https://example.com)
- 証明書を取得した会社・組織名(証明書の持ち主)
- 証明書を発行した認証局の名前
- 認証局によるデジタル署名
- 対象となるサブドメイン(例:shop.example.comなど)
- 証明書の発行日と有効期限
- 公開鍵(秘密鍵は証明書には含まれません)
SSL証明書が適用されたウェブサイトのURLは 「https」 から始まり、ブラウザのアドレスバーには鍵アイコンが表示されます。鍵アイコンをクリックすると、サイトの所有者、接続に関する詳細情報を確認できます。
SSL通信の仕組み

SSL通信では、データが暗号化され、正しい鍵を持っていないと読めません。この仕組みにより、第三者にデータを盗み見られる心配がなくなります。
SSL通信では、実際に通信を開始する前に、公開鍵と秘密鍵という、対になった鍵を使い、お互いに正しい通信相手であることを確認します。公開鍵で暗号化した情報は、秘密鍵でしか解読できず、秘密鍵で暗号化した情報は、公開鍵でしか開けることができません。ただし、公開鍵と秘密鍵をつかった通信(非対称暗号方式)は時間がかかるため、最初に相手の確認が終わると、ブラウザとサーバーは、より速く効率的にやりとりできる通信用の共通鍵(セッションキー)を決めます。
この通信前の短いプロセスを、「ハンドシェイク」と呼びます。
SSLハンドシェイクの流れ
- 利用者がブラウザで、SSL対応のウェブサイト(サーバー)に接続する
- ブラウザがサーバーに対して「安全に通信したいです」とリクエストを送る
- サーバーが、自分のSSL証明書のコピーをブラウザに送る
- ブラウザが証明書の信頼性を確認する
- 証明書に問題がなければ、ブラウザがサーバーに「OK」の合図を送る
- ブラウザとサーバーが、公開鍵と秘密鍵を使って、通信に使う共通鍵を安全に決める
ハンドシェイクは数ミリ秒で完了し、以降の通信は、共通鍵を使って暗号化され、安全にやりとりされます。
SSL証明書の種類

SSL証明書には主に3種類あり、それぞれ認証のレベルや、認証にかかる時間と費用が異なります。自社の用途に合ったSSL証明書を選ぶことで、ウェブサイトの安全性を最大限に高めることができます。
DV(ドメイン認証型)証明書
費用の目安:無料〜年間数千円
DV証明書は、ドメイン所有者の確認のみが行われる、もっとも基本的なSSL証明書です。無料のSSL証明書のほとんどがこのタイプに該当します。
短時間の簡単な認証プロセスで発行されるため、手間が少なく、比較的低コストで取得できます。認証はメールなどを使った自動の確認プロセスで行われ、組織の実在性までは確認されません。そのため、セキュリティレベルは最も基本的なものにとどまり、サイトそのものの信頼性を保証するものではありません。
DV証明書は次のようなサイトに適しています。
OV(組織実在認証型)証明書
費用の目安:年間1〜数万円程度
OV証明書は、ドメイン所有者の確認に加えて、申請した企業や団体の実在性も審査されるSSL証明書です。発行時には、住所や電話番号、法人登録情報などの確認が必要です。認証局(CA)が厳格に審査を行うため、サイト訪問者に対して「この会社は本当に存在している」という信頼感を与えることができます。
キュリティレベルは中程度で、対外的な信用が求められるサイト向けです。
OV証明書は次のようなサイトに適しています。
- 企業の公式サイト
- 団体や学校などの公式サイト
- 取引先や顧客に安心感を与えたいビジネスサイト
EV(拡張認証型)証明書
費用の目安:年間数万円〜十数万円程度
EV証明書は、審査が最も厳格なSSL証明書です。ドメインの所有者確認に加えて、申請した企業や団体が確かに存在し、合法的に運営されているかどうかが審査されます。発行時には、企業の登記情報、財務情報、運営状況など、16の審査項目でチェックが行われるため、取得までには時間がかかります。
EV証明書を導入したウェブサイトでは、鍵アイコンをクリックすると、企業名が表示されるので、訪問者は「このサイトは信頼できる企業が運営している」と一目で判断できます。セキュリティレベルも最高クラスです。
EV証明書は次のようなサイトに適しています。
- 金融機関の公式サイト
- ECサイト
- 官公庁・公共機関のサイト
- 大企業の公式サイト
HTTPとHTTPSの違い

HTTP(ハイパーテキスト・トランスファー・プロトコル)は、SSL証明書がない平文での通信方法、HTTPS(ハイパーテキスト・トランスファー・プロトコル・セキュア)は、SSL証明書を適用した通信方法を指します。
HTTPでは、誰かに内容をみられたり、書きかえられたりするリスクがあります。これにSがつき、HTTPSになると、SSL化され、通信が暗号化されているという意味になります。HTTPSでは、送り主と受け取り手のみしか開けられないので、第三者に内容を盗み見られる心配がありません。
現在では、HTTPS通信が標準になっています。HTTPSのサイトでは鍵アイコンが表示され、「このサイトは安全です」というメッセージが表示されます。反対に、HTTPのサイトは「保護されていません」と警告が表示され、訪問者が不安になり、サイトを離脱する原因にもなります。ウェブサイトを運営するのであれば、HTTPS化は必須です。
SSL証明書が危険にさらされたら

不正アクセスや詐欺被害は、ECサイトを運営するうえで常につきまとうリスクです。安全を証明するSSL証明書ですが、サイバー攻撃などによって秘密鍵が流出し、不正利用されてしまった事例もあります。こうしたリスクを未然に防ぐことが重要ですが、万が一起きてしまったときは、次のように対処しましょう。
1. 証明書を無効化し、ウェブサイトを閉鎖する
すぐに認証局に連絡して、該当のSSL証明書を無効化する手続きをとりましょう。すでに攻撃を受けている可能性がある場合は、ウェブサイトを一時的に閉鎖して、被害の拡大を防ぎましょう。
2. 原因を調査する
なぜ証明書が不正利用されたのか、原因を確認します。セキュリティ会社やシステム担当者に相談するなどして、サーバーログを確認し、不審なアクセスがなかったかどうかを調査しましょう。
見覚えのないIPアドレスからの接続履歴や、証明書確認時のエラーや検証失敗が繰り返し発生している場合は、不正アクセスやマルウェア感染が疑われます。
3. 証明書を再発行する
新しいSSL証明書を発行してもらい、新しい秘密鍵を生成し、サーバーにインストールして設定します。古い鍵は絶対に使い回さないでください。
4. セキュリティを強化する
原因を踏まえて、同じことが二度と起きないように、ウェブサイト全体のセキュリティ対策を見直しましょう。DV証明書を適用していた場合は、OV証明書やEV証明書など、より強固なSSL証明書に切り替えるのもいいでしょう。不正アクセスや証明書の異常をすばやく検知する、監視システムを導入するのも効果的です。
Shop Pay(ショップペイ)向けのShopify Protectのようなセキュリティサービスでは、不正注文をAIで自動検知できたり、不正取引に対する返金トラブルの補償サポートが受けられたりします。
複数のドメインをSSLで保護するには

1つのSSL証明書で保護できるのは、通常1つのドメイン名だけです。ですが、多くの企業ではサブドメインを使ったり、複数のドメインを使ったりします。そういった場合は、解決策となるSSL証明書が2種類あります。
ワイルドカードSSL証明書
同じウェブサイト内で、「mail.example.com」や「shop.example.com」など、サブドメインを使い分けて異なる機能を提供している場合は、ワイルドカードSSL証明書を取得するのがおすすめです。ワイルドカードSSL証明書は、1枚のSSL証明書で、ウェブサイトのメインドメインと、関連するすべてのサブドメインをまとめて保護できる証明書です。コストを抑えながら、証明書管理も簡単にできます。
マルチドメインSSL証明書(MDC)
「example.com」「example.net 」などマルチドメインSSL証明書(MDC)は、複数の異なるドメイン名をまとめて保護する証明書です。統一通信証明書(UCC)と呼ばれることもあります。
マルチドメインSSL証明書を使えば、1枚で複数のドメインを保護できるため、ドメインごとに証明書を分ける必要がありません。追加するドメインは、申し込み時にSAN(サブジェクト・オルタナティブ・ネーム)と呼ばれる項目に登録します。
SSL証明書の有効期限が切れるとどうなるのか

SSL証明書の有効期限が切れることは、ビジネスから「信頼の証」を取り上げられてしまうようなもので、次のようなリスクがあります。
- 訪問者が不安に感じて離脱する:SSL証明書が切れているウェブサイトでは、訪問者の画面に警告メッセージが表示されます。こうした警告を見ると多くの人はサイトから離脱してしまいます。
- SEOに悪影響が出る:Googleなどの検索エンジンも、安全なサイトを優先して表示するため、SSL証明書の有効期限が切れているサイトは、検索順位が下がる可能性があります。
- 消費者の信頼を損なう:セキュリティ警告を目にしたユーザーに一度不信感を抱かれると、証明書を更新して安全になった後でも、サイトに戻ってきてもらえなくなることがあります。
SSL証明書には有効期限が必ず記載されており、期限切れは予測できます。SSL証明書の最大有効期間は397日(13ヶ月)で、ほとんどの証明書は1年間有効です。有効期限が切れる数週間前には、証明書を更新するようにしましょう。
SSL証明書の取得、導入の流れ

SSL証明書は、認証局に直接申請して発行してもらうこともできますが、ウェブホスティングプロバイダー、レンタルサーバー、ドメイン取得サービスなどを経由し、他のサービスの契約とあわせて発行手続きを行うことができます。手軽かつ確実で、0円で取得できる場合もあります。
取得から導入までの主な流れは次のとおりです。
- 必要なセキュリティレベルを決定する
- 保護したいドメインやサブドメインを特定する
- サービス、または認証局を選択し、証明書を申請する
- 証明書を取得し、サーバーにインストールする
ECサイト構築サービスのShopifyでは、Shopifyに追加されたドメイン全てに無料でSSL証明書が提供されます。Shopifyでウェブサイトを構築すると、自動でSSL化されるので、運営者がSSL化のために何か行動を取る必要はありません。
まとめ
SSL証明書は、ウェブサイトと訪問者の間のデータ通信を暗号化し、第三者による情報の盗聴や改ざんを防ぐ重要な役割を果たします。特に、オンラインストアではユーザーの個人情報や支払い情報を扱うため、SSL通信の導入は欠かせません。
Shopifyでは、すべてのストアに無料のSSL証明書が自動的に提供されるので、設定や更新の手間なく、安全な通信環境を確保できます。運営者はセキュリティ面での設定の心配をすることなくストアの運営を行うことができ、ユーザーは安心して買い物を楽しむことができます。
SSLについての理解を深め、訪問者が安心できるウェブサイト運営を目指しましょう。
よくある質問
SSLとTLSの違いは?
SSLが改良された、後継のプロトコルがTLSです。過去のSSL技術は、現在では使われていませんが、TLSが開発された時に、すでにSSLという名称が定着していたため、TLSもSSLと呼ばれています。SSL/TLSと併記されることもあります。
HTTPSとSSLの違いは?
SSLは、データを暗号化して安全に通信する技術そのものを指し、HTTPSは、HTTPという通信ルールにSSLを組み合わせた通信方法をさします。簡単に言うと、HTTPS=HTTP+SSLだと言えます。
現在では、SSL/TLSによる暗号化通信が標準となっており、ほとんどのウェブサイトでHTTPSが使われています。
SSL証明書にはどんな種類がありますか?
- ドメイン認証(DV)証明書:ドメインの所有権を確認する基本的な証明書
- 組織認証(OV)証明書:ドメイン所有者の組織情報を確認し、信頼性が高くなった証明書
- 拡張検証(EV)証明書:最も厳格な審査を経て発行される、最高レベルの信頼性を提供する証明書
- ワイルドカードSSL証明書:1枚で、特定のドメインのすべてのサブドメインを保護できる証明書
- マルチドメインSSL証明書(MDC):1枚で、複数の異なるドメインを保護できる証明書
SSL証明書は必要ですか?
ユーザーに個人情報の入力を求めるウェブサイトでは、SSL証明書は必須です。たとえ機密データを扱わないサイトでも、SSL証明書の導入が推奨されます。検索エンジンは、SSL未対応のサイトを評価しない傾向があるため、SSL証明書が導入されていないと検索順位が下がってしまいます。また、ブラウザに警告が表示されるため、訪問者に離脱される可能性があります。
無料のSSL証明書は取得できますか?
多くのウェブホスティングプロバイダーは、パッケージの一部として無料のSSL証明書を提供しています。これらは通常、基本的なドメイン認証(DV)証明書です。
SSL証明書の費用は?
SSL証明書の費用は、証明書の種類や検証レベルによって、年間数千円~数万円以上と幅があります。基本的なドメイン認証(DV)証明書は年間数千円程度ですが、最高レベルのセキュリティと検証を提供する拡張検証(EV)証明書は、より高額になることがあります。
最近では無料で取得できるケースも増えているので、必要なセキュリティレベルや予算に合わせて選ぶと良いでしょう。
Open SSLとは?
OpenSSL(オープンエスエスエル)は、SSL/TLS通信を行うためのオープンソースの暗号化ライブラリです。無料で利用でき、世界中のウェブサーバーやシステムで広く使われています。
SSL証明書の取得時に必要な秘密鍵やCSR(証明書を発行してもらうための申請データ)を作成する場面で使われることが多いですが、主にサーバー管理者や技術者向けのツールです。
文:Taeko Adachi