Menu Close

第4章 HTTPS 暗号スイートの設定

概要

本章では、HTTPS 接続を確立する目的で、クライアントとサーバーで使用できる暗号スイートの一覧を指定する方法を説明します。セキュリティーハンドシェイクの間、クライアントはサーバーで利用可能な暗号スイートのいずれかに一致する暗号スイートを選択します。

4.1. サポート対象の暗号スイート

概要

暗号スイート は、SSL/TLS 接続の実装方法を正確に決定するセキュリティーアルゴリズムのコレクションです。

たとえば、SSL/TLS プロトコルは、メッセージダイジェストアルゴリズムを使用して、メッセージに署名することを命じています。ただし、ダイジェストアルゴリズムの選択は、接続に使用される特定の暗号スイートによって決定されます。通常、アプリケーションは MD5 または SHA ダイジェストアルゴリズムのいずれかを選択できます。

Apache CXF の SSL/TLS セキュリティーで使用できる暗号スイートは、エンドポイントで指定されている特定の JSSE プロバイダー によって異なります。

JCE/JSSE およびセキュリティープロバイダー

Java Cryptography Extension (JCE) および Java Secure Socket Extension (JSSE) は、Java セキュリティー実装を、セキュリティープロバイダー として知られる任意のサードパーティーツールキットに置き換えることができるプラグ可能なフレームワークを構成します。

SunJSSE プロバイダー

実際には、Apache CXF のセキュリティー機能は、SunJSSE という名前の SUN の JSSE プロバイダーでのみテストされています。

そのため、Apache CXF の SSL/TLS 実装と利用可能な暗号スイートの一覧は、SUN の JSSE プロバイダーで利用できる内容により実質的に決定されます。

SunJSSE でサポートされる暗号スイート

J2SE 1.5.0 Java Development Kit の SUN の JSSE プロバイダーでは、以下の暗号スイートがサポートされます (SUN の『JSSE リファレンスガイド』の「付録 A」も参照してください)。

  • 標準暗号:

    SSL_DHE_DSS_EXPORT_WITH_DES40_CBC_SHA
    SSL_DHE_DSS_WITH_3DES_EDE_CBC_SHA
    SSL_DHE_DSS_WITH_DES_CBC_SHA
    SSL_DHE_RSA_EXPORT_WITH_DES40_CBC_SHA
    SSL_DHE_RSA_WITH_3DES_EDE_CBC_SHA
    SSL_DHE_RSA_WITH_DES_CBC_SHA
    SSL_RSA_EXPORT_WITH_DES40_CBC_SHA
    SSL_RSA_EXPORT_WITH_RC4_40_MD5
    SSL_RSA_WITH_3DES_EDE_CBC_SHA
    SSL_RSA_WITH_DES_CBC_SHA
    SSL_RSA_WITH_RC4_128_MD5
    SSL_RSA_WITH_RC4_128_SHA
    TLS_DHE_DSS_WITH_AES_128_CBC_SHA
    TLS_DHE_DSS_WITH_AES_256_CBC_SHA
    TLS_DHE_RSA_WITH_AES_128_CBC_SHA
    TLS_DHE_RSA_WITH_AES_256_CBC_SHA
    TLS_KRB5_EXPORT_WITH_DES_CBC_40_MD5
    TLS_KRB5_EXPORT_WITH_DES_CBC_40_SHA
    TLS_KRB5_EXPORT_WITH_RC4_40_MD5
    TLS_KRB5_EXPORT_WITH_RC4_40_SHA
    TLS_KRB5_WITH_3DES_EDE_CBC_MD5
    TLS_KRB5_WITH_3DES_EDE_CBC_SHA
    TLS_KRB5_WITH_DES_CBC_MD5
    TLS_KRB5_WITH_DES_CBC_SHA
    TLS_KRB5_WITH_RC4_128_MD5
    TLS_KRB5_WITH_RC4_128_SHA
    TLS_RSA_WITH_AES_128_CBC_SHA
    TLS_RSA_WITH_AES_256_CBC_SHA
  • null 暗号化、整合性のみの暗号:

    SSL_RSA_WITH_NULL_MD5
    SSL_RSA_WITH_NULL_SHA
  • 匿名の Diffie-Hellman 暗号 (認証なし):

    SSL_DH_anon_EXPORT_WITH_DES40_CBC_SHA
    SSL_DH_anon_EXPORT_WITH_RC4_40_MD5
    SSL_DH_anon_WITH_3DES_EDE_CBC_SHA
    SSL_DH_anon_WITH_DES_CBC_SHA
    SSL_DH_anon_WITH_RC4_128_MD5
    TLS_DH_anon_WITH_AES_128_CBC_SHA
    TLS_DH_anon_WITH_AES_256_CBC_SHA

JSSE リファレンスガイド

SUN の JSSE フレームワークの詳細は、以下の場所にある JSSE リファレンスガイド を参照してください。

http://download.oracle.com/javase/1.5.0/docs/guide/security/jsse/JSSERefGuide.html