5

指定されたエイリアスのパスワードのみを要求するように KeyStore をロードできるかどうかを知っている人はいますか?

例:

私の鍵ストアには、Alice の暗号化証明書と Bob の暗号化証明書の 2 つの秘密鍵があります。

キーストアをロードすると:

keyStore = KeyStore.getInstance("Windows-MY", "SunMSCAPI");
keyStore.load(null);

Alice と Bob の両方の鍵ストアのパスワードを求めるプロンプトが出されます。入力したら、getKey("Alice's Encryption Certificate", null);Alice の秘密鍵を取得するために使用できます。私のキーは Entrust のセキュリティ プロバイダによって保護されています。キー ストアをロードする際にパスワードの入力を求められるのは Entrust のセキュリティ プロバイダです。ボブのパスワードを入力せずにキーを取得しようとすると、null が返されますが、パスワード プロンプトは表示されないようにしたいと思います。

キーストアをロードする前に Alice のキーのみが必要であるように指定して、Bob のパスワードの入力を求められないようにすることはできますか?

ありがとう。

4

1 に答える 1

3

同じ問題があり、それを行う方法が見つかりませんでした。基本的に、キーストアを部分的にロードする方法があるかどうかを尋ねています。MSCAPI プロバイダーが提供したパスワードを無視することは、事態をより複雑にします。

MSCAPI キーストアを使用してキーを 1 つだけ保存することで、この問題を回避します。これは、Smartcard のセキュリティ モデルでもうまく機能することがわかりました。

于 2010-06-02T18:37:57.053 に答える