2

スマート カードを使用して暗号化用の小さなプログラムを作成していますが、ミニ ドライバーに問題があります。プログラムを起動すると、カードが表示されます (スマート カードを選択するためのポップアップ ダイアログが表示されます) が、次の理由で使用できません。

A smart card was detected but is not the one required for the current operation. The smart card you are using may be missing required driver software or a required certificate. 

私が使用している C# コードは非常に単純で、次のようになります。

CspParameters csp = new CspParameters(
        1,
        "Microsoft Base Smart Card Crypto Provider",
        "my_container"
);
RSACryptoServiceProvider rsa = new RSACryptoServiceProvider(csp);

念のために言っておきますが、このミニドライバーを認識する別のアプリケーション (Gemalto ミニドライバー マネージャー) があるので、問題はありません。

前もって感謝します

アップデート

CSP がスマート カードを認識できるようにするには、既定のキー コンテナーを使用するように指示する必要があります。RSACryptoServiceProvider を作成する前に、次の行を追加するだけです。

csp.Flags = CspProviderFlags.UseDefaultKeyContainer;
4

1 に答える 1

0

ミニドライバーが 32 ビット モードと 64 ビット モードの両方でインストールされているかどうかを確認します。64 ビットでは、ミニドライバーとその構成 (calais データベース内) を 32 ビット モードと 64 ビット モードの両方で設定する必要があります。

于 2013-01-13T08:37:28.033 に答える