(57)【要約】【課題】暗号化された取り外し可能なストレージを使用してファイルを共有するための安全且つ効率的なデータストレージデバイスを提供する。【解決手段】データストレージデバイスをホストシステムに接続するために動作可能なインタフェース手段と、記憶領域と、インタフェース手段を使用してソースホストシステムにデータストレージデバイスが接続されると、実行可能となるドライブ制御プログラムであって、データストレージデバイスがアンロックされているかどうかを判断し、データストレージデバイスがロックされていると判断された場合、パスワードを認証し、データストレージをアンロックし、ユーザから選択されたファイルの情報を受信し、ユーザからオプション情報を受信し、記憶領域に選択されたファイルをコピーし、データストレージデバイスにチケット情報を保存する、ドライブ制御プログラムと、を含むデータストレージデバイス。【選択図】図３
2008123490.tif 000002
【特許請求の範囲】
【請求項１】
データストレージデバイスであって、
ａ．前記データストレージデバイスをホストシステムに接続するために動作可能なインタフェース手段と、
ｂ．記憶領域と、
を含み、
前記データストレージデバイスはドライブ制御プログラムを含み、
前記ドライブ制御プログラムは、前記インタフェース手段を使用して、ソースホストシステムに前記データストレージデバイスが接続されると、動作可能となり、前記ドライブ制御プログラムは、
ｉ．前記データストレージデバイスがアンロックされているかどうかを判断し、
ｉｉ．前記データストレージデバイスがロックされていると判断された場合、パスワードを認証し、前記データストレージをアンロックし、
ｉｉｉ．ユーザから選択されたファイルの情報を受信し、
ｉｖ．前記ユーザからオプション情報を受信し、
ｖ．前記記憶領域に前記選択されたファイルをコピーし、
ｖｉ．前記データストレージデバイスにチケット情報を保存する、
データストレージデバイス。
【請求項２】
前記オプション情報は、受取人が選択されたファイルを変更できるかどうかに関する情報を含む、請求項１に記載のデータストレージデバイス。
【請求項３】
前記オプション情報は、前記データストレージデバイスがホストシステムへ接続許可される回数に関する情報を含む請求項１に記載のデータストレージデバイス。
【請求項４】
前記オプション情報が、チケットの期限を含む請求項１に記載のデータストレージデバイス。
【請求項５】
前記オプション情報は、前記データストレージデバイスをマウントする次のホストがホワイトリストに追加されていることを特定する請求項１に記載のデータストレージデバイス。
【請求項６】
前記記憶領域が一時記憶領域である請求項１に記載のデータストレージデバイス。
【請求項７】
前記選択されたファイルが暗号化された形式で前記記憶領域に記憶される請求項１に記載のデータストレージデバイス。
【請求項８】
前記インタフェース手段を使用してターゲットホストシステムに前記データストレージデバイスが接続されると、動作可能となる前記ドライブ制御プログラムは、
１．ホワイトリストが使用されるかどうかを判断し、
２．前記ホワイトリストが使用される場合には、前記ホワイトリストに対する前記ターゲットホストのハードウェアアドレスを検証し、
３．前記データストレージデバイス上の前記チケット情報の有効性を検証し、
４．前記データストレージデバイスの前記記憶領域に記憶される前記暗号化した選択されたファイルを暗号解読する、
ために動作可能である、
請求項７に記載のデータストレージデバイス。
【請求項９】
前記ドライブ制御プログラムが、現在時刻を取得し、取得された前記現在時刻を前記チケット情報の少なくとも一部と比較することによって、前記データストレージデバイスに関する前記チケット情報の前記有効性を検証するために動作可能である請求項８に記載のデータストレージデバイス。
【請求項１０】
前記ドライブ制御プログラムに前記現在時刻を提供するよう動作可能であるクロック装置をさらに含む、請求項９に記載のデータストレージデバイス。
【請求項１１】
前記ドライブ制御プログラムは、前記チケット情報が期限切れであると判断すると、前記ドライブから前記チケット情報を削除し、通常のログインセッションを開始するために動作可能である請求項９に記載のデータストレージデバイス。
【請求項１２】
前記ドライブ制御プログラムは更に、前記ターゲットホストの前記ハードウェアアドレスを前記ホワイトリストに追加する、ために動作可能である請求項８に記載のデータストレージデバイス。
【請求項１３】
前記ドライブ制御プログラムは更に、許可されている接続の回数を超えているかどうかを検証し、超えている場合には、前記データストレージデバイスから前記チケット情報を削除する、ために動作可能である請求項８に記載のデータストレージデバイス。
【請求項１４】
データストレージデバイスであって、
ａ．ホストシステムに前記データストレージデバイスを接続するために動作可能なインタフェース手段と、
ｂ．記憶領域と、
を含み、
前記データストレージデバイスはドライブ制御プログラムを含み、
前記ドライブ制御プログラムは、前記データストレージデバイスが、前記インタフェース手段を使用してターゲットコンピュータに接続されると、動作可能となり、前記ドライブ制御プログラムは、
ｉ．前記ターゲットコンピュータのための公開鍵と秘密鍵とを取得し、
ｉｉ．前記データストレージデバイスに前記公開鍵を記憶し、
ｉｉｉ．前記ターゲットコンピュータに前記秘密鍵を記憶させ、
前記ドライブ制御プログラムは、続いて、前記インタフェース手段を使用してソースコンピュータに前記データストレージデバイスが接続されると、動作可能となり、前記ドライブ制御プログラムは更に、
ｉｖ．ユーザから選択されたファイルの情報を受信し、
ｖ．前記記憶されている公開鍵を使用して前記選択されたファイルを暗号化し、
ｖｉ．前記記憶領域に前記暗号化された選択されたファイルをコピーする、
データストレージデバイス。
【請求項１５】
前記ドライブ制御プログラムは更に、前記データストレージデバイスが前記インタフェース手段を使用してターゲットコンピュータへ二度目に接続されると、
ｉ．前記データストレージデバイスの前記記憶領域から暗号化された前記選択されたファイルを読み取り、
ｉｉ．前記ターゲットコンピュータ上の前記秘密鍵を使用して前記選択されたファイルを暗号解読するために動作可能である、
請求項１４に記載のデータストレージデバイス。
【請求項１６】
データストレージデバイスであって、
ａ．ホストシステムに前記データストレージデバイスを接続するために動作可能なインタフェース手段と、
ｂ．記憶領域と、
を含み、
前記データストレージデバイスはドライブ制御プログラムを含み、
前記ドライブ制御プログラムは、前記インタフェース手段を使用して、ソースホストに前記データストレージデバイスが接続されると、動作可能となり、前記ドライブ制御プログラムは、
ｉ．公開鍵と秘密鍵とを取得し、
ｉｉ．前記ソースホストに前記秘密鍵を記憶し、
ｉｉｉ．遠隔ネットワークサーバに前記秘密鍵を記憶し、
ｉｖ．ユーザから選択されたファイル情報を受け取り、
ｖ．セッション鍵を使用して選択されたファイルを暗号化し、暗号化された前記選択されたファイルを前記記憶領域に記憶し、
ｖｉ．前記セッション鍵及びチケット情報を、前記秘密鍵を用いて暗号化し、暗号化された前記セッション鍵及び前記チケット情報を前記データストレージデバイスに記憶し、
前記ドライブ制御プログラムは、続いて、前記インタフェース手段を使用してターゲットホストに前記データストレージデバイスが接続されると、動作可能となり、前記ドライブ制御プログラムは更に、
ｖｉｉ．前記チケット情報を認証するように前記遠隔ネットワークサーバに要求し、
ｖｉｉｉ．前記チケット情報が有効であると判明した場合、前記遠隔ネットワークサーバから前記セッション鍵を受け取り、
ｉｘ．前記受け取られたセッション鍵を使用して暗号化された前記選択されたファイルを暗号解読する、
データストレージデバイス。
【請求項１７】
前記遠隔ネットワークサーバが、前記チケット情報の時間部分を現在時間と比較することによって前記チケット情報を認証するために動作可能である請求項１６に記載の前記データストレージデバイス。
【請求項１８】
前記遠隔ネットワークサーバが、許可された接続の回数を超えているかどうかを検証することによって前記チケット情報を認証するために動作可能である請求項１６に記載のデータストレージデバイス。
【請求項１９】
データストレージデバイスであって、
ａ．ホストシステムに前記データストレージデバイスを接続するために動作可能であるインタフェース手段と、
ｂ．暗号鍵を記憶するために動作可能な安全鍵記憶領域と、
ｃ．前記暗号鍵で情報を暗号化するために動作可能な暗号化エンジンと、
ｄ．前記暗号化された情報を記憶するために動作可能な記憶領域と、
ｅ．チケット情報を記憶するために動作可能なチケット記憶領域と、
ｆ．クロックを含む保護論理回路であって、前記チケット情報が無効であると判断されると、前記記憶領域または前記暗号鍵に記憶される前記情報を廃棄するために動作可能な前記保護論理回路と、
を含み、
前記データストレージデバイスはドライブアクセスプログラムを含み、
前記ドライブアクセスプログラムは、前記インタフェース手段を使用して、ソースホストシステムに前記データストレージデバイスが接続されると、動作可能となり、前記ドライブアクセスプログラムは、
ｉ．ユーザから選択されたファイル情報を受信し、
ｉｉ．前記暗号鍵を取得し、前記安全鍵記憶領域に前記取得された暗号鍵を記憶し、
ｉｉｉ．前記記憶領域に前記選択されたファイルをコピーし、
ｉｖ．前記チケット記憶領域に前記チケット情報を保存する、
データストレージデバイス。
【請求項２０】
前記データストレージデバイスのコンテンツを廃棄する命令をユーザから受け取り、前記暗号鍵を廃棄させるために動作可能なクリアボタンをさらに備える請求項１９に記載のデータストレージデバイス。
【請求項２１】
ユーザに、前記データストレージデバイスのアクセスステータスを知らせるために動作可能であるアクセスステータスインジケータをさらに備える請求項１９に記載のデータストレージデバイス。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は概してストレージ技術に関し、さらに詳細には、安全に取り外し可能なデータストレージデバイスに関する。
【背景技術】
【０００２】
プラグアンドプレイの性質（nature）とともに、急速に降下するコスト及び急上昇する容量のために、ＵＳＢフラッシュドライブは２つ以上のコンピュータプラットホーム間での臨時ファイル共有のための人気のある選択肢となっている。ＵＳＢドライブの使いやすさ及び小さなサイズのため、企業は極秘データがこれらのドライブを通して容易に方々に移され、失われ、あるいは盗難にあい易いことについて懸念を抱いている。前述された懸念のために、多くの企業は、フラッシュドライブを含むすべての携帯ストレージに対して、パスワード保護の使用を命じている。残念なことに、パスワード保護を実現する一般的な方法（例えば、非特許文献１）は、あるコンピュータシステムから別のコンピュータシステムへの迅速なファイル転送のための使いやすさを、これがＵＳＢフラッシュドライブを使用する共通の理由であるにも関わらず、大きく減じることにつながっている。安全なドライブを使用する一般的なファイル転送動作のステップは図１に示されている。
【０００３】
当業者によって理解されているように、図１に示されている従来のファイル転送動作は、数多くの不便さと非効率とに特徴付けられている。具体的には、ドライブの所有者はパスワード認証を二度（一度は、ソースコンピュータシステム上で、そして一度はターゲットコンピュータシステム上で）実行しなければならない。加えて、ドライブの所有者はパスワードを入力するために、物理的に移動しターゲットコンピュータシステムにアクセスしなければならない。さらに、ドライブの所有者は、共有されてはならない、または受信者を混乱させる項目を削除するために、ドライブのコンテンツを管理しなければならない。第二者（second party）は、安全ではないと考えられている独自仕様のドライブログインプログラムの実行を許可しなければならない。具体的には、ウィルス感染のおそれから、取り外し可能なメディアからのアプリケーションの実行を許さない保守的な方針を採っているＩＴ部門もある。
【０００４】
一般的に行われている安全ではない態様は以下を含む。ドライブの所有者は、ドライブパスワードを、キーロギングされる可能性のある（これは統合された生体認証付きドライブでは問題にならない）信頼できないコンピュータシステムで入力しなければならない。ドライブの所有者が現在の動作に関連性がないファイルを注意深く削除していない場合、ドライブ上の他の重要な情報が漏洩する、汚染される、あるいは削除される可能性がある。該第二者は、該ドライブの所有者がパスワードを入力するために自分のコンピュータシステムの制御を放棄しなければならない。さらには、ドライブログインプログラムは第二者のコンピュータシステムで実行されなければならず、第二者にとってウィルス感染の可能性が高くなる。
【０００５】
したがって、既存の技術は、２つ以上のコンピュータシステムの間で暗号化されたフラッシュドライブを使用してファイルを共有するための安全且つ効率的な方法を提供できない。
【０００６】
読み取り可能なメモリを使用した認証技術に関連するさらに別の情報については、特許文献１を参照することができる。
【特許文献１】米国特許第７，０５９，５３３号明細書
【非特許文献１】「トルークリプト．（Truecrypt.）」、[online]、[平成１９年７月９日検索]、インターネット<URL:http://www.truecrypt.org>
【発明の開示】
【発明が解決しようとする課題】
【０００７】
本発明は、暗号化された取り外し可能なストレージを使用する従来の技法のファイル共有において、上記問題及び他の問題の一つまたは複数を実質的に未然に防ぐ方法及びシステムを提供することを目的としている。
【課題を解決するための手段】
【０００８】
本発明の態様の一つでは、データストレージデバイスが提供される。本発明のデータストレージデバイスは、ホストシステムにデータストレージデバイスを接続するために動作可能なインタフェース手段と、記憶領域と、ドライブ制御プログラムと、を含む。データストレージデバイスがインタフェース手段を使用してソースホストへ接続されると、ドライブ制御プログラムは動作可能となり、データストレージデバイスがロックされていないかどうかを判断し、パスワードを認証し、データストレージデバイスがロックされていると判断されるとデータストレージデバイスをアンロックし、ユーザから選択されたファイル情報を受け取り、ユーザからオプション情報を受け取り、記憶領域に選択されたファイルをコピーし、データストレージデバイスにチケット情報を保存する。
【０００９】
本発明の別の態様では、データストレージデバイスが提供される。本発明のデータストレージデバイスは、ホストシステムにデータストレージデバイスを接続するために動作可能なインタフェース手段と、記憶領域と、ドライブ制御プログラムと、を含む。データストレージデバイスがインタフェース手段を使用してターゲットコンピュータに接続されると、ドライブ制御プログラムは動作可能となり、ターゲットコンピュータのために公開鍵及び秘密鍵を取得し、公開鍵をデータストレージデバイスに記憶し、秘密鍵をターゲットコンピュータに記憶する。以後、データストレージデバイスがインタフェース手段を使用してソースコンピュータに接続すると、ドライブ制御プログラムはユーザから選択されたファイル情報を受け取り、記憶されている公開鍵を使用して選択されたファイルを暗号化し、暗号化された選択ファイルを記憶領域にコピーするためにさらに動作可能となる。
【００１０】
本発明の別の態様では、データストレージデバイスが提供される。本発明の装置は、ホストシステムにデータストレージデバイスを接続するために動作可能なインタフェース手段と、記憶領域と、ドライブ制御プログラムとを含む。データストレージデバイスがインタフェース手段を使用してソースホストに接続されると、ドライブ制御プログラムは動作可能となり、公開鍵と秘密鍵を取得し、ソースホストに秘密鍵を記憶し、遠隔ネットワークサーバに秘密鍵を記憶し、ユーザから選択されたファイル情報を受け取り、セッション鍵を使用して選択されたファイルを暗号化し、暗号化された選択ファイルを記憶領域に記憶する。その後、秘密鍵を用いてセッション鍵とチケット情報を暗号化し、セッション鍵とチケット情報をデータストレージデバイスに記憶する。以後、データストレージデバイスがインタフェース手段を使用してターゲットホストに接続されると、ドライブ制御プログラムは、遠隔ネットワークサーバにチケット情報を認証するように要求するためにさらに動作可能となる。チケット情報が有効であることが判明すると、ドライブ制御プログラムは遠隔ネットワークサーバからセッション鍵を受け取り、受け取ったセッション鍵を使用して暗号化されている選択ファイルを暗号解読する。
【００１１】
本発明の別の態様では、データストレージデバイスが提供される。本発明のデータストレージデバイスは、ホストシステムにデータストレージデバイスを接続するために動作可能なインタフェース手段と、暗号鍵を記憶するために動作可能な安全鍵記憶領域と、暗号鍵を用いて情報を暗号化するために動作可能な暗号化エンジンと、暗号化された情報を記憶するために動作可能な記憶領域と、チケット情報を記憶するために動作可能なチケット記憶領域と、チケット情報が無効であると判断されると記憶領域または暗号鍵に記憶されている情報を廃棄するために動作可能な、クロックを備える保護論理回路と、ドライブアクセスプログラムと、を含む。データストレージデバイスがインタフェース手段を使用してソースホストシステムに接続されると、ドライブアクセスプログラムは動作可能となり、ユーザから選択されたファイル情報を受け取り、暗号鍵を取得し、取得された暗号鍵を安全鍵記憶領域に記憶し、選択されたファイルを記憶領域にコピーし、チケット情報をチケット記憶領域に保存する。
【００１２】
本発明の第１の態様は、データストレージデバイスであって、データストレージデバイスをホストシステムに接続するために動作可能なインタフェース手段と、記憶領域と、を含み、データストレージデバイスはドライブ制御プログラムを含み、ドライブ制御プログラムは、インタフェース手段を使用して、ソースホストシステムにデータストレージデバイスが接続されると、動作可能となり、ドライブ制御プログラムは、データストレージデバイスがアンロックされているかどうかを判断し、データストレージデバイスがロックされていると判断された場合、パスワードを認証し、データストレージをアンロックし、ユーザから選択されたファイルの情報を受信し、ユーザからオプション情報を受信し、記憶領域に選択されたファイルをコピーし、データストレージデバイスにチケット情報を保存する。
【００１３】
本発明の第２の態様は、第１の態様のデータストレージデバイスであって、オプション情報は、データを受け取る受取人が選択されたファイルを変更できるかどうかに関する情報を含む。
【００１４】
本発明の第３の態様は、第１の態様のデータストレージデバイスであって、オプション情報は、データストレージデバイスがホストシステムへ接続許可される回数に関する情報を含む。
【００１５】
本発明の第４の態様は、第１の態様のデータストレージデバイスであって、オプション情報は、チケットの期限を含む。
【００１６】
本発明の第５の態様は、第１の態様のデータストレージデバイスであって、オプション情報が、データストレージデバイスをマウントする次のホストがホワイトリストに追加されていることを特定する。
【００１７】
本発明の第６の態様は、第１の態様のデータストレージデバイスであって、記憶領域が一時記憶領域である。
【００１８】
本発明の第７の態様は、第１の態様のデータストレージデバイスであって、選択されたファイルが暗号化された形式で記憶領域に記憶される。
【００１９】
本発明の第８の態様は、第７の態様のデータストレージデバイスであって、インタフェース手段を使用してターゲットホストシステムにデータストレージデバイスが接続されると、動作可能となるドライブ制御プログラムは、ホワイトリストが使用されるかどうかを判断し、ホワイトリストが使用される場合には、ホワイトリストに対するターゲットホストのハードウェアアドレスを検証し、データストレージデバイス上のチケット情報の有効性を検証し、データストレージデバイスの記憶領域に記憶される暗号化された選択されたファイルを暗号解読するために動作可能である。
【００２０】
本発明の第９の態様は、第８の態様のデータストレージデバイスであって、ドライブ制御プログラムが、現在時刻を取得し、取得された現在時刻をチケット情報の少なくとも一部と比較することによって、データストレージデバイスに関するチケット情報の有効性を検証するために動作可能である。
【００２１】
本発明の第１０の態様は、第９の態様のデータストレージデバイスであって、ドライブ制御プログラムに現在時刻を提供するよう動作可能であるクロック装置をさらに含む。
【００２２】
本発明の第１１の態様は、第９の態様のデータストレージデバイスであって、ドライブ制御プログラムは、チケット情報が期限切れであると判断すると、ドライブからチケット情報を削除し、通常のログインセッションを開始するために動作可能である。
【００２３】
本発明の第１２の態様は、第８の態様のデータストレージデバイスであって、ドライブ制御プログラムは更に、ターゲットホストのハードウェアアドレスをホワイトリストに追加するために動作可能である。
【００２４】
本発明の第１３の態様は、第８の態様のデータストレージデバイスであって、ドライブ制御プログラムは更に、許可されている接続の回数を超えているかどうかを検証し、超えている場合には、データストレージデバイスからチケット情報を削除するために動作可能である。
【００２５】
本発明の第１４の態様は、データストレージデバイスであって、ホストシステムにデータストレージデバイスを接続するために動作可能なインタフェース手段と、記憶領域と、を含み、データストレージデバイスはドライブ制御プログラムを含み、ドライブ制御プログラムは、データストレージデバイスが、インタフェース手段を使用してターゲットコンピュータに接続されると、動作可能となり、ドライブ制御プログラムは、ターゲットコンピュータのための公開鍵と秘密鍵とを取得し、データストレージデバイスに公開鍵を記憶し、ターゲットコンピュータに秘密鍵を記憶させ、ドライブ制御プログラムは、続いて、インタフェース手段を使用してソースコンピュータにデータストレージデバイスが接続されると、動作可能となり、ドライブ制御プログラムは更に、ユーザから選択されたファイルの情報を受信し、記憶されている公開鍵を使用して選択されたファイルを暗号化し、記憶領域に暗号化された選択されたファイルをコピーする。
【００２６】
本発明の第１５の態様は、第１４の態様のデータストレージデバイスであって、ドライブ制御プログラムは更に、データストレージデバイスがインタフェース手段を使用してターゲットコンピュータへ二度目に接続されると、データストレージデバイスの記憶領域から暗号化された選択されたファイルを読み取り、ターゲットコンピュータ上の秘密鍵を使用して選択されたファイルを暗号解読するために動作可能である。
【００２７】
本発明の第１６の態様は、データストレージデバイスであって、ホストシステムにデータストレージデバイスを接続するために動作可能なインタフェース手段と、記憶領域と、を含み、データストレージデバイスはドライブ制御プログラムを含み、ドライブ制御プログラムは、インタフェース手段を使用して、ソースホストにデータストレージデバイスが接続されると、動作可能となり、ドライブ制御プログラムは、公開鍵と秘密鍵とを取得し、ソースホストに秘密鍵を記憶し、遠隔ネットワークサーバに秘密鍵を記憶し、ユーザから選択されたファイル情報を受け取り、セッション鍵を使用して選択されたファイルを暗号化し、暗号化された選択されたファイルを記憶領域に記憶し、セッション鍵及びチケット情報を、秘密鍵を用いて暗号化し、暗号化されたセッション鍵及びチケット情報をデータストレージデバイスに記憶し、ドライブ制御プログラムは、続いて、インタフェース手段を使用してターゲットホストにデータストレージデバイスが接続されると、動作可能となり、ドライブ制御プログラムは更に、チケット情報を認証するように遠隔ネットワークサーバに要求し、チケット情報が有効であると判明した場合、遠隔ネットワークサーバからセッション鍵を受け取り、受け取られたセッション鍵を使用して暗号化された選択されたファイルを暗号解読する。
【００２８】
本発明の第１７の態様は、第１６の態様のデータストレージデバイスであって、遠隔ネットワークサーバが、チケット情報の時間部分を現在時刻と比較することによってチケット情報を認証するために動作可能である。
【００２９】
本発明の第１８の態様は、第１６の態様のデータストレージデバイスであって、遠隔ネットワークサーバが、許可された接続の回数を超えているかどうかを検証することによってチケット情報を認証するために動作可能である。
【００３０】
本発明の第１９の態様は、データストレージデバイスであって、ホストシステムにデータストレージデバイスを接続するために動作可能であるインタフェース手段と、暗号鍵を記憶するために動作可能な安全鍵記憶領域と、暗号鍵で情報を暗号化するために動作可能な暗号化エンジンと、暗号化された情報を記憶するために動作可能な記憶領域と、チケット情報を記憶するために動作可能なチケット記憶領域と、クロックを含む保護論理回路であって、チケット情報が無効であると判断されると、記憶領域または暗号鍵に記憶される情報を廃棄するために動作可能な保護論理回路と、を含み、データストレージデバイスはドライブアクセスプログラムを含み、ドライブアクセスプログラムは、インタフェース手段を使用して、ソースホストシステムにデータストレージデバイスが接続されると、動作可能となり、ドライブアクセスプログラムは、ユーザから選択されたファイル情報を受信し、暗号鍵を取得し、安全鍵記憶領域に取得された暗号鍵を記憶し、記憶領域に選択されたファイルをコピーし、チケット記憶領域にチケット情報を保存する。
【００３１】
本発明の第２０の態様は、第１９の態様のデータストレージデバイスであって、データストレージデバイスのコンテンツを廃棄する命令をユーザから受け取り、暗号鍵を廃棄させるために動作可能なクリアボタンをさらに備える。
【００３２】
本発明の第２１の態様は、第１９の態様のデータストレージデバイスであって、ユーザに、データストレージデバイスのアクセスステータスを知らせるために動作可能であるアクセスステータスインジケータをさらに備える。
【００３３】
本発明に関連する追加の態様は、以下に続く説明に部分的に述べられ、部分的に該説明から明らかとなる、あるいは本発明を実践することにより学習されてよい。本発明の態様は、以下の詳細な説明及び添付請求項に特に指摘されている要素及び多様な要素及び態様の組み合わせによって実現され、達成されてよい。
【００３４】
上記説明と下記説明の両方とも例示的且つ説明的であるにすぎず、どのようにもその主張されている発明または出願を制限することを目的としていないことが理解されるべきである。
【発明の効果】
【００３５】
本発明によれば、暗号化された取り外し可能なストレージを使用してファイル共有するための安全且つ効率的なデータストレージデバイスを提供することができる。
【発明を実施するための最良の形態】
【００３６】
以下の詳細な説明では、同一の機能要素が同様の参照符号で示されている添付図面が参照される。前述の添付図面は、制限としてではなく、実例として本発明と一致する特定の実施形態及び実現例を示す。これらの実現例は、当業者が本発明を実践できるようにするために十分に詳細に説明されており、他の実現例が活用されてよいこと、及び構造上の変更及び／または多様な要素の代用が、本発明の範囲及び精神から逸脱することなく行われてよいことが理解されるべきである。したがって、以下の詳細な説明は限定された意味で解釈されるべきではない。さらに、以下に説明されるように、本発明の多様な実施形態は、汎用コンピュータで実行しているソフトウェアの形式で、特殊化されたハードウェアの形式で、またはソフトウェアとハードウェアの組み合わせで実現されてよい。
【００３７】
図１に示されているように、ファイルを共有するための（ＵＳＢフラッシュデバイス等の）パスワードによって保護されている携帯ストレージデバイスの現在の使用は、安全ではないだけではなく、不便である場合もある。特にユーザは、ソースコンピュータとターゲットコンピュータとの間でファイル共有を実行するために、以下のステップを実行する必要がある。最初に、ファイルを提供するユーザは、ソースコンピュータに取り外し可能なドライブを挿入し、ドライブを開き、ログインプログラムを実行し、ユーザのパスワードを入力し、ドライブコンテンツをチェックし、共有するファイルをドライブにコピーする必要がある。その後、ユーザは、ソースコンピュータからドライブを物理的に取り外し、共有するファイルの受取人にドライブを手渡す必要がある。次に受取人は、ドライブをターゲットマシンに挿入し、ドライブを開く。その後、ファイルを提供するユーザは、ドライブログインプログラムを実行し、認証のためにドライブのパスワードを入力する。認証完了後、受取人はドライブのコンテンツを使用し、ファイルを提供するユーザが、彼または彼女にコピーすることを指定したファイルをターゲットコンピュータにコピーする。最後に、受取人はユーザにドライブを返す。
【００３８】
本発明は暗号化された携帯メモリ装置に対する共有アクセスを提供し、暗号化されたストレージデバイスの所有者が指定した特定のファイルへのアクセスを、安全な取り外し可能ドライブをマウントする次のホストだけに許可することによって、利便性及びセキュリティの両方を改善する。本発明を使用することによりファイル共有動作を実行するために必要とされるステップの数は大幅に削減され、保護されているストレージデバイスのコンテンツに対するアクセスはさらに大きな粒度（granularity）で許可される。
【００３９】
具体的には、本発明の概念の実施形態は、所有者が共有を所望するファイルの一時的なコピーをＵＳＢドライブ上に作成する場合の前述された従来のファイル共有方法の問題点を改善する。暗号化されていないデータは限られた時間のみアクセス可能となり、限られた時間の後ドライブは暗号化されていないコンテンツを消去することによって完全に保護された動作に戻る。
【００４０】
本発明の実施形態では、ドライブの所有者は単純なファイル共有動作を達成するために、一度だけドライブパスワードを入力すればよく、所有者のパスワードは信頼できるコンピュータだけに入力される。第二者には、指定されたファイルのみ可視となるため、ドライブの所有者はドライブのコンテンツを管理する必要はない。本発明のこれらの態様は、ファイル共有のさらに大きな利便性とセキュリティの改善と、をもたらす。
【００４１】
本発明の別の実施形態では、ドライブの所有者は、ドライブをマウントする次のコンピュータシステムを、ドライブへのアクセスが許可されているホストのリスト（ホワイトリスト）へ追加することを指示できる。このリスト上のホストはパスワードの提供なしでドライブにアクセスできる。ドライブが差し込まれ、アクセスプログラムが実行されると、ドライブは現在ドライブにアクセスしているホストのアイデンティティを、記憶されているホワイトリストと対照して自動的に検証する。本発明の概念の一実施形態によれば、ホストは、ドライブをマウントする「次の」ホストであるというだけでアクセスリストに追加されることが留意されなければならない。したがって、ドライブの所有者はドライブのコンテンツにアクセスするために、他のコンピュータシステムにおいて、ドライブパスワードを徴用する、または入力する必要はない。
【００４２】
前述された概念が、ＵＳＢフラッシュメモリドライブだけに限定されないことに留意しなければならない。類似する機能性は、携帯ハードディスク等の他の携帯ストレージデバイスと連動して実現されてよい。しかしながら、ＵＳＢフラッシュメモリをベースとしたドライブは、この技術の最もコンパクトで便利な例であるため、本発明の主要な例示的実施形態として使用する。
【００４３】
本発明の実施形態では、システムはコンピュータシステムに専門ソフトウェアをインストールしなくても実現できる。本発明の技法を実現するために必要なすべての情報はＵＳＢドライブ自体の中に記憶できる。ＵＳＢドライブには高度な機能性のために必要とされる実行ファイルも記憶される。
[インタラクション]
【００４４】
ＵＳＢドライブをホストコンピュータシステムのＵＳＢソケットに差し込むと、ＵＳＢドライブに記憶されているアクセスアプリケーションだけがホストコンピュータに表される。アクセスアプリケーションが実行されると、ユーザは、完全なアクセスのためにドライブをアンロックするか、またはドライブをマウントする次のコンピュータシステムのために指定されたファイルに対して暗号化されていないアクセスを提供するか、のどちらかを選択できる。
【００４５】
以下は、ドライブの所有者（ユーザ）が自分のコンピュータシステムからのファイルを第二者と共有することを希望する場合の例示的な手順におけるステップである。最初にドライブの所有者は、ＵＳＢドライブを自分自身のコンピュータシステムのＵＳＢソケットに差し込む。次に、ドライブの所有者は、ドライブアクセスアプリケーションを実行し、ドライブパスワードを入力する。認証が完了した後、ユーザは「クイックコピー」を実行することを選び、次のファイル選択ダイアログでファイルを選択する。その後、ドライブの所有者は、オプションダイアログで、ファイルが使用可能でなければならない時間量、ファイルが読み取り専用でなければならないのか、あるいは読み書き可能でなければならないのか、ディスクが書き込み可能でなければならないのか、を含むオプションを選択する。一般的には、デフォルトが用意されており、単純な共有動作にとって最適な選択肢となる。この情報は、以降アクセスチケットと呼ばれるものにおいてドライブに記憶される。
【００４６】
ドライブの所有者はドライブを取り外し、取り出したドライブを、第二の（ターゲット）コンピュータシステムに差し込む第二者に渡す。第二者は、作成されたばかりのチケットを認識し、所有者によって指定されたファイルへのアクセスを提供するドライブアクセスアプリケーションを実行する。最後に、第二者は、第二者にとって可視可能なファイルである適切なファイルをコピーし、ドライブの所有者にドライブを返す。
【００４７】
本発明の別の実施形態では、インタラクションは、コンピュータの記憶域からドライブアクセスアプリケーション上に、選択したファイルをドラッグアンドドロップすることによって開始される。他の実施形態と同様に、ドライブの所有者は、最初にドライブをユーザのコンピュータシステムのＵＳＢソケットに差し込む。差し込んだ後、ドライブの所有者はファイルを選択し、自分のコンピュータからドライブアクセスアプリケーションアイコンの上にドラッグする。ドライブアクセスアプリケーションは、ドライブパスワードを認証してから、「クイックコピー」または通常のコピーを（ドライブの保護された領域の中へ）有効にするオプションを示すダイアログを提示する。その後、ドライブの所有者は前述のようにアクセスオプションを選択し、ドライブを取り外しし、第二の（ターゲット）コンピュータシステムの中にドライブを差し込む第二者にドライブを提供する。第二者は作成されたばかりのチケットを認識し、所有者によって指定されるファイルへのアクセスを提供するドライブアクセスアプリケーションを実行する。最後に、第二者は、第二者にとって可視可能なファイルである適切なファイルをコピーし、ドライブの所有者にドライブを返却する。
【００４８】
本発明の最も単純な実施形態では、ＵＳＢドライブは臨時の共用のために一時的なコンテンツだけを含み、持続的な暗号化された記憶領域を持たなくてよく、その場合デバイスのためのパスワードはないであろう。別のデバイスまたはディスクに常駐する暗号化されたデータにアクセスするためには、パスワードステップを必要とするであろう。
【００４９】
許可されている別のアクセスオプションは、ドライブにアクセスする次のマシンがホワイトリストに追加されることである。ホワイトリスト中のマシンはパスワードを入力しなくてもドライブの安全な部分にアクセスできる。ホストはそれらのＭＡＣアドレスを含む情報によって一意に識別されるであろう。マシンに特殊な情報が必要とされるため、ドライブアクセスアプリケーションはホワイトリスト処理が行われるために第二者のコンピュータシステムで実行される必要がある。本発明のシステムの一実施形態に従ってホワイトリストの中にターゲットコンピュータシステムを含むためのプロセスは、ホワイトリストに記載されるコンピュータシステム上でのパスワードの入力を必要としないことが留意される必要がある。
【００５０】
図２は、ユーザが本発明のシステムの実施形態でナビゲートされる例示的なダイアログを示している。具体的には、ステップ２０１では、ユーザは第１のホストシステムにログインする。前述されたログインプロセスは、第二のコンピュータシステムへのファイルのクイックコピーのために一度だけ実行される必要がある。ステップ２０２では、ユーザは、ドライブの受取人がドライブのコンテンツを修正することを許可するべきかどうかを判断する。ステップ２０３では、ドライブの受取人が見ることを許されるファイルが、ドライブに記憶される。次に差し込むと、ユーザは共有されるファイルだけを見て、ドライブの所有者によって修正することが許可されている場合にだけコンテンツを修正できる（ステップ２０４）。以後の要求では、ユーザはログイン手順を再度実行しなければならない（ステップ２０５）。
【００５１】
図３は、共有するファイルがドライブアクセスアプリケーション上にドラッグアンドドロップされたときに続く一連のアクション及び入力を示す。ユーザ入力を必要とするアクションは二重輪郭線で示されている。具体的には、ステップ３０１では、ユーザはドライブアプリケーションにファイルをドラッグアンドドロップする。ステップ３０２で、システムが、ドライブがアンロックされているかどうかを判断する。ドライブがロックされている場合には、認証手順が実行される。具体的にはステップ３０３でパスワードが認証され、ドライブはアンロックされる（ステップ３０４）。
【００５２】
図４は、事前に許可されたセッションチケットについてチェックすることを含む、ドライブ許可アプリケーション実行時に実行されるプロセスのフローを示す。このシーケンスには、必要とされるユーザとのインタラクションがないことに留意されなければならない。プロセスの最後では、ユーザが共有されるファイルを見ることができるか、あるいは共有されるファイルがない場合には、ユーザは（暗号化された構成要素が含まれる場合に）パスワードによって使用可能になる動作を実行するようにプロンプトが出される。
【００５３】
具体的には、ステップ４０１では、ドライブアプリケーションが起動される。ステップ４０２では、システムが、ホワイトリスト機能が使用可能にされるかどうかを判断する。使用可能にされる場合には、システムはドライブをマウントするコンピュータシステムのＭＡＣアドレスを取得し、該取得されたＭＡＣアドレスとホワイトリスト上のＭＡＣアドレスとを比較する（ステップ４０４）。一致が検出されると、ドライブはステップ４０５でアンロックされ、プロセスはステップ４０６で終了する。ホワイトリストが使用されない、あるいはコンピュータシステムのＭＡＣアドレスとホワイトリストのコンテンツとが一致しない場合には、チケット情報がドライブから読み取られる（ステップ４０７）。チケットが存在する場合、プロセスはステップ４０９に進み、それ以外の場合、プロセスはステップ４１３に続行する。ステップ４０９では、システムはコンピュータクロックまたはストレージドライブの中の内蔵クロックのどちらかから現在時刻を取得する。ステップ４１０では、システムは取得された現在時刻とチケットで指定される時刻とを比較する。現在時刻が有効な時間範囲内にある場合、システムがステップ４１４で特別なセッションを暗号解読する。それ以外の場合、ステップ４１３で通常のログインセッションが開始される。特別なセッションが暗号解読された後で、システムは、指定された接続限度を超えているかどうかを判断する（ステップ４１５）。超えている場合、チケット情報はドライブから削除される（ステップ４１６）。ステップ４１７で、システムはホストがホワイトリストに追加されるべきかどうかを判断する。追加される場合、ステップ４１８で現在ドライブをマウントしているホストのＭＡＣアドレスがホワイトリストに追加され、プロセスはステップ４１９で終了する。
【００５４】
図５は、事前に許可されているアクセスチケットが使用できないときの標準的なログイン／許可動作を示す。ドライブは通常のアクセスのためにアンロックされるか、あるいは一時コンテンツを記憶するために使用されるかのどちらかである。両方の動作とも、理想的には２つのモジュール（保護されているアクセスチケット記憶域及び暗号化されたデータ領域）の間で共有されるパスワードを必要とする。具体的には、ステップ５０１で、ドライブアプリケーションが実行される。パスワードはステップ５０２で認証される。ステップ５０３で、クイックコピー動作がユーザによって要求されたかどうかが判断されると、ユーザはステップ５０６でコピーされるファイルを選ぶ。その後、ステップ５０７で、ユーザはアクセスオプションを選ぶ。チケット情報がステップ５０９で書き込まれる一方で、ファイルはステップ５０８でドライブに保存され、その結果プロセスはステップ５１０で終了する。他方、ステップ５０３でクイックコピーが要求されなかったと判断されると、ステップ５０４でドライブは単にアンロックされ、その結果プロセスはステップ５０５で終了する。
[アクセス情報（チケット）]
【００５５】
ファイル共有動作のパラメータを説明する情報を組み込むアクセスチケットはＵＳＢ取り外し可能ドライブに記憶される。チケットは、取り外し可能ドライブのコンテンツへのアクセスを制御する。具体的には、チケットは後述される情報を含んでよい。具体的には、チケットは、チケットによって付与される権利（読み取り専用または読み書き可能）だけではなく、チケットが有効であるドライブのアクセスまたは挿入の回数、チケットが有効である時間間隔に関する情報も含んでよい。
[ハードウェアをベースにした実装例]
【００５６】
図６は、本発明の技術のハードウェアをベースにした実装例の例示的なアーキテクチャを示す。この実施形態では、フラッシュストレージを暗号解読するために必要な情報が不正改変防止ハードウェア６０１に記憶されている。情報は、アクセスチケットが有効である限り保存される。
【００５７】
ハードウェア実装例の一体化した要素は図６に示されている。ドライブは、暗号化された共有ファイル６０６が格納されるフラッシュストレージ６０５、ハードウェアをベースにした暗号化／暗号解読エンジン６０２、本コンピュータシステムで実行され、ドライブでは暗号化されていない形式で使用可能であるドライブアクセスアプリケーション６０７、オプションのステータスＬＥＤ６０９、及びクリアボタン６０８を組み込む。加えて、ハードウェア実装例は、フラッシュメモリに記憶されている暗号化されたファイルのための復号鍵を記憶し、キャッシュに記憶されている復号鍵を削除し、アクセスチケットデータを読み書きし、ドライブのＵＳＢホストへの新たな挿入を検出し、現在の（または経過した）時間を判断し、ステータスＬＥＤ及びクリアボタンの状態にアクセスし、上記入力が与えられるアクセスチケットの有効性を判断し、それがもはや有効ではない（アクセスが多すぎる、または範囲外の時間）ときにキャッシュに記憶されている復号鍵を削除し、図６のフラッシュメモリ領域が読み取り専用であるのか、読み書き可能であるのかを制御し、アクセスを適切に制御するために動作可能である安全な計算要素及び記憶要素を含む。
【００５８】
アクセスチケット領域（６０４）は、悪意のあるホストが無制限にアクセスを拡張するようにアクセスチケット情報を書き直すのを防ぐために許可されているユーザ（保護論理回路によって保護されているパスワード）だけがアクセスできる。ドライブをきわめて安全にするために、保護論理回路が不正改変防止ハードウェア（６０１）に内蔵され、アクセスチケットと、キャッシュに記憶されている暗号解読情報とが、ハードウェアを物理的に解体することによって取り出し不可能であることを保証しなければならない。
【００５９】
ドライブがコンピュータシステムのＵＳＢスロットに差し込まれると、保護論理回路は、アクセスチケットデータに記述されるような時刻のチェック及び許可されている挿入の回数のチェックを実行し、チケットがもはや有効ではない場合、ドライブが、パスワードを入力せずに記憶されているデータを暗号解読できるようにするキャッシュに記憶されている情報を削除する。
【００６０】
同様に、クリアボタン６０８が押されると、暗号解読情報は消去される。本発明のシステムが、第二のパーティションつまり標準暗号化ドライブとして動作する暗号化された領域と実装できることに留意する。つまり、それは保護論理回路を通して共有することができない。この領域は、ドライブの所有者のための暗号化されたデータの通常の記憶に有効であろう。
【００６１】
一実施形態では、デバイスは、割り当てられた時間が期限切れになると、そのキャッシュに入れられた暗号解読情報を消去することによってそれ自体を積極的に保護できるよう、電源を内蔵したタイプである。別の実施形態では、ドライブは、削除動作を実行するためにバス電力を必要とする可能性があり、その場合データの消去は、電力が印加されるときにだけ行われるであろう。
【００６２】
ドライブが時刻をチェックする必要があるために、信頼されない外部コンピュータシステムクロックよりむしろドライブと統合されたクロック６０３を使用することが好ましいことを留意する必要がある。一実施形態では、埋め込まれたクロックはクロックの論理回路に電力を供給するために（腕時計の電池等の）標準的な小型電池を利用する。別の実施形態では、アクセスチケットが許可される期間が一般的には短い（数日ではなく、数分または数時間）ために、ドライブは必要とされる短時間の間クロックを実行するのに十分である低容量の再充電可能な要素を組み込む。電源はＵＳＢポートに差し込まれると再充電できることで、電池の交換の必要性を排除する。埋め込みクロックを使用するには、特別なドライブソフトウェアまたは重要なハードウェア内部の処理の増加が必要となることが留意される必要がある。
【００６３】
本発明の実施形態は、過去に許可されたアクセスを即座に削除するまたは無効にするために動作するフラッシュドライブ上の物理的なスイッチまたはボタンを組み込む。これにより、所有者は、あらゆる一時的なアクセス許可がＵＳＢデバイスを差し込む必要なくクリアされたことを確認することができる。加えて、ＵＳＢデバイス上のＬＥＤ６０９は、ドライブが、次にそれが差し込まれるときにアクセスできるかどうかを示すために設けることができる。
[ネットワーク接続が使用可能ではないときのソフトウェアをベースにした実装例]
【００６４】
わずかに異なる機能性は、本発明のシステムの厳密にソフトウェアをベースにした実装例を通して達成できる。このシステムでは、公開／秘密鍵の対は、ドライブの所有者と、データが共有される受信者との間で共有される。この実施形態では、受信側ユーザは本発明のＵＳＢドライブをターゲットコンピュータシステムに差し込む。ドライブアクセスプログラムは、受信側ユーザとターゲットコンピュータシステムのために公開／秘密鍵の対を作成し、作成された公開鍵をＵＳＢドライブに書き込み、受信側ユーザの空間内のターゲットコンピュータシステム上に秘密鍵を記憶する。
【００６５】
これはターゲットコンピュータシステムを使用して受信側ユーザに安全なチャネルを確立する。ＵＳＢドライブを所有する誰もが、その後、受信側ユーザのためにデータを安全に暗号化するためにドライブに記憶されている公開鍵を使用できる。その後、ＵＳＢドライブはソースコンピュータシステムに差し込まれ、ドライブアクセスプログラムが実行される。ドライブアクセスプログラムは受信側ユーザ及び／またはターゲットコンピュータシステム、及びドライブに公開鍵を備えるすべての他のユーザ／マシンの対に対応するアイコンを表示する。
【００６６】
その後、共有された情報を提供するユーザは、ターゲットコンピュータシステム及び／または受信側ユーザと関連する鍵の対に対応するアイコンの上にファイルをドラッグ／ドロップするか、あるいはそれ以外の場合、ファイル及びそれらを共有するユーザ／マシンの対のセットを指定する。指定されたファイルは対応するターゲットコンピュータシステム及び／または受信側ユーザの公開鍵で暗号化され、ディスクに記憶される。
【００６７】
次にＵＳＢドライブはターゲットコンピュータシステムの中に差し込まれ、ドライブアクセスプログラムが実行される。プログラムは、ファイルの暗号化で使用される公開鍵に対応する、ターゲットコンピュータシステムに記憶されている秘密鍵を検出し、該検出された鍵を使用してターゲットコンピュータ及び／または受信側ユーザのためのすべてのファイルを暗号解読する。暗号解読されたデータはその後ターゲットコンピュータシステム上にコピーされる。
【００６８】
公開鍵の作成及びドライブ上へのコピーを必要とする第一のステップは、考えられる宛先コンピュータシステムごとに一度だけ実行される必要がある。複数の公開鍵が同じディスク上にある場合があることが当業者によって理解されるであろう。各鍵の対は一方向のチャネルを指定する。他方、相互的な通信のために、提供側ユーザと受信側ユーザとの両方が、ドライブを使用して交換するために、鍵の対を初期化できる。
【００６９】
本発明の一実施形態では、単一ファイルがデータの複数の暗号化されたコピーを作らずに同時に複数のターゲットと共有できることは、共有されるデータが大きい場合に望ましい。この実施形態では、共有されるデータは無作為に選ばれるセッション鍵（たとえば、無作為に選ばれるＡＥＳ暗号鍵）で暗号化され、このセッション鍵のコピーは所望される受取人ごとに公開鍵で暗号化され、ＵＳＢディスク上に（暗号化された形式で）記憶される。受信側ユーザは、次に自分の秘密鍵でセッション鍵を復号し、データを復号するためにセッション鍵を使用する。このようにして、この公開／秘密鍵の対が用いられるのは、典型的な公開／秘密鍵を用いる暗号化／暗号解読はＡＥＳ等の方法と比較して非常に演算負荷が高いためである。したがって、データはＡＥＳ等の高速方法で暗号化され、ＡＥＳセッション鍵は以後公開鍵で暗号化される。
【００７０】
当業者によって理解されるように、本発明のこの実施形態では、複数のソースシステムが同じ宛先向けのデータを、さまざまなソースシステムのために追加のパスワードを作成しなくても、ＵＳＢドライブ上に記憶される公開鍵を使用して追加できる。加えて、前述された実装例は損失及び盗難に対するデータセキュリティを提供し、標準的なＵＳＢドライブと連動する。最後に、説明されている実装例は、ユーザが自身のコンピュータシステムの中に単にドライブを差し込むだけで、パスワードを必要とせずに、ユーザの個人的な使用のために、ユーザの公開鍵を用いてファイルを暗号化できるようにする。
【００７１】
ドライブをファイル共有に利用可能とするために、ユーザがデータを提供する前に、ＵＳＢドライブを受け取る人に渡さなければならない点において、上記方法はハードウェアに基づく実装の利便性は、完全には実現できてないことが理解されるであろう。
[ネットワーク接続が使用可能であるときのソフトウェアをベースにした実装例]
【００７２】
上記実装例は前述されている実装例に関連しているが、公開／秘密鍵の対のうちの一つを保持するために信頼できるネットワークサーバを使用する。具体的には、ネットワークに接続されている間に、データを提供するユーザのＵＳＢドライブは初期化される。次に、公開／秘密鍵の対が生成される。秘密鍵は、データを提供するユーザのコンピュータシステムに記憶され、公開鍵は信頼できるネットワークホストに記憶される。このドライブの初期化は一時的なものである。
【００７３】
ソースコンピュータシステムがネットワークに接続されていない可能性のある、ある将来の時点で、データを提供するユーザはＵＳＢドライブと共有するファイルを指定する。該ファイルはセッション鍵で暗号化される。セッション鍵は、期間、及びデータが使用可能にされ、過去に作成された秘密鍵で暗号化されなければならないアクセスの回数を記述するアクセスチケット情報とともに保存される。
【００７４】
（ネットワークに接続される）ターゲットコンピュータシステムの受信側ユーザはドライブを差し込み、ドライブアクセスアプリケーションを実行できる。該アプリケーションは、（ドライブの公開鍵を用いて）アクセスチケットを暗号解読できる信頼できるサーバに暗号化されたアクセスチケットを送信し、その有効性を判断し、チケットが依然として有効であると判明すると、暗号化されていないセッション鍵をアプリケーションに戻し、このようにしてターゲットコンピュータシステムにデータアクセスを付与する。
【００７５】
当業者により理解されるように、この実施形態は標準的なＵＳＢストレージデバイスに基づいてソフトウェア内で完全に実装できる。アクセスの時間及び回数は、暗号化されるデータに対するアクセスを許可する前に信頼できるサーバによって評価することができ、ドライブはそれぞれの受信側ユーザ及び／またはターゲットコンピュータシステムを許可せずに時間ベースの基準で（ｏｎ  ｔｉｍｅ−ｂａｓｅｄ  ｂａｓｉｓ）複数の人とデータを共有するために使用できる。
【００７６】
当業者により容易に理解されるように、この実施形態は、信頼できるネットワークサーバがドライブのために該鍵の対の一部を保持することを必要とする。加えて、共有動作を行う受取人はネットワークアクセスできる必要がある。
[多様な実装例の関係性]
【００７７】
前述された３つの実施形態は、ドライブが第三者のコンピュータシステム（受取人のコンピュータシステム）に差し込まれると、第三者が共有されるファイルを暗号解読するために必要とされる情報にアクセスできるという点で他の実施形態と類似している。ハードウェアをベースにした実施形態では、この情報はドライブハードウェア自体の中のキャッシュに記憶される。ソフトウェアをベースにした実施形態では、暗号解読情報は受信側ユーザのコンピュータシステムに、秘密鍵の形式で記憶されている。ネットワークをベースにした実施形態では、暗号解読情報は信頼できるネットワークサーバから取り出される。これらの三つの異なる実装例は、それらがパスワードの手作業による入力を必要としなくても第三者のコンピュータシステムに暗号解読キーを安全に通信するための方法を提供するという点ですべて類似している。
【００７８】
図７は、本発明の方法論の多様な態様が実現されてよいコンピュータシステム７００（コンピュータ／サーバシステム）の実施形態を示すブロック図である。コンピュータシステム７００は、コンピュータプラットホーム７０１（コンピュータ／サーバプラットホーム）、周辺装置７０２、及びネットワークリソース７０３を含む。
【００７９】
コンピュータプラットホーム７０１は、コンピュータプラットホーム７０１の多様な部分の間で情報を通信するための、データバス７０４または他の通信機構を含んでもよい。また、コンピュータプラットホーム７０１は、情報を処理し、他の計算タスクと制御タスクとを実行するためにデータバス７０４と結合されるプロセッサ７０５（ＣＰＵ）を含んでよい。コンピュータプラットホーム７０１は、プロセッサ７０５によって実行される命令だけではなく多様な情報も記憶するためにデータバス７０４に結合されるランダムアクセスメモリ（ＲＡＭ）または他の動的ストレージデバイス等の揮発性ストレージ７０６も含む。揮発性ストレージ７０６は、プロセッサ７０５による命令の実行中に一時的数値変数または他の中間情報を記憶するために使用されてもよい。コンピュータプラットホーム７０１は、多様なシステム構成パラメータだけではなく、基本入出力システム（ＢＩＯＳ）等のプロセッサ７０５用の静的情報及び命令も記憶するために、読取専用メモリ（ＲＯＭまたはＥＰＲＯＭ）７０７またはデータバス７０４に結合されている静的ストレージデバイスをさらに含んでよい。磁気ディスク、光ディスク、またはソリッドステートフラッシュメモリ装置等の持続性ストレージ７０８が、情報及び命令を記憶するために提供され、データバス７０４に結合される。
【００８０】
コンピュータプラットホーム７０１は、システム管理者またはコンピュータプラットホーム７０１のユーザに情報を表示するために、陰極線管（ＣＲＴ）、プラズマディスプレイ、または液晶ディスプレイ（ＬＣＤ）等のディスプレイ７０９にデータバス７０４を介して結合されてよい。英数字キー及び他のキーを含む入力装置７１０は、情報及びコマンドの選択をプロセッサ７０５に通信するためにデータバス７０４に結合される。別のタイプのユーザ入力装置は、マウス、トラックボール、または方向情報及びコマンド選択をプロセッサ７０５に伝達するため、及びディスプレイ７０９上でのカーソル移動を制御するためのカーソル方向キー等のカーソル制御装置７１１である。この入力装置は、通常、該デバイスが平面での位置を指定できるようにする、二つの軸、つまり第一の軸（例えば、ｘ）と第二の軸（例えば、ｙ）において二つの自由度を有する。
【００８１】
外部ストレージ７１２は、コンピュータプラットホーム７０１に余分な、つまり取り外し自在な記憶容量を提供するために、データバス７０４を介してコンピュータプラットホーム７０１に接続されてよい。コンピュータシステム７００の実施形態では、取り外し可能な外部ストレージ７１２が他のコンピュータシステムとのデータの交換を容易にするために使用されてよい。
【００８２】
本発明は本明細書に説明されている技法を実現するためのコンピュータシステム７００の使用に関する。ある実施形態では、本発明のシステムは、コンピュータプラットホーム７０１等のマシン上に常駐してよい。本発明の一実施形態に従って、本明細書に説明されている技法は、揮発性ストレージ７０６に記憶されている１つまたは複数の命令の１つまたは複数のシーケンスを実行するプロセッサ７０５に応じてコンピュータシステム７００によって実行される。このような命令は、持続性ストレージ７０８等の別のコンピュータ読取可能媒体から揮発性ストレージ７０６の中に読み取られてよい。揮発性ストレージ７０６に記憶されている命令のシーケンスを実行すると、プロセッサ７０５は本明細書に説明されているプロセスステップを実行する。別の実施形態では、配線で接続された回路網が本発明を実現するために、ソフトウェア命令の代わりに、またはソフトウェア命令と組み合わされて使用されてよい。本発明の実施形態はハードウェア回路網及びソフトウェアの特定の組み合わせに限定されない。
【００８３】
本明細書で使用される用語「コンピュータ読取可能媒体」は、実行のためにプロセッサ７０５に命令を提供することに関与する任意の媒体を指す。コンピュータ読取可能媒体は、本明細書に説明されている方法及び／または技法のどれかを実現するための命令を含んでもよいマシン読取可能媒体の一例にすぎない。このような媒体は、不揮発性記憶媒体、揮発性記憶媒体、及び伝送媒体を含むが、これらに限定されない多くの形をとってよい。不揮発性記憶媒体である持続性ストレージ７０８は、例えば光ディスクまたは磁気ディスクを含む。揮発性記憶媒体である揮発性ストレージ７０６は、ダイナミックメモリを含む。伝送媒体は、データバス７０４を備えるワイヤを含む、同軸ケーブル、銅線、及び光ファイバを含む。伝送媒体は、電磁波や赤外線等のデータ通信時に発生する音波または光波の形を取ることもある。
【００８４】
コンピュータ読取可能媒体は、例えばフロッピー（登録商標）ディスク、フレキシブルディスク、ハードディスク、磁気テープ、または任意の他の磁気記憶媒体、ＣＤ−ＲＯＭ、任意の他の光記憶媒体、パンチカード、紙テープ、穴のパターンのある任意の他の物理記憶媒体、ＲＡＭ、ＰＲＯＭ、ＥＰＲＯＭ、フラッシュ−ＥＰＲＯＭ、フラッシュドライブ、メモリカード、任意の他のメモリチップまたはカートリッジ、これ以降説明されるような搬送波、またはコンピュータが読み取ることができる任意の他の媒体を含む。
【００８５】
多様な形式のコンピュータ読取可能媒体が、実行のためにプロセッサ７０５に１つまたは複数の命令の１つまたは複数のシーケンスを伝搬する際に含まれてよい。例えば、命令は、遠隔コンピュータから磁気ディスク上に記憶されて伝搬されてよい。代わりに、遠隔コンピュータはその動的メモリに命令をロードし、モデムを使用して電話回線上で命令を送信する。コンピュータシステム７００に接続されたモデムは電話回線上でデータを受け取り、赤外線信号にデータを変換するために赤外線送信機を使用できる。赤外線検出器は赤外線信号で伝送されるデータを受け取り、適切な回路網がデータをデータバス７０４に載せることができる。データバス７０４はデータを揮発性ストレージ７０６に伝搬し、プロセッサ７０５はそこから命令を取り出し、実行する。揮発性ストレージ７０６によって受け取られる命令は、プロセッサ７０５による実行の前または後のどちらかに持続性ストレージ７０８に記憶されてよい。命令は、当分野で周知の種々のネットワークデータ通信プロトコルを使用してインターネットを介してコンピュータプラットホーム７０１にダウンロードされてもよい。
【００８６】
コンピュータプラットホーム７０１は、データバス７０４に結合される通信インタフェース７１３（ネットワークインタフェースカード）等の通信インタフェースも含む。通信インタフェース７１３は、ローカルネットワーク７１５に接続されるネットワークリンク７１４への双方向データ通信結合も提供する。例えば、通信インタフェース７１３は、対応するタイプの電話回線にデータ通信接続を提供するための総合デジタル通信網（ＩＳＤＮ）カードまたはモデムであってよい。別の例としては、通信インタフェース７１３は、互換性のあるＬＡＮにデータ通信接続を提供するためのローカルエリアネットワークインタフェースカード（ＬＡＮ  ＮＩＣ）であってよい。周知の８０２．１１ａ、８０２．１１ｂ、８０２．１１ｇ及びブルートゥース（登録商標）等の無線リンクも、ネットワーク実現のために使用されてよい。任意のこのような実現例では、通信インタフェース７１３は、多様なタイプの情報を表すデジタルデータストリームを搬送する電気信号、電磁信号、または光信号を送信し、受信する。
【００８７】
ネットワークリンク７１４は、通常、１つまたは複数のネットワークを通して他のネットワークリソースにデータ通信を提供する。例えば、ネットワークリンク７１４はローカルエリアネットワーク７１５を通してホストコンピュータ７１６、またはネットワークストレージ／サーバ７２２に接続を提供してよい。加えて、または代わりに、ネットワークリンク７１４は広域またはインターネット等のグローバルネットワーク７１８にゲートウェイ／ファイアウォール７１７を通して接続してよい。このようにして、コンピュータプラットホーム７０１は、遠隔ネットワークストレージ／サーバ７１９等の、グローバルネットワーク７１８（インターネット）上のどこかに配置されるネットワークリソースにアクセスできる。他方、コンピュータプラットホーム７０１は、ローカルエリアネットワーク７１５及び／またはグローバルネットワーク７１８上のどこかに位置するクライアントによってアクセスされてもよい。クライアント７２０及び７２１は、それら自体、コンピュータプラットホーム７０１に類似するコンピュータプラットホームに基づいて実現されてよい。
【００８８】
ローカルエリアネットワーク７１５及びグローバルネットワーク７１８はともに、デジタルデータストリームを搬送する電気信号、電磁信号、または光信号を使用する。デジタルデータをコンピュータプラットホーム７０１との間で搬送する多様なネットワークを通る信号及びネットワークリンク７１４上、及び通信インタフェース７１３を通る信号は、情報を移送する搬送波の例示的な形である。
【００８９】
コンピュータプラットホーム７０１は、グローバルネットワーク７１８とローカルエリアネットワーク７１５（ＬＡＮ）、ネットワークリンク７１４と通信インタフェース７１３とを含む種々のネットワークを通してメッセージを送信し、プログラムコードを含むデータを受信できる。インターネット例では、コンピュータシステム７００はネットワークサーバとしての機能を果たすとき、それは、グローバルネットワーク７１８、ゲートウェイ／ファイアウォール７１７、ローカルエリアネットワーク７１５及び通信インタフェース７１３を通して、クライアント７２０及び／または７２１上で実行するアプリケーションプログラムについて要求されたコードまたはデータを送信する可能性がある。同様に、他のネットワークリソースからコードを受け取ってよい。
【００９０】
受信されるコードは、受信されるとプロセッサ７０５によって実行されてよい、及び／またはそれぞれ持続性ストレージ７０８または揮発性ストレージ７０６に、あるいは後の実行のために他の不揮発性ストレージに記憶されてよい。このようにして、コンピュータシステム７００は搬送波の形でアプリケーションコードを取得してよい。
【００９１】
最後に、本明細書で説明されているプロセス及び技法は特定の装置に関連付けられているわけではなく、構成要素の任意の適切な組み合わせによって実現されてよいことが理解されなければならない。さらに、多様なタイプの汎用装置は本明細書に説明されている教示に従って使用されてよい。本明細書に説明されている方法ステップを実行するために専用の装置を構築することが有利であると判断されてもよい。本発明は、すべての点において例示的であることを目的とする特定の例に関して説明されてきた。当業者は、ハードウェア、ソフトウェエア、及びファームウェアの多くの異なる組み合わせが本発明を実施するために適切となることを理解するであろう。例えば、説明されたソフトウェアは、Ａｓｓｅｍｂｌｅｒ、Ｃ／Ｃ＋＋、ｐｅｒｌ、ｓｈｅｌｌ、ＰＨＰ、Ｊａｖａ（登録商標）等の多種多様のプログラミング言語またはスクリプト言語で実現されてよい。
【００９２】
さらに、本発明の他の実現例は、本明細書に開示されている本発明の仕様及び実践を検討することから当業者に明らかとなる。説明されている実施形態の多様な態様及び／または構成要素が取り外し可能ストレージデバイス内で、単独でまたは任意の組み合わせで使用されてよい。明細書及び例は例示的としてだけみなされ、本発明の真の範囲及び精神は以下の請求項によって示される。
【図面の簡単な説明】
【００９３】
【図１】従来の方法論を使用して二台のコンピュータ間で単純なファイル共有動作を実行するために必要とされる多数のステップを示す。
【図２】本発明のシステムでユーザがナビゲーションされるダイアログの例示的な実施形態を示す。
【図３】共有するファイルがドライブアクセスアプリケーションの上にドラッグアンドドロップされた場合の一連の動作及び入力を示す。
【図４】事前に許可されたセッションチケットについて判断することを含む、ドライブ許可アプリケーションが実行される場合のプロセスフローを示す。
【図５】事前に許可されたアクセスチケットが使用可能な場合の標準的なログイン／許可動作を示す。
【図６】本発明のハードウェアをベースにした実施形態のアーキテクチャを示す。
【図７】本発明のシステムが実装されるコンピュータプラットホームの例示的な実施形態を示す。
【符号の説明】
【００９４】
６０１  不正改変防止ハードウェア
６０５  フラッシュストレージ
７００  コンピュータシステム
７０１  コンピュータプラットホーム
７０２  周辺装置
７０３  ネットワークリソース
７１４  ネットワークリンク
【図１】
2008123490.tif 000003
【図２】
2008123490.tif 000004
【図３】
2008123490.tif 000005
【図４】
2008123490.tif 000006
【図５】
2008123490.tif 000007
【図６】
2008123490.tif 000008
【図７】
2008123490.tif 000009