(57)【要約】【課題】コンパクトでかつ自動的にプログラムをインストールする着脱式デバイスを提供する。【解決手段】オスコネクタ１５と、制御手段である制御部３０と、主な記憶装置としてフラッシュメモリ４０と、を備えた着脱式デバイスであって、他の周辺機器（ここではデジタルカメラ５）を接続するためのＵＳＢポート２５（メスコネクタ）を備える。また、制御部３０は、フラッシュメモリ４０の全部又は一部を第１の単位デバイス、前記他の周辺機器を第２の単位デバイスとして、コンピュータ側とのデータ授受を、これら各単位デバイスに割り振る機能（ハブ分け機能）と、ＵＳＢポートに接続された際に、まず先に前記第１の単位デバイスについてＣＤ−ＲＯＭを模した信号をコンピュータ１に送り、その後所定のタイミングで、デジタルカメラ５について認識を受けるための所定の信号を前記コンピュータに送る機能（認識制御機能）と、を備える。【選択図】  図２
2004206660.tif 000002
【特許請求の範囲】
【請求項１】
所定の種類の機器が接続されると、その機器に記憶された所定の自動起動スクリプト又は自動起動プログラムを実行するコンピュータの、汎用周辺機器インタフェースに着脱され、制御手段と、主な記憶装置としてＲＯＭ又は読み書き可能な記憶装置と、を備えた着脱式デバイスであって、
前記制御手段は、
第１の単位デバイス及び第２の単位デバイスを含む複数の単位デバイスと、
コンピュータ側とのデータ授受を、前記各単位デバイスに割り振るハブ手段と、
前記汎用周辺機器インタフェースに接続された際に、まず先に前記第１の単位デバイスについて前記所定の種類の機器を模した信号を前記コンピュータに送り、その後所定のタイミングで、前記第２の単位デバイスについて認識を受けるための所定の信号を前記コンピュータに送る手段と、
を備えたことを特徴とする着脱式デバイス。
【請求項２】
前記自動起動プログラム又は前記自動起動スクリプトから呼び出される自動起動プログラムを格納し、
その自動起動プログラムは前記コンピュータ上から、
パスワードによりユーザを認証すると前記制御手段に、前記第２の単位デバイスを前記コンピュータに認識させる指示を与え、
前記認証の際に誤ったパスワードが所定回数入力されると前記制御手段に、前記第２の単位デバイス上のデータのフォーマット指示を与え、
周期的に所定の認識延長信号を前記制御手段に送信し、
前記制御手段は、
前記フォーマット指示を実行する手段と、
前記認識延長信号が所定時間以上途切れると前記第２の単位デバイスに関する前記コンピュータの認識を解除させる手段と、
を備えたことを特徴とする請求項１記載の着脱式デバイス。
【請求項３】
所定の種類の機器が接続されると、その機器に記憶された所定の自動起動スクリプト又は自動起動プログラムを実行するコンピュータの、汎用周辺機器インタフェースに着脱され、制御手段と、主な記憶装置としてＲＯＭ又は読み書き可能な記憶装置と、を備えた着脱式デバイスであって、
他の周辺機器を接続するための手段を備え、
前記制御手段は、
前記主な記憶装置の全部又は一部を第１の単位デバイス、前記他の周辺機器を第２の単位デバイスとして、コンピュータ側とのデータ授受を、これら各単位デバイスに割り振るハブ手段と、
前記汎用周辺機器インタフェースに接続された際に、まず先に前記第１の単位デバイスについて前記所定の種類の機器を模した信号を前記コンピュータに送り、その後所定のタイミングで、前記第２の単位デバイスについて認識を受けるための所定の信号を前記コンピュータに送る手段と、
を備えたことを特徴とする着脱式デバイス。
【請求項４】
コンピュータの汎用周辺機器インタフェースに着脱され、制御手段と、主な記憶装置としてＲＯＭ又は読み書き可能な記憶装置と、を備えた着脱式デバイスであって、
他の周辺機器を接続するための手段を備え、
前記制御手段は、
前記主な記憶装置の全部又は一部を第１の単位デバイス、前記他の周辺機器を第２の単位デバイスとして、コンピュータ側とのデータ授受を、これら各単位デバイスに割り振るハブ手段と、
前記汎用周辺機器インタフェースに接続された際に、まず先に前記第１の単位デバイスについて認識を受けるための所定の信号を前記コンピュータに送り、前記認識された第１の単位デバイスから読み出され実行されたプログラムが所定の合図信号を送ってくると、前記第２の単位デバイスについて認識を受けるための所定の信号を前記コンピュータに送る手段と、
を備えたことを特徴とする着脱式デバイス。
【請求項５】
前記プログラムは、前記コンピュータ上における前記各単位デバイスのドライブレターを取得して着脱式デバイスに伝達することを特徴とする請求項１から４のいずれかに記載の着脱式デバイス。
【請求項６】
書換え可能な不揮発性メモリと、ＵＳＢのホスト側からのアクセスを前記メモリに仲介する制御手段と、を備えた着脱式デバイスにおいて、
前記制御手段は、
ホスト側に接続されると前記メモリの一部をホスト側に接続し、
ホスト側から所定の合図信号を受け取ると前記メモリの他の部分をホスト側に接続することを特徴とする着脱式デバイス。
【請求項７】
ＵＳＢクライアントとして、ホスト側からのＵＳＢ経由のアクセスを、書換え可能な不揮発性メモリに仲介する制御回路において、
外部機器接続用のスレーブ側接続ポートと、
前記メモリを複数の領域に区分管理する手段と、
前記スレーブ側接続ポートに接続された外部機器と前記各領域をそれぞれ、ハブで分けられた複数の単位デバイスとしてホスト側に対して接続及び切断する擬似ハブ手段と、
ホスト側から送信され少なくともいずれかの前記単位デバイスの接続を含む専用命令を、検出及び実行する命令解釈手段と、
を備えたことを特徴とする制御回路。
【請求項８】
前記領域の一つは、擬似的ＣＤ−ＲＯＭ形式互換領域であり、
前記不揮発性メモリ上に構成された擬似的ＣＤ−ＲＯＭ形式互換領域に対して前記ホスト側からＣＤ−ＲＯＭ形式のアクセスがあった場合、そのアクセスと前記不揮発性メモリ形式のアクセスとの間で変換を行うことを特徴とする請求項７記載の制御回路。
【請求項９】
前記不揮発性メモリ上に前記区分管理により前記各領域とは異なる不可視領域を設け、この不可視領域上の情報については前記専用命令によるアクセスのみを認めることを特徴とする請求項７又は８記載の制御回路。
【請求項１０】
前記命令解釈手段は、
前記専用命令を、前記メモリ中に設けられた所定のレジスタ領域に命令の種類及びパラメータに応じたビットパターンがストアされたときに検出し、
その命令の実行結果を、所定のレジスタ領域にビットパターンとしてセットすることを特徴とする請求項７から９のいずれかに記載の制御回路。
【請求項１１】
前記命令解釈手段は、
前記専用命令について、前記ハブ、いずれかの前記単位デバイス、いずれかの前記単位デバイス中の所定の物理アドレス、所定のファイル名又は所定の内容に係るアクセスから、命令の種類及びそのパラメータに応じたパターンを検出することを特徴とする請求項７から１０のいずれかに記載の制御回路。
【請求項１２】
前記専用命令の種類に応じ、次の少なくともいずれかを行うことを特徴とする請求項７から１１のいずれかに記載の制御回路。
（１）各単位デバイスの接続、切断及び状態取得
（２）不可視領域内の情報の読み書き
（３）個体固有識別情報の読み取り
（４）各領域の容量変更
（５）擬似的ＣＤ−ＲＯＭ形式互換領域の書換え更新
【請求項１３】
前記擬似的ＣＤ−ＲＯＭ形式互換領域のホスト側への接続をオン／オフするスイッチポートを備えたことを特徴とする請求項８から１２のいずれかに記載の制御回路。
【請求項１４】
ホスト側に接続後一定時間内にホスト側から、前記スレーブ側接続ポートに接続された外部機器の初期化のための命令が送られてこない場合に、前記ＣＤ−ＲＯＭ形式互換領域をホスト側に接続することを特徴とする請求項８から１３のいずれかに記載の制御回路。
【請求項１５】
前記不揮発性メモリ上の所定の領域について、記録するデータは暗号化し、読み出したデータは復号化することを特徴とする請求項６から１４のいずれかに記載の制御回路。
【請求項１６】
請求項７から１５のいずれかに記載の制御回路と、前記スレーブ側接続ポートに接続された周辺機器を直ちにホスト側へ接続するか否かのスイッチと、を備えたことを特徴とする着脱式デバイス。
【請求項１７】
携帯型電話端末を有線又は無線で接続する手段と、ホスト側となるコンピュータの備えるＩＰ接続を経て電話網に接続する手段とを備えたことを特徴とする請求項１から６又は１６のいずれかに記載の着脱式デバイス。
【請求項１８】
所定の種類の機器が接続されると、その機器に記憶された所定の自動起動スクリプト又は自動起動プログラムを実行するコンピュータの、汎用周辺機器インタフェースに着脱され、制御手段と、主な記憶装置としてＲＯＭ又は読み書き可能な記憶装置と、を備えた着脱式デバイスの制御回路のファームウェアプログラムであって、
そのプログラムは前記制御回路に、
コンピュータ側とのデータ授受を、第１の単位デバイス及び第２の単位デバイスを含む複数の単位デバイスに割り振らせ、
前記汎用周辺機器インタフェースに接続された際に、まず先に前記第１の単位デバイスについて前記所定の種類の機器を模した信号を前記コンピュータに送らせ、その後所定のタイミングで、前記第２の単位デバイスについて認識を受けるための所定の信号を前記コンピュータに送らせることを特徴とする着脱式デバイスの制御回路のファームウェアプログラム。
【請求項１９】
ＵＳＢクライアントとして、ホスト側からのＵＳＢ経由のアクセスを、書換え可能な不揮発性メモリに仲介する制御回路のファームウェアプログラムにおいて、
そのプログラムは前記制御回路に、
前記メモリを複数の領域に区分管理させ、
外部機器接続用のスレーブ側接続ポートに接続された外部機器と前記各領域をそれぞれ、ハブで分けられた複数の単位デバイスとしてホスト側に対して接続及び切断させ、
ホスト側から送信され少なくともいずれかの前記単位デバイスの接続を含む専用命令を、検出及び実行させることを特徴とする制御回路のファームウェアプログラム。
【請求項２０】
前記プログラムは前記制御回路に、
前記不揮発性メモリ上に前記区分管理により前記各領域とは異なる不可視領域を設けさせ、この不可視領域上の情報については前記専用命令によるアクセスのみを認めさせることを特徴とする請求項１９記載の制御回路のファームウェアプログラム。
【請求項２１】
ＵＳＢクライアントとして、ホスト側からのＵＳＢ経由のアクセスを、書換え可能な不揮発性メモリに仲介する制御回路のファームウェアプログラムにおいて、
そのプログラムは前記制御回路に、
前記メモリを複数の領域と、これら領域とは異なり所定のパスワードが格納された不可視領域と、に区分管理させ、
ホスト側に接続されると一の前記領域を、ハブに接続された一のデバイスとしてホスト側に接続させ、
ホスト側から所定の専用命令が送信されてきたか、又はホスト側から送信されてきたパスワードが前記不可視領域に格納された前記所定のパスワードと一致すると、他の前記領域を、前記ハブに接続された他のデバイスとしてホスト側に接続させることを特徴とする制御回路のファームウェアプログラム。
【請求項２２】
前記プログラムは前記制御回路に、
前記専用命令を、前記メモリ中に設けられた所定のレジスタ領域に命令の種類及びパラメータに応じたビットパターンがストアされたときに検出させ、
その命令の実行結果を、所定のレジスタ領域にビットパターンとしてセットさせることを特徴とする請求項１９から２１のいずれか記載の制御回路のファームウェアプログラム。
【請求項２３】
前記プログラムは前記制御回路に、
前記専用命令について、前記ハブ、いずれかの前記単位デバイス、いずれかの前記単位デバイス中の所定の物理アドレス、所定のファイル名又は所定の内容に係るアクセスから、命令の種類及びそのパラメータに応じたパターンを検出させることを特徴とする請求項１９から２２のいずれかに記載の制御回路のファームウェアプログラム。
【請求項２４】
前記プログラムは前記制御回路に、
前記不揮発性メモリ上の所定の領域について、記録するデータは暗号化させ、読み出したデータは復号化させることを特徴とする請求項１９から２３のいずれかに記載の制御回路のファームウェアプログラム。
【請求項２５】
請求項１から６、１６、１７のいずれかに記載の着脱式デバイス、請求項７から１５のいずれかに記載の制御回路、請求項１８から２４のいずれかに記載の制御回路のファームウェアプログラム、のうちいずれかを実現することを特徴とする着脱式デバイスの制御回路における情報処理方法。
【請求項２６】
請求項１から６、１６、１７のいずれかに記載の着脱式デバイス、請求項７から１５のいずれかに記載の制御回路、請求項１８から２４のいずれかに記載の制御回路のファームウェアプログラム、のうちいずれかを実現することを特徴とする着脱式デバイスの制御回路における回路設計パターン。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、使い勝手とセキュリティに優れた着脱式デバイスに関するものである。
【０００２】
【従来の技術】
近年、半導体技術やインターネットの普及進歩に伴い、パーソナルコンピュータ（パソコン）など各種コンピュータの普及が進み、周辺機器の接続方式も多様化している。この結果、パソコンの機種を問わず適用可能な汎用周辺機器インタフェースが必要とされ、その具体的規格の一例としてＵＳＢ（Ｕｎｉｖｅｒｓａｌ  ＳｅｒｉａｌＢｕｓ）インタフェースが提案された。また、各種コンピュータの小型軽量化と持ち運び（モバイル）用途の拡大により、着脱自在な外部記憶装置も必要とされ、その一つとして、前記ＵＳＢインタフェースでパソコンに容易に接続できるデバイスであるＵＳＢメモリの人気が高まっている（例えば、特許文献１参照。）。
【０００３】
ＵＳＢメモリは、３２ＭＢ、６４ＭＢなど種々の記憶容量のものがあるが、具体的には、内部にフラッシュメモリ素子を備え、人の親指程度の大きさの着脱式デバイスで、一端に設けられたＵＳＢコネクタでパソコン等のＵＳＢポート（接続口）に接続すると、リムーバブル（着脱可能な）ディスクドライブ等として認識され読み書きなどのアクセスが可能となるものである。
【０００４】
特に、今日ではインターネットの普及もあり、自分が普段使っているものとは異なるコンピュータを出先で借りて使う機会も増え、例えばインターネット・カフェなど街の時間貸し、職場、取引先、家族、友人、知人など他人のパソコンで自分のメールを送受信する場合も多い。
【０００５】
このような出先のパソコンは、通常、自分の送受信メールのデータやアカウント情報を持たず、またメーラー（電子メール用ソフトウェア）の種類やバージョンも自分の愛用のものと同じとは限らない。さらに、そのような他人のパソコンに自分のアカウント情報を設定してメールを送受信することも考えられるが、その場合は、そのようなアカウント情報や送受信メールのデータ消し忘れによりプライバシー上の問題が発生する。そこで、そのようなアカウント情報やメーラー、送受信メールのデータなどをＵＳＢメモリに記録して持ち歩く工夫もされている。
【０００６】
すなわち、ＵＳＢメモリ内にはデータだけでなくメーラー等のソフトウェアやソフトウェアへのショートカットを置くこともでき、ＵＳＢメモリを用いて、データの保存・閲覧の他に、そのようなソフトウェアの起動も行うことができる。
【０００７】
また、近年、パソコンには、パソコン特有の外部記憶装置等の周辺機器に加え、デジタルカメラなど各種機器がパソコンに接続可能となり、パソコンと各種のデータをやり取りするようになっている。
【０００８】
パソコンに新たな周辺機器を接続する際は、デバイスドライバやサポートソフトといった専用プログラムのインストールを要する場合も多く、従来、そのようなプログラムについては、ＣＤ−ＲＯＭ、フレキシブルディスク等の記憶媒体によりユーザに提供されていた。また、その種のプログラムをネットワーク上からダウンロードする提案もあった（特許文献２参照）。
【０００９】
【特許文献１】
特開２００２−４１２４７
【特許文献２】
特開２００２−２８８１１０
【００１０】
【発明が解決しようとする課題】
しかしながら、ＵＳＢメモリに格納してある目的のデータやソフトウェアを利用するには、それらに辿り着くまでの操作が面倒であり、特にＵＳＢメモリの使用頻度が多いほど煩雑さが増す問題点があった。
【００１１】
例えば、ＵＳＢメモリ内のデータを使うには、ユーザは、ＵＳＢメモリをパソコンに挿入するだけでなく、ＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ。基本ソフト）の画面で「マイコンピュータ」→「リムーバブルディスク」→「目的の操作」のように順番に選択肢をたどっていく操作か、又は、キーボードを用いてファイル名を指定して実行させるなど、相応の煩雑な手順が必要であった。
【００１２】
これに加え、置き忘れたり盗まれたりした場合、保存してあるユーザデータを予期せず他人に見られるおそれもあり、セキュリティ上の不安があった。
【００１３】
また、記憶媒体からの専用プログラムのインストールについては、パソコンへの着脱が面倒であり、また商品との同梱にもスペースを取るため商品パッケージの小型化を妨げ、ユーザによる保存の際も嵩張る問題があった。また、記憶媒体の種類によっては目的のファイルに辿り着くまでに何階層もの選択を繰り返す必要があり、操作が煩雑という問題もあった。さらに、ネットワーク上からのダウンロードについては、ネットワーク接続無しでは使用できない問題があった。
【００１４】
本発明は、上記のような従来技術の問題点を解決するために提案されたもので、その目的は、使い勝手とセキュリティに優れた着脱式デバイスを提供することである。本発明の他の目的は、ＵＳＢにおける着脱式デバイス及びその関連技術において、特に優れた情報セキュリティを実現することである。また、本発明の他の目的は、本発明のための汎用性の高い制御回路を提供することである。また、本発明の他の目的は、特段のデバイスドライバ無しで多くのＯＳで利用可能なＵＳＢにおける着脱式デバイス及びその関連技術を提供することである。
【００１５】
また、本発明の他の目的はコンパクトでかつ自動的にプログラムをインストールする着脱式デバイスを提供することである。また、本発明の他の目的は、外部接続機器のデバイスドライバ等のプログラムインストール後、システム構成単純化と応答速度改善を可能とすることである。
【００１６】
【課題を解決するための手段】
上記の目的を達成するため、請求項１の発明は、所定の種類の機器が接続されると、その機器に記憶された所定の自動起動スクリプト又は自動起動プログラムを実行するコンピュータの、汎用周辺機器インタフェースに着脱され、制御手段と、主な記憶装置としてＲＯＭ又は読み書き可能な記憶装置と、を備えた着脱式デバイスであって、前記制御手段は、第１の単位デバイス及び第２の単位デバイスを含む複数の単位デバイスと、コンピュータ側とのデータ授受を、前記各単位デバイスに割り振るハブ手段と、前記汎用周辺機器インタフェースに接続された際に、まず先に前記第１の単位デバイスについて前記所定の種類の機器を模した信号を前記コンピュータに送り、その後所定のタイミングで、前記第２の単位デバイスについて認識を受けるための所定の信号を前記コンピュータに送る手段と、を備えたことを特徴とする。
【００１７】
請求項１８の発明は、請求項１の発明をコンピュータのプログラムという見方から捉えたもので、所定の種類の機器が接続されると、その機器に記憶された所定の自動起動スクリプト又は自動起動プログラムを実行するコンピュータの、汎用周辺機器インタフェースに着脱され、制御手段と、主な記憶装置としてＲＯＭ又は読み書き可能な記憶装置と、を備えた着脱式デバイスの制御回路のファームウェアプログラムであって、そのプログラムは前記制御回路に、コンピュータ側とのデータ授受を、第１の単位デバイス及び第２の単位デバイスを含む複数の単位デバイスに割り振らせ、前記汎用周辺機器インタフェースに接続された際に、まず先に前記第１の単位デバイスについて前記所定の種類の機器を模した信号を前記コンピュータに送らせ、その後所定のタイミングで、前記第２の単位デバイスについて認識を受けるための所定の信号を前記コンピュータに送らせることを特徴とする。
【００１８】
これらの態様では、ある第１の単位デバイスについて、プログラム等の自動起動の対象となる所定の種類の機器（例えばＣＤ−ＲＯＭドライブ）を模した信号をコンピュータに送ることで、ＵＳＢメモリなどを用いた周辺機器でありながら所望のスクリプトやプログラム（以下「プログラム等」と呼ぶ）を実行開始させ、その後所定のタイミングで、別の第２の単位デバイスについて認識させる。このため、第２の単位デバイスについて、アクセスを前記プログラム等のみからに限定して秘密を保つことができる。このように、プログラム等の自動起動と認識の時間差により、使い勝手とセキュリティに優れた着脱式デバイスを提供することができる。
【００１９】
また、上記のようなプログラム等の自動起動と認識の時間差により、デジタルカメラなど他の周辺機器を第２の単位デバイスとし、そのためのデバイスドライバのインストーラを前記プログラム等として事前に予め実行しておくことができ、フラッシュメモリを用いた小型化も可能となるので、コンパクトでかつ自動的にプログラムをインストールする着脱式デバイスを提供できる。
【００２０】
請求項２の発明は、請求項１記載の着脱式デバイスにおいて、前記自動起動プログラム又は前記自動起動スクリプトから呼び出される自動起動プログラムを格納し、その自動起動プログラムは前記コンピュータ上から、パスワードによりユーザを認証すると前記制御手段に、前記第２の単位デバイスを前記コンピュータに認識させる指示を与え、前記認証の際に誤ったパスワードが所定回数入力されると前記制御手段に、前記第２の単位デバイス上のデータのフォーマット指示を与え、周期的に所定の認識延長信号を前記制御手段に送信し、前記制御手段は、前記フォーマット指示を実行する手段と、前記認識延長信号が所定時間以上途切れると前記第２の単位デバイスに関する前記コンピュータの認識を解除させる手段と、を備えたことを特徴とする。
【００２１】
この態様では、第２の単位デバイスについては自動起動プログラムの作用により、パスワード認証を条件に認識され、パスワードを何度も間違えればフォーマットされ、プログラムが終了すれば認識が解除されるので、自動起動プログラム以外からの参照は困難であり、優れたセキュリティが維持される。
【００２２】
請求項３の発明は、所定の種類の機器が接続されると、その機器に記憶された所定の自動起動スクリプト又は自動起動プログラムを実行するコンピュータの、汎用周辺機器インタフェースに着脱され、制御手段と、主な記憶装置としてＲＯＭ又は読み書き可能な記憶装置と、を備えた着脱式デバイスであって、他の周辺機器を接続するための手段を備え、前記制御手段は、前記主な記憶装置の全部又は一部を第１の単位デバイス、前記他の周辺機器を第２の単位デバイスとして、コンピュータ側とのデータ授受を、これら各単位デバイスに割り振るハブ手段と、前記汎用周辺機器インタフェースに接続された際に、まず先に前記第１の単位デバイスについて前記所定の種類の機器を模した信号を前記コンピュータに送り、その後所定のタイミングで、前記第２の単位デバイスについて認識を受けるための所定の信号を前記コンピュータに送る手段と、を備えたことを特徴とする。
【００２３】
この態様では、まず先に第１の単位デバイスについて、プログラム等の自動起動の対象となる所定の種類の機器（例えばＣＤ−ＲＯＭドライブ）を模した信号をコンピュータに送る。このため、ＵＳＢメモリなどを用いた周辺機器でありながら所望のプログラム等を自動実行でき、別の第２の単位デバイスの認識はその後所定のタイミングで行われる。したがって、第２の単位デバイスをデジタルカメラなど他の周辺機器とし、本着脱式デバイスにはオスとメスのコネクタを両方設けてパソコンに本着脱式デバイスを介して他の周辺機器を接続したり、又は組み込み基板等の部材として他の周辺機器と一体化することにより、他の周辺機器のためのデバイスドライバなど専用プログラムのインストーラ実行が容易になる。このため、専用プログラムについて、本物のＣＤ−ＲＯＭ等の嵩張る記録媒体や煩雑な手間が不要となる。
【００２４】
２度目以降の接続時については、本着脱式デバイスと他の周辺機器が一体であれば切替えスイッチにより内部回路を制御することで本着脱式デバイスを素通りさせパソコンと他の周辺機器を直結状態とするか、又は接続ごとにプログラム等でパソコン上の専用プログラムを確認しインストール済みであればすぐ第２の単位デバイスの認識に進ませる。本着脱式デバイスが他の周辺機器と別体であれば本着脱式デバイスを挟まずパソコンと他の周辺機器を直結すればよい。
【００２５】
請求項４の発明は、コンピュータの汎用周辺機器インタフェースに着脱され、制御手段と、主な記憶装置としてＲＯＭ又は読み書き可能な記憶装置と、を備えた着脱式デバイスであって、他の周辺機器を接続するための手段を備え、前記制御手段は、前記主な記憶装置の全部又は一部を第１の単位デバイス、前記他の周辺機器を第２の単位デバイスとして、コンピュータ側とのデータ授受を、これら各単位デバイスに割り振るハブ手段と、前記汎用周辺機器インタフェースに接続された際に、まず先に前記第１の単位デバイスについて認識を受けるための所定の信号を前記コンピュータに送り、前記認識された第１の単位デバイスから読み出され実行されたプログラムが所定の合図信号を送ってくると、前記第２の単位デバイスについて認識を受けるための所定の信号を前記コンピュータに送る手段と、を備えたことを特徴とする。
【００２６】
この態様では、先に認識させる第１の単位デバイスに予め格納されたインストールプログラムが、ユーザにより手動で起動され、インストールが済むと合図信号を送ってくるので、第２の単位デバイスの認識が行われる。これにより、プログラムの自動起動を用いなくても、コンパクトな着脱式デバイスによりデバイスドライバ等の専用プログラムをユーザに容易に提供可能となる。
【００２７】
請求項５の発明は、請求項１から４のいずれかに記載の着脱式デバイスにおいて、前記プログラムは、前記コンピュータ上における前記各単位デバイスのドライブレターを取得して着脱式デバイスに伝達することを特徴とする。
【００２８】
これにより、ＯＳ等の環境に関わらず、アプリケーションなどのプログラムが着脱式デバイス内のデータの位置を特定でき、そのようなデータへの円滑なアクセスが可能となる。
【００２９】
請求項６の着脱式デバイスは、書換え可能な不揮発性メモリと、ＵＳＢのホスト側からのアクセスを前記メモリに仲介する制御手段と、を備えた着脱式デバイスにおいて、前記制御手段は、ホスト側に接続されると前記メモリの一部をホスト側に接続し、ホスト側から所定の合図信号を受け取ると前記メモリの他の部分をホスト側に接続することを特徴とする。
【００３０】
これにより、ホスト側から合図信号をユーザ認証後に送ることで、前記メモリの他の部分に格納された情報は、正当権限の無い第三者から保護されるので、情報セキュリティが実現される。
【００３１】
請求項７の発明は、ＵＳＢクライアントとして、ホスト側からのＵＳＢ経由のアクセスを、書換え可能な不揮発性メモリに仲介する制御回路において、外部機器接続用のスレーブ側接続ポートと、前記メモリを複数の領域に区分管理する手段と、前記スレーブ側接続ポートに接続された外部機器と前記各領域をそれぞれ、ハブで分けられた複数の単位デバイスとしてホスト側に対して接続及び切断する擬似ハブ手段と、ホスト側から送信され少なくともいずれかの前記単位デバイスの接続を含む専用命令を、検出及び実行する命令解釈手段と、を備えたことを特徴とする。
【００３２】
請求項１９の発明は、請求項７の発明をコンピュータのプログラムという見方から捉えたもので、ＵＳＢクライアントとして、ホスト側からのＵＳＢ経由のアクセスを、書換え可能な不揮発性メモリに仲介する制御回路のファームウェアプログラムにおいて、そのプログラムは前記制御回路に、前記メモリを複数の領域に区分管理させ、外部機器接続用のスレーブ側接続ポートに接続された外部機器と前記各領域をそれぞれ、ハブで分けられた複数の単位デバイスとしてホスト側に対して接続及び切断させ、ホスト側から送信され少なくともいずれかの前記単位デバイスの接続を含む専用命令を、検出及び実行させることを特徴とする。
【００３３】
請求項８の発明は、請求項７記載の制御回路において、前記領域の一つは、擬似的ＣＤ−ＲＯＭ形式互換領域であり、前記不揮発性メモリ上に構成された擬似的ＣＤ−ＲＯＭ形式互換領域に対して前記ホスト側からＣＤ−ＲＯＭ形式のアクセスがあった場合、そのアクセスと前記不揮発性メモリ形式のアクセスとの間で変換を行うことを特徴とする。
【００３４】
これらの態様では、メモリを区分した複数の領域と外部機器を、所望の組合せとタイミングでホスト側に接続・切断できるので、セキュリティドライブにも、外部周辺機器用のデバイスドライバインストールにもどちらにも使える汎用性の高い制御回路が実現される。
【００３５】
請求項９の発明は、請求項７又は８記載の制御回路において、前記不揮発性メモリ上に前記区分管理により前記各領域とは異なる不可視領域を設け、この不可視領域上の情報については前記専用命令によるアクセスのみを認めることを特徴とする。
【００３６】
請求項２０の発明は、請求項９の発明をコンピュータのプログラムという見方から捉えたもので、請求項１９記載の制御回路のファームウェアプログラムにおいて、前記プログラムは前記制御回路に、前記不揮発性メモリ上に前記区分管理により前記各領域とは異なる不可視領域を設けさせ、この不可視領域上の情報については前記専用命令によるアクセスのみを認めさせることを特徴とする。
【００３７】
これらの態様では、ＩＤ、パスワード、ライセンスキー、区分管理のシステム情報など特に重要な情報をクラッキングや障害等の脅威から有効に保護できる。
【００３８】
請求項２１の発明は、ＵＳＢクライアントとして、ホスト側からのＵＳＢ経由のアクセスを、書換え可能な不揮発性メモリに仲介する制御回路のファームウェアプログラムにおいて、そのプログラムは前記制御回路に、前記メモリを複数の領域と、これら領域とは異なり所定のパスワードが格納された不可視領域と、に区分管理させ、ホスト側に接続されると一の前記領域を、ハブに接続された一のデバイスとしてホスト側に接続させ、ホスト側から所定の専用命令が送信されてきたか、又はホスト側から送信されてきたパスワードが前記不可視領域に格納された前記所定のパスワードと一致すると、他の前記領域を、前記ハブに接続された他のデバイスとしてホスト側に接続させることを特徴とする。
【００３９】
請求項１０の発明は、請求項７から９のいずれかに記載の制御回路において、前記命令解釈手段は、前記専用命令を、前記メモリ中に設けられた所定のレジスタ領域に命令の種類及びパラメータに応じたビットパターンがストアされたときに検出し、その命令の実行結果を、所定のレジスタ領域にビットパターンとしてセットすることを特徴とする。
【００４０】
請求項２２の発明は、請求項１０の発明をコンピュータのプログラムという見方から捉えたもので、請求項１９から２１のいずれか記載の制御回路のファームウェアプログラムにおいて、前記プログラムは前記制御回路に、前記専用命令を、前記メモリ中に設けられた所定のレジスタ領域に命令の種類及びパラメータに応じたビットパターンがストアされたときに検出させ、その命令の実行結果を、所定のレジスタ領域にビットパターンとしてセットさせることを特徴とする。
【００４１】
請求項１１の発明は、請求項７から１０のいずれかに記載の制御回路において、前記命令解釈手段は、前記専用命令について、前記ハブ、いずれかの前記単位デバイス、いずれかの前記単位デバイス中の所定の物理アドレス、所定のファイル名又は所定の内容に係るアクセスから、命令の種類及びそのパラメータに応じたパターンを検出することを特徴とする。
【００４２】
請求項２３の発明は、請求項１１の発明をコンピュータのプログラムという見方から捉えたもので、請求項１９から２２のいずれかに記載の制御回路のファームウェアプログラムにおいて、前記プログラムは前記制御回路に、前記専用命令について、前記ハブ、いずれかの前記単位デバイス、いずれかの前記単位デバイス中の所定の物理アドレス、所定のファイル名又は所定の内容に係るアクセスから、命令の種類及びそのパラメータに応じたパターンを検出させることを特徴とする。
【００４３】
請求項１２の発明は、請求項７から１１のいずれかに記載の制御回路において、前記専用命令の種類に応じ、次の少なくともいずれかを行うことを特徴とする。
（１）各単位デバイスの接続、切断及び状態取得
（２）不可視領域内の情報の読み書き
（３）個体固有識別情報の読み取り
（４）各領域の容量変更
（５）擬似的ＣＤ−ＲＯＭ形式互換領域の書換え更新
【００４４】
これらの態様では、ホスト側から制御回路へ、一般的な読み書き等のアクセスにより専用命令を伝達できるので、特段のデバイスドライバ無しで多くのＯＳで利用可能となる。
【００４５】
請求項１３の発明は、請求項８から１２のいずれかに記載の制御回路において、前記擬似的ＣＤ−ＲＯＭ形式互換領域のホスト側への接続をオン／オフするスイッチポートを備えたことを特徴とする。
【００４６】
これにより、ＣＤ−ＲＯＭ領域をスイッチで切離しオフのままにできるので、外部接続機器のデバイスドライバ等のプログラムインストール後、システム構成単純化と応答速度改善が可能となる。
【００４７】
請求項１４の発明は、請求項８から１３のいずれかに記載の制御回路において、ホスト側に接続後一定時間内にホスト側から、前記スレーブ側接続ポートに接続された外部機器の初期化のための命令が送られてこない場合に、前記ＣＤ−ＲＯＭ形式互換領域をホスト側に接続することを特徴とする。
【００４８】
これにより、下流側周辺機器のデバイスドライバがパソコンにインストール済みか否かを、初期化命令の有無に基いて容易に判別でき、インストール後にスイッチを切り替える等の煩雑な手順が不要となる。
【００４９】
請求項１５の発明は、請求項６から１４のいずれかに記載の制御回路において、前記不揮発性メモリ上の所定の領域について、記録するデータは暗号化し、読み出したデータは復号化することを特徴とする。
【００５０】
請求項２４の発明は、請求項１５の発明をコンピュータのプログラムという見方から捉えたもので、請求項１９から２３のいずれかに記載の制御回路のファームウェアプログラムにおいて、前記プログラムは前記制御回路に、前記不揮発性メモリ上の所定の領域について、記録するデータは暗号化させ、読み出したデータは復号化させることを特徴とする。
【００５１】
これらの態様では、認証などのうえ後から接続認識させる部分の保存データが、秘密鍵方式や公開鍵方式等の暗号により保護されるので、セキュリティがより強化される。
【００５２】
請求項１６の着脱式デバイスは、請求項７から１５のいずれかに記載の制御回路と、前記スレーブ側接続ポートに接続された周辺機器を直ちにホスト側へ接続するか否かのスイッチと、を備えたことを特徴とする。
【００５３】
この態様では、外部周辺機器の初回接続時は、デバイスドライバ等の専用プログラムのインストール完了を待って、外部周辺機器をホスト側に接続し、次回以降はスイッチ切替えにより周辺機器を直ちにホスト側へ接続することが可能となり、システム構成単純化と応答速度改善が可能となる。なお、このスイッチが、擬似的ＣＤ−ＲＯＭ形式互換領域のホスト側への接続をオン／オフするスイッチを兼ねれば、操作が一層容易になる。
【００５４】
請求項１７の発明は、請求項１から６又は１６のいずれかに記載の着脱式デバイスにおいて、携帯型電話端末を有線又は無線で接続する手段と、ホスト側となるコンピュータの備えるＩＰ接続を経て電話網に接続する手段とを備えたことを特徴とする。
【００５５】
これにより、携帯電話の送話及び受話機能と、パソコン及びインターネット等のＩＰネットワークを通じて、いつでもどこからでも経済的で使い勝手やセキュリティに優れたＩＰ電話の利用が容易になる。
【００５６】
請求項２５の発明は、着脱式デバイスの制御回路における情報処理方法において、請求項１から６、１６、１７のいずれかに記載の着脱式デバイス、請求項７から１５のいずれかに記載の制御回路、請求項１８から２４のいずれかに記載の制御回路のファームウェアプログラム、のうちいずれかを実現することを特徴とする。
【００５７】
請求項２６の着脱式デバイスの制御回路における回路設計パターンは、請求項１から６、１６、１７のいずれかに記載の着脱式デバイス、請求項７から１５のいずれかに記載の制御回路、請求項１８から２４のいずれかに記載の制御回路のファームウェアプログラム、のうちいずれかを実現することを特徴とする。
【００５８】
【発明の実施の形態】
次に、本発明の複数の実施の形態（以下それぞれ「実施形態」と呼ぶ）について図面を参照して具体的に説明する。なお、各実施形態は、専用ＬＳＩ上のワイヤードロジックやプログラム等により実現できるが、この場合のハードウェアやプログラムの実現態様は各種変更可能であるから、以下の説明では、本発明及び各実施形態の各機能を実現する仮想的回路ブロックを用いる。
【００５９】
〔０．第１実施形態の概略〕
第１実施形態は、メール等の個人データを格納するＵＳＢメモリ型デバイスにおいて、接続したパソコンにおいて、デバイス所有者だけが格納したデータを容易に利用できるものである。
【００６０】
これを実現するため、第１実施形態におけるデバイスは、アプリケーション等の専用プログラムを格納するＣＤ−ＲＯＭ互換領域と、この領域からプログラムを自動起動するいわゆるオートラン機能を有する。また、データを格納するＨＤＤ互換領域を持つ。前記専用プログラムからの所定の命令にしたがい前記各領域の接続／切断を切り替えでき、また、専用プログラムのみから利用可能な命令伝達手段及び記憶領域を持つ。
【００６１】
〔１．第１実施形態の構成〕
まず、図１は、第１実施形態の概略構成を示す機能ブロック図である。すなわち、第１実施形態は、コンピュータ１に着脱して用いる着脱式複合デバイス（以下「複合デバイス」と呼ぶ）２であり、コンピュータ１は、汎用周辺機器インタフェースとしてＵＳＢを備える。すなわち、コンピュータ１は、ＵＳＢポート１０と、ＵＳＢホストコントローラと、ＵＳＢのための必要なデバイスドライバを備え、コンピュータ１を以下、ＵＳＢに関して「ホスト側」や「コンピュータ側」のようにも呼ぶ。
【００６２】
また、複合デバイス２は、コンピュータのＵＳＢポート１０に着脱するもので、この例では、主な記憶装置として読み書き可能なフラッシュメモリ４を備えるが、主な記憶装置として小型ハードディスクドライブやＲＯＭを用いてもよい。また、複合デバイス２は、制御手段として、ＵＳＢデバイス側制御部３を備える。
【００６３】
ＵＳＢデバイス側制御部３では、ＡＳＩＣやＦＰＧＡなどカスタムチップのワイヤードロジックにより、又は、ＣＰＵと組込みプログラム若しくはマイクロプログラムなどの組合せにより、図１に示す以下のように作用する各構成要素が実現され、また、コンピュータ１では、ＯＳ等のプログラムの作用により図１に示す以下のように作用する各構成要素が実現される。
【００６４】
〔２．第１実施形態の作用〕
すなわち、第１実施形態は以下のような作用及び効果を有する。
〔２−１．ハブ分け〕
ＵＳＢデバイス側制御部３のハブ分け部３１は、単一の複合デバイス２において、コンピュータ１側とのデータ授受を、複数のデバイス（それぞれ「単位デバイス」と呼ぶ）に割り振る作用（以下「ハブ分け」と呼ぶ）を果たすことで、複数の機能を容易に実現するハブ手段である。ハブ分けの具体的態様としては、
（１）ＵＳＢ汎用ハブを小型化してデバイス内部に設ける。
（２）単一のデバイスのＵＳＢコントローラに、複数のデバイスコンポーネントを管理させる。
（３）ＡＳＩＣ等のカスタムチップや、汎用ＣＰＵと組込みプログラムなど、ＬＳＩにより、ハブや各単位デバイスの各ＵＳＢコントローラをエミュレートする。
【００６５】
や適宜これらを組み合わせるなどが考えられるが、ここではＵＳＢコントローラのエミュレータであるものとする。
【００６６】
このようなハブ分けにより、フラッシュメモリ４の記憶領域には、ＣＤ−ＲＯＭ領域Ｒ３と、読み書き可能領域Ｒ４及びＲ５が設定される。そして、ＣＤ−ＲＯＭ領域Ｒ３上に設定されるＣＤ−ＲＯＭドライブ（ドライブレター「Ｈ」。第１の単位デバイスとする）や、読み書き可能領域Ｒ４上に設定されるリムーバブルディスクドライブ（ドライブレター「Ｄ」。第２の単位デバイスとする）が各単位デバイスとなっているが、それら領域自体を単位デバイスとしてもよい。
【００６７】
また、読み書き可能領域Ｒ５上には、ハブ分け部３１の作用により３つのリムーバブルディスクドライブ（ドライブレター「Ｅ」「Ｆ」「Ｇ」）が設定され、これら３つのリムーバブルディスクドライブ「Ｅ」「Ｆ」「Ｇ」も一つの単位デバイスを構成している。なお、リムーバブルディスクドライブ「Ｅ」「Ｆ」「Ｇ」を個別に単位デバイスとしてもよい。
【００６８】
さらに、フラッシュメモリ４の記憶領域には、ホスト側からアクセス可能な上記のようなＵＳＢ上の単位デバイスとは別に、ＵＳＢデバイス側制御部３のアクセス部３４からのみ直接管理及び読み書き可能な管理領域Ｒ１及び制限領域Ｒ２が設定される。
【００６９】
ここで、領域Ｒ１やＲ２については、ＯＳからの通常の認識や書き込み・削除等のアクセスは禁じ、例えば管理領域Ｒ１には領域管理用の情報などを置く。また、制限領域Ｒ２については、後述する自動起動プログラムＰのみにＵＳＢデバイス側制御部３を通じた書き込み、削除等のアクセスを許し、メーラー等のアプリケーションソフトウェアなどを置く。これによりそれらソフトウェアについて、誤消去や違法コピーから保護する。
【００７０】
なお、デバイス上で保護すべき情報は、制限領域Ｒ２に代えて、例えばホスト側からＵＳＢ上の単位デバイスとして閲覧可能であるが書込禁止の領域を設定し、そのような領域に置いてもよい。
【００７１】
読み書き可能領域Ｒ４は、通常のリムーバブルディスクとして自由にアクセス可能で、メーラーの用いる電子メールのデータ、住所録、ワードプロセッサの文書やプレゼンテーション資料などを置く。
【００７２】
なお、各領域にアクセスするために、パスワードを設定することができ、パスワードを認証するための照合用情報は領域Ｒ１やＲ２のようにＯＳ側からアクセスできない領域に置く。
【００７３】
以上のようにハブ分け部３１により、相互に扱いの異なる複数の領域を単位デバイスとして設定すれば、擬似認識によりＣＤ−ＲＯＭとして扱われる単位デバイスを含む着脱式デバイスにデータを保存したい場合、実際のＣＤ−ＲＯＭの特殊なファイルシステムを考慮する必要は無く、リムーバブルディスクやＨＤＤなどデータの変換が不要な種類の他の単位デバイスにデータを容易に保存することができる。
【００７４】
〔２−２．擬似認識〕
ところで、ＯＳによっては（例えばマイクロソフト（登録商標）社のウインドウズ（登録商標）シリーズ）、所定の種類のデバイス（例えばＣＤ−ＲＯＭドライブ）にメディアが挿入されたことを契機として、そのメディア上の所定のスクリプトファイル（例えば「Ａｕｔｏｒｕｎ．ｉｎｆ」）を実行する。コンピュータ１は、そのようなＯＳを備えるコンピュータであるものとする。
【００７５】
また、ＵＳＢでは、ホスト側は、ＵＳＢに装着されたかもしれないデバイスに対し、機器の種類の問い合わせ信号を繰返し周期的にＵＳＢ回線上に流しており、新たにＵＳＢに装着された機器は、この問い合わせ信号に対して自分が該当する機器の種類を回答することにより、ホスト側に自らの接続を認識させる。したがって、コンピュータ１は、所定の種類の機器が接続されると、その機器に記憶された自動起動スクリプトをスクリプト実行部１１が実行するものである。
【００７６】
そこで、ＵＳＢデバイス側制御部３の認識制御部３２は、ＵＳＢに接続された際に、ホスト側からの機器の種類の問い合わせ信号に対し、ＣＤ−ＲＯＭである旨の信号を擬似的に返信する。この擬似的返信は、複数の単位デバイスのうちＣＤ−ＲＯＭ領域Ｒ３のみについて行う。また、ＣＤ−ＲＯＭ領域Ｒ３のＣＤ−ＲＯＭドライブＨには、前記自動起動スクリプトＳにより起動される自動起動プログラムＰを格納しておく。
【００７７】
すなわち、着脱式デバイス２すなわちＵＳＢメモリは本来はスクリプト実行の対象とはならない種類のデバイスであるが、ホスト側からの問い合わせに対し、認識制御部３２が、ＣＤ−ＲＯＭドライブなど自動起動スクリプト実行の対象機器である旨の信号、すなわちデバイスディスクリプタを擬似的に返信する。
【００７８】
このため、装着検出用の常駐プログラムをコンピュータ側に予めインストールしておかなくても、デバイス装着時に、スクリプトに記述されたプログラム実行など所望の処理が自動実行される。これにより、デバイスの専用ソフトウェアなどを手動でインストールするまでもなく、デバイスの様々な機能や使い方を実現できる。また、ユーザが管理者権限を持たないためソフトウェアをインストールできないコンピュータ上でも、着脱式デバイスからの所望のプログラムの自動起動が容易に実現される。
【００７９】
なお、自明のことであるが、実際は前記主な記憶装置（フラッシュメモリ４）上に構成された前記第１の単位デバイス（ＣＤ−ＲＯＭドライブ）に対して前記コンピュータ１から前記所定の種類の機器（ＣＤ−ＲＯＭドライブ）における形式のアクセスがあった場合、前記制御手段（ＵＳＢデバイス側制御部３）は、そのアクセスと前記主な記憶装置（フラッシュメモリ４）における形式のアクセスとの間で変換を行う。
【００８０】
〔２−３．メディア挿入〕
また、上記のようなＯＳには、メディアの装着の有無を繰り返しデバイスに問い合わせて回答させ、ある時点で存在しなかったものが、その後、存在する状態に変化すると、メディアが挿入されたと認識するものもある。
【００８１】
そして、上に説明したように、コンピュータによるスクリプト実行の対象である所定の機器（例えばＣＤ−ＲＯＭ）と認識制御部３２に回答させた場合、実際の機器と異なってメディアの挿入は行われないが、メディアの有無の問い合わせに対しては、挿入模擬部３３が、挿入と同じパターンの信号を擬似的に返信することで、メディア挿入がスクリプト実行の条件となっている場合もスクリプトが円滑確実に実行される。
【００８２】
すなわち、挿入模擬部３３は、ＵＳＢホストコントローラからＵＳＢ経由で繰り返されるメディアの有無の問い合わせ信号に対し、少なくとも一度はメディアが無い旨の信号を返信し、その後、例えば２度目の問い合わせに対しては、メディアが有る旨の信号を返信する。
【００８３】
すると、コンピュータ１上のＯＳはメディアが挿入されたと認識し、コンピュータ１のスクリプト実行部１１が、その機器に記憶された自動起動スクリプトＳを実行する。ここでスクリプト実行の対象となる「所定の種類」の機器は、仮に「ＣＤ−ＲＯＭ」であるものとするが、対象を他の種類の機器に変更したり拡大することも自由である。また、プログラム実行部１２は、例えば拡張子「．ｅｘｅ」等の実行ファイルを実行する手段であり、前記スクリプトに実行ファイルのディレクトリ、名称、パラメータ等が記述されていれば、それにしたがってその実行ファイルを実行する。
【００８４】
なお、第１実施形態では、自動起動スクリプトＳ中に自動起動プログラムＰの実行を指定しておく。なお、自動起動プログラムＰのアプリ起動機能Ｐ１からさらにメーラー等のアプリケーションや、用途によっては他の周辺機器のデバイスドライバインストーラなど、他のプログラムを派生的に呼び出すことも当然可能であり、そのような派生的に呼び出されるプログラムも以下、自動起動プログラムＰと呼ぶ。
【００８５】
〔２−４．認識の時間差によるセキュリティドライブ〕
また、タイミング制御部３５は、各単位デバイスを、予め決められた先後のタイミングでコンピュータ１に認識させる制御を、認識制御部３２に対して行う部分である。すなわち、認識制御部３２及びタイミング制御部３５は、ＵＳＢに接続された際に、まず先に第１の単位デバイスについてＣＤ−ＲＯＭを模した信号をコンピュータ１に送り、その後所定のタイミングで、前記第２の単位デバイスについて認識を受けるための所定の信号をコンピュータ１に送る手段を構成している。
【００８６】
したがって、この場合、タイミング制御部３５は、複合デバイス２がコンピュータ１に挿入された直後には、第１のデバイスのみが接続された旨の情報をホスト側に送り、その所定時間の経過後又はホスト側との所定のやりとりが終わったことを契機に、第２の単位デバイスが接続された旨の情報をホスト側に送る。
【００８７】
このことにより、設定した時間の分だけ、あるいは所定のやりとりの完了まで、第２の単位デバイスの認識を遅延させ、時間差を確保することができる。なお、第２の単位デバイスを認識させるタイミングについては、上記のように複合デバイス側のみでタイミングや条件を判断する代りに、ホスト側で実行する所定のプログラムからの所定の指示を待って認識させるようにしてもよく、こうすればホスト側のプログラムが第２の単位デバイスを認識させるタイミングを管理できるので、所望の処理の完了が確認可能となる。例えば、プログラムからのパスワード認証終了や、デバイスドライバインストール完了通知を待って第２の単位デバイスを認識させる。
【００８８】
また、タイミング制御部３５の機能は、ＵＳＢデバイス側制御部３に代えて、個々の単位デバイスごとにＵＳＢコントローラを設け、そのＵＳＢコントローラに持たせてもよい。
【００８９】
そして、上記のような時間差の一つの用途は、必要なデバイスドライバのインストール時間の確保である。また、上記のような時間差の他の用途として、一部のデバイスの内容を容易に参照できないようにして、データのセキュリティを改善することである。すなわち、タイミング制御部３５は、第１の単位デバイスをコンピュータ１に認識させた後、自動起動プログラムＰからの指示によって第２の単位デバイスを前記コンピュータ１に認識させるように構成し、自動起動プログラムＰには、パスワード等によりユーザを認証する機能を持たせれば、第２の単位デバイスはセキュリティに優れたセキュリティドライブとすることができる。
【００９０】
このように認識されたセキュリティドライブは、ＯＳの備えるタスクトレイ等の操作により、手動で認識解除（「デバイスの取り外し」）することもできるが、自動起動プログラムや自動起動プログラムからさらに派生的に起動される他のプログラムの機能として認識解除できるようにすれば使い勝手が一層改善される。
【００９１】
すなわち、上記のようなセキュリティドライブについては、自動起動プログラムＰとＵＳＢデバイス側制御部３との協働作用により、次のように処理される。まず、自動起動プログラムＰは、パスワードによりユーザを認証するとＵＳＢデバイス側制御部３に、第２の単位デバイスである読み書き可能領域Ｒ４をコンピュータ１に認識させる指示を与え、認証の際に誤ったパスワードが所定回数入力されるとＵＳＢデバイス側制御部３に、読み書き可能領域Ｒ４上のデータのフォーマット指示を与える。他に、自動起動プログラムＰは、周期的に所定の認識延長信号をＵＳＢデバイス側制御部３に送信する。
【００９２】
一方、ＵＳＢデバイス側制御部３では、フォーマット部３６が、自動起動プログラムＰからのフォーマット指示を実行し、認識解除部３７が、自動起動プログラムＰからの前記認識延長信号が所定時間以上途切れると読み書き可能領域Ｒ４に関するコンピュータ１の認識を、コンピュータ１への信号の送信状態を変更することにより解除させる。以下、より具体的に説明する。
【００９３】
〔２−５．パスワード間違いによるデータ削除〕
すなわち、まず、第１実施形態では、デバイスを紛失した場合、データを他人に見られたり悪用されないように、パスワードを所定回数間違ったときに、データをフォーマットするか、又は、パスワードを認証するプログラムを終了させ、パスワード解析を困難にする。
【００９４】
すなわち、自動起動プログラムＰの認証機能Ｐ２は、パスワードを認証するとともに、誤ったパスワードが所定回数入力されると、ＵＳＢデバイス側制御部３のフォーマット部３６に指示を送ることにより、着脱式デバイス２上の所定の領域全体やその上のデータをフォーマットする。なお、パスワードを所定回数間違ったときの処理は、単に自動起動プログラムＰの終了や消去としてもよい。
【００９５】
このようにすれば、複合デバイス２の紛失、置き忘れ、盗難などの際も、パスワードを所定回数間違うとデータフォーマット等により、データが不正参照から保護される。
【００９６】
さらに、そのようにプログラムを終了させるまでの間違いの許容回数もランダムにすれば、パスワード解析はより困難にできる。また、パスワード認証に、０．１〜０．５秒などある程度の時間をかけるようにすれば、ユーザが普通に使う場合は苦にならないが、単語辞書などを用いた総当り式の入力等によるパスワード解析も困難となる。
【００９７】
なお、自動起動プログラムＰには、管理領域Ｒ１にある情報を書き換える機能を持たせ、各領域のサイズや書込み禁止等の属性を変更したり、新たな領域を作成したりすることができるようにしてもよい。なお、領域を変更する場合、データの移動が必要となる場合があるが、例えば、２つの領域の境界を移動してそれぞれのサイズを変更する場合、自動起動プログラムＰは、変更前の各領域にあったデータのバックアップを、一時的に複合デバイス２上又はコンピュータ１上のメモリやＨＤＤの空き領域に取り、領域Ｒ１の領域情報を書き換え、変更後の各領域にバックアップしてあったデータを戻す。
【００９８】
〔２−６．認識の解除〕
また、認識解除部３７は、自動起動プログラムＰから周期的に送信される所定の認識延長信号を受信し、その信号が途切れると所定の単位デバイスに関する前記コンピュータの認識を解除する。
【００９９】
すなわち、前記セキュリティドライブのように、内容の秘密保持が必要な単位デバイスを利用するプログラム、例えば自動起動プログラムＰが何らかの理由で終了した場合、その単位デバイスについては認識を解除し、複合デバイス２がパソコンから抜かれるまでの間、パソコンからの複合デバイス２へのアクセスを禁止することによりセキュリティを高める。
【０１００】
具体的には、認識解除部３７は、自動起動プログラムＰから送信される前記認識延長信号を受けるたびに、それから所定制限時間の間だけセキュリティドライブとする単位デバイスをホスト側に認識させ、自動起動プログラムＰは、この制限時間より短い周期ごとに前記認識延長信号を認識解除部３７に送信し続ける。
【０１０１】
〔３．第１実施形態の効果〕
以上のように、第１実施形態では、ある第１の単位デバイスについて、プログラム等の自動起動の対象となる所定の種類の機器（例えばＣＤ−ＲＯＭドライブ）を模した信号をコンピュータに送ることで、ＵＳＢメモリなどを用いた周辺機器でありながら所望のプログラム等を実行開始させ、その後所定のタイミングで、別の第２の単位デバイスについて認識させる。このため、第２の単位デバイスについて、アクセスを前記プログラム等のみからに限定して秘密を保つことができる。このように、プログラム等の自動起動と認識の時間差により、使い勝手とセキュリティに優れた着脱式デバイスを提供することができる。
【０１０２】
特に、第１実施形態では、第２の単位デバイスについては自動起動プログラムの作用により、パスワード認証を条件に認識され、パスワードを何度も間違えればフォーマットされ、プログラムが終了すれば認識が解除されるので、自動起動プログラム以外からの参照は困難であり、優れたセキュリティが維持される。
【０１０３】
また、上記のようなプログラム等の自動起動と認識の時間差により、デジタルカメラなど他の周辺機器を第２の単位デバイスとし、そのためのデバイスドライバのインストーラを前記プログラム等として事前に予め実行しておくこともでき、フラッシュメモリを用いた小型化も可能となるので、コンパクトでかつ自動的にプログラムをインストールする着脱式デバイスを提供できる。
【０１０４】
〔４．第２実施形態〕
上記のような第１実施形態では、ハブ分けにより複数のデバイスを扱い、デバイスごとに時間差をもってコンピュータ１に認識させたが、それを一部変更して次のような第２実施形態を実現することができる。ここで、図２は、第２実施形態の構成を簡略化して示したものである。
【０１０５】
すなわち、第２実施形態は、ＣＤ−ＲＯＭが接続されると、その機器に記憶された自動起動スクリプトを実行するコンピュータ１のＵＳＢポート１０に着脱するためのオスコネクタ１５と、制御手段である制御部３０と、主な記憶装置としてフラッシュメモリ４０と、を備えた着脱式デバイス２０であって、他の周辺機器（ここではデジタルカメラ５）を接続するためのＵＳＢポート２５（メスコネクタ）を備える。
【０１０６】
また、制御部３０は、フラッシュメモリ４０の全部又は一部を第１の単位デバイス、前記他の周辺機器を第２の単位デバイスとして、コンピュータ側とのデータ授受を、これら各単位デバイスに割り振る機能（ハブ分け機能）と、ＵＳＢポートに接続された際に、まず先に前記第１の単位デバイスについてＣＤ−ＲＯＭを模した信号をコンピュータ１に送り、その後所定のタイミングで、デジタルカメラ５について認識を受けるための所定の信号を前記コンピュータに送る機能（認識制御機能）と、を備える。
【０１０７】
すなわち、２つの単位デバイスがハブ分けされ、第１の単位デバイスはＯＳが標準で予め備える標準ドライバで動作するが、他方の第２の単位デバイスは専用のデバイスドライバ等の専用プログラムＤをインストールしなければならず、第２の単位デバイスのための専用プログラムＤが第１の単位デバイスに存在する場合、第１の単位デバイスの認識  →  専用プログラムのインストール  →  第２の単位デバイスの認識、という順序で認識させないと、正常に動作しない。
【０１０８】
そこで、第２実施形態の着脱式デバイスに他の周辺機器を、単位デバイスの一つとして接続する。具体的には、図２に示すように、着脱式デバイス２０にオスとメスのコネクタを両方設けてパソコン１に着脱式デバイス２０を介してデジタルカメラ５を接続するか、又はその代りにデジタルカメラ５と着脱式デバイス２０を図２に破線で示すように一体化する。この場合、着脱式デバイス２０はデジタルカメラ本体ケース内に設けるモジュール基板として製造され、コネクタなどによりデジタルカメラ本体基板と接続される。
【０１０９】
また、ここでいう他のデバイスの種類は、デジタルカメラには限定されず、各デバイスメーカから販売されるＵＳＢ接続のプリンタ、スキャナ、リムーバブルディスク等の各種ドライブ、各種カードリーダーライタ、携帯型端末などの通信装置など自由である。
【０１１０】
これらデバイスの多くは、ＯＳ標準装備のドライバでは動作せず、従来は別途ＣＤ−ＲＯＭなどのメディアからデバイスドライバなどの専用プログラムをインストールする必要があったが、第２実施形態では、そのようなデバイスドライバのインストールを自動で行うので、ユーザがそのようなメディアを用意したりインストールのための操作を行う手間を省くことができる。
【０１１１】
つまり、従来では通常、デバイスを初めて使用する場合、付属するＣＤ−ＲＯＭなどを利用してパソコンにドライバをインストールしなければならなかったが、そのようなドライバを、ハブ分けされた各単位デバイスのうち、ＯＳ標準装備のドライバで動作するデバイス内にあらかじめ保存しておき、ドライバのインストール作業を第１実施形態で述べた自動起動を利用して、或はユーザが手動にて完了し、その後他の周辺機器を認識させることで、ユーザにとって煩わしいドライバのインストール作業を省くことができる。
【０１１２】
また、自動起動プログラムとして、ＥＸＥ形式の実行ファイルであるデバイスドライバのインストールプログラムＰを実行後、そのドライバを用いる他の周辺機器の認識をスタートできる。
【０１１３】
以上のように、第２実施形態では、まず先に第１の単位デバイスについて、プログラム等の自動起動の対象となる所定の種類の機器（例えばＣＤ−ＲＯＭドライブ）を模した信号をコンピュータに送る。このため、ＵＳＢメモリなどを用いた周辺機器でありながら所望のプログラム等を自動実行でき、別の第２の単位デバイスの認識はその後所定のタイミングで行われる。したがって、第２の単位デバイスをデジタルカメラなど他の周辺機器とし、着脱式デバイス２０にはオスとメスのコネクタを両方設けてパソコンに着脱式デバイス２０を介して他の周辺機器を接続したり、又は組み込み基板等の部材として他の周辺機器と一体化することにより、他の周辺機器のためのデバイスドライバなど専用プログラムのインストーラ実行が容易になる。このため、専用プログラムについて、本物のＣＤ−ＲＯＭ等の嵩張る記録媒体や煩雑な手間が不要となる。
【０１１４】
２度目以降の接続時については、着脱式デバイス２０と他の周辺機器が一体であれば切替えスイッチにより内部回路を制御することで着脱式デバイス２０を素通りさせパソコンと他の周辺機器を直結状態とするか、又は接続ごとにプログラム等でパソコン上の専用プログラムを確認しインストール済みであればすぐ第２の単位デバイスの認識に進ませる。着脱式デバイス２０が他の周辺機器と別体であれば着脱式デバイス２０を挟まずパソコンと他の周辺機器を直結すればよい。
【０１１５】
〔５．他の実施形態〕
上記各実施形態では、コンピュータは自動起動スクリプトを実行し、その中に指定があれば自動起動プログラムを実行する前提で例を示したが、コンピュータがスクリプトを経ずに何らかのプログラムを直接実行する場合も、当然本発明を適用可能である。
【０１１６】
また、デバイスのメーカが、個々の自社製品についてデバイスドライバやデバイスの専用ソフト等を、ＣＤ−ＲＯＭやインターネットで提供する代りに、各種自社製品のデバイスドライバやデバイスの専用ソフト等の全部又は一部を、ＵＳＢデバイスに記録して提供すれば、そのメーカのデバイスは全て容易に利用可能となり、顧客の囲い込みツールとなる。
【０１１７】
また、インストーラ等のプログラムはユーザに手動で起動させる態様も考えられる。すなわち、この態様は、コンピュータの汎用周辺機器インタフェースに着脱され、制御手段と、主な記憶装置としてＲＯＭ又は読み書き可能な記憶装置と、を備えた着脱式デバイスであって、他の周辺機器を接続するための手段を備え、前記制御手段は、前記主な記憶装置の全部又は一部を第１の単位デバイス、前記他の周辺機器を第２の単位デバイスとして、コンピュータ側とのデータ授受を、これら各単位デバイスに割り振るハブ手段と、前記汎用周辺機器インタフェースに接続された際に、まず先に前記第１の単位デバイスについて認識を受けるための所定の信号を前記コンピュータに送り、前記認識された第１の単位デバイスから読み出され実行されたプログラムが所定の合図信号を送ってくると、前記第２の単位デバイスについて認識を受けるための所定の信号を前記コンピュータに送る手段と、を備えたことを特徴とする。
【０１１８】
この態様では、先に認識させる第１の単位デバイスに予め格納されたインストールプログラムが、ユーザにより手動で起動され、インストールが済むと合図信号を送ってくるので、第２の単位デバイスの認識が行われる。これにより、プログラムの自動起動を用いなくても、コンパクトな着脱式デバイスによりデバイスドライバ等の専用プログラムをユーザに容易に提供可能となる。
【０１１９】
〔６．第３実施形態〕
上記第１及び第２実施形態における着脱式デバイス２及び２０では、制御部３，３０が重要な役割を果たすが、第３実施形態は、着脱式デバイス２及び２０の機能を兼ね備えた着脱式デバイス（以下「本デバイスと呼ぶ」）２００を例にとり、その制御部の具体的実現態様を補足するものである。なお、第１〜第３実施形態に示す各特徴を適宜組み合わせることにより、より優れた使い勝手やセキュリティ等の効果が得られる。
【０１２０】
〔６−１．ハードウェア構成〕
まず、本デバイス２００のハードウェアの一構成例を図３に示す。すなわち、ＲＩＳＣマイコンなどのＵＳＢマイコン３００が、そのファームウェア３１０にしたがって制御部の役割とハブの機能を提供し、第１及び第２実施形態でいえば制御部３，３０の役割を果たす。また、本デバイス２００は、主な記憶装置として３２ＭＢ，６４ＭＢ，１２８ＭＢ，２５６ＭＢといった所定容量のフラッシュメモリ４００を備える。フラッシュメモリは、書換え可能な不揮発性メモリの代表であるが、他の種類のメモリ素子でもよく、さらに、不揮発性メモリは本発明における主な記憶装置であるから、メモリ素子には限定されずハードディスクドライブなどの記憶装置も含む概念であり、この点は第１及び第２実施形態でも同様である。
【０１２１】
フラッシュメモリ４００は、ＵＳＢマイコン３００の行う区分管理により、ＣＤ−ＲＯＭ領域４１０と、ＨＤＤ領域４２０と、不可視領域４３０と、を提供する。このフラッシュメモリ４００に関しては、ＵＳＢマイコン３００と同一基板上で実装可能な回路構成及び基板レイアウトとすることが望ましい。
【０１２２】
また、本デバイス２００は、外部接続として少なくとも、ＵＳＢのシリーズＡタイプのオスプラグ１５０を有し、パソコン（ＰＣと表す）やＰＤＡといったホスト側のコネクタすなわちソケットに直接接続される。また、オプションとして、ＵＳＢマイコン３００によって実現される前記ハブに接続されたシリーズＡタイプのメスソケット２５０を実装してもよい。このメスソケット２５０は、ＵＳＢマイコン３００に設けられた外部機器接続用のスレーブ側接続ポートに接続される。
【０１２３】
本デバイス２００のＵＳＢインターフェースは、ＵＳＢ２．０に準拠し、ハブは一般にバスパワーで動作するが、オプションとして、セルフパワー電源の接続を可能としたり、バスパワーとセルフパワーの両用に対応してもよい。これらセルフパワー／バスパワーの切替えをどのように実現するかについては、例えばハブ専用ＬＳＩには通常その機能があるが、実現態様に応じて、ハブ付ＣＰＵに回路やファームウェアを加えるなど自由に決定できる。また、操作等の便宜のため、アクセスＬＥＤ２１０、ライトプロテクトスイッチ２２０を備えてもよい。
【０１２４】
なお、本デバイス２００は、ＣＤ−ＲＯＭ及びＵＳＢストレージのデバイスドライバをＯＳ上に要し、これらを標準で備えたＯＳ上ではそのまま動作し、それ以外のＯＳ上ではこれらデバイスドライバをインストール後に動作する。デバイスドライバが必要な場合でも、デバイスドライバをいわゆるプラグ＆プレイ準拠にすれば煩雑なＯＳの再起動は原則的に回避される。
【０１２５】
上記のような第３実施形態におけるＵＳＢマイコン３００は、ＵＳＢクライアントとして、ホスト側からのＵＳＢ経由のアクセスを、書換え可能な不揮発性メモリに仲介する制御回路であり、次の各手段としての役割を持つ。
（１）外部機器接続用のスレーブ側接続ポートを備え、フラッシュメモリ４００を複数の領域に区分管理することで擬似的ＣＤ−ＲＯＭ形式互換領域であるＣＤ−ＲＯＭ領域４１０と、リムーバブルドライブ形式互換領域であるＨＤＤ領域４２０と、を実現する手段。
（２）前記スレーブ側接続ポートに接続された外部機器と前記各領域をそれぞれ、ハブで分けられた複数の単位デバイスとしてホスト側に対して接続及び切断する擬似ハブ手段。
（３）ホスト側から送信され少なくともいずれかの前記単位デバイスの接続命令を含む専用命令を、検出及び実行する命令解釈手段。
（４）前記不揮発性メモリ上に構成されたＣＤ−ＲＯＭ領域４１０に対して前記ホスト側からＣＤ−ＲＯＭ形式によるアクセスがあった場合、そのアクセスとフラッシュメモリ４００の形式によるアクセスとの間で変換を行う手段。
【０１２６】
このようなＵＳＢマイコン３００により、メモリを区分した複数の領域と外部機器を、所望の組合せとタイミングでホスト側に接続・切断できるので、第１実施形態に示したようなセキュリティドライブにも、第２実施形態に示したような外部周辺機器用のデバイスドライバインストールにも、どちらにも使える汎用性の高い制御回路が実現される。但し、制御回路を実現するＩＣやＬＳＩなどの半導体チップは単一には限定されず、複数でもよい。
【０１２７】
〔６−２．ソフトウェア構成〕
より具体的には、上記のような本デバイス２００では、ソフトウェア上の構成としては、最終的には図４に示すように、ハブＨを介して単位デバイスとして、ＣＤ−ＲＯＭ領域４１０と、ＨＤＤ領域４２０とが接続された形でＰＣに認識される。また、外部周辺機器がメスソケット２５０に接続されているときは、その外部周辺機器もハブＨを介して接続された構成として認識される。
【０１２８】
ハブＨ配下の各単位デバイスについては、ＵＳＢマイコン３００及びファームウェア３１０の作用により、アプリケーションなどのプログラムからの特別なコマンドである専用命令により、また、本デバイス２００に設けられた物理的スイッチにより、ハブＨを介した上流側すなわちアップストリームとなるホスト側ＰＣへの接続及び切断が行われる。なお、下流（スレーブ側）に接続された機器については、接続／切断は、機器バスへの給電をＩＣやトランジスタでオン／オフすることにより行うことができる。
【０１２９】
ＣＤ−ＲＯＭ領域４１０は、第１実施形態におけるＣＤ−ＲＯＭ領域Ｒ３と同等のもので、ホストから標準ＣＤ−ＲＯＭドライブ互換と認識され、格納したプログラムのオートラン（自動起動）を利用するとき必須となる。なお、「ＣＤ−ＲＯＭ」は例示に過ぎず、具体的形式はＣＤ−ＲＯＭ（モデル１，２）、ＣＤ−ＲＷ、ＣＤ−ＤＡ、ＣＤ−ＸＡ、ＣＤ−Ｉなど自由である。
【０１３０】
そして、このＣＤ−ＲＯＭ領域４１０に関し、ＵＳＢマイコン３００は、フラッシュメモリ４００上にディスクイメージを格納して読み出しリクエストに応じるか、又は、ＣＤ−ＲＯＭ形式でホストから送られる読み出しリクエスト信号と、フラッシュメモリ４００上のデータとの間で、その都度変換処理を行う。このようにＣＤ−ＲＯＭに対するホスト側からのアクセスをフラッシュメモリに仲介する変換処理をＣＤ−ＲＯＭ変換と呼ぶこととする。
【０１３１】
次に、ＨＤＤ領域４２０は、ホストからＨＤＤ互換の標準リムーバブルディスクドライブとして認識され、認証後にＰＣへ接続されることで、第１実施形態において第２の単位デバイスである読み書き可能領域Ｒ４と同様に、セキュリティの確保された記憶領域を提供している。
【０１３２】
また、前記不揮発性メモリ（フラッシュメモリ４００）上に前記区分管理により、ＣＤ−ＲＯＭ領域４１０、ＨＤＤ領域４２０とは異なる不可視領域４３０を設け、この不可視領域４３０に格納された情報については前記専用命令によるアクセスのみを認める。これにより、ＩＤ、パスワード、ライセンスキー、区分管理のシステム情報など特に重要な情報をクラッキングや障害等の脅威から有効に保護できる。
【０１３３】
不可視領域４３０は、ホストからドライブ等の形式で直接アクセスできず、前記専用命令を発行できる本デバイス２００対応のプログラムからのみ、アクセスが可能となる。不可視領域に格納する情報の内容は自由であるが、例えば、デバイス個体固有の識別ＩＤその他のＩＤ、パスワード、フラッシュメモリ４００上での各領域の容量や境界アドレスを表すパーティション情報、その他の管理情報４３５などが考えられる。
【０１３４】
本デバイス２００対応のプログラムが利用できる前記専用命令の種類と、それに対応してＵＳＢマイコン３００が実行する処理としては、次のようなものが考えられる。
（１）各単位デバイスの接続／切断及び状態取得
（２）不可視領域内の情報の読み書き
（３）個体固有の識別番号（ＩＤ）の読み取り
（４）各領域の容量変更
（５）ＣＤ−ＲＯＭ領域の書換え更新
【０１３５】
ＣＤ−ＲＯＭ領域４１０のサイズは、ＣＤ−ＲＯＭイメージのサイズに応じて自動的に変化し、残りがＨＤＤ領域４２０となるようにしてもよい。また、例えば、第２実施形態に示したように、外部周辺機器のデバイスドライバインストールが済んだような場合に対応するため、ＣＤ−ＲＯＭ領域４１０のホスト側への接続をオン／オフするＣＤ−ＲＯＭスイッチ２３０（図３）を設けてもよい。このスイッチ２３０はＵＳＢマイコン３００のスイッチポートに接続される。これにより、ＣＤ−ＲＯＭ領域をスイッチで切離しオフのままにできるので、外部接続機器のデバイスドライバ等のプログラムインストール後、システム構成単純化と応答速度改善が可能となる。
【０１３６】
また、外部周辺機器の接続認識に時差すなわち遅延をつけるか否かをオン／オフするスイッチを設けてもよい。これはすなわち、スレーブ側接続ポートに接続された周辺機器を直ちにホスト側へ接続するか否かのスイッチである。
【０１３７】
このようなスイッチを設ければ、外部周辺機器の初回接続時は、デバイスドライバ等の専用プログラムのインストール完了を待って外部周辺機器をホスト側に接続し、次回以降はスイッチ切替えにより周辺機器を直ちにホスト側へ接続することが可能となり、システム構成単純化と応答速度改善が可能となる。なお、このスイッチが、ＣＤ−ＲＯＭ領域４１０のホスト側への接続をオン／オフするスイッチを兼ねれば、操作が一層容易になる。
【０１３８】
また、下流に接続された外部周辺機器のドライバがパソコンにインストール済みか否かについては、接続後一定時間内にパソコンから装置の初期化のための命令が送られてこなければ、未インストールと判断し、ＣＤ−ＲＯＭ領域４１０をホスト側に接続し、インストーラをオートランさせるようにしてもよい。
【０１３９】
〔６−３．セキュリティログイン処理について〕
上記のような本デバイス２００では、所有者のデータを保護しつつ、接続したいかなるＰＣ上でもそのデータを閲覧可能とするため、第１実施形態に詳述したように、下記のセキュリティログイン機能を実装する。
【０１４０】
すなわち、本デバイス２００をパソコンなどのホストに接続すると、まず、ＣＤ−ＲＯＭ領域４１０のみがハブに接続された状態となる。この時点ではまだＨＤＤ領域４２０は切断されたままである。そして、ＣＤ−ＲＯＭ領域４１０上の認証用プログラムが自動起動され、ユーザの入力したパスワードが不可視領域４３０上のパスワードデータおよびＩＤと一致したら、ＨＤＤ領域４２０がハブＨに接続されてドライブとして認識され、ＨＤＤ領域４２０上の所望のデータが所望のプログラムにより閲覧・編集可能となる。
【０１４１】
〔６−４．処理手順の一例〕
次に、本デバイス２００をＰＣに装着した場合の処理手順を図５のフローチャートに示す。すなわち、ＣＤ−ＲＯＭスイッチ２３０がオンであれば（ステップ１０）ＣＤ−ＲＯＭ領域をＰＣに接続認識させ（ステップ１１）、ＣＤ−ＲＯＭ変換によりアクセスへの応答を開始する（ステップ１２）。この応答を利用し、ＰＣ側からはオートランプログラム呼出し処理が行われ（ステップ２０）、オートランプログラムがあれば（ステップ２１）その起動が行われる（ステップ２２）。このオートランプログラムは、典型的にはパスワード等を用いた認証プログラムや、いわゆるランチャー等のメニュープログラムである。
【０１４２】
図３に示したＨＤＤ領域４２０の代りに、無条件にＰＣ側に接続されるリムーバブルディスク領域と、これと同様にリムーバブルディスク互換ではあるが認証までは接続認識されないセキュリティ領域とを設けてもよい。この場合、図５に示すように、本デバイス２００側では、リムーバブルディスク領域をＰＣに接続認識させるので（ステップ１３）、上記のような認証プログラムはリムーバブルディスク領域に置いておいて手動で起動してもよい。続いて、下流側すなわちスレーブ側に接続された機器（以下「下流機器」と呼ぶ）があれば（ステップ１４）それをＰＣに接続認識させる（ステップ１５）。
【０１４３】
上記のような認証プログラムによるパスワード等を用いた認証処理では（ステップ２６）、例えばＰＣ側でユーザの入力したパスワードが、本デバイス２００側に転送されて、不可視領域４３０内の管理情報４３５に含まれるパスワードと照合され、認証結果がＰＣ側へ応答される（ステップ１６）。認証ＯＫであれば（ステップ１７，２７）、本デバイス２００側では上記のセキュリティ領域をＰＣに接続認識させ（ステップ１８）、接続済の各領域についてアクセスを受け付ける（ステップ１９）。ＰＣ側では認証ＯＫであれば（ステップ２７）、メーラー等目的のアプリケーションプログラムが起動され（ステップ２８）、本デバイス２００側で接続済の各領域へ必要に応じてアクセスを行う（ステップ２９）。なお、図３〜５に示した各要素は、用途に応じて適宜省略される。
【０１４４】
〔６−５．ドライブレターについて〕
ＰＣ上では各ドライブは、Ａ，Ｃ，Ｄのようなドライブレターで識別されるが、このようなドライブレターは、ＯＳの種類やハードウェア構成等の環境に応じて変化する。また、本デバイス２００に含まれる複数の単位デバイスのドライブレターは必ずしも連続するとも限らず、アプリケーションからデータの位置が特定できない問題が生じるおそれがある。
【０１４５】
この解決策として、ＰＣのＯＳからドライブレターを取得する機能を自動起動プログラムなどのアプリケーションに組み込み、このように取得した情報により、アプリケーションの設定ファイル中でアクセス先を示すドライブ情報を更新する。これにより、ＯＳ等の環境に関わらず、アプリケーションなどのプログラムが着脱式デバイス内のデータの位置を特定でき、そのようなデータへの円滑なアクセスが可能となる。
【０１４６】
〔６−６．不可視領域へのアクセス方法〕
専用プログラムなどのホスト側から、通常の読み書きとは別に、ＵＳＢマイコン３００のファームウェア３１０に対し、前記専用命令のような特別なアクセス信号を伝達する手段は自由であるが、次のようなものを例示できる。
【０１４７】
例えば、不可視領域の一部を一以上の設定レジスタとし、ある設定レジスタにあるコードをストアするとそれが所定の専用命令として解釈・実行され、命令の種類によってはその結果として、不可視領域から読み出された値やリターン・コードなどがそのレジスタ又は他の所定のレジスタにビット列として現れる。
【０１４８】
また、命令の種類及びパラメータに応じて、前記ハブ、いずれかの前記単位デバイス、いずれかの前記単位デバイス中の所定の物理アドレス、所定のファイル名又は所定の内容に係るアクセスから、命令及びそのパラメータに応じたパターンを検出する。
【０１４９】
これらによれば、ホスト側から制御回路へ、一般的な読み書き等のアクセスにより専用命令を伝達できるので、特段のデバイスドライバ無しで多くのＯＳで利用可能となる。
【０１５０】
それぞれ以下に説明する。まず、いずれかの単位デバイス中の、特定の物理アドレス、ファイル名、内容の読み書きを、制御部側のチェック機能により命令として解釈・実行する。例えば、ＣＤ−ＲＯＭ領域中の所定位置に固定バイトもしくはサイズ０のファイルを配置し、そこへのアクセスにより不可視領域へアクセスする。また、ＣＤ−ＲＯＭ領域をＣＤ−ＲやＣＤ−ＲＷ，ＣＤ−Ｒ／Ｗなどとして認識させ、デバイスに届く書込み要求を専用命令とする。また、ＣＤドライブのスピンドル回転数設定命令を利用し、例えば回転数４倍をｂｅｇｉｎ（）命令、８倍をｅｎｄ（）命令などと解釈することにより不可視領域へのアクセスを実現する。
【０１５１】
また、リムーバブルディスクやハブに対する命令セットのなかで、Ｗｉｎｄｏｗｓ（登録商標）ＧＵＩや標準ＡＰＩ（アプリケーション・プログラム・インタフェース）から通常発行されないものや無意味なものを特別なアクセス信号と解釈することにより不可視領域へのアクセスを実現する。同様に、特定の命令に、通常用いないような特定の文字列等のパラメータを組合せたものをアクセス信号としてもよい。また、ＵＳＢのインタフェースクラスコードの中に標準で含まれるファームウェアバージョンアップ用の命令コードを用い、ファームウェアプログラムデータ部分に専用命令など不可視領域へのアクセス情報を流す。本物のファームウェアプログラムデータとの区別は、所定のビットパターンの有無によりＵＳＢマイコン３００側で行う。
【０１５２】
また、ＣＤ−ＲＯＭ領域４１０、ＨＤＤ（リムーバブルディスク）領域４２０、不可視領域４３０以外に第４のデバイスを追加し、そのデバイスに対する命令を全て不可視領域への専用命令とする。また、下層ドライバを上位のＩｏＣａｌｌＤｒｉｖｅｒ（）から直に呼び出すことにより所望のデータをＵＳＢマイコン３００へ流す。特定のエンドポイントに値を読み書きすることにより専用命令などのアクセス信号とすることも考えられる。
【０１５３】
〔６−７．さらに他の実現形態〕
なお、本発明は上記第１〜第３実施形態に限定されるものではなく、次に例示するような他の実施形態も含むものである。例えば、本出願においてＵＳＢとは、汎用周辺機器インタフェースの具体的規格としてのＵＳＢには限定されず、将来登場するものも含め、同等の役割を果たす他の規格も含む概念である。また、自動起動とハブ分けは一方だけを実施してもよく、自動起動を利用しない場合はＣＤ−ＲＯＭに関連する要素は不要である。また、ハブ分けは実施するが認識の遅延はさせないという実施形態も可能である。また、セキュリティドライブと対応するパスワードをそれぞれ複数設ければ、一つの着脱式デバイスを複数人で使い分けることも可能である。
【０１５４】
また、不揮発性メモリ上の所定の領域について、記録するデータは暗号化し、読み出したデータは復号化するようにしてもよい。このようにすれば、認証などのうえ後から接続認識させる部分の保存データが、秘密鍵方式や公開鍵方式等の暗号により保護されるので、セキュリティがより強化される。
【０１５５】
また、外部周辺機器として携帯電話やＰＨＳといった携帯型電話端末を赤外線通信、無線通信、ＵＳＢメスソケットへのプラグ挿入や、専用接続端子などにより本デバイスに接続し、携帯電話の送話及び受話機能を用いて、本デバイスからパソコン及びインターネット等のＩＰネットワークを通じてＩＰ電話を利用できるようにしてもよい。これにより、いつでもどこからでも経済的で使い勝手やセキュリティに優れたＩＰ電話の利用が容易になる。
【０１５６】
また、セキュリティドライブは、図６に示すように、制御回路付フラッシュメモリを複数用いて簡素な構成でも実現可能である。例えば、ＵＳＢマイコン３５０と制御回路付フラッシュメモリ４５０は、データ線とバスパワーを常時直結するが、ＵＳＢマイコン３５０ともう一つの制御回路付フラッシュメモリ４６０の間は、データ線は接続するがバスパワーはトランジスタやＩＣ等のスイッチＳＷで切り離し、パスワード認証がＯＫのときにスイッチＳＷを接続し、制御回路付フラッシュメモリ４６０を接続認識させればセキュリティドライブが実現される。
【０１５７】
ところで、本発明のより単純な例は、書換え可能な不揮発性メモリと、ＵＳＢのホスト側からのアクセスを前記メモリに仲介する制御手段と、を備えた着脱式デバイスにおいて、前記制御手段は、ホスト側に接続されると前記メモリの一部をホスト側に接続し、ホスト側から前記専用命令の一種など所定の合図信号を受け取ると前記メモリの他の部分をホスト側に接続することで、後から接続される部分の情報セキュリティを実現することである。
【０１５８】
すなわち、外部機器接続用のスレーブ側接続ポートは省略可能であり、また、セキュリティは、ハブで分けられるデバイス単位には限定されず、メディアやファイルの隠蔽によっても実現できる。
【０１５９】
メディアの隠蔽では、例えば、機器をＣＤ−ＲＯＭドライブとリムーバブルハードディスクドライブを併せ持つマルチファンクションで、その初期状態では、ディスクドライブにディスクは入っておらず、認証後にＵＳＢマイコンなどの制御回路の働きでディスクを挿入した状態とし、ＰＣからアクセス可能とする。このようにすれば、認証前後でディスクを入れ替えたように、異なるデータを見せられるので応用範囲が拡大される。また、ファイルの隠蔽では、認証前は、ハードディスクのファイル管理領域から保護対象ファイルの存在を隠しておき、認証後、保護対象を含む全ファイルの存在をホスト側に開示する。これらの場合も、重要な情報は、正当権限の無い第三者から保護されるので、情報セキュリティが実現される。
【０１６０】
【発明の効果】
以上のように、この発明によれば、使い勝手とセキュリティに優れた着脱式デバイスを提供することができる。
【図面の簡単な説明】
【図１】本発明の第１実施形態の構成を示す機能ブロック図。
【図２】本発明の第２実施形態の構成を示す機能ブロック図。
【図３】本発明の第３実施形態のハードウェア構成を示すブロック図。
【図４】本発明の第３実施形態のソフトウェア構成を示す図。
【図５】本発明の第３実施形態における処理手順を示すフローチャート。
【図６】本発明の他の実現態様を示すブロック図。
【符号の説明】
１…コンピュータ
２，２０…着脱式デバイス
３…ＵＳＢデバイス側制御部
４…フラッシュメモリ
５…デジタルカメラ
１０，２５…ＵＳＢポート
１１…スクリプト実行部
１２…プログラム実行部
３１…ハブ分け部
３２…認識制御部
３３…挿入模擬部
３４…アクセス部
３５…タイミング制御部
３６…フォーマット部
３７…認識解除部
Ｓ…自動起動スクリプト
Ｐ…自動起動プログラム
Ｒ１〜Ｒ５…領域
２００…デバイス
２１０…ＬＥＤ
２２０…ライトプロテクトスイッチ
２３０…ＣＤ−ＲＯＭスイッチ
３００，３５０…ＵＳＢマイコン
３１０，３６０…ファームウェア
４００…フラッシュメモリ
４１０…ＣＤ−ＲＯＭ領域
４２０…ＨＤＤ領域
４３０…不可視領域
４３５…管理情報
４５０，４６０…制御回路付フラッシュメモリ
ＳＷ…スイッチ
【図１】
2004206660.tif 000003
【図２】
2004206660.tif 000004
【図３】
2004206660.tif 000005
【図４】
2004206660.tif 000006
【図５】
2004206660.tif 000007
【図６】
2004206660.tif 000008