ホームページ >Java >&#&チュートリアル >Java アプリケーションで SSL キーストアを設定および検索するにはどうすればよいですか?

Java アプリケーションで SSL キーストアを設定および検索するにはどうすればよいですか?

Susan Sarandon
Susan Sarandonオリジナル
2024-12-01 20:51:11456ブラウズ

How Do I Configure and Locate the SSL Keystore in a Java Application?

Java の SSL キーストア: 場所と構成

SSL/TLS 機能を必要とする Java アプリケーションは、証明書を含むキーストアの場所を指定する必要がありますそして秘密鍵。このキーストアは、クライアントに対するサーバーの認証と、通信中のデータの暗号化の両方に使用されます。

キーストアの場所の指定

Java システム プロパティは、JVM レベルで SSL プロパティを設定します。 。キーストアの場所を指定するには 2 つの方法があります:

  • コマンドライン引数:

    java -Djavax.net.ssl.keyStore=< ;キーストアのパス> ...
  • システム プロパティ:

    System.setProperty("javax.net.ssl.keyStore", "");

キーストア構成の追加プロパティ

キーストアの場所の指定に加えて、次の構成が必要になる場合があります。他のプロパティ:

  • パスワード:

    javax.net.ssl.keyStorePassword: キーストア内の秘密キーのロックを解除するためのパスワード。
  • 信頼Store:

    javax.net.ssl.trustStore: 信頼できる CA 証明書を含むトラスト ストアの場所。
    指定しない場合、Java はデフォルトの場所でキーストア ファイルを検索します。
  • トラストストアパスワード:

    javax.net.ssl.trustStorePassword: トラストストアのロックを解除するためのパスワード。
  • キーストアの種類:

    javax.net.ssl.trustStoreType: Java キーストア形式の場合、これは通常は「jks」です。

認証用の証明書の指定

キーストアの場所を設定したら、キーストアに使用する証明書を指定できます。認証。これは通常、SSLContext オブジェクト:

// Create the SSLContext
SSLContext sslContext = SSLContext.getInstance("TLS");

// Create the key manager with keystore and password
KeyManagerFactory kmf = KeyManagerFactory.getInstance("SunX509");
kmf.init(keyStore, password.toCharArray());
KeyManager[] keyManagers = kmf.getKeyManagers();

// Create the trust manager with trust store
TrustManagerFactory tmf = TrustManagerFactory.getInstance("SunX509");
tmf.init(trustStore);
TrustManager[] trustManagers = tmf.getTrustManagers();

// Initialize the SSLContext with key and trust managers
sslContext.init(keyManagers, trustManagers, null);
を通じて行われます。

以上がJava アプリケーションで SSL キーストアを設定および検索するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。