2016-05-11 21 views

答えて

3

SSL_CLIENT_CERTには公開鍵のみがあるため、このような方法で署名することはできません。

X.509証明書で何かを署名するには、その秘密鍵にアクセスする必要があります。つまり、証明書の所有者だけが、秘密鍵にアクセスするソフトウェアを使用して何かに署名することができます。したがって、ユーザーの証明書でサーバーに署名することは不可能です。公開鍵を使用すると、データの暗号化のみが可能になります。

今日、Javaアプレットは基本的に使用できないため、ブラウザでこの機能を使用するのは難しくなります。たぶんPKI.jsが役に立ちますが、ハードウェアトークン(PKCS#11)で動作するかどうかわかりません。

最近私は、同様の問題の解決策を思いついた。私はトレイに座っているデスクトップアプリケーションを(Windowsの場合のみ、.NETのSecureBlackbox libraryを使用して)作成し、定期的に署名する文書のサーバーをポーリングし、 、符号と戻り値をサーバーに署名します。

+0

これはApache/PHPの制限ですか、それともWebサーバーのコンテキストでは不可能なのですか?ドングル/トークンでさえ? – celsowm

関連する問題