中間証明書とクロスルート証明書を結合したファイル(CAバンドル,中間証明書チェーン)について

なぜ「クロスルート証明書」が必要なのか

新しいルート(R6)の壁: 2025年〜2026年にかけて普及している最新の「R6」ルート証明書は、数年前の古いスマホやPCには「まだ登録されていない」可能性があり、クロスルート証明書が必要な場合がある。

古い端末の対応: 古い端末でも利用できる「R3(以前の規格)」などの古いルート証明書を仲介役にすることで、「この新しいR6は、古い規格のR3からも信頼されている物です」と証明するのがクロスルートの役割です。

対象: 主に古いAndroid端末や、長期間アップデートしていないブラウザでの閲覧エラー(「保護されていない通信」)を防ぐために必須となります。

クロスルート証明書を含めると古い端末の以下のバージョンが対象になるかと思います

  • Android
    AndroidはOS自体にルート証明書を持っているため、古いバージョンは新しい「R6」を知りません。
    対象: Android 7.1.1 以前
  • iOS (iPhone / iPad)
    Apple製品は比較的アップデートが早いですが、以下の古いバージョンが対象になります。
    対象: iOS 10 以前
  • Windows (PC)
    Windowsは通常アップデートでルート証明書が更新されますが、サポートが終了しているOSは注意が必要です。
    対象Windows 7 以前(特にサービスパックが当たっていないものや、オフライン環境)

    証明書の作り方(中間+クロスルートの結合)

    クロスルート証明書を含める場合は、簡単で中間証明書とクロスルート証明書を結合して、1つのCAバンドルファイルを作成すればいいです。以下が中間証明書とクロスルート証明書とします

    • AlphaSSL_CA_2025.crt (中間証明書)
    • RootR6.crt (クロスルート証明書)
    # 中間証明書を「ca-bundle.crt」として保存
    $ cat AlphaSSL_CA_2025.crt  > ca-bundle.crt
    
    # クロスルートを「ca-bundle.crt」に追記する
    $ cat RootR6.crt >> ca-bundle.crt

    上記で、中間証明書とクロスルート証明書を結合したファイルができています。具体的には以下のような並びになっています

     -----BEGIN CERTIFICATE-----
      【中間証明書の文字列】
     -----END CERTIFICATE-----
     -----BEGIN CERTIFICATE-----
      【クロスルート証明書の文字列】
     -----END CERTIFICATE-----

    これをApacheとかNginxに設定すれば、中間証明書とクロスルート証明書を結合した証明書となります

    \ 最新情報をチェック /