検索

第3章 Red Hat build of OpenJDK の機能

download PDF

3.1. 新機能および機能拡張

本項では、本リリースで導入された新機能を説明します。また、既存の機能の変更に関する情報も含まれます。

注記

その他の変更点やセキュリティー修正については、https://mail.openjdk.java.net/pipermail/jdk-updates-dev/2021-July/006954.html を参照してください。

3.1.1. PKCS12 キーストア生成のカスタマイズを追加

ユーザーが PKCS #12 キーストアの生成をカスタマイズできるようにする新しいシステムおよびセキュリティープロパティーが追加されました。これには、鍵の保護、証明書保護、および MacData のアルゴリズムとパラメーターが含まれます。java.security ファイルの "PKCS12 KeyStore properties" セクションで、これらのプロパティーの詳細な説明および可能な値を見つけます。

また、SunJCE プロバイダーに、以下の SHA-2 ベースの HmacPBE アルゴリズムのサポートを追加しました。

  • HmacPBESHA224
  • HmacPBESHA256
  • HmacPBESHA384
  • HmacPBESHA512
  • HmacPBESHA512/224
  • HmacPBESHA512/256

詳細は、JDK-8215293 を参照してください。

3.1.2. 1024 ビットキーのある root 証明書を削除

1024 ビット RSA 公開鍵を持つ以下のルート証明書が cacerts キーストアから削除されました。

  • エイリアス名: thawtepremiumserverca [jdk]

    識別名: EMAILADDRESS=premium-server@thawte.com, CN=Thawte Premium Server CA, OU=Certification Services Division, O=Thawte Consulting cc, L=Cape Town, ST=Western Cape, C=ZA

  • エイリアス名: verisignclass2g2ca [jdk]

    識別名: OU=VeriSign Trust Network, OU="(c) 1998 VeriSign, Inc. - For authorized use only", OU=Class 2 Public Primary Certification Authority - G2, O="VeriSign, Inc.", C=US

  • エイリアス名: verisignclass3ca [jdk]

    識別名: OU=Class 3 Public Primary Certification Authority, O="VeriSign, Inc.", C=US

  • エイリアス名: verisignclass3g2ca [jdk]

    識別名: OU=VeriSign Trust Network, OU="(c) 1998 VeriSign, Inc. - For authorized use only", OU=Class 3 Public Primary Certification Authority - G2, O="VeriSign, Inc.", C=US

  • エイリアス名: verisigntsaca [jdk]

    識別名: CN=Thawte Timestamping CA, OU=Thawte Certification, O=Thawte, L=Durbanville, ST=Western Cape, C=ZA

詳細は、JDK-8256902 を参照してください。

3.1.3. Telia company の Sonera Class2 CA 証明書を削除

以下のルート証明書は cacerts トラストストアから削除されました。

  • エイリアス名: soneraclass2ca

    識別名: CN=Sonera Class2 CA, O=Sonera, C=FI

詳細は、JDK-8261361 を参照してください。

3.1.4. デフォルトの PKCS12 暗号化と MAC アルゴリズムのアップグレード

PKCS #12 キーストアで使用されるデフォルトの暗号化および MAC アルゴリズムを更新。AES-256 および SHA-256 に基づいた新しいアルゴリズムは、RC2、DESede、および SHA-1 をベースとする古いアルゴリズムよりも強力です。詳細は、java.security ファイルの keystore.pkcs12 で始まるセキュリティープロパティーを参照してください。

互換性のために keystore.pkcs12.legacy という名前の新しいシステムプロパティーを定義しました。アルゴリズムを元に戻して、古い弱いアルゴリズムを使用します。このプロパティーには値が定義されていません。

詳細は、JDK-8242069 を参照してください。

3.1.5. TLS Application-Layer Protocol Negotiation (ALPN) 値のエンコーディングが改善されました。

SunJSSE プロバイダーは特定の TLS ALPN 値の読み取りまたは書き込みができません。これは、API インターフェイスとして String を選択することが原因で、U+00007F (7-bit ASCII) より大きい文字をマルチバイトアレイに変換する UTF-8 文字セットでは、文書化されていない内部使用を使用しています。

ALPN 値は、ピアが必要とするネットワークバイト表現を使用して表現されるようになりました。この場合、標準の 7 ビットの ASCII ベースの文字文字列の修正は必要ありません。ただし、SunJSSE は、 8 ビット ISO_8859_1/LATIN-1 文字として文字列の文字をエンコード/デコードします。そのため、UTF-8 でエンコードした U+000007F 文字を使用するアプリケーションは、UTF-8 変換を実行するために変更する必要がある場合があります。または、Java セキュリティープロパティー jdk.tls.alpnCharset を "UTF-8" に設定して動作を元に戻すことができます。

詳細は、JDK-8257548 を参照してください。

3.1.6. certificate_authorities 拡張のサポートを追加

certificate_authorities 拡張は、TLS 1.3 で導入されたオプションの拡張機能です。これは、認証局 (CA)、エンドポイントサポートを示し、受信エンドポイントによって証明書の選択をガイドするために使用されます。

この Red Hat build of OpenJDK リリースは、クライアントとサーバーの両方で TLS 1.3 の certificate_authorities 拡張をサポートします。この拡張はクライアント証明書の選択には常に存在しますが、サーバー証明書の選択にはオプションになります。

アプリケーションは、jdk.tls.client.enableCAExtension システムプロパティーを true に設定すると、サーバー証明書の選択にこの拡張を有効にできます。プロパティーのデフォルト値は false です。

注記

クライアントが拡張のサイズ制限よりも多くの CA を信頼する場合 (2^16 バイト未満)、拡張は有効ではありません。また、一部のサーバー実装では、ハンドシェイクメッセージを 2^14 バイトを超えることができません。そのため、jdk.tls.client.enableCAExtensiontrue に設定され、クライアントがサーバー実装の制限よりも多くの CA を信頼すると相互運用性の問題が発生する可能性があります。

詳細は、JDK-8244460 を参照してください。

Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

© 2024 Red Hat, Inc.