問題タブ [certificate-revocation]
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.
certificate-revocation - CRL からのみ失効リストを確認する方法は?
WinVerifyTrust を使用してファイルの署名を検証しています。
インターネットへの接続が非常に悪いため、ローカル キャッシュのみを確認したい。
問題は、 WinTrustDataでパラメーターを設定する方法について混乱していることです。
fdwRevocationChecksについて- ドキュメントは次のとおりです。
WTD_REVOKE_NONE フラグが WinVerifyTrust 関数の pgActionID パラメータで設定された HTTPSPROV_ACTION 値と組み合わせて使用される場合、追加の失効チェックは行われません。コード署名の検証時に WinVerifyTrust 関数がネットワーク取得を試行しないようにするには、dwProvFlags パラメータで WTD_CACHE_ONLY_URL_RETRIEVAL を設定する必要があります。
「追加の失効チェックなし」とは何を意味しますか? また、何に加えて? CRL を使用して失効チェックを行いますか? このフィールドを *WTD_REVOKE_WHOLECHAIN* に設定すると、オンラインでもチェックされますか?
WTD_CACHE_ONLY_URL_RETRIEVAL を設定すると、インターネットから失効リストを取得しようとしないことを確認するのに十分ですか?
結論: CRL チェックがあることを確認する方法はありますが、オンライン チェックはありません。
ありがとう
java - 証明書失効チェックが有効な場合、Java 1.7u25 のアプレットから ClassNotFoundException が発生しました。1.6で問題なく動作
アプレットの展開に html と jnlp を使用しています。アプレットはすべての権限を必要とするため、外部で生成された証明書によって署名されています。Java 1.6 で問題なく動作します。Java 1.7 では、ClassNotFoundException がスローされ、アプレットのメイン クラスが見つからない。
コードは 1.6 を使用してコンパイルされており、1.6 と 1.7 の両方で動作する必要があります。
index.html:
WebUI.jnlp:
Java コンソールの内容は次のとおりです。
c# - Windows でのアプリケーションの証明書失効チェックの無効化
私が使用している .NET 3.5 デスクトップ アプリケーションは、テスト マシンがオフィスの外にあるときはいつでも、定期的に機能の低下を示していました。
インターネットに接続していないオフィスのマシンでエラーを再現することができましたが、ANTS パフォーマンス プロファイラーを使用して初めて、何が起こっているのかをより明確に把握することができました。
ANTS では、NHibernate が System.Data.SqlServerCE.dll アセンブリを読み込もうとしたときにアプリケーションで見られた遅延に対応する最大 16 秒かかる「同期の待機中」を見ました。
アクションをすぐに再試行すると、遅延なく動作しますが、5 分間そのままにしておくと、次に試したときに再びロードするのが遅くなります。
これまでの私の調査では、SqlServerCE dll が署名されているため、システムが証明書失効リストを取得するために接続を試みてタイムアウトしたことが原因のようです。
インターネット オプションの LAN 設定で [設定を自動的に検出する] 設定を無効にすると、[発行者証明書の失効を確認する] を無効にすると、問題が解消されます。
しかし、このアプリケーションが展開される管理者は、マシンごとまたはユーザーごとに証明書チェックを無効にするという考えに満足していないので、アプリケーション レベルで CRL チェックを無効にする必要があります。
この動作を説明する .net 2.0 には十分に文書化されたバグがあり、構成ファイル要素で可能な修正を提供します。
ただし、.net 3.5 を使用しているにもかかわらず、これは機能しません。
SQLServerCE dll は NHibernate によって動的にロードされています。動的であるという事実が何らかの理由で設定が機能しないのではないかと思いますが、それを確認する方法がわかりません。
構成設定が機能しない理由について、誰かが提案できますか?
または、アプリケーション レベルでチェックを無効にする別の方法はありますか。おそらく、インストール時にアプリケーションの例外を設定するために使用できる CAS ポリシー設定ですか?
または、信頼レベルを上げるためにアプリケーションで変更できるものはありますか?
ssl - 証明書の失効は中間 CA でどのように機能しますか?
以下のような PKI 階層があるとします。
私の質問は次のとおりです。ルート CA は、その子である inter-1 と inter-2 から CRL を定期的にダウンロードする必要がありますか?
user-1 と user-2 はお互いに認証できるので、inter-2 が user-2 の証明書を失効させた場合、inter-2 は root に知らせてから inter-1 と user-1 に伝播するはずですよね?
もしそうなら、それはかなり複雑に思えます。失効ロジックを管理するために使用するツールはありますか? どうもありがとう。
tomcat - Tomcat 7 の証明書失効リストに対してクライアント証明書を検証する
Tomcat で CRL に対してクライアント証明書を検証する一般的な方法は何ですか?
A) 考えられる解決策の 1 つ: server.xml を更新し、コネクタをセットアップし、キーとトラスト ストアをセットアップします。crlList パラメータがあります。
このアプローチには 2 つの問題があります。
1) リストのメンテナンス - Tomcat の外部で行う必要があります。Tomcat は最新のものを取得するために再起動する必要があります。
2)複数のCA本体のcrlリストをサポートする方法、または単に複数のCRリストを同時にサポートする方法はありません(または少なくとも私が見つけることができる方法はありません)。
数年前、Tomcat 5 で「良い」解決策を見つけることができませんでした。7 に関するニュースはありますか?
B) コネクタ ハンドラと現在の機能をオーバーライドし、カスタム証明書の検証を提供する一般的で洗練された方法はありますか?
JBoss AS のように、既存のクラスを拡張し、独自の login-module と独自の verifier を定義できるようにするだけです。
iis - IIS 7 で CRL チェックを有効または無効にする利点はありますか?
現在、弊社の環境では ADFS の CRL チェックを有効にしていますが、IIS7.5 の CRL チェックも有効にしておく必要がありますか? 私たちの IIS サーバーは、ファイアウォールの内側で送信トラフィックのみを対象としてセットアップされており、受信トラフィックは対象外です。
CRL チェックを無効にした場合に発生する可能性のある利点/問題はありますか? 私の質問に対する適切な回答がどこにも見つからなかったので、ここに質問を投稿しようと思いました。
ありがとう。
gnupg - 失効証明書GPG
gpg の失効証明書の意味を理解するのに問題があります。キーの失効証明書を作成すると、盗難または紛失した場合にインポートでき、キーは失効します。今キーをキーサーバーにアップロードすると、キーは無効になるはずですよね? しかし、私が鍵を取り消す前に既に私の鍵を持っている人は誰でも、私へのメッセージを暗号化でき、それを盗んだ人はメッセージを復号化できます. キーサーバーから失効した後にキーをダウンロードした新しい人だけが、キーが失効して無効になったことを確認できます。私はそれで正しいですか?
java - HTTPS で独自の証明書検証ステップを実行するにはどうすればよいですか
HttpsURLConnection で HTTPS 接続を行うときに、SSL ハンドシェイクに独自の証明書検証ステップを入れる必要があります。ホスト証明書のいくつかのプロパティを確認するために、独自の証明書確認コードを作成しました。これは、 Online Certificate Status Protocolを使用してCertificate Revocation Statusと言います。このステップを Java に含める適切な方法は何ですか。次のようにデフォルトの HostNameVerifier の一部として追加できますが、これを行う適切な方法はありますか?
java - ホストのないアプレット証明書 CRL 配布ポイント LDAP URL
お客様の CA が発行した証明書で署名されたアプレットを使用する Web アプリケーションを開発しています。その証明書には、ホストとポートを定義していない CRL 配布ポイントへの URL が含まれています。証明書の属性「CRL Distribution Points」および「Authority Information Access」には、「ldap:///CN=my-cn...」のような URL が含まれています。
Certificate Revocation-Checking API (C:\Users[my_user]\AppData\LocalLow\Sun\Java\Deployment\log) によって生成されたログ ファイルは、値「localhost」と「389」がホストとポートに使用されていることを示しています。 . これはログ ファイルのスニペットです。
ホストが必須であることを誰でも確認できますか?それ以外の場合は、デフォルト値「localhost」が使用されますか?
LDAP RFC ( http://www.ietf.org/rfc/rfc4516.txt ) を読みましたが、「ホスト」フィールドが存在しない場合、クライアントは適切な LDAP サーバーに接続するためのアプリオリな知識を持っている必要があります。「ホスト」属性を設定することは可能ですか?
JRE バージョン 1.7.0_45 (ビルド 1.7.0_45-b18) を使用しています。
ありがとう、テルモ・シモンイス