4

リッチクライアントのC++WindowsアプリケーションでDoDCACカードを利用できるようにしようとしています。

SSLを使用してクライアント/サーバー通信を保護するためにサードパーティのライブラリを使用しており、証明書が独自のバンドルされたアプリケーションによって作成された場合にのみ、汎用スマートカードを認識/処理します。

なんで?証明書は証明書ではありませんか?それらはどのように変化しますか?

具体的には、関連する標準によって義務付けられているものと、実装が定義されたままになっているものを説明する、要約された技術文書を誰かに指摘できますか?実際の仕様を見てみましたが、詳細すぎて、質問に答えられない非常に漠然とした記事を見つけました。間に何かを探しています。

4

2 に答える 2

2

コメントするのに十分なポイントがありませんが、@Jayに同意したいと思いました。おそらく、このサードパーティライブラリを構成してDoDルート証明書を信頼する必要があります。これにより、CACユーザーがクライアント証明書を提示したときに、アプリがそれを信頼できるようになります。

DoDルート証明書は公開されています:http: //dodpki.c3pki.chamb.disa.mil/rootca.html

また、監視している動作が、クライアントがクライアント証明書を選択するように求められていない場合、またはクライアント証明書がパケットトレースで送信されていることを監視していない場合は、サーバーがDoDCA。正常に動作するサーバーがクライアント証明書を要求すると、信頼するCAの識別名(dn)もアドバタイズします。次に、行儀の良いクライアントがそのリストを調べ、それらの名前を、使用可能なcleint証明書の発行者と比較します。一致するものがない場合、クライアントは「null」証明書を送信します。IIS/ApacheとFirefox/IE/Chromeがこのように動作することは知っています。ただし、Operaは、宣伝されている発行者に基づいて差別しているようには見えず、クライアントが嘘をついている証明書を送信します。

于 2010-09-28T05:16:33.290 に答える
0
  • 証明書は証明書です。証明書は通常、スマートカードベンダーのパーソナライズソフトウェアではなく、CAによって「作成」されます。スマートカードを使用する場合、キーへのアクセスが重要です。
  • スマートカードをCDと考えてください。それらはすべて同じように見えますが、ディスク上のフォーマットを知る必要があります。はい、ほとんどのコンピューターで読み取ることができる「一般的な」形式がありますが、一部の特別なソフトウェアはディスクに特別なものを書き込むことができ、他のソフトウェアは読み取ることができません。

大事なことを言い忘れましたが、ソフトウェアがPKCS#11を使用している場合、カードにPKCS#11プロバイダーがある限り(通常、複数のCACモジュールと「汎用」ベンダーカードも付属しています)、 PKCS#11は詳細を抽象化するため、実際のカードを気にする必要はありません。

于 2010-08-11T05:11:44.213 に答える