"単一のコンパクトなハウジング602、604を含むコンパクトなパーソナルトークン200であって、該ハウジング602、604は、ホスト処理デバイス102に取り外し可能なように結合することが可能なUSBコンプライアントインターフェース206と、メモリ214と、該メモリ214に通信可能なように結合されたプロセッサ212であって、該プロセッサ212が、第1のパス216によって、該USBコンプライアントインターフェース130を介して、該ホスト処理デバイス102に通信可能なように結合することが可能であり、該プロセッサ212が、該メモリ214に格納されているデータへのアクセスをホスト処理デバイス102に提供する、プロセッサ212と、第2のパス220によって、該プロセッサ212に通信可能なように結合されたユーザ入力デバイス218とを保持し、該第2のパス220上の通信が該USBコンプライアントインターフェース206にアクセス可能でないように、該第1のパス216および該第2のパス220が互いに異なっており、該プロセッサが、該ユーザ入力デバイス218からの入力に基づいて、該メモリ214に格納されているデータへのアクセスを制御する、コンパクトなパーソナルトークン200。前記ユーザ入力デバイス218が、前記プロセッサ212の動作を制御するように構成されている、請求項1に記載の装置。前記動作が、暗号化動作と、復号化動作とを含む群から選択される動作を含む、請求項2に記載の装置。前記動作が、前記メモリ214に格納されている復号鍵を用いるデジタル署名動作を含む、請求項2に記載の装置。前記入力デバイス218が、前記トークン200の外部の面から作動可能な少なくとも1つの感圧性デバイスを含む、請求項1に記載の装置。前記入力デバイス218が少なくとも1つの押しボタンスイッチ702を含む、請求項1に記載の装置。前記USBコンプライアントインターフェース206と異なるパス224によって、前記プロセッサ212に通信可能なように結合された出力デバイス222をさらに含み、該出力デバイス222が、該プロセッサ212の動作に関する情報を提供する、請求項1に記載の装置。前記出力デバイス222が、少なくとも1つの発光デバイス616を含む、請求項7に記載の装置。前記出力デバイスが、少なくとも1つの液晶ディスプレイ706を含む、請求項7に記載の装置。前記出力デバイスが、少なくとも1つの音声出力デバイスを含む、請求項7に記載の装置。単一のコンパクトなハウジング602、604を含むコンパクトなパーソナルトークン200であって、該ハウジング602、604は、ホスト処理デバイス102に取り外し可能なように結合することが可能なUSBコンプライアントインターフェース206と、メモリ214と、該メモリ214に通信可能なように結合されたプロセッサ212であって、該プロセッサ212が、第1のパスによって、該USBコンプライアントインターフェース206を介して、該ホスト処理デバイス102に通信可能なように結合することが可能であり、該プロセッサ212が、該メモリ214に格納されているデータへのアクセスを該ホスト処理デバイス102に提供する、プロセッサ212と、第2のパス224によって、該プロセッサ212に通信可能なように結合されたユーザ出力デバイス222とを保持し、該第2のパス224上の通信が該USBコンプライアントインターフェース206にアクセス可能でないように、該第1のパス216および該第2のパス224が互いに異なっている、コンパクトなパーソナルトークン200。前記ユーザ出力デバイス222が、前記プロセッサ212の動作を示すように構成されている、請求項11に記載の装置。前記動作が、暗号化動作と、復号化動作と、復号鍵を用いるデジタル署名動作とを含む群から選択される動作を含む、請求項12に記載の装置。前記ユーザ出力デバイス222が、少なくとも1つの発光デバイス616と、少なくとも1つの液晶ディスプレイ706と、少なくとも1つの音声デバイスとを含む群から選択される、請求項11に記載の装置。前記USBコンプライアントインターフェース206と異なるパス220によって、前記プロセッサ212に通信可能なように結合された入力デバイス218をさらに含み、該入力デバイス218が、該プロセッサ212の動作に関する情報を提供する、請求項11に記載の装置。発明の要旨本発明は、ユニバーサルシリアルバスUSBを例とする市販のI/Oインターフェースと対応するフォームファクタにおいて、パーソナルキーのこれらの必要性全てを満たす。パーソナルキーは、コピーおよび不正使用を防ぐソフトウェア保護スキームを実行するプロセッサおよびメモリを含む。パーソナルキーは、デジタル認定の格納および管理を提供し、ユーザが自分のデジタル認定の全てをある媒体に格納し、プラットフォームからプラットフォームへの移植を可能にする。パーソナルキーは、多くのパスワードを生成、格納、および管理を提供し、付加的なセキュリティを提供し、ユーザが多数のパスワードを覚える仕事から解放する。パーソナルキーは、クッキーおよび他のJavaR実行ソフトウェアプログラムを格納し、ユーザがクッキーを除去可能なセキュリティフォームファクタで受け取ることを可能にする。これらの特性は、本発明が仮想プライベートネットワークVPNで使用される場合に、特に有用である。本発明はまた、いくつかのアプリケーションに対して使用され得る。パーソナルキーは、ユーザの繊細な情報を全て実質的に格納することが可能であるので、パーソナルキーは、可能な限りのセキュリティを保持することが重要である。パーソナルキーの1実施形態はまた、指紋データを例とするバイオメトリックスを測定するように配置されるバイオメトリックスセンサーを含む。バイオメトリックスセンサーは、個人が保持する指紋を例とする鍵の特徴を測定し、鍵をオーナーが、実際にその鍵のオーナーであることを確認する。パーソナルキーは、ユーザが使用し、様々なコンピュータプラットフォームと双方向に交流する必要のある大量のデータの単一の安全なレポジトリを表すので、パーソナルキーは、多くの様々なコンピュータおよび周辺機器とインタフェースすなわち、データを伝送および受信し得ることがまた、重要である。パーソナルキーの1実施形態は、赤外線IRトランシーバを例とする電磁波トランスセプションtransceptionデバイスを含む。このトランシーバにより、パーソナルキーは、物理的に結合せずに、広範囲で様々なコンピュータおよび周辺機器と情報を交換することを可能にする。本発明は、ネットワークサービスまたはパスワード、クッキー、デジタル認定または他の場合、スマートカードが用いられるいかなる場所へのアクセスを制御することによく適応しており、以下の、インターネットプロトコルセキュリティIPSec、ポイント対ポイントトンネリングプロトコルPPTP、パスワード認証プロトコルPAP、チャレンジハンドシェイク認証プロトコルCHAP、遠隔アクセスダイアルインユーザサービスRADIUS、端末アクセス制御装置アクセス制御システムTACACSを含む遠隔アクセスサービスと、ハイパーテキストトランスポートプロトコルHTTP、セキュアソケット層SSLを含む、エクストラネットおよびサブスクリプションベースのウェブアクセス制御の提供と、セキュアsecureオンラインバンキング、利益アドミニストレーション、会計管理のサポートの向上と、セキュアワークフローおよびサプライチェーンインテグレーション署名形式formsigningのサポートと、ラップトップコンピュータの盗難防止ラップトップ操作にパーソナルキーの要求と、ワークステーションログオン許可と、ソフトウェアの変更またはコピーの防止と、ファイルの暗号化と、セキュアeメール、例えば、セキュア多目的インターネットメール拡張S/MIME、およびオープンプリティグッドプライバシーOpenPGPののサポートと、ネットワーク装置アドミニストレーションの管理と、例えば、セキュア電子取引での電子ウォレットSET、MilliCent、eWalletと、を含む。1実施形態では、本発明は、コンパクトな自己完結してるパーソナルキーまたはトークンを含む。パーソナルキーは、ホスト処理デバイス、メモリ、プロセッサに取り外し可能な結合をし得るUSBコンプライアントインタフェースを含む。プロセッサは、メモリに格納可能なデータにホスト処理デバイス条件付アクセスおよびパーソナルキーに格納されるファイルの管理を要求し、ファイルのデータに基づき実行する機能性を提供する。1実施形態では、パーソナルキーはまた、統合ユーザ入力デバイスおよび統合ユーザ出力デバイスを含む。入力および出力デバイスは、USBコンプライアントインタフェースとは無関係の通信パスでプロセッサと通信し、ユーザがパーソナルキーを除く任意の個人情報を示さずともプロセッサを通信が可能にする。例えば、本発明は、以下を提供する。項目1コンパクトなパーソナルトークン200であって、ホスト処理デバイス102に取り外し可能なように結合可能なUSBコンプライアントインターフェース206と、メモリ214と、該メモリ214に通信可能なように結合されたプロセッサ212であって、該プロセッサ212が、該USBコンプライアントインターフェース130を介して、ホスト処理デバイス102に通信可能なように結合可能であり、該プロセッサ212が、該メモリ214に格納可能なデータへの条件付アクセスをホスト処理デバイス102に提供する、プロセッサ212と、該USBコンプライアントインターフェース206と異なるパス220により該プロセッサ212に通信可能なように結合されたユーザ入力デバイス218とを含む、コンパクトなパーソナルトークン200。項目2ユーザ入力デバイス218が、前記プロセッサ212の動作を制御するように構成されている、項目1に記載の装置。項目3前記動作が、暗号化動作と、復号化動作とを含む群から選択される動作を含む、項目1に記載の装置。項目4前記動作が、前記メモリ214に格納されている復号鍵を用いるデジタル署名動作を含む、項目1に記載の装置。項目5前記入力デバイス218が、前記トークン200の外部の面から作動可能な少なくとも1つの感圧性デバイスを含む、項目1に記載の装置。項目6前記入力デバイス218が少なくとも1つの押しボタンスイッチ702を含む、項目1に記載の装置。項目7前記USBコンプライアントインターフェース206と異なるパス224によって、前記プロセッサ212に通信可能なように結合された出力デバイス222をさらに含み、該出力デバイス222が、該プロセッサ212の動作に関する情報を提供する、項目1に記載の装置。項目8前記出力デバイス212が、少なくとも1つの発光デバイス616を含む、項目7に記載の装置。項目9前記出力デバイスが、少なくとも1つの液晶ディスプレイ706を含む、項目7に記載の装置。項目10前記出力デバイスが少なくとも1つの音声出力デバイスを含む、項目7に記載の装置。項目11コンパクトなパーソナルトークン200であって、ホスト処理デバイス102に取り外し可能なように結合可能なUSBコンプライアントインターフェース206と、メモリ214と、該メモリ214に通信可能なように結合されたプロセッサ212であって、該プロセッサ212が、該USBコンプライアントインターフェース206を介して、該ホスト処理デバイス102に通信可能なように結合可能であり、該プロセッサ212が、該メモリ214に格納可能なデータへの条件付アクセスをホスト処理デバイス102に提供する、プロセッサ212と、該プロセッサ212に通信可能なように結合されたユーザ出力デバイス222とを含む、コンパクトなパーソナルトークン200。項目12前記ユーザ出力デバイス212が、前記USBコンプライアントインターフェース206と異なるパス224により前記プロセッサ212に結合される、項目11に記載の装置。項目13前記ユーザ出力デバイス222が前記プロセッサ212の動作を示すように構成されている、項目11に記載の装置。項目14前記動作が、暗号化動作と、復号化動作と、復号鍵を用いるデジタル署名動作とを含む群から選択される動作を含む、項目11に記載の装置。項目15前記ユーザ出力デバイス212が、少なくとも1つの発光デバイス616と、少なくとも1つの液晶ディスプレイ706と、少なくとも1つの音声デバイスとを含む群から選択される、項目11に記載の装置。項目16前記USBコンプライアントインターフェース206と異なるパス220によって、前記プロセッサ212に通信可能なように結合された入力デバイス218をさらに含み、該入力デバイス218が、該プロセッサ212の動作に関する情報を提供する、項目1に記載の装置。項目17前記プロセッサ212およびメモリ214が、該プロセッサ212との電気的な通信を提供する少なくとも1つの回路接続面610を有する回路基板606上に配置され、前記USBコンプライアントインターフェース206が、少なくとも1つの導電性のピンであって、該少なくとも1つの導電性のピンは、該回路接続面610と前記ホスト処理デバイス102との間の電気的な通信を提供し、該導電性のピンは、ピン固定部を含み、該回路接続面610に取り外し可能なように結合可能である、少なくとも1つの導電性のピンと、該回路基板606の少なくともいくつかを実質的に封入するハウジング602であって、該ハウジング602は、該導電性のピンの縦軸に沿ってピン部材を固定するための該ピン固定部と接触可能なピンインターフェースを含む、ハウジング602とを含む、項目11に記載の装置。全体にわたって、参照番号が同じものは対応する部材を表す。好適な実施形態の詳細な説明以下の説明では、本明細書の一部を形成し、本発明のいくつかの実施形態を例示す目的で示す添付された図面を参考にする。本発明の範囲から逸脱することなく、他の実施形態が利用され得、構造的変更が為され得ることが理解される。ハードウェア環境図1は、本発明を実行するために用いられ得る例示的なコンピュータシステム100を示す。コンピュータ102は、プロセッサ104およびメモリ例としてはランダムアクセスメモリRAM106を含む。コンピュータ102は、機能的にでディスプレイ122に結合され、グラフィカルユーザインターフェース118B上でユーザにウィンドウを例とする画像を表示する。コンピュータ102は、キーボード114、マウスデバイス116、プリンタ128等を例とする他のデバイスに結合され得る。もちろん、当業者は、上記の構成エンティティの任意の組み合わせ、または任意の数の異なる構成エンティティ、周辺機器、および他のデバイスが、コンピュータ102で使用され得ることを認識する。一般に、コンピュータ102は、メモリ106に格納されるオペレーティングシステム108の制御下で動作し、ユーザとインターフェースをとり、入力およびコマンドを受け取り、グラフィカルユーザインターフェースGUIモジュール118Aを通じて結果を示す。GUIモジュール118Aは、分離したモジュールとして示されるが、GUI機能を実行する命令は、オペレーティングシステム108、コンピュータプログラム110に常駐または分散されてもよく、専用のメモリおよびプロセッサで実行されてもよい。コンピュータ102はまた、プログラミング言語例として、COBOL、C、FORTRANまたは他の言語で書かれたアプリケーションプログラム110をプロセッサ104読み出し符号に翻訳することができる、コンパイラ112を実行する。完了後、アプリケーション110は、コンパイラ112を用いて生成される関係および論理を用いて、コンピュータ102のメモリ106に格納されるデータにアクセスし、操作する。コンピュータ102はまた、パーソナルトークン200以降では、代わりにパーソナルキー200としても呼ばれるに対する入力/出力I/Oポート130を含む。1実施形態において、I/Oポート130が、USBコンプライアントインターフェースを実行するUSBコンプライアントポートである。1実施形態において、オペレーティングシステム108、コンピュータプログラム110、およびコンパイラ112を実行する命令が、コンピュータ読み出し可能媒体例として、データ格納デバイス120内に、実体的に含まれる。そのコンピュータ読み出し可能媒体は、固定データ格納デバイスまたはリム-バルデータ格納デバイスを1つ以上含み得、これは、ジップドライブ、フロッピーRディスクドライブ124、ハードドライブ、CD-ROMドライブ、テープドライブ等を例とする。さらに、オペレーティングシステム108およびコンピュータプログラム110は、コンピュータ102で読み出しおよび実行される場合、コンピュータ102に本発明を実行および/または使用するのに必要な工程を行わせる命令から構成される。コンピュータプログラム110および/またはオペレーティング命令はまた、メモリ106および/またはデータ通信デバイス内に実体的に含まれ得、それにより本発明に応じたコンピュータプログラム製品または製造品を製造する。そのようなものとして、本明細書中で用いられる用語製造品およびコンピュータプログラム製品は、任意のコンピュータ読み出し可能デバイスまたは媒体からアクセス可能なコンピュータプログラムを含むように意図される。コンピュータ102は、ダイアルアップネットワーク、ワイドエリアネットワークWAN、ローカルエリアネットワークLAN、仮想プライベートネットワークVPNまたはインターネットを例とする通信媒体132を介して、遠隔コンピュータまたはサーバ134に通信可能な結合をし得る。付加的または代替的なアプリケーションプログラムを含む、コンピュータ動作に対するプログラム命令は、遠隔コンピュータ/サーバ134からロードされ得る。1実施形態において、コンピュータ102は、インターネットブラウザを実行し、ユーザがワールドワイドウェブWWWおよび他のインターネットリソースにアクセス可能となる。当業者は、本発明の範囲から逸脱することなく、この設定に、多くの改変が為され得ることを認識する。例えば、当業者は、上記の構成エンティティの任意の組み合わせ、または任意の数の異なる構成エンティティ、周辺機器および他のデバイスが、本発明で使用され得ることを認識する。アーキテクチャの概要図2は、本発明の選択されたモジュールを例示するブロックダイアグラムである。パーソナルキー200は、ホストコンピュータ102の入力/出力ポート130およびパーソナルキー200にマッチングする入力/出力I/Oポート206を含むUSBコンプライアントインターフェース204のUSBコンプライアント通信パス202を通じて、ホストコンピュータと通信し、パワーを得る。パーソナルキーI/Oポート206で受信される信号は、通信パス210および216を介してドライバ/バッファ208によってプロセッサ212へ往復する。プロセッサ212は、本発明の上記の機能を実行するためのデータおよび命令を格納するメモリ214に通信可能な結合される。1実施形態において、メモリ214は、工場供給データおよび顧客供給アプリケーション関連データを保持し得る不揮発性ランダムアクセスメモリである。プロセッサ212は、これらの機能のいくつかを実行するために、いくつかの内部メモリを含み得る。プロセッサ212は、随意に、入力デバイス通信パス220を介して、入力デバイス218に通信し得るように結合され、出力デバイス通信224を介して、出力デバイス222に通信し得るように結合される。その両方のパスは、USBコンプライアントインターフェース204および通信パス202と異なる。これら個別の通信222バスおよび224によって、USBコンプライアントインタフェース204を識別するプロセスまたは他のエンティティが盗むeavesdropまたはとりなすintercedeことを可能にすることなく、ユーザがプロセッサ212の動作についての情報を見ることを可能とし、プロセッサ212の動作に関連する入力を提供する。これにより、重要なkeyプロセッサ212とユーザとの間のセキュリティの高い通信を可能にする。以下に十分に説明する本発明の1実施形態において、ユーザは、鍵の外側で動作可能な機械的スイッチまたはデバイス例えば、ボタンおよび機械的スイッチのような感圧性デバイスの物理的操作によって、直接プロセッサ212と通信する。以下でより十分に説明する本発明の別の実施形態において、入力デバイスは、文字の選択を示す接触つめを備えるホイールを含む。入力デバイス218および出力デバイス222は、共同的にお互い双方向に相互作用し、パーソナルキー200の機能性を高め得る。例えば、出力デバイス222は、ユーザが入力デバイス218に情報を入力するように促す情報を提供し得る。例えば、出力デバイス222は、アラビア数字およびまたは文字を表示し得る英数字のLEDまたはLCDディスプレイを例とする視覚的ディスプレイおよび/または聴覚的デバイスを含み得る。ユーザは、聴覚的デバイスのビープによって、LEDのフラッシュパターンによって、または両方によって情報を入力するように促され得る。出力デバイス222はまた、随意に用いられ、入力デバイス218によって情報の入力を確かめ得る。例えば、ユーザが、情報を入力デバイス218に入力する場合、またはユーザ入力が無効である場合、聴覚的出力デバイスは、ビープし得る。入力デバイス218が、入力デバイスの異なる組み合わせを含む多くの形式の1つを取り得る。入力デバイス通信パス220および出力デバイス通信パス224は、個別のパスとして図2において図示されるが、USBコンプライアントインターフェース204と異なる通信パスを依然と保持して、パス220および224を組み合わせることにより、本発明は実行され得る。例えば、入力デバイス218および出力デバイス222は、単一のデバイスにパッケージ化され得、プロセッサ212との通信は単一の通信パスで多重化される。1実施形態において、本発明は、USBコンプライアントインターフェース204と異なる通信パスを介してプロセッサに結合される代わりに、USBコンプライアントインターフェース204に結合され得る第2の出力デバイス222をさらに含む。この実施形態は、例えば、ユーザにパーソナルキー200が正確にホストコンピュータのUSBポートに挿入されたかどうかを示す例えば、USBコンプライアントインターフェースの出力信号の表示を提供することによってために用いられ得る。第2の出力デバイスはまた、例えば、USBコンプライアントインターフェースのデータ信号の表示を提供することによってデータがホストコンピュータとパーソナルキー200とを往復することを示すために用いられ得る。パーソナルキーは、複数のAPIライブラリルーティンを有するアプリケーションプログラムインターフェースAPI260と通信し得るように結合されるUSBドライバモジュール266を含むインターフェースを有する。API260は、アプリケーション110とのインターフェースを提供し、コマンドを出し、パーソナルキー200からの結果を受け取る。1実施形態において、NETSCAPE、Inc.製の利用可能なブラウザを例とするブラウザ262は、APIおよび公開鍵暗号規格PKCSモジュール264で動作し、トークンベースユーザ許可システムを実行する。パーソナルキーの可搬性および利用性は、多くの利点を有する一方で、パーソナルキーはまた、重大な不利点紛失および盗難があり得る。パーソナルキー200は、多くのユーザのプライベートデータに対してセキュリティの高いレポジトリを表すので、これは特にトラブルとなる。これらの理由から、パーソナルキー200に含まれる情報しかし、必ずしもパーソナルキー200それ自体ではないの究極的なセキュリティは非常に重要となる。究極的に、パーソナルキー200は、ホストコンピュータ102を通じて外部に対して所有者を識別するが、パーソナルキーは紛失または盗難に遭う可能性があるので、パーソナルキー200を所有する個人は実際のオーナーであるという保証はない。セキュリティは、個人のパスワード等の使用により向上し得るが、この解決手段は理想ではない。第1に、単一パスワードの使用は、パスワードが、妥協され得るという非常に現実的な可能性を高める結局、盗人は、ユーザ、およびユーザのパスワードを知っている。複数回のパスワードの入力を要求することはまた、ホストコンピュータ102または遠隔コンピュータ134で実行してる不正なソフトウェアが、パスワードまたは個人識別を盗み得る機会を増やすことになる。パーソナルキー200を使用する理由の1つは多くのパスワードを覚える必要性をユーザから取り除くことであるので、多数のパスワードの使用は、解決にはならない。パスワードに関する別の問題は、ハッキング手段を用いて、パスワード保護を出し抜き、またはパスワードそれ自体を発見し得ることである。これは、パーソナルキー200は、たいていの場合、キーボード114を例とするホストコンピュータ102の周辺機器に入力される入力/出力ポート130を介しての伝送されるデータに左右され、その結果、パーソナルキー200はハッキングに脆弱になるという観点で特に問題である。本発明の1実施形態において、バイオメトリックセンシングデバイス250は、パーソナルキー200上にまたは内にマウントされ、ユーザがパーソナルキー200を保持する場合に、バイオメトリックデータをユーザから集める。1実施形態において、バイオメトリックセンシングデバイス250は、ユーザの指紋を読み取ることが可能である指紋センサーを含む。バイオメトリックセンサー250はまた、バイオメトリックデータをプロセッサ212による使用に適切なデータに減らすビルトイン処理を含み得る。バイオメトリックデータの収集が必要な場合、発光または発熱デバイスをバイオメトリックセンサーの近くに配置して、光または熱を使用するアクティヴデータ測定を提供し得るバイオメトリックセンサー250は、名目上、関心のあるバイオメトリックデータを測定する最適な場所に配置される。図示される実施形態において、バイオメトリックセンサー250は、ユーザがパーソナルキー200を握って、パーソナルキーをホストコンピュータ102のI/Oポート130に挿入する場合に、ユーザの親指の指紋からのデータを収集するように寸法を調整され、配置される。ホルダーの指紋の測定を容易にするために、パーソナルキー200の外部表面は、ユーザの親指を特定の場所に置くように設計され得る。あるいは、セキュリティを高めるために、パーソナルキー200の外観は、バイオメトリックセンサー250の存在を全くマスクするように設計され得る。バイオメトリックセンサー250は、既知の時間に予測可能なタイプの既知のデータを集める例えば、パーソナルキー200をホストコンピュータのI/Oポート130に接続する時、親指の指紋を収集することを期待され得るポジションに有利に配置され得る。パーソナルキー200は、バイオメトリックセンサー通信パス226を介してバイオメトリックセンサー250からデータを受け取り、覚えたかまたは妥協したパスワード、または任意の他の入力なしで鍵を保持して、個人のアイデンティティを確認する。このように、バイオメトリックセンサー250は、バイオメトリックセンサーまたはパスワードのみで得ることができるより高度なレベルのセキュリティを備えるパーソナルキー200を提供する。必要な場合、パーソナルキー200を接続するホストコンピュータ102を認識するように、パーソナルキー200は設定され得、このように得られたデータを用いて、鍵のセキュリティを向上させ得る。バイオメトリックセンサーはまた、同様に他の方法でパーソナルキーのセキュリティを向上させるように用いられ得る。例えば、パーソナルキーが盗難される場合、バイオメトリックセンサーは、盗人の指紋を測定するために用いられ得る。このデータは、盗人がパーソナルキーを用いて、例えば、インターネットで買い物しようと試みるまで格納され、維持され得る。このときに、パーソナルキー200は、指紋情報および任意の他の関連情報を適切な機関に送信し得る例としては、インターネットサイト特定のエンティティに盗人を識別しても、しなくともコンタクトをとるようにプログラムされ得る。パーソナルキー200はまた、多くの不正確なパスワードが供給される場合、このダイアルアップおよびレポート機能を実行し得る。本発明の1実施形態において、パーソナルキー200はまた、外部データトランシーバ254とデータを通信するデータトランシーバ252を含む。データトランシーバ252は、ドライバ208および通信パス216、228を介して、プロセッサ212と通信し得るように結合され、パーソナルキー200をUSBコンプライアントインタフェース204を曝すことなく、電磁波を送信および受信を介して、データを送信および受信を可能にする。あるいは、データトランシーバ252は、プロセッサ212に通信し得るように直接に結合され得る。1実施形態において、データトランシーバ252は、同じ能力を備える多くの市販の利用可能な周辺機器と通信し得る赤外線IRトランシーバを含む。この機能は、パーソナルキー200が、既にホストコンピュータ102のI/Oポート130に結合される場合でさえ、パーソナルキー200に、外部の周辺機器およびデバイスと通信する別の手段を提供する。1実施形態において、パーソナルキー200はまた、バッテリーまたは容量性デバイスを例とする電源を含む。電源は、ホストコンピュータ102に接続されていない場合でさえ、パーソナルキーの構成エンティティにパワーを供給し、データが保持され、パーソナルキーの機能および動作が実行されることを可能にする。図3は、パーソナルキー200のメモリ214により提供されるメモリリソースのダイアグラムである。メモリリソースは、マスターキーメモリリソース312、個人識別番号PINメモリリソース314、関連PINカウンタレジスタ316およびPINリセットレジスタリソース318、シリアルナンバーメモリリソース310、グローバルアクセスコントロールレジスタメモリリソース320、ファイルシステムスペース324、補助プログラム命令スペース322、およびプロセッサ動作プログラム命令スペース326を含む。プロセッサ動作プログラム命令スペース326は、パーソナルキー200が本明細書中に説明される名目上の動作を行うように実行し、ホストコンピュータ102または遠隔サーバ134のいずれかにおいても実行するアプリケーション110と関連するアプリケーションプログラムインターフェース260により呼び出されるそれらのサポーティング機能を含む命令を格納する。補助プログラム命令スペースは、所望な場合、パーソナルキー200に、付加的な機能性を実現するプロセッサ212命令を格納するスペースを提供する。マスターキーは、管理パスワードであって、その管理パスワードは、信用性の高いエンティティまたはパーソナルキー200を初期化し、設定するプログラムにより既知でなければならない。例えば、パーソナルキー200は、多くの遠隔地に位置する従業員に供給され、VPNを通じて、遠隔サーバに格納されるプライベートドキュメントにアクセスすることが可能になる場合、マスターキーを遠隔地に位置する従業員に提供する前に、遠隔サーバのシステムアドミニストレータは、マスターキーを入力するまたはマスターキーを工場設定から変える。システムアドミニストレータはまたセキュリティの高い場所にマスターキーを格納し、このマスターキーを用いて、要求されるセキュリティの高い例えば、遠隔ユーザの許可および認定を含む動作を行う。1実施形態において、MKEYが、最初に照合不可能である場合、マスターキーは、設定、リセット、または初期化は不可能である。マスターキーが既知でない場合、パーソナルキー200は、破壊/廃棄、または工場セッティングにリセットするように工場に返されなければならない。PINは任意の値であり、パーソナルキー200のユーザを認定するように用いられ得る。PINは、信用性の高いアドミニストレータによって初期化される。パーソナルキー200初期化プログラムがどのように実行され、配置されるかに応じて、端末ユーザは、自分のPINをセッティングおよび/またはアップデートすることが可能になる。PINは、英数字または単に数字を含み得る。PINはまた、2つの関連レジスタ316および318を透過的に用いるアプリケーションプログラムインターフェースAPI呼び出しを用いる間、チェックされ得る。PINリセットレジスタリソース318は、PINカウンタ316メモリリソースをリセットするように用いられるリミットを格納するように用いられ、PINカウンタリソース316は、減少カウンタである。PINカウンタレジスタ316およびPINリミットレジスタ318は、違法アプリケーションまたはユーザが、PINを発見しようして、素早く何千ものランダムPINを試験することを防止するように用いられる。PINが初期化される場合、減少カウンタレジスタ316は、PINリセットレジスタリソース318での値にセットされる。PIN照合が失敗する場合はいつでも、カウンタレジスタ316は減少される。PIN照合が成功する場合、カウンタレジスタは、限界値にセットされる。減少カウンタレジスタ316が0になる場合、信用性の高いアドミニスタがPINカウンタレジスタ316を限界値にリセットするまで、もうPIN照合は、できない。例えば、PINレセットレジスタリソース318リミットを3にセットする場合、ユーザは、PIN照合を3回失敗すると、リセットされるまで、PINは無効となる。正しいPIN照合が成功する場合、カウンタレジスタ316は、3にリセットされる。シリアル番号は、ユニークな工場インストールシリアル番号SNである。シリアル番号を用いて、他のパーソナルキー200ユーザの全てと単一のユーザとを区別し得る。パーソナルキー200のメモリ214はまた、ビルトインアルゴリズムメモリリソース302を含む。ビルトインアルゴリズムメモリリソース302は、関連処理命令を格納するためのMD-5ハッシュエンジンメモリ304を含み、関連処理命令を格納するためのHMAC-MD5許可メモリリソース306を含み、乱数を生成する処理命令を格納するための乱数生成メモリリソース308を含む。乱数ジェネレータを用いて、認定ダイジェストを生成する場合は、使用されるチャレンジchallengeを生成し得、他の暗号手順にシードを提供し得る。MD-5アルゴリズムは、入力として任意の長さのメッセージを受け取り、出力として128ビットの指紋または入力のメッセ-ジダイジェストを作る。その過程で、そのアルゴリズムは、RFC-1321を例とする高速アルゴリズムを用いて入力データを再生可能な製品にスクランブルまたはハッシュする。ハッシュされたメッセージ認定コードHMACは、任意に繰り返される暗号ハッシュ関数例えば、MD-5をシークレットキーと組み合わして用いられ得、メッセージまたはデータ収集を認定する。パーソナルキー200は、この方法を統合し、端末ユーザまたはアプリケーションデータがシークレットキーを曝さずに認定される1つの方法を提供し得る。本発明は、2つのセキュリティ機構を用いて端末ユーザの認定を可能にする。以下で議論される第1の機構は、ホストコンピュータ102または遠隔コンピュータ/サーバ134上で実行しているソフトウェアによるパーソナルキー200の認定を可能にする。この第1の機構は、ハッシュアルゴリズムおよびパーソナルキー200およびパーソナルキーの認定を試験するエンティティの両方に既知である手動合意秘密値を使用する。本発明の開示で後で議論される第2の機構は、パーソナルキー200がパーソナルキー200の使用を試みるユーザの認定を可能にする。第2の機構は、その鍵が紛失または盗難に遭った状況で、個人識別番号PINを用いて、許可されていないユーザまたはアクセスの防止に役立てる。以下で、十分に説明されるように、PINは、パーソナルキー200に直接に入力され得、したがってPINがパーソナルキー200の外部に決して曝されないということを保証することによりセキュリティを高める。図4は、HMAC-MD5エンジンを用いて、パーソナルキー200または本明細書中のアプリケーションデータのアイデンティティを認定する方法の1実施形態を示すダイアグラムである。ホストコンピュータで実行しているアプリケーション例えば、アプリケーションプログラム110または遠隔コンピュータ/サーバ134で実行しているアプリケーションとリンクしている機能を有するパーソナルキーのライブラリは、パーソナルキー200に関連して、ホストコンピュータ102または遠隔コンピュータ/サーバ134のどちらか一方で実行してる。ハッシュアルゴリズム410は、アプリケーション110およびパーソナルキー200の両方で、実行される。アプリケーション110およびパーソナルキー200の両方は、秘密406へのアクセスを有する。秘密406Bは、適切な認証なしでは、アクセスできないロケーションにあるパーソナルキー200のメモリ214内に保持される。一般的には、秘密406Bは、システムアドミニストレータまたは他のいくつかの信用性のあるソースにより、パーソナルキー200に格納される。パーソナルキー200のユーザは、アプリケーション110が、アプリケーション110がそうであると考えるエンティティである場合、アプリケーションの秘密406Aおよびパーソナルキーの秘密406Bは同じである。これは、秘密を曝さずに、ハッシュアルゴリズムにより照合され得る。同様に、パーソナルキー200のユーザは、アプリケーションが期待するエンティティでない場合、アプリケーションが、秘密406Aおよび406Bは異なる。これも、秘密を曝すことなく、ハッシュアルゴリズムにより照合される。チャレンジが、アプリケーション110により生成される。アプリケーション110にアクセス可能なハッシュアルゴリズム410およびパーソナルキー200で実行されるハッシュアルゴリズムに提供される。各ハッシュアルゴリズムにより、チャレンジおよび常駐する秘密を適用して、ハッシュ出力412を適用する。ハッシュアルゴリズムが等しく、406Aおよび406Bそれぞれが同じである場合、それそれの場合に結果として生じるハッシュ出力412またはダイジェストストリングは、同一である。ダイジェストストリング412Aおよび412Bはアプリケーションのロジック414を用いた等式を比較する場合、パーソナルキー200は、信用される。さらに、ユーザ認定が、照合される場合、ユーザは、同様に信用される。この認定システムの1つの利点は、チャレンジ408は、インターネット等の信用性の低い媒体によって、伝送され得る。秘密406は、秘密406が、ネットワークスニファ/スヌーパsnooperまたは潜在的に妥協されたユーザインターフェースに露出されずに残っているアプリケーション110または遠隔サーバ134プログラムおよびパーソナルキー200において、符号化されたままである。ファイルシステムメモリリソース324は、ホストコンピュータ102または遠隔サーバ134のどちらかにおけるアプリケーションプログラムインターフェースライブラリ260内で十分に管理される。ファイルシステムメモリリソース324により、柔軟なシステムを提供し、パーソナルキー200のデータの格納、保護、および検索を行う。図5は、いくつかのアプリケーション用の認定のために認定および特定の設定データを提供するアクティブパーソナルキー200のファイルシステムリソース324のデータコンテンツを図示するダイアグラムである。マスターファイルMF502は、ルートディレクトリであり、アイデンティティIDにはゼロ0を用いる。MF502は、ポインタ504Aおよびポインタ504Bまたは506Aおよび506Bに対する他の指定、ディレクトリ510および516へのポインタ508Aおよび508B含み得る。ディレクトリおよびファイルは、識別することによって、定義されるディレクトリに対して、1→0xFFFFFFFF、およびファイルに対して、0→0xFFFFFFFF。ディレクトリ510および516はまた、データファイル514A-514Bおよび520A-520Cそれぞれに対するポインタ512A-512Bおよび518A-518Bそれぞれを含む。3つのファイルタイプが、以下の表1に示されるように実行される。これらのファイルタイプは、以下の表2に応じてファイル毎に制御され得る。読み出しおよび書き出しアクセスタイプ制御によりアプリケーション110を往復するパーソナルキー200でのファイル転送を統括する。暗号アクセスタイプは、ハッシュ値、暗号または解読データの計算を含む暗号操作を実行するKEYファイルタイプで用いられる。セッティングされた場合、表2で定義された制御は、以下の表3にリストとして挙げられた4つの属性の内の1つを有し得る。グローバルアクセス制御レジスタ320は、パーソナルキー200ファイルシステムの全範囲に適用する。名目上、グローバルアクセス制御レジスタ320は、表4に示されるように2つのグローバルアクセス制御に分割される8ビット値である。作成および削除グローバルアクセスタイプは、以下の表5に示された4つの属性値の内1つを有し得る。作成および削除グローバル制御は、以下の表5に説明されるCreateDir、CreateFile、DeleteDir、DeleteFileおよびDeleteAllFilesAPI呼び出しによって、実行される。表6は、ライブラリのパーソナルキー200のAのAPI260英数字のリスト項目である。表6において、Dはデバイス関連機能を示し、Fはファイルシステム関連機能を示し、Aは管理機能を示し、およびCは暗号機能を示す。仮想プライベートネットワークへの例示的アプリケーション前述の記載を用いることによって、パーソナルキー200および関連API260が使用され、安全なドキュメントアクセスシステムを実行し得る。この安全なドキュメントアクセスシステムは、遠隔ユーザの秘密暗号化ドキュメントへのインターネットを介したアクセスを会社従業員に提供する。このシステムはまた秘密暗号化ドキュメントの配布を制限し、それによって特定のドキュメントを、制限された回数だけ読むことができる。ドキュメントを読むために使用されるアプリケーションプログラム110は、パーソナルキーAPI260ライブラリとリンクされ、パーソナルキー200の情報に基づくドキュメント閲覧を可能にする。マスターキーにより制御されている信用された管理プログラムは、広範囲の従業員についてのパーソナルキー200関連する安全制御装置設定を有する適切な情報を格納することによりを設定するために使用され得る。パーソナルキー200およびAPI260ライブラリを用いて、ドキュメント閲覧者およびドキュメント管理者を許可し、ドキュメントの解読および暗号化のためのキーを供給し、閲覧可能ドキュメントのリストを提供し、ドキュメントアクセス権およびドキュメントアクセスカウンタを実行することができる。前述の記載が多数のプログラム中で実行され得、これらのプログラムは、従業員に配信する以前の、パーソナルキー200を設定する管理初期化プログラム以降、SETKEYと呼ぶ、ドキュメント暗号化およびライブラリアップデートプログラム以降、BUILDDOCと呼ぶ、ユーザおよびパーソナルキー200を許可する閲覧アプリケーション以降、VIEWDOCと呼ぶ、およびユーザを許可し、パーソナルキーをアップデートするライブラリアプリケーション以降、LIBDOCと呼ぶを含む。SETKEYプログラムは、個々のユーザについてのファクトリから受信したパーソナルキーを設定するために使用される。ドキュメントネーム、アクセスカウンタ、PINおよびハッシュ秘密はパーソナルキー200中にロードされる。従業員の安全クリアランスに依存して、閲覧用の特定のドキュメントが構成され得る。明瞭にするために、次のシンボルネームが以下の議論の際に用いられる。DOCFilename-ドキュメントファイルネームを保有するiKeyデータファイルDOCSecret-解読/暗号化キーを作成するために使用される秘密を保有するiKeyデータファイル第1に、SETKEYプログラムは、OpenDeviceコマンドを発行することにより、パーソナルキー200へのアクセスを引き起こす。次いで、VerifyMasterKeyコマンドが発行され、パーソナルキー200をマスターアクセスに公開する。Dirコマンドはループ中で使用され、パーソナルキー200の状態を取得および実証することを行う。コメントがファクトリフレッシュキーのコンテンツと比較され、いくつかの状態の1つが決定される。キーがファクトリフレッシュである場合、パーソナルキーは初期化される。次いで、VIEWDOCディレクトリおよびファイルセットが作成される。次いで、従業員データベースがアクセスされ、各従業員に許可されるアクセスのタイプおよび範囲を決定するために使用され得る。各従業員の安全クリアランスに依存して、いくつかのタイプのディレクトリおよびファイルセットのうち1つが作成され得る。次いで、包括的作成アクセスタイプおよび削除アクセスタイプが、SetAccessSettingコマンドを用いて、マスターキーに設定される。次いで、DOCFilenameデータベースはパーソナルキー200中にロードされ、CreateDirおよびCreateFileAPI260は、ディレクトリおよびファイルを生成し、割り当てを行うために必要とされるものとして使用される。SelectFileコマンド、WriteFileコマンドおよびCloseFileAPIコマンドはファイルおよび秘密をロードするために使用される。アクセスが特定数の事象に制限されるかどうかに依存して、DATAファイルタイプまたはCTRファイルタイプが使用される。BUILDOCプログラムは、安全アクセスライブラリ中の新規のドキュメントを受容するために使用される。パーソナルキー200からの情報を用いることで、解読キーが生成され、この解読キーはパーソナルキー200中のドキュメント解読エンジンにより使用される。BUILDOCプログラムはスタンドアロンのアプリケーションであり、安全壁の機構内の信用されたシステム上で実行する。BUILDOCプログラムは、マスターキーの有効性を必要とする。BUILDOCプログラムはパーソナルキー200を使用し、各ドキュメントファイルネームについての解読キーを作成する。第1に、XORオプションを有するHashTokenAPI260は、DOCFilename、ドキュメントを読み出し、解読しながらBUILDOCプログラムにより計算されるブロック数、DOCSecretを互いにハッシュするために使用される。BUILDOCプログラムは、ドキュメントを読み出し、解読しながらブロック数を計算する。結果的に発生するMD5-XORダイジェストはBUILDOCアプリケーション中の解読エンジンによって使用される解読キーとして用いられる。次いで、XORモードのHashTokenと共にCreateFile、SelectFile、WriteFileおよびCloseFileAPI260が、各ドキュメント上で使用され、このドキュメントは安全ドキュメントライブラリに追加される。VIEWDOCプログラムはウェブブラウザ262プラグインアプリケーションであり、このプログラムにより、ユーザがドキュメントアクセスコードに基いて自身のパーソナルキー200に基づくドキュメントの公開open、解読、閲覧を行うことができる。所望ならば、いくつかのタイプのドキュメントについての閲覧カウンタはまた、VIEWDOCプログラム中でデクリメントされ得る。VIEWDOCプログラムは、ファイルの保存、ファイルの転送、スクリーンのスクラッピングおよびスクリーンの印刷を必要としない。VIEWDOCプログラムは、ユーザを確認し、ドキュメントのアップロードおよび解読を行う。VIEWDOCプログラムは、VcrifyPINコマンドAPI260を用い、ユーザを許可する。次いで、ユーザは、パーソナルキー200がUSBポート130と通信可能に接続される限り、パーソナルキー200ディレクトリにリストされたドキュメントを閲覧し得る。WINDOWS登録商標オペレーティングシステムWM_DEVICECHANGEで使用されるメッセージ機能のようなメッセージ機能は、キーが削除されたか否かを判定するために使用され得る。Dirコマンド、SelectFile、ReadFileおよびCloseFileコマンドAPI260は、どのドキュメントが読み出され得るかを判定するために使用される。DOCSecret、DOCFilenameおよびドキュメントブロック番号と共にXORモードAPI260を備えるHashTokenは、基本ブロック単位毎に暗号キーを生成する。DOCfilenameがファイルタイプCTRである場合、CTRはDecrementコマンドAPI260を用いて、デクリメントされる。1つの実施形態において、複雑性を減少させるためにCTR場はハッシュされず、VIEWDOCにより単に管理されるだけである。LIBDOCプログラムはSETKEYのサブセットである管理機能を提供する。その管理機能により、安全ドキュメントライブラリアンは、パーソナルキー200に格納される情報に基づくドキュメントへのアクセスを許可され得る。正味の効果は、信頼されたライブラリアンが、閲覧され得るドキュメントリストに基づいて、パーソナルキー200のアップデートを行い得るということである。LIBDOCプログラムは基本パーソナルキー200単位でDOCFilenameのリストをアップデートする。VerifyMasterKeyコマンドAPI260を備えるマスターキーを確認し、雇用データベース中で、ユーザネームを検索した後、DOCFilenameの現在のセットはSelectFile、WriteFileおよびCloseFileコマンドAPI260を用いてアップデートされる。前述の記載を用いることによって、従業員は、自身のファイルネームのローカルデータベースをロードしたパーソナルキー200を携帯し得る。個々の部署はMIS手続きに依存する必要がなく、ドキュメントにアクセスする人物を制限する。必要であれば、パーソナルキー200の部署番号はLIBDOCプログラムを使用し、アップデートされ得る。パーソナルキー200秘密が正確な場合のみ、従業員はドキュメントを解読および閲覧し得る。パーソナル秘密が安全であるのは、パーソナル秘密がパーソナルキー200の外に決して漏らされないからである。メータリングの単一形式はまたドキュメントのコピー数を減らすことに使用され得、閲覧され得るドキュメントのコピー数を減少するために使用され得る。図6は、パーソナルキー200の1つの実施形態の説明を示す図である。パーソナルキー200は第1のハウジング部材602および第2のハウジング部材604を含む。第1のハウジング部材602は、回路基板606を自身に収容するようなサイズおよび形状にされる。第1のハウジング部材602は複数のボス624を含み、複数のボス624は、第2のハウジング部材604の各ホール640中に挿入された場合、第1のハウジング部材602を第2のハウジング部材604に固定する。第1のハウジング部材602および第2のハウジング部材604はまた、それぞれアパーチャ628を含み、アパーチャ628はパーソナルキー200がキーチェーンに添付されることを可能にする。複数の回路基板サポート608は、所定の位置で回路基板606を保持する。回路基板606は、伝導ピンを介したホスト処理デバイスまたはコンピュータ102と通信可能に接続するために、回路基板606の周辺に実質的にフラットな回路接続表面610を含む。回路接続表面610は回路基板606上にマウントされたプロセッサ212との通信を可能にする。プロセッサ212は、メモリおよび本明細書中で公開されたパーソナルキー200の機能をインプリメントするために必要とされるオペレーションを実行するための命令を含む。プロセッサは、回路基板上でメモリ214と通信可能に接続され、プロセッサ212の命令により要求されるデータの格納および読み出しを行う。説明された実施形態において、回路基板606はまた、パーソナルキー200によって実行されているオペレーションを視覚表示することを、パーソナルキー200のユーザに提供する発光デバイス616例えば、発光ダイオードLEDのような出力デバイスを含む。例えば、ホストコンピュータ102からパーソナルキー200まで通過する信号により光を発光することによって、このことは達成される。発光デバイスはまた、液晶ディスプレイLCDまたはパーソナルキー中で実行される機能の視覚的な表示またはパーソナルキー200へのまたはパーソナルキー200からの渡されるデータを提供する他のデバイスを含み得る。発光デバイス616からのエネルギーは、2種類の方法の内の1つでユーザに提示される。図2に示された実施形態において、発光デバイス616は、第2のハウジング部材604中の発光デバイスオリフィス644を介して配置される。この設計において、パーソナルキー200は、エポキシ材料、または組み立てた後に発光デバイスオリフィス644中に配置される他の適切な材料を少量添加して密封され得る。他の実施形態において、発光デバイス616はハウシング602、604の内部を超過して拡張せず、パーソナルキー200の内部にとどまる。この実施形態において、第1のハウジング602または第2のハウジング604の少なくとも一部分は、対象となる帯域幅において発光デバイス616により放射されるエネルギーを少なくとも部分的に透過させる。例えば、発光デバイス616が単一LEDである場合、第2のハウジング604は、可視の波長で光を透過させる材料により選択され得る。先の実施形態の1つの利点は、LEDが、電磁放電ならびに回路基板606または回路基板606上に配置された任意の構成エンティティに対する他の所望しないエネルギーを許容しない場所に配置され得る。これは、常にユーザの手に接触するLEDの部分LEDの表面においてさえもが存在しないからである。前述の記載では、単一発光デバイス646を用いて記述されたが、本発明はまた、2つ以上の発光デバイス、または他の波長でエネルギーを放射するデバイスを有利に統合し得る。例えば、前述の記載では、3つのカラーLED赤、黄および緑または3つの単一カラーLEDを用いてインプリメントされ得、パーソナルキー200の情報をユーザに転送する。前述の記載に加えてまたは代替として、音声トランスデューサ例えば、小型拡声器または圧電トランスデューサが、パーソナルキー200のオペレーションに関連する情報を提供する。そのような音声情報は、制限された視覚を有するユーザまたは視覚を有さないユーザに対して特に有用である。例えば、音声トランスデューサは、パーソナルキー200が、ホストコンピュータ102I/Oポート130に適切に挿入されたことを示すために使用され得る。音声トランスデューサはまた、警告情報をユーザに提供するために使用され得る。この警告は、ユーザが任意の入力またはキーからの情報を予想していない場合に、特に有用である。例えば、パーソナルキー200または関連デバイスが長時間の計算に従事した場合、音声トランスデューサはいつプロセスが終了するかを示し得る。また、感染したソフトウェア命令または他の有害なソフトウェア命令によりキーの安全性を妥協しようとする試み、またはユーザにキー200への入力を提供するような行動を取らせるようとする試みがある場合、音声トランスデューサは内部フォールトが生じた時を示し得る。さらに、パーソナルキー200の使用が広範囲に及ぶにつれて、他のデバイスの機能をパーソナルキーに組み込むことが有利となることが考えられる。例えば、ページングトランシーバのようなデバイスがパーソナルキー中に組み込まれ、ユーザが遠隔的に呼び出されるか、または接触されることを可能にすることができる。または、パーソナルキー200が、プログラムおよびユーザのカレンダーのような命令を格納するために使用され得る。この適用の際には、パーソナルキー200は、特に上記のLCDディスプレイと共に、ユーザにカレンダーの事象を思い出させるために使用され得る。音声トランスデューサは、最小可聴振動周波数を含む広範で多様な周波数で作動し得る。パーソナルキーがユーザのキーリング上に配置されるのに十分小さいために、キーリングが見られ得ないか、または容易に聞かれ得ないポケットまたは財布に、長期間ある場合にこの設計は特に有利である。図7A~図7Cは、第1の感圧性デバイス702および第2の圧力デバイス704を含む入力デバイス218を有するパーソナルキー200の、ある実施形態を示す図であり、各デバイスは、USBに対応するインターフェース204と別個の通信パスにより、プロセッサ212と通信可能に接続される。図7Aはパーソナルキー200の実施形態を示し、この実施形態において、LEDまたはLCDディスプレイ706のような出力デバイス222が、USBに対応するインターフェース204と別個の第2の通信パスにより、プロセッサ212と通信可能に接続される。この実施形態において、パーソナルキープロセッサ212への入力は、任意で出力デバイス222によって行われるように、感圧性デバイス702、704を組み合わせて押し下げることによって提供され得る。図7Bおよび図7Cに示す実施形態において、感圧性デバイス702および704は、回路基板606上のトレースを介してプロセッサ212と通信可能に接続される単一の機械的プッシュスイッチである。この場合、スイッチ702および704は、第2のハウジング部材604中のアパーチャ708および710を通って伸びるボタン表面を押し下げることによって作動され得る。図7Bはまた、出力デバイス706の表示を見ることを可能にするウインドウ712を示す。図7Cは、第1のハウジング部材602および第2のハウジング部材604が取り付けられた場合の、パーソナルキー200のこの実施形態における外観を示す。本発明の他の実施形態において、圧力スイッチ702および704は、パーソナルキー200の外部にまで至らない。代わりに、パーソナルキー200は、スイッチのどの部分も必要とするすることなく、圧力が、感圧性スイッチ702および704上に加えられ得るように構成され、それにより圧力はパーソナルキー200の外部に達する。例えば、ある実施形態において、パーソナルキー200の外部表面の少なくとも一部は十分フレキシブであり、このキー200の外側の表面に加えられた圧力がパーソナルキー200内のスイッチを動作させ得る。あるいは、第1のハウジング部材602および第2のハウジング部材604は、圧力がスイッチに印加され得るように取り付けられる。他の実施形態において、パーソナルキーへのユーザ入力を示ために、ひずみゲージのような感圧性デバイスのしきい値出力が使用される。前述の記載の感圧性デバイス702および704は、以下のように使用され得る。ある実施形態において、2つの感圧性デバイス702および704は、英数字情報を入力するために使用され得る。ここで、圧力は第1の感圧性デバイス702に印加され、所望の文字を選択し得る。ユーザを補助するために、現在選択された文字は出力デバイス222上に表示され得る。ユーザが選択された文字に満足する場合、圧力を第2の感圧性デバイスに印加することは、現在表示されている文字が入力されるべきであることを示し得る従って、入力機能を提供する。このプロセスはユーザが全文字例えば、ユーザパスワードまたは個人識別番号PINを入力するまで繰り返されられ得る。ユーザ入力の終了は、第2の感圧性デバイス702へ、圧力を繰り返し印加することにより示されて、出力デバイス222により確認される得る。音声トランスデューサは単独で、または視覚ディスプレイと組み合わせて使用され、文字を表示するか、エラーを示すか、またはユーザ入力プロセスが完了した時を示すことができる。前述に記載の感圧性デバイスはまた、バイナリ入力をパーソナルキー200に提供するために使用され得る。例えば、ユーザのPINまたはパスワードが、迅速に相次いで適切な順序で、圧力を第1の感圧性デバイス702および第2の感圧性デバイス704に印加することによって入力され得る。このような方法で、10100010111として規定されるユーザパスワードまたはPINは、0を示すために、第1の感圧性デバイス702を押し下げて、1を示すために、第2の感圧性デバイス704を押し下げて入力され得る。図8A~図8Cは本発明の他の実施形態の例を示す図である。この実施形態において、入力デバイス218は、入力デバイス通信パス808によりプロセッサに接続されるエッジの見えたホイール802を含む。この実施形態において、ユーザは、一連の接触部位を介して入力文字を識別するホイール802を動かして入力を行う。所望の入力文字が、出力デバイス222上に示されるか、ホイール802自身上に示されるかのどちらかの場合に、ユーザは、ホイール802をパーソナルキー200の中央線に向かって動かすことによりユーザ入力として文字を示し得る。このプロセスは、所望の文字全てが提供されるまで、一連の入力文字について繰り返され得る。ユーザはまた、ホイール802を迅速に相次いでパーソナルキーの中央部へ複数回動かすことにより、またはホイール802上の入力接触位置を選択しホイール802を押し下げることにより、これ以上入力がないということを示し得る。入力および出力デバイスを用いる安全性機能本発明の入力デバイス218および出力デバイス222は、パーソナルキー200の安全性を拡張するために有利に使用され得る。例えば、ホストコンピュータ102と接続された場合、パーソナルキー200は、通信媒体132例えば、ダイヤルアップネットワーク、インターネット、LANまたはWANを介しホストコンピュータ102に通信可能に接続された遠隔コンピュータ/サーバ134とのトランザクションを許可するために使用され得る。遠隔コンピュータ/サーバ134またはホストコンピュータ102中で実行され得る不正なソフトウェアは、必要なものすべてをパーソナルキー200に送り、ユーザが知ることなく、またはユーザの許可なく許可を行うことができる。ある種のユーザ入力デバイス218を用いずに、パーソナルキー200は、カード保有者が拒否することができないトランザクションをユーザが知ることなく許可し得る。例えば、このようなトランザクションは、支払いおよび法的に拘束力のある署名を含み得る。個人識別番号PINのような個人識別は、パーソナルキー200をログオンし、パーソナルキー200を起動するために必要とされるが、通常、パーソナルキー200は、PINが入力されると起動したままである。ゆえに、パーソナルキー200は、ユーザに気づかれることなくまたはユーザに許可されることなく、任意のアプリケーションについて任意のアクションを行う。この問題を解決するために、本発明の1実施形態は署名の強制許可技術を利用し、この技術においては、直接的なユーザのアクションが、パーソナルキー200に格納された識別秘密値の使用を許可するために、必要とされる。例えば、秘密406のような復号鍵またはパーソナルキー200のメモリ214中に格納されたPINが署名への強制許可を要求するものとして識別された場合、パーソナルキー200のプロセッサ212中で実行するファームウェアは、ホストコンピュータ102、または復号鍵または個人情報の使用を含む遠隔コンピュータ/サーバ134からの任意のリクエストを受け取る前に、入力デバイス410またはデータトランシーバ252を介する直接的なユーザの入力を必要とする。通常、復号鍵および/または他の個人情報は、メモリ214中の関連値または関連フラグによる、直接許可を要求するものとして設計される。そのようなデータはまた、データが任意の状況下でキーから直接的に読み出され得ないことを示す使用のみとして設計され得る。データはPINを用いた場合によくあるような他の入力と共有され得ない、または信頼された入力と共有し、許可に使用される値例えば、秘密406であり得る。例えば、復号鍵がハッシュ機能を介して許可を行う秘密406として使用され得る。このような場合、秘密値406は、通常、DESキーまたはパスワードのような共有された秘密である。秘密値406がパーソナルキー200のメモリ214に格納され得るので、パーソナルキー200をユーザに分配する前に、秘密値406は、いかなる時でも、平文フォームで利用可能にされる必要がない。通常、ユーザが、クライアント許可を補助するSSL安全ウェブサイトに接続するたびに、ブラウザ262は、API260またはPKCS264の1つのようなミドルウェアを呼び出し、このミドルウェアはパーソナルキー200に命令し、ユーザの秘密復号鍵406Bパーソナルキーメモリ214に格納されるを用いチャレンジ値を解読する。ユーザのPINがすでにパーソナルキー200に格納され、ユーザをパーソナルキー200に許可すると仮定すると、やはり、キーを安全ウェブサイトに許可することが残る。この場合、ユーザの秘密復号鍵へのアクセスが要求され、パーソナルキー200に統合された出力デバイス222は、復号鍵へのアクセスを要求するコマンドが呼び出されたこと、およびユーザがこのアクセスを許可する必要のあることを示すために起動し得る。本発明の1つの実施形態において、このことは、視覚的出力デバイス例えば、LEDまたはLCDディスプレイを点滅すること、または音声デバイスをビープすることにより、達成される。本発明の他の実施形態において、ミドルウェアAPI260またはPKCS264のどちらかは、コンピュータ102に付属のディスプレイ122を起動し、処理が進められ得る前に、ユーザが復号鍵へのアクセスを許可しなければいけないことを示す。次いで、パーソナルキー200の入力デバイス218例えば、ホイール802または感圧性デバイス702および704の1つはユーザにより作動させられ、ユーザがプラーベートキーへのアクセスを許可されたことを示すことができる。どの許可も許可されないのは、パーソナルキー200がI/Oポート130から取り除かれた場合、またはディスプレイ122上に表示されるキャンセルボタンが選択され、スクリーン上のダイアログを拒否した場合である。復号鍵へのアクセス上記の例では、ハッシュ機能の実行が許可されるのは、ユーザがそういうものとして許可される場合である。従って、署名の強制概念によって、不正なソフトウェアがユーザの同意または認知を必要とせずに、秘密406Bを使用し得ることは、おそらく不適切になる。不正なソフトウェアは、ユーザのPIN値をキャプチャするために、パーソナルキー200とホストコンピュータ102との間のインターフェースをモニタし得る。PINを直接読み出すことはできないが、不正なソフトウェアは、表6に示されたVerifyPINコマンドおよびその引数とパーソナルキー200からの応答の両方を調べることが可能である。応答が、適切なPINがVerifyPINコマンドに引数として提供されたことを示す場合、不正なソフトウェアは、PIN自身を決定し得る。前記では、秘密406Bの代わりにユーザのPINをさらに保護するためにも適用され得る。例えば、ホストコンピュータの不正なソフトウェアの検知snifferモジュールがユーザのPINにアクセスに成功した場合、その検知モジュールがユーザが意図しないコンテクストにおいてユーザのPINを使用しようと試みたとき、ユーザはそのPINの信用度が下がったという事実を警告される。図9は、プロセッサ212の動作がユーザ許可を受ける場合の、本発明の実施形態を示すフローチャートである。はじめに、API260は、プロセッサ212の動作を呼び出すコマンドを命令する902。そのコマンドは、USBインターフェース204を介してパーソナルキー200に伝送される。プロセッサ212は、ブロック904で示されるように、コマンドを承認する。続いて、パーソナルキー200は、命令されたプロセッサコマンドが許可を要求するコマンドであるかどうかを判定する。このことは、プロセッサコマンドが許可を要求することを示すパーソナルキーのメモリ214に情報を格納することによって達成され得る。例えば、このことは、メモリ214に格納されたマップにおいてインプリメントされ得、各ユーザ用にカスタマイズされ得る複数のフラグまたは情報が、プロセッサ212のファームウェアまたはこれと類似した位置に格納され得る。そのため、そのマッピングは変更され得ない。1つの実施形態において、異なるレベルの許可は、異なるプロセッサコマンドに対してインプリメントされる例えば、書き込みコマンドは許可を要求し得るが、読み取りコマンドは許可を要求し得ない。別の実施形態において、許可は、呼び出されたコマンドの代わりのデータ、または呼び出されたコマンドおよびデータの組み合わせを前提とされ得る。例えば、本発明は、PINが何らかの方法でアクセスされた任意の時間の許可、またはPINがパーソナルキー200のメモリ214から読み取られたときの許可を要求するために構成され得るが、他のデータが読み取られたときの許可、またはPINがパーソナルキー200に書き込まれたときの許可を要求するためには構成されていない。このことは、例えば、メモリ214に格納されたどのデータがプロセッサの動作によって影響を与えられるかを判定すること、およびプロセッサの動作によって影響を受けたデータがプライベート情報のようなデータを指定している識別に関連するかどうかを判定することによって、達成され得る。1つの出力デバイス222、データトランシーバー252またはホストコンピュータに接続されたディスプレイ122を用いると、その結果、パーソナルキー200は、ブロック906で示されるように、プロセッサの動作を許可するようにユーザにプロンプトを与え得る。このことは、ディスプレイデバイス例えば、LEDまたはLCDを点滅させること、音声トランスデューサを作動させること、または両方の動作を実行することにより、達成され得る。所望ならば、ユーザは、ディスプレイデバイスではじめにプロンプトを与えられ、許可が指定した期間内にされない場合、音声トランスデューサが作動し得る。不正なソフトウェアまたは他の扱いにくい作動をできる限り小さくしてプロンプトを与える動作を露呈するために、そのプロンプトは、好適には、パーソナルキー200とホストコンピュータ102との間の通信経路例として示されるUSBインターフェース204から完全に分離した通信経路を用いて実行される。よりセキュリティを増すために、示された実施形態は、不正なソフトウェアで見ることができるいかなる方法においても、パーソナルキーから外部にもらさない通信経路を介して、出力デバイス222でユーザにプロンプトを与えるので、改ざんされることはない。次に、ユーザは、動作の入力信号伝達signaling許可を提供する910。このことは、種々の入力デバイス例えば、マウス116またはキーボード114を用いて実行され得るが、好適には、入力デバイス218またはパーソナルキー200のデータトランシーバ252を用いて実行される。この情報は、パーソナルキー200とホストコンピュータ102との間の通信経路から完全に分離している通信経路、好適には、パーソナルキー200に完全に内臓している不正なソフトウェアで見ることができる手段によりパーソナルキーを外部にもらさない通信経路を介してパーソナルキー200と通信される。このことは、ユーザ許可に干渉するまたはユーザ許可をエミュレートする不正なソフトウェアを防止する。本発明の別の実施形態において、さらなるPINセキュリティを提供する。この実施形態において、VerifyPINコマンドは、表6に記載されているコマンドから変更される。通常、VerifyPINコマンドは、どのホストコンピュータ102または遠隔コンピュータ/サーバ134が、引数としてユーザのPINであるかと考えるかを承認する。パーソナルキー200はこのコマンドを承認し、適切なPINが提供されたかどうか示す状態に戻る。しかしながら、この代替的な実施形態において、VerifyPINコマンドは、変更されるので、VerifyPINコマンドは、引数としてPINを含まない。VerifyPINコマンドは、パーソナルキー200に提供され、ユーザは、ユーザのPINを入力するようにプロンプトを与えられる。PINが入力された後、PINは、ホストコンピュータ102とパーソナルキー200とのインターフェースから分離している通信経路220を介して、プロセッサ212と通信し、不正なソフトウェアによって検出され得る場所のどこにも明らかにされない。その結果、PINは内部で確認され、出現manifestationがパーソナルキー200からホストコンピュータ200または遠隔コンピュータ/サーバ134に伝送された結果をメッセージとして提供する。このことは、任意の外部のPINの出現を防止する。上述の秘密406を用いたハッシング技術と組み合わされた場合、前記では、ユーザ許可用の高度なセキュアsecure技術を提供する。このセキュアハッシング技術は、キーを許可し、外部の露呈から秘密406を保護する。しかしながら、ハッシング技術は、キーを所有する人物を許可しないなぜなら、キーは紛失するか盗まれ得るからである。PINをパーソナルキーのプロセッサ212に直接入力するための能力は、パーソナルキーがユーザを許可することを可能にし、PINがキーから外部に決してもらされないので、不正なソフトウェアの露呈が防止される。第三者がパーソナルキーを許可し得、かつ、パーソナルキーがユーザを許可し得るため、第三者は、高度な信用でユーザ許可を実行し得る。図10は、PINがパーソナルキー200に直接入力される場合の、本発明の実施形態を示すフローチャートである。ブロック1002では、ユーザのPIN例えば、表6に挙げられたVerifyPINおよびModifyPINコマンドへのアクセスを要求するコマンドを出す。パーソナルキー200は、コマンドを承認し1004、必要であれば、ブロック1006で示されるように、ユーザにPINに対するプロンプトを与える。このことは、ディスプレイ122、出力デバイス222の1つまたはその任意の組み合わせで達成され得る。好適には、このことは、USBインターフェース204から分離し、アクセス不可能な通信経路を介して達成される。上記で説明された実施形態の入力デバイス218の1つを用いて、ユーザは、PINをパーソナルキー200に提供する。メモリ214に記録された値を用いて、パーソナルキー200のプロセッサ212は、ユーザが入力したPINを有効にする。1つの実施形態において、このことは、ユーザに提供された値をメモリ214に格納された値と直接比較することによって達成される。続いて、パーソナルキーは、PINの有効性を示す応答を提供する1014。このPINの有効性は、API260によって承認される。その応答は、ユーザが供給されたPINが有効であるかどうかを示す。1つの実施形態において、バイオメトリックセンサ250はまた、プロセッサ212に通信可能に接続される。バイオメトリックセンサ250は、データをプロセッサ212に提供し、本開示のはじめに記載されたプロセッサ212からコマンドを受信する。プロセッサはまた、任意に1つ以上の発光デバイス216、あるいは動作の視覚的表示またはパーソナルキー200の状態を提供する他の視覚的表示デバイスに必要に応じて通信可能に接続される。プロセッサ212はまた、ユーザに、パーソナルキー200の状態または動作の振動データまたは音声データを提供するための音声デバイスと通信可能に接続され得る。結論ここでは、本発明の好適な実施形態の記載を結論づける。要約すれば、本発明は、コンパクトで内蔵型のパーソナルトークンを説明する。そのトークンは、ホスト処理デバイス、メモリおよびプロセッサに取り外し可能に接続可能なUSBコンプライアントインターフェースを含む。プロセッサは、メモリに格納できるデータに条件付きでアクセスするホスト処理デバイス、およびパーソナルキーに格納された管理ファイルに要求される機能を提供し、これは、そのファイルのデータに基づいて計算を実行するためである。1つの実施形態において、パーソナルキーはまた、一体型のユーザ入力デバイスおよび一体型のユーザ出力デバイスも含む。その入力および出力デバイスは,USBコンプライアントインターフェースに依存しない通信経路によってプロセッサと通信し、従って、パーソナルキーの外部にどのようなプライベート情報も外部にもらすことなく、ユーザがプロセッサと通信することを可能にする。本発明の好適な実施形態の前述の説明は、図示および説明の目的のために示されてきた。本発明は開示されたそのままの形態にこだわったり、または制限されることを意図しない。上記の教示を考慮すると、多くの変更および改変が可能である。例えば、前記のパーソナルキーは、ホスト通信との電子通信を提供するものとして記載されてきたが、このような電子通信は、光ファイバーおよびその同等物によってインプリメントされるようなデータの光転送を含むことが想定される。本発明の範囲は、詳細な説明によって制限されるものではなく、むしろ、ここに添付された特許請求の範囲によって制限されことが意図される。上記の明細書、実施例およびデータは、本発明の製造の完全な説明および本発明の組成の使用を提供する。本発明の多くの実施例は、本発明の意図および範囲から逸脱され得ないため、本発明は、添付された特許請求の範囲に属する。"