スマートカードは、特に電子IDに使用できる唯一の本当に安全なデバイスです。ただし、標準化の欠如に起因するユーザビリティの懸念があります。
通常、スマートカードを使用するには、ユーザーはいくつかの(独自の)ミドルウェアをインストールする必要があります。それをブラウザーで使用するには、さらに具体的なものが必要です(ActiveX、Java apllets)。そのため、使いやすさが大幅に低下します。たとえば、エストニアのソリューション は、各国のIDカードとの通信を可能にするために、ブラウザーのアドオンとpkcs11モジュール をインストールする必要があります。
たくさん読みましたが、正直、少し迷ってしまいました。したがって、複数の側面(標準とプロジェクト)について明確化をお願いしたいと思います。フロー全体のどの部分がこれらをカバーしていますか、それらのステータスは何か、それらがどれだけ広く採用されているかなどです。
そして別の質問-近い将来、標準実装のスマートカードを、標準実装のOS上の標準実装のブラウザで、何もインストールする必要なしに使用する方法があると思いますか?
あなたの質問から、PKIスマートカードのみを要求しているように見えるため、他の種類のスマートカードはスキップします。
最初にいくつかの理論。コンピュータは APDUコマンド を使用してすべてのスマートカードと通信します。それらは本当に低レベルのインターフェースであり、ほとんどすべてのカードで異なります。これには実際的で政治的な理由があります。実際の理由は、すべてのカードが標準化するのが難しい特定の機能を持つことができるということです。政治的な理由は、スマートカードベンダーが、クライアントが他のメーカーの安価なカードで簡単にカードを変更できることを望まないためです。ただし、スマートカードを使用するには、標準APIが必要です。したがって、すべてのベンダーは、標準API(PKCS#11、CryptoAPI、TokenD)をエクスポートし、この高レベルの関数呼び出しを一連のAPDUコマンドに変換するミドルウェアを提供しています。これはそれほど簡単な作業ではないため、すべてのプロプライエタリミドルウェアにはバグがあります。統一されたスマートカードインターフェイスまたは仕様に対する多くの試みがありましたが、ベンダーが独自のカードを作成および販売し続けたため、それらすべてが失敗しました。
標準/プロジェクトに関して:
ブラウザーでのスマートカードの使用について-すべての主要なブラウザーは、SSLクライアント認証にスマートカードに格納された証明書を使用できます。
ActiveX、Javaアプレットまたはブラウザー拡張機能は、それらをサポートするブラウザーが統合されていないため、署名を合法的に使用するために使用されます。WebCryptoAPIに 必要な機能を追加 する試みがいくつかありました。しかし、それはブラウザベンダーがそれに反対しているようです。詳細については、このディスカッションを読むことができます- http://lists.w3.org/Archives/Public/public-webcrypto-comments/2015Jun/ したがって、私はプラグインやアドオンを追加せずにブラウザーでドキュメントに署名することは近い将来に可能になるとは思わないでください。
編集:
追加のインストールなしでTLS clientAuthがスマートカードで機能するためには、オペレーティングシステムまたはブラウザーにスマートカードミドルウェアが含まれている必要があります。
Windowsにはいくつかのスマートカードミドルウェアがプリインストールされていると思いますが、多くの異なるカードにはWindowsのミドルウェアが更新されており、カードが差し込まれると自動的にインストールされます。このようにして、クライアント認証はFirefoxを除くすべての最新のブラウザーで機能します。 Firefoxは標準のWindows暗号化インターフェース(CryptoAPI)を使用しないため、追加のインストールまたは少なくとも手動の構成が必要です。
古いバージョンのOS Xも一部のカードをサポートしていましたが、10.6以降は削除されました。