問題タブ [x509certificate2]

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 に答える
4517 参照

.net - マシンにルート証明書を常にインストールする必要がありますか?

ユーザーの認証にスマート カードを使用しています。サーバーで認証ロジックを処理する認証サービス (SecurityTokenService) があります。

X509Certificate2.Verify()を使用して証明書を検証しています。この API は、オンラインに接続して認証局 (CA) に連絡することで、証明書が有効か失効しているかを確認できるため、サーバーにルート証明書が必要ですか?

ローカル コンピューターにルート証明書を持たないようにすることはできますか? または、ルート証明書は常に必須ですか?

0 投票する
2 に答える
5614 参照

c# - X509Certificate2.Verify() メソッドは、有効な証明書に対して常に false を返します

認証にスマートカードを使用しています。

SecurityTokenService (認証サービス) は私のマシンでのみホストされています。スマート カードには有効な証明書があり、そのルート証明書もマシンのローカル コンピューター ストアにインストールされています。

メソッドを使用X509Certificate2.Verifyしてサービスで証明書を検証すると、常に が返されfalseます。

X509Certificate2.Verify() メソッドが常に false を返す理由を誰かが理解するのを手伝ってくれますか?

注:X509Chainすべてのフラグ ( X509VerificationFlags.AllFlags) を使用して確認しました。チャニンをビルドすると、 as で返されtrueます。ChainStatusRevocationStatusUnknown


編集1:

Windowsフォームアプリケーションでこのコードを書くと、X509Certificate2.Verify() メソッドが返されることがわかりました。サービス側のコードでのみtrue返されます。falseなんでそうなの?奇妙ですが本当です!

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

java - xml ファイルを暗号化する

このコマンドを使用して、証明書を生成し、そこから .pfx ファイルをエクスポートします。この pfx ファイルは、xml ファイルの暗号化に使用されます。

.net で EncryptedXml 、 X509Certificate2、RSACryptoServiceProvider 、および XmlDocument クラスを使用

次のxmlを暗号化します

次のように:

暗号化が w3c 標準を使用して行われる限り。Javaでこのxmlファイルを復号化するにはどうすればよいですか. .pfx ファイルを使用してファイルを暗号化しました。.net では、次を使用してファイルを復号化できます。

Javaで復号化するにはどうすればよいですか?pfxファイルをJava側に渡す必要がありますか? 暗号化されたxmlファイルにタグがあるため。

あなたの提案は評価されます。

0 投票する
2 に答える
4033 参照

c# - x509 証明書と暗号化によるデジタル署名

サーバーで検証される xml ドキュメントに署名したいと考えています。.cer や .pfx ファイルなどのデジタル証明書を使用して xml ファイルに署名および暗号化する方法がわかりません。私はグーグルで検索してさまざまな例を見つけましたが、標準的な方法を理解できませんでした。

XMLファイルに署名して暗号化するための段階的なプロセスは何ですか

ここでの1つのキャッチは、

サーバー(Javaコード)で検証および復号化できるように、クライアント(.net C#コード)でファイルに署名して暗号化したい

0 投票する
2 に答える
4903 参照

c# - https BasicHttpBindingを使用し、証明書エラーを無視する

BasicHttpBinding保護された(https)ポートでホストされているWebサービスを接続するために使用しています。それを機能させるために、とをに変更しSecurity.Modeました。私も呼んでいますTransportWithMessageCredentialSecurity.MessageBasicHttpMessageCredentialType.Cerificate

サブジェクト名としてlocalhostを使用します。

ここでの問題は、単体テストの場合、Webサーバーからの署名されていない証明書があり、プロキシの作成中にスローされた証明書エラーを無視することになっていることです。しかし、 「証明書を指定してください」というエラーが表示され続けるため、これを行うことができません。今のところ、私は無知です。ここで助けてくれてありがとう。

0 投票する
2 に答える
2366 参照

java - x509証明書を使用してxmlファイルin.netを暗号化し、暗号化されたファイルをjavaで復号化します

xml暗号化を初めて使用します。.netでxmlファイルを暗号化し、x509証明書を使用してjavaで暗号化されたファイルを復号化します。これはできますか?

0 投票する
3 に答える
3516 参照

c# - 証明書ストアに保存され、BouncyCastleとC#を使用してエクスポート不可としてマークされたX509Certificate2のPrivateKeyを使用します

bouncycastleを使用して小さな認証局を構築しようとしています。

証明書はBouncyCastleを使用して生成され、秘密鍵とともに現在のユーザーの証明書ストアに保存されます。

ただし、セキュリティ上の理由から、キーはエクスポート不可としてマークされています。これを回避するのは簡単ですが、それは追加の障壁になることを意味します。

ここで、新しい証明書に署名する必要がある場合は、証明書の秘密鍵にアクセスする必要があります。私はこのコードを使ってみました:

残念ながら、CryptographicExceptionが発生します-秘密鍵がエクスポート不可としてマークされているため、これは私が意図したものです;-)

私の質問は、証明書にアクセスせずに証明書の秘密鍵を使用するにはどうすればよいですか?秘密鍵にアクセスする方法がなければ秘密鍵を保存しても意味がないので、いくつかの重要な点を見逃していると確信しています...

私は今これを何時間も探していますが、stackoverflowやGoogleで何も見つかりません。

私が根本的に間違っていることを誰かに教えてもらえますか?何かに署名する別のアプローチはありますか?!

前もって感謝します!

クリス

0 投票する
2 に答える
5083 参照

c#-4.0 - コード C# で X509Certificate2 証明書を取得できませんでした

ストアから証明書を見つけたいのですが、次のコードを使用して証明書を取得できませんでした。常に null を返します。

拇印で証明書を取得するコード

コードの何が問題になっていますか?

アップデート:

ストア オブジェクトを探索して証明書の拇印をコピーし、拇印の文字列と比較すると、false が返されます。VS2010 IDE での文字列の解釈の問題またはコピー ペーストの問題は、以下の図で確認できると思います。このため、リストから証明書を無視する必要があります。以前にこの種の問題に直面した人はいますか?

ここに画像の説明を入力

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

c# - 偽装ユーザーの鍵ストアへのアクセス

接続に証明書が必要な Web サービスに接続するために、サービス ユーザー アカウントを偽装しています。コードを実行しているマシンのサービス アカウントにクライアント証明書をインストールしましたが、System.Security.Cryptography.CryptographicException: The system cannot find the file specified というエラーが表示されます。

偽装コードは機能します。簡潔にするために省略しましたが、Environment.UserName をログに記録して、コンテキストが svcAcctUserName ユーザーに切り替えられていることを確認します。これは、svcAcctUserName として実行していることを示しています。filePath は正しいです。ここでも省略しましたが、X509Certificate2 オブジェクトを作成する前にファイルを開いたり閉じたりして、ファイルへのアクセスとパスが正しいことを確認します。

パスをパラメーターとして提供し、コードを実行しているユーザーがアクセスできることを確実に知っているため、エラーは紛らわしいです。

編集:

これも試してみました: ASP.NET Web アプリケーションでの認証にクライアント証明書を使用して Web サービスを呼び出す方法

私は asp.net アプリケーションを使用していませんが、とにかく試してみました。証明書アドインを mmc に追加し、「ローカル コンピューター」証明書アドインを追加してから、その証明書をローカル マシンの個人用ストアにインポートしました。

次に実行しました:

操作を再度実行しようとしましたが、同じ問題が発生しました。

私は何が欠けていますか?