問題タブ [sslengine]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
336 参照

google-cloud-platform - https Webサイト、特にgoogle cloud runに接続するためのSSLEngineを作成する方法は?

Web サイトからのすべての証明書はルート CA などによって署名されており、サーバーではなくクライアントを作成しているため、それらすべてに接続できる SSLEngine を作成するにはどうすればよいですか? または、接続するために証明書などをダウンロードする必要がありますか? (ほとんどのリンクはサーバーであるため、jdk が証明書に関するブラウザーと同じ情報をすべて持っていることを望んでいます。これは簡単に行うことができますが、ほとんどのリンクはサーバーであるため、Google のスキルを見つけるのに問題があります)。

編集:より明確にするために、自己署名証明書で動作するようなクライアントコードがあります。現在、クロムのロックをクリックして、必要なWebサイトから証明書をダウンロードしました。それをキーストアにインポートしましたが、まだ機能していません...

次に、SSL 交換のデバッグをオンにする方法を見つけて、それが役立つかどうかを確認します。現在、なぜこれが機能しないのか途方に暮れています。

痛い、デバッグログはこれを指している

そのため、何かが大きな問題を引き起こしていますが、まだ何が起こっているのかわかりません。jdk8です。これを修正する方法はまだわかりません。

ありがとう、ディーン

0 投票する
1 に答える
168 参照

java - SSLEngine を使用して、内部ネットワーク ロケーション用に署名された証明書を使用する

バックグラウンド

内部ネットワークで SSL を介して相互に通信する 2 つの Java アプリケーションを作成しようとしています。これを行うには、使用する証明書の秘密鍵エントリを含むキーストアへのアクセスを SSLEngine に付与します。

これは、ルート証明書を使用している場合は正常に機能します (ブラウザーで dubrovnik:2762 を押すと、信頼されていない証明書について文句を言いますが、それ以外の場合は機能します)。でも; 問題のドメイン (この例では dubrovnik と呼ばれます) に対してのみ、内部 CA によって署名された非ルート証明書を使用したいと考えています。

代わりにルート証明書を使用して証明書に署名し、サブジェクトの代替名に dubrovnik があると、Java は証明書の使用を拒否し、代わりにjavax.net.ssl.SSLHandshakeException: No available authentication scheme例外を生成します

ここに画像の説明を入力

私が使用しているキーストアにはこれが含まれています:

証明書の作成方法

openssl と keytool を使用してローカル CA と署名付き証明書を作成してきました

質問

javax.net.ssl.SSLHandshakeException: No available authentication scheme内部ネットワーク証明書 (ルート証明書ではない) を SSLEngine に受け入れさせ、例外を回避するにはどうすればよいですか?