(57)【要約】ホストと、ホストに接続された記録デバイスとの間で記録再生データの転送のみならずセキュリティコマンドの転送も可能とする構成を実現する。ＵＳＢ−Ａコネクタと、ＵＳＢ−ｍｉｃｒｏＢコネクタを有するＵＳＢリーダライタであり、リーダライタ制御部がＵＳＢ−ｍｉｃｒｏＢコネクタに電源供給ホストが接続され、ＵＳＢ−Ａコネクタ側に記録メディアが装着された場合、マスストレージクラス対応データ転送部を介して記録メディアの記録再生データを転送し、非マスストレージクラス対応データ転送部を介して認証処理等に適用するセキュリティコマンドを転送する。ＵＳＢリーダライタを装着したホストは、記録再生データパスと、セキュリティコマンドパスの２つのパスを利用して異なるカテゴリのデータ転送を実行する。
2016031456.tif 000002
【特許請求の範囲】
【請求項１】
記録メディアを装着可能な記録メディア装着部と、
ＵＳＢコネクタと、
前記記録メディア装着部に装着した記録メディアと、前記ＵＳＢコネクタに接続したホストとの間でデータ転送処理を実行する制御部を有し、
前記制御部は、
マスストレージクラス（ＭＳＣ：Ｍａｓｓ  Ｓｔｒａｇｅ  Ｃｌａｓｓ）対応データ転送部を利用した前記記録メディアに対する記録再生データの転送制御と、
非マスストレージクラス対応データ転送部を利用した前記記録メディアに対するセキュリティコマンドの転送制御を実行するＵＳＢリーダライタ装置。
【請求項２】
前記ＵＳＢリーダライタは、
ＵＳＢ−Ａコネクタと、ＵＳＢ−ｍｉｃｒｏＢコネクタを有する構成であり、
前記制御部は、
前記ＵＳＢ−ｍｉｃｒｏＢコネクタに電源供給ホストが接続された場合に、前記マスストレージクラス対応データ転送部と、前記非マスストレージクラス対応データ転送部の各々を介して異なる種類のデータ転送を実行する請求項１に記載のＵＳＢリーダライタ装置。
【請求項３】
前記制御部は、
前記ＵＳＢ−ｍｉｃｒｏＢコネクタに電源供給ホストが接続され、
前記ＵＳＢ−Ａコネクタ側に設定された記録メディア装着部に記録メディアが装着された場合に、
前記マスストレージクラス対応データ転送部と、前記非マスストレージクラス対応データ転送部の各々を介して異なる種類のデータ転送を実行する請求項２に記載のＵＳＢリーダライタ装置。
【請求項４】
前記制御部は、
制御部のＧＰＩＯ（Ｇｅｎｅｒａｌ  Ｐｕｒｐｏｓｅ  Ｉｎｐｕｔ／Ｏｕｔｐｕｔ）に対する入力信号を検出し、該入力信号の値に応じて、
単一のデータ転送部を利用したデータ転送制御を実行するか、
前記マスストレージクラス対応データ転送部と、前記非マスストレージクラス対応データ転送部の各々を介して異なる種類のデータ転送を実行するかの処理切り替えを実行する請求項１に記載のＵＳＢリーダライタ装置。
【請求項５】
前記ＵＳＢリーダライタ装置は、
前記制御部のＧＰＩＯ（Ｇｅｎｅｒａｌ  Ｐｕｒｐｏｓｅ  Ｉｎｐｕｔ／Ｏｕｔｐｕｔ）に対する信号入力を実行するＭＣＵ（Ｍｉｃｒｏ  Ｃｏｍｐｕｔｅｒ  Ｕｎｉｔ）を有し、
前記ＭＣＵは、前記ＵＳＢ−ｍｉｃｒｏＢコネクタに電源供給ホストが接続され、該電源供給ホストからの電源供給がなされたことを条件として、前記制御部のＧＰＩＯ（Ｇｅｎｅｒａｌ  Ｐｕｒｐｏｓｅ  Ｉｎｐｕｔ／Ｏｕｔｐｕｔ）に対する入力信号値を変更する請求項４に記載のＵＳＢリーダライタ装置。
【請求項６】
前記制御部は、
制御部に対するリセット信号入力後に、制御部のＧＰＩＯ入力信号値を確認し、確認した入力信号値に応じてデータ転送制御態様を決定する請求項４に記載のＵＳＢリーダライタ装置。
【請求項７】
前記非マスストレージクラス対応データ転送部は、ベンダーユニーククラス対応データ転送部、またはＨＩＤ（Ｈｕｍａｎ  Ｉｎｔｅｒｆａｃｅ  Ｄｅｖｉｃｅ）クラス対応データ転送部として構成される請求項１に記載のＵＳＢリーダライタ装置。
【請求項８】
記録メディアを装着したデバイスを接続する通信部と、
前記通信部を介して記録メディアの記録データを入力して再生する再生アプリケーションを実行するデータ処理部を有し、
前記データ処理部は、
（ａ）前記記録メディアの記録データを入力する記録再生データパス、
（ｂ）前記記録メディアの記録データ以外のセキュリティコマンドまたはセキュリティデータを転送するセキュリティコマンドパス、
上記２つのパスを利用してデータ転送処理を実行する情報処理装置。
【請求項９】
前記再生アプリケーションは、
前記セキュリティコマンドパスを介したデータ転送処理により、前記記録メディアとの認証処理を実行し、
前記認証処理の成立を条件として、前記記録再生データパスを介したデータ転送により、前記記録メディアの記録データを読み出して再生処理を実行する請求項８に記載の情報処理装置。
【請求項１０】
前記通信部はＵＳＢポートであり、
前記記録メディアは、前記ＵＳＢポートに接続されたＵＳＢリーダライタに装着された記録デバイスである請求項８に記載の情報処理装置。
【請求項１１】
前記データ処理部は、
前記情報処理装置のファームウェアコンポーネントであるマスストレージクラスを介する記録再生データパスを利用して前記記録メディアの記録データを入力し、
前記情報処理装置のファームウェアコンポーネントであるＵＳＢホストＡＰＩを介するセキュリティコマンドパスを利用して、セキュリティコマンドまたはセキュリティデータを転送する請求項１０に記載の情報処理装置。
【請求項１２】
前記データ処理部は、
前記ＵＳＢリーダライタのマスストレージクラス対応データ転送部を利用して前記記録メディアの記録データを入力し、
前記ＵＳＢリーダライタの非マスストレージクラス対応データ転送部を利用して、セキュリティコマンドまたはセキュリティデータを転送する請求項１０に記載の情報処理装置。
【請求項１３】
前記データ処理部は、
前記情報処理装置のファームウェアコンポーネントであるマスストレージクラスを介する記録再生データパスを利用して前記記録メディアの記録データを入力し、
前記情報処理装置のファームウェアコンポーネントであるコマンドデーモンを介するセキュリティコマンドパスを利用して、セキュリティコマンドまたはセキュリティデータを転送する請求項１０に記載の情報処理装置。
【請求項１４】
前記データ処理部は、
前記情報処理装置のアプリケーションレイヤのコンポーネントであるマスストレージクラスと、前記情報処理装置のファームウェアコンポーネントであるＵＳＢホストＡＰＩを介する記録再生データパスを利用して前記記録メディアの記録データを入力し、
前記情報処理装置のファームウェアコンポーネントであるＵＳＢホストＡＰＩを介するセキュリティコマンドパスを利用して、セキュリティコマンドまたはセキュリティデータを転送する請求項１０に記載の情報処理装置。
【請求項１５】
前記データ処理部は、
１つの記録再生データパスによって接続されたデバイスと、同一デバイスに接続されたセキュリティコマンドパスを検出するパス対応判定処理を実行し、
前記パス対応判定処理に基づいて選択した同一デバイスに接続されたセキュリティコマンドパスと、記録再生データパスを利用した認証処理および記録再生データ転送処理を実行する請求項８に記載の情報処理装置。
【請求項１６】
前記パス対応判定処理は、
前記情報処理装置のシステムファイルの記述情報を参照して実行する請求項１５に記載の情報処理装置。
【請求項１７】
リーダライタ装置において実行するデータ転送制御方法であり、
前記リーダライタ装置は、記録メディアを装着可能な記録メディア装着部と、ＵＳＢコネクタと、
前記記録メディア装着部に装着した記録メディアと、前記ＵＳＢコネクタに接続したホストとの間でデータ転送処理を実行する制御部を有し、
前記制御部が、
マスストレージクラス（ＭＳＣ：Ｍａｓｓ  Ｓｔｒａｇｅ  Ｃｌａｓｓ）対応データ転送部を利用した前記記録メディアに対する記録再生データの転送制御と、
非マスストレージクラス対応データ転送部を利用した前記記録メディアに対するセキュリティコマンドの転送制御を実行するデータ転送制御方法。
【請求項１８】
情報処理装置において実行するデータ転送制御方法であり、
前記情報処理装置は、記録メディアを装着したデバイスを接続する通信部と、
前記通信部を介して記録メディアの記録データを入力して再生する再生アプリケーションを実行するデータ処理部を有し、
前記データ処理部が、
（ａ）前記記録メディアの記録データを入力する記録再生データパス、
（ｂ）前記記録メディアの記録データ以外のセキュリティコマンドまたはセキュリティデータを転送するセキュリティコマンドパス、
上記２つのパスを利用してデータ転送処理を実行するデータ転送制御方法。
【請求項１９】
リーダライタ装置においてデータ転送制御処理を実行させるプログラムであり、
前記リーダライタ装置は、記録メディアを装着可能な記録メディア装着部と、ＵＳＢコネクタと、
前記記録メディア装着部に装着した記録メディアと、前記ＵＳＢコネクタに接続したホストとの間でデータ転送処理を実行する制御部を有し、
前記プログラムは、前記制御部に、
マスストレージクラス（ＭＳＣ：Ｍａｓｓ  Ｓｔｒａｇｅ  Ｃｌａｓｓ）対応データ転送部を利用した前記記録メディアに対する記録再生データの転送制御と、
非マスストレージクラス対応データ転送部を利用した前記記録メディアに対するセキュリティコマンドの転送制御を実行させるプログラム。
【請求項２０】
情報処理装置においてデータ転送制御処理を実行させるプログラムであり、
前記情報処理装置は、記録メディアを装着したデバイスを接続する通信部と、
前記通信部を介して記録メディアの記録データを入力して再生する再生アプリケーションを実行するデータ処理部を有し、
前記プログラムは、前記データ処理部に、
（ａ）前記記録メディアの記録データを入力する記録再生データパス、
（ｂ）前記記録メディアの記録データ以外のセキュリティコマンドまたはセキュリティデータを転送するセキュリティコマンドパス、
上記２つのパスを利用してデータ転送処理を実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、リーダライタ装置、情報処理装置、およびデータ転送制御方法、並びにプログラムに関する。さらに詳細には、ＵＳＢコネクタ等の接続部と、記録メディアを装着可能なカードスロットを有するリーダライタを用いたデータ記録再生処理に適用されるリーダライタ装置、情報処理装置、およびデータ転送制御方法、並びにプログラムに関する。
【背景技術】
【０００２】
昨今、大容量型のメモリデバイスとしてＳＤカード等の半導体型メモリデバイス（記録メディア）が多く利用されている。
これらのメモリデバイスは、例えばＰＣ、スマートホン、タブレット端末等において多く利用されている。
また、メモリカードに対するデータアクセス機能を備えたリーダライタとして、例えばメモリカードを装着可能なカードスロットと、ＵＳＢコネクタ（端子）を兼ね備えたリーダライタ装置がある。【０００３】
具体的には、ＵＳＢ−ＡコネクタとＵＳＢ−ｍｉｃｒｏＢコネクタを備え、ＵＳＢ−Ａコネクタ側にカードスロットを設定したリーダライタ（ＵＳＢリーダライタ）である。
このリーダライタのＵＳＢ−Ａコネクタ側にマイクロＳＤカードを装着し、ＵＳＢ−ｍｉｃｒｏＢコネクタを例えばスマートホンのＵＳＢ−ｍｉｃｒｏＢポートに差し込むことで、スマートホンからマイクロＳＤカードに対するアクセス（データ読み書き）が可能となる。【０００４】
しかし、例えばスマートホン等の情報処理装置の中には、ＵＳＢポート等のデバイス装着部に装着されたデバイスの自動認識を実行し、認識結果に応じてポートを介した入出力データを制限してしまうものがある。
具体的には、ＯＳ（Ｏｐｅｒａｔｉｏｎ  Ｓｙｓｔｅｍ）としてＡｎｄｒｏｉｄ（登録商標）を搭載したスマートホン等の情報処理装置の一部の機種では、ＵＳＢポートの装着デバイスがメモリデバイスであると認識した場合、そのメモリデバイスとの間では、記録再生用データの転送のみを許容し、記録再生データ以外の例えば認証コマンドの転送は許容しない設定を行ってしまう。【０００５】
このように転送データの制限が実行されると、デバイス（例えばマイクロＳＤカード）に格納したデータの読み出しができなくなる場合がある。
すなわち、マイクロＳＤカードに格納したデータが利用制限のあるコンテンツであり、コンテンツ再生装置であるスマートホン等の情報処理装置と、メモリデバイスであるマイクロＳＤカードとの認証成立を条件としてコンテンツ読み出しが許容されるコンテンツである場合などである。
なお、認証成立を条件として記録メディアからのコンテンツ読み出し再生を許容する構成について記載した従来技術として、例えば特許文献１（特開２０１４−０８５９８５号公報）等がある。【０００６】
このように、Ａｎｄｒｏｉｄ（登録商標）を搭載したスマートホン等の情報処理装置は、記録メディアを装着したＵＳＢリーダライタがＵＳＢポートに差し込まれると、ポートを介した転送データの制限が実行され、認証コマンド等のコマンドの転送が行えなくなる。その結果、認証処理が実行できず、コンテンツの読み出しや再生ができなくなるという問題がある。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２０１４−０８５９８５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
本開示は、例えば上記問題点に鑑みてなされたものであり、スマートホン等の情報処理装置に、記録メディアを装着したリーダライタ装置を接続した設定において、記録メディアに対する記録再生データの入出力のみならず、その他のコマンド、例えば認証処理用コマンドの入出力も可能としたリーダライタ装置、情報処理装置、およびデータ転送制御方法、並びにプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００９】
本開示の第１の側面は、
記録メディアを装着可能な記録メディア装着部と、
ＵＳＢコネクタと、
前記記録メディア装着部に装着した記録メディアと、前記ＵＳＢコネクタに接続したホストとの間でデータ転送処理を実行する制御部を有し、
前記制御部は、
マスストレージクラス（ＭＳＣ：Ｍａｓｓ  Ｓｔｒａｇｅ  Ｃｌａｓｓ）対応データ転送部を利用した前記記録メディアに対する記録再生データの転送制御と、
非マスストレージクラス対応データ転送部を利用した前記記録メディアに対するセキュリティコマンドの転送制御を実行するＵＳＢリーダライタ装置にある。【００１０】
さらに、本開示の第２の側面は、
記録メディアを装着したデバイスを接続する通信部と、
前記通信部を介して記録メディアの記録データを入力して再生する再生アプリケーションを実行するデータ処理部を有し、
前記データ処理部は、
（ａ）前記記録メディアの記録データを入力する記録再生データパス、
（ｂ）前記記録メディアの記録データ以外のセキュリティコマンドまたはセキュリティデータを転送するセキュリティコマンドパス、
上記２つのパスを利用してデータ転送処理を実行する情報処理装置にある。【００１１】
さらに、本開示の第３の側面は、
リーダライタ装置において実行するデータ転送制御方法であり、
前記リーダライタ装置は、記録メディアを装着可能な記録メディア装着部と、ＵＳＢコネクタと、
前記記録メディア装着部に装着した記録メディアと、前記ＵＳＢコネクタに接続したホストとの間でデータ転送処理を実行する制御部を有し、
前記制御部が、
マスストレージクラス（ＭＳＣ：Ｍａｓｓ  Ｓｔｒａｇｅ  Ｃｌａｓｓ）対応データ転送部を利用した前記記録メディアに対する記録再生データの転送制御と、
非マスストレージクラス対応データ転送部を利用した前記記録メディアに対するセキュリティコマンドの転送制御を実行するデータ転送制御方法にある。【００１２】
さらに、本開示の第４の側面は、
情報処理装置において実行するデータ転送制御方法であり、
前記情報処理装置は、記録メディアを装着したデバイスを接続する通信部と、
前記通信部を介して記録メディアの記録データを入力して再生する再生アプリケーションを実行するデータ処理部を有し、
前記データ処理部が、
（ａ）前記記録メディアの記録データを入力する記録再生データパス、
（ｂ）前記記録メディアの記録データ以外のセキュリティコマンドまたはセキュリティデータを転送するセキュリティコマンドパス、
上記２つのパスを利用してデータ転送処理を実行するデータ転送制御方法にある。【００１３】
さらに、本開示の第５の側面は、
リーダライタ装置においてデータ転送制御処理を実行させるプログラムであり、
前記リーダライタ装置は、記録メディアを装着可能な記録メディア装着部と、ＵＳＢコネクタと、
前記記録メディア装着部に装着した記録メディアと、前記ＵＳＢコネクタに接続したホストとの間でデータ転送処理を実行する制御部を有し、
前記プログラムは、前記制御部に、
マスストレージクラス（ＭＳＣ：Ｍａｓｓ  Ｓｔｒａｇｅ  Ｃｌａｓｓ）対応データ転送部を利用した前記記録メディアに対する記録再生データの転送制御と、
非マスストレージクラス対応データ転送部を利用した前記記録メディアに対するセキュリティコマンドの転送制御を実行させるプログラムにある。【００１４】
さらに、本開示の第６の側面は、
情報処理装置においてデータ転送制御処理を実行させるプログラムであり、
前記情報処理装置は、記録メディアを装着したデバイスを接続する通信部と、
前記通信部を介して記録メディアの記録データを入力して再生する再生アプリケーションを実行するデータ処理部を有し、
前記プログラムは、前記データ処理部に、
（ａ）前記記録メディアの記録データを入力する記録再生データパス、
（ｂ）前記記録メディアの記録データ以外のセキュリティコマンドまたはセキュリティデータを転送するセキュリティコマンドパス、
上記２つのパスを利用してデータ転送処理を実行させるプログラム。【００１５】
なお、本開示のプログラムは、例えば、様々なプログラム・コードを実行可能な情報処理装置やコンピュータ・システムに対して、コンピュータ可読な形式で提供する記憶媒体、通信媒体によって提供可能なプログラムである。このようなプログラムをコンピュータ可読な形式で提供することにより、情報処理装置やコンピュータ・システム上でプログラムに応じた処理が実現される。【００１６】
本開示のさらに他の目的、特徴や利点は、後述する本開示の実施例や添付する図面に基づくより詳細な説明によって明らかになるであろう。なお、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。
【発明の効果】
【００１７】
本開示の一実施例の構成によれば、ホストと、ホストに接続された記録デバイスとの間で記録再生データの転送のみならずセキュリティコマンドの転送も可能とする構成が実現される。
具体的には、ＵＳＢ−Ａコネクタと、ＵＳＢ−ｍｉｃｒｏＢコネクタを有するＵＳＢリーダライタであり、リーダライタ制御部がＵＳＢ−ｍｉｃｒｏＢコネクタに電源供給ホストが接続され、ＵＳＢ−Ａコネクタ側に記録メディアが装着された場合、マスストレージクラス対応データ転送部を介して記録メディアの記録再生データを転送し、非マスストレージクラス対応データ転送部を介して認証処理等に適用するセキュリティコマンドを転送する。ＵＳＢリーダライタを装着したホストは、記録再生データパスと、セキュリティコマンドパスの２つのパスを利用して異なるカテゴリのデータ転送を実行する。
本構成により、ホストと、ホストに接続された記録デバイスとの間で記録再生データの転送のみならずセキュリティコマンドの転送も可能とする構成が実現される。
なお、本明細書に記載された効果はあくまで例示であって限定されるものではなく、また付加的な効果があってもよい。
【図面の簡単な説明】
【００１８】
【図１】ＵＳＢリーダライタの構成例について説明する図である。
【図２】ＵＳＢリーダライタの利用例について説明する図である。
【図３】ＵＳＢリーダライタの利用例について説明する図である。
【図４】ＵＳＢリーダライタに装着した記録メディアと情報処理装置とのデータ転送処理について説明する図である。
【図５】ＵＳＢリーダライタに装着した記録メディアと情報処理装置とのデータ転送処理について説明する図である。
【図６】本開示のＵＳＢリーダライタの一構成例について説明する図である。
【図７】本開示のＵＳＢリーダライタの一構成例について説明する図である。
【図８】一般的なＵＳＢリーダライタの構成例について説明する図である。
【図９】本開示のＵＳＢリーダライタの一構成例について説明する図である。
【図１０】本開示のＵＳＢリーダライタのリーダライタ制御部に対する入力信号の時間遷移について説明する図である。
【図１１】本開示のＵＳＢリーダライタのリーダライタ制御部に対する入力信号の時間遷移について説明する図である。
【図１２】ＵＳＢリーダライタを介した情報処理装置と記録メディア間のデータ転送処理構成について説明する図である。
【図１３】ＵＳＢリーダライタを介した情報処理装置と記録メディア間のデータ転送処理のシーケンスについて説明するシーケンス図である。
【図１４】ＵＳＢリーダライタを介した情報処理装置と記録メディア間のデータ転送処理構成について説明する図である。
【図１５】ＵＳＢリーダライタを介した情報処理装置と記録メディア間のデータ転送処理のシーケンスについて説明するシーケンス図である。
【図１６】ＵＳＢリーダライタを介した情報処理装置と記録メディア間のデータ転送処理構成について説明する図である。
【図１７】ＵＳＢリーダライタを介した情報処理装置と記録メディア間のデータ転送処理のシーケンスについて説明するシーケンス図である。
【図１８】ＵＳＢリーダライタを介した情報処理装置と記録メディア間の認証処理開始までのシーケンスについて説明するフローチャートを示す図である。
【図１９】ＵＳＢリーダライタの利用例について説明する図である。
【図２０】ＵＳＢリーダライタを介した情報処理装置と記録メディア間のデータ転送処理構成について説明する図である。
【図２１】ＵＳＢリーダライタを介した情報処理装置と記録メディア間のデータ転送パスに対応する接続デバイス識別処理例について説明する図である。
【図２２】ＵＳＢリーダライタを介した情報処理装置と記録メディア間のデータ転送パスの対応付けについて説明する図である。
【図２３】ＵＳＢリーダライタを介した情報処理装置と記録メディア間の記録再生データパスとセキュリティコマンドパスとの対応判定処理シーケンスを説明するフローチャートを示す図である。
【図２４】マスストレージクラス（ＭＳＣ）を介して取得可能なＬｉｎｕｘ（登録商標）システムファイルに含まれるデバイスマウント情報の記述データの一例を示す図である。
【図２５】デバイスマウント情報の記述データから取得されるリンク情報（シンボリックリンク）を利用した接続デバイス情報の取得処理について説明する図である。
【図２６】デバイスマウント情報の記述データから取得されるリンク情報（シンボリックリンク）を利用して得られる接続デバイス情報について説明する図である。
【図２７】ＵＳＢリーダライタを介した情報処理装置と記録メディア間のデータ転送処理のシーケンスについて説明するシーケンス図である。
【図２８】情報処理装置の構成例について説明する図である。
【発明を実施するための形態】
【００１９】
以下、図面を参照しながら本開示のリーダライタ装置、情報処理装置、およびデータ転送制御方法、並びにプログラムの詳細について説明する。なお、説明は以下の項目に従って行なう。
１．リーダライタ装置の構成について
２．セキュアコマンドの送受信が制限されてしまう問題点について
３．メディアに対する記録再生データと、セキュアコマンドの転送を可能とする構成について
４．ＵＳＢリーダライタの回路構成例について
５．ＵＳＢリーダライタを接続したホストの構成例と処理例について
５−１．構成例Ａについて
５−２．構成例Ｂについて
５−３．構成例Ｃについて
６．情報処理装置の再生アプリケーションの実行する処理のシーケンスについて
７．情報処理装置（ホスト）に複数のＵＳＢリーダライタが装着された場合の処理について
８．情報処理装置の構成例について
９．その他の実施例について
１０．本開示の構成のまとめ
【００２０】
［１．リーダライタ装置の構成について］
まず、図１以下を参照してリーダライタ装置の構成について説明する。
図１は、ＵＳＢリーダライタ１０の構成を説明する図である。
ＵＳＢリーダライタ１０は、図１（Ａ）に示すように、一端にＵＳＢ−Ａコネクタ１１を有し、もう一方の端部にＵＳＢ−ｍｉｃｒｏＢコネクタ１２を備えている。
さらに、ＵＳＢ−Ａコネクタ１１は、内部にマイクロＳＤカードを装着可能な構成、すなわちカードスロット１３を有する。
図１（Ｂ）は、カードスロット１３にマイクロＳＤカード２１を装着した図である。
【００２１】
図２に、カードスロット１３にマイクロＳＤカード２１を装着したＵＳＢリーダライタ１０をスマートホン３０に装着した例を示す。
スマートホン３０のＵＳＢ−ｍｉｃｒｏＢポートに、ＵＳＢリーダライタ１０のＵＳＢ−ｍｉｃｒｏＢコネクタ１３を差し込んだ図である。
この設定で、スマートホン３０は、ＵＳＢリーダライタ１０を介してマイクロＳＤカード２１にアクセスしてマイロクＳＤカード２１に対するデータ記録処理や、てマイロクＳＤカード２１からのデータ読み出しを行うことが可能となる。
【００２２】
図１、図２を参照して説明したように、ＵＳＢリーダライタ１０は、以下の構成要素を有する。
（ａ）ＵＳＢ−Ａコネクタ
（ｂ）ＵＳＢ−ｍｉｃｒｏＢコネクタ
（ｃ）マイクロＳＤカードスロット
これらの構成を有している。
【００２３】
また、図２を参照して説明したように、ＵＳＢリーダライタ１０のＵＳＢ−Ａコネクタ１１側にマイクロＳＤカード２１を装着し、ＵＳＢ−ｍｉｃｒｏＢコネクタ１２をスマートホンのＵＳＢ−ｍｉｃｒｏＢポートに差し込むことで、スマートホンからのマイクロＳＤカードに対するアクセス（データ読み書き）が可能となる。
【００２４】
図３は、ＵＳＢリーダライタ１０の利用例を説明する図である。
上述したように、ＵＳＢリーダライタ１０は、ＵＳＢ−Ａコネクタ、ＵＳＢ−ｍｉｃｒｏＢコネクタ、マイクロＳＤカードスロットを有しており、
例えばＵＳＢ−ＡコネクタをＰＣ４１、ＴＶ４２、記録再生装置４３等に差し込み、一方のＵＳＢ−ｍｉｃｒｏＢコネクタをスマートホン３０や、タブレット端末３２に接続することで、接続機器間のデータ交換が可能となる。
また、ＵＳＢ−ＡコネクタのカードスロットにマイクロＳＤカード２１を挿入し、ＵＳＢ−ｍｉｃｒｏＢコネクタをスマートホン３０やタブレット端末３２に接続することで、ＵＳＢメモリと同様の着脱型メディアとして利用することもできる。
【００２５】
［２．セキュアコマンドの送受信が制限されてしまう問題点について］
次に、例えば図２に示すように、ＵＳＢリーダライタ１０のＵＳＢ−Ａコネクタ１１側にマイクロＳＤカード２１を装着し、ＵＳＢ−ｍｉｃｒｏＢコネクタ１２をスマートホンのＵＳＢ−ｍｉｃｒｏＢポートに差し込んで、マイクロＳＤカード２１に対するアクセスを行う場合の問題点について説明する。
【００２６】
前述したように、例えばスマートホン等の情報処理装置の中には、ＵＳＢポート等のデバイス装着部にデバイスが装着されると、接続デバイスの自動認識を実行し、認識結果に応じてそのポートを介した入出力データの制限を行う装置がある。
【００２７】
具体的には、ＯＳ（Ｏｐｅｒａｔｉｏｎ  Ｓｙｓｔｅｍ）としてＡｎｄｒｏｉｄ（登録商標）を搭載したスマートホン等の情報処理装置の一部の機種では、ＵＳＢポートの装着デバイスがメモリデバイスであると判定すると、メモリデバイスに対するデータの記録、あるいはメモリデバイスからのデータ読み取り処理のみを許容し、読み書きデータ以外の認証コマンド等のデータの入出力を禁止してしまう。
【００２８】
このような制限がなされると、例えばマイクロＳＤカード２１に格納したデータが利用制限のある著作権管理コンテンツ等の再生ができなくなる。すなわち、コンテンツ再生装置（スマートホン３０）と、コンテンツ格納メディア（マイクロＳＤカード２１）との認証成立をコンテンツ再生許容条件としたコンテンツの再生ができなくなる。
【００２９】
ＯＳとしてＡｎｄｒｏｉｄ（登録商標）を搭載した情報処理装置の一例であるスマートホン３０と、図１、図２を参照して説明したＵＳＢリーダライタ１０との間で実行されるデータ転送処理と、制限されるデータ転送処理について図４を参照して説明する。
【００３０】
図４には、ＵＳＢリーダライタ１０を装着したスマートホン３０の処理レイヤを示している。
スマートホン３０の処理レイヤは大きく以下の２つのレイヤに区分できる。
（Ａ）アプリケーション（ＡＰＰ）レイヤ
（Ｂ）ファームウェア（ＦＷ）レイヤ
これらの２つのレイヤである。
【００３１】
（Ａ）アプリケーション（ＡＰＰ）レイヤは、情報処理装置、ここではスマートホン３０が、様々なアプリケーション提供サイト等からダウンロードして追加記録するなど追加、変更、削除を容易に行うことが可能なプログラム（ソフトウェア）のレイヤである。
一方、（Ｂ）ファームウェア（ＦＷ）レイヤは、情報処理装置、ここではスマートホン３０に基本的に固定プログラムとして記録されたソフトウェアレイヤである。
【００３２】
なお、ＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）であるＡｎｄｒｏｉｄ（登録商標）ＯＳからなるＯＳレイヤは、図には示していないが、図４の（Ａ）アプリケーションレイヤと、（Ｂ）ファームウェアレイヤの間に位置する。
ただし、（Ｂ）ファームウェアレイヤの一部構成、例えば、ファイルシステム（Ｆｉｌｅ  Ｓｙｓｔｅｍ）６１や、マスストレージクラス（Ｍａｓｓ  Ｓｔｒａｇｅ  Ｃｌａｓｓ）６２は、ＯＳレイヤの一部として解釈される場合もある。
【００３３】
なお、図４に示す各レイヤ内のプログラム等の構成は、本開示の処理において利用される一部の構成のみである。
例えば、スマートホン３０には様々なアプリケーションが搭載可能であるが、図４の（Ａ）アプリケーション（ＡＰＰ）レイヤには、本開示の処理に直接関連する１つのアプリケーションのみを示している。
図４（Ａ）アプリケーション（ＡＰＰ）レイヤに示すアプリケーションは、メディアに格納されたコンテンツを読み出して再生処理を実行する再生アプリケーション５０である。
この再生アプリケーション５０は、予め規定された所定のアルゴリズムに従ってコンテンツを格納したメディアとの認証処理を実行し、認証成立を条件として、メディアからコンテンツを読み出して再生処理を実行する。
【００３４】
再生アプリケーション５０は、具体的には、例えば、次世代著作権保護技術の規格であるＳＱＶ（ＳｅｅＱＶａｕｌｔ）に従ってコンテンツ再生を実行するアプリケーションとしてのＳＱＶプレーヤ等によって構成可能である。
なお、ＳＱＶ（ＳｅｅＱＶａｕｌｔ）は、ＳＤカード等のフラッシュメモリに利用制御コンテンツ、例えば著作権管理対象コンテンツを記録、再生する場合に、所定のアルゴリズムに従った処理を実行させることで、不正なコンテンツ利用を排除し、正当なコンテンツの利用管理を実現する規格である。
【００３５】
具体的には、例えば、再生アプリケーション５０は、コンテンツを格納したメディアとの認証処理が成立しない場合、メディアからのコンテンツ再生を実行することはできない。
認証処理が成立し、メディアの正当性が確認された場合にメディアからコンテンツを読み出し、再生を実行することができる。
【００３６】
再生アプリケーション５０は、再生アプリライブラリ（例えばＳＱＶライブラリ）５１を有する。
再生アプリライブラリ５１は、再生アプリケーション５０のコンポーネントであり、再生アプリケーション５０の実行する様々な処理ロジックを実装したロジック実装部である。
なお、この再生アプリケーション５０は、ＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）としてのＡｎｄｒｏｉｄ（登録商標）上で動作するアプリケーションである。
【００３７】
（Ｂ）ファームウェア（ＦＷ）レイヤは、前述したように、情報処理装置、ここではスマートホン３０に基本的に固定プログラムとして記録されたソフトウェアレイヤである。
なお、図４には、本開示の処理において利用される一部のファームウェアのみを示している。
図４には、ファイルシステム（Ｆｉｌｅ  Ｓｙｓｔｅｍ）６１と、マスストレージクラス（Ｍａｓｓ  Ｓｔｒａｇｅ  Ｃｌａｓｓ）６２、ＵＳＢホストドライバ６３を示している。
【００３８】
ファイルシステム（Ｆｉｌｅ  Ｓｙｓｔｅｍ）６１は、Ａｎｄｒｏｉｄ（登録商標）端末であるスマートホン３０のファームウェア（ＦＷ）レイヤを構成する１つのコンポーネントであり、所定のファイルシステム規定に従ってメディア、例えばマイクロＳＤカード２１に対するデータの読み書き（Ｒｅａｄ／Ｗｒｉｔｅ）機能を実現するプログラムである。例えばＦＡＴ３２やｅｘＦＡＴなどのファイルシステム規定に従ってデータの読み書きを実行する。
【００３９】
マスストレージクラス（ＭＳＣ：Ｍａｓｓ  Ｓｔｒａｇｅ  Ｃｌａｓｓ）６２は、Ａｎｄｒｏｉｄ（登録商標）端末であるスマートホン３０のファームウェア（ＦＷ）レイヤを構成する１つのコンポーネントであり、マスストレージクラスホスト機能を実行するプログラムである。
【００４０】
マスストレージクラス（ＭＳＣ：Ｍａｓｓ  Ｓｔｏｒａｇｅ  Ｃｌａｓｓ）とは、ＵＳＢ規格で定められているＵＳＢメモリ等の補助記憶装置を接続するための仕様である。情報処理装置に接続されたＵＳＢ機器を記憶装置として認識して記憶装置用の制御を実行するためのドライバプログラムである。
このマスストレージクラス（ＭＳＣ：Ｍａｓｓ  Ｓｔｏｒａｇｅ  Ｃｌａｓｓ）の実装機器は、外部接続するメディアに対応した専用のドライバをインストールすることなく、接続されたＵＳＢ機器をリムーバブルメディアとして認識し、データの記録や読み取りを行うことが可能となる。
【００４１】
ＵＳＢホストドライバ６３は、Ａｎｄｒｏｉｄ（登録商標）端末であるスマートホン３０のファームウェア（ＦＷ）レイヤを構成する１つのコンポーネントであり、ＵＳＢデバイスの挿抜検出など、ＵＳＢデバイスに共通する汎用的な機能を実装したコンポーネントである。
【００４２】
図４の最下層に示す（Ｃ）デバイスは、ここでは、図１等を参照して説明したＵＳＢリーダライタ（ＵＳＢ  Ｒ／Ｗ）１０である。
なお、このＵＳＢリーダライタ（ＵＳＢ  Ｒ／Ｗ）１０は、図１等を参照して説明したように、
（ａ）ＵＳＢ−Ａコネクタ
（ｂ）ＵＳＢ−ｍｉｃｒｏＢコネクタ
これら２つのコネクタを有する。
従って、情報処理装置であるスマートホン３０に対して、
（ａ）ＵＳＢ−Ａコネクタが接続された状態、
（ｂ）ＵＳＢ−ｍｉｃｒｏＢコネクタが接続された状態、
これら２つの接続状態が設定可能となる。
【００４３】
さらに、
（ｂ）ＵＳＢ−ｍｉｃｒｏＢコネクタが接続された状態においては、
ＵＳＢ−Ａコネクタ側に、
（ｂ１）マイクロＳＤカード２１が挿入されている状態、
（ｂ２）その他の装置が接続された状態
これらの２つの状態が設定可能である。
【００４４】
ここでは、ＵＳＢリーダライタ（ＵＳＢ  Ｒ／Ｗ）１０の設定が、上記の状態（ｂ１）、すなわち、
情報処理装置であるスマートホン３０にＵＳＢ−ｍｉｃｒｏＢコネクタが接続され、一方のＵＳＢ−Ａコネクタ側にマイクロＳＤカード２１が挿入されている状態、
この接続状態における処理について説明する。
【００４５】
前述したように、再生アプリケーション５０は、予め規定された所定のアルゴリズムに従ってコンテンツを格納したメディア、すなわちＵＳＢリーダライタ１０に装着された記録メディア（マイクロＳＤカード２１）との認証処理を実行し、認証成立を条件として、記録メディア（マイクロＳＤカード２１）からコンテンツを読み出して再生処理を実行する。
【００４６】
しかし、図４に示す情報処理装置であるスマートホン３０は、ＯＳ（Ｏｐｅｒａｔｉｏｎ  Ｓｙｓｔｅｍ）としてＡｎｄｒｏｉｄ（登録商標）を搭載したスマートホン３０である。
このようなＡｎｄｒｏｉｄ（登録商標）端末では、ＵＳＢポートの装着デバイスがメモリデバイスであると認識した場合、メモリデバイスに対するデータの記録、あるいはメモリデバイスからのデータ読み取り処理のみを許容し、読み書きデータ以外の例えばコマンドの入出力を禁止してしまう。
【００４７】
具体的には、ファームウェアレイヤのマスストレージクラス（ＭＳＣ）６２が、接続されたＵＳＢデバイスが記憶装置であると判定すると、ＯＳベースの制御によって、アプリケーションレイヤのいかなるアプリケーションも、読み書きデータ以外の例えばコマンドの入出力を行うことができなくなる。
【００４８】
従って再生アプリケーション５０がリーダライタ１０に装着された記録メディア（マイクロＳＤカード２１）との認証処理を実行しようとしても認証コマンドの送受信が実行できなくなる。この結果、認証処理が実行できず、認証成立を条件としたメディア（マイクロＳＤカード２１）からのコンテンツ読み出し、再生処理も実行できなくなる。
【００４９】
図４には、記録再生データパス７１と、セキュリティコマンドパス８１を示している。
記録再生データパス７１は、ホスト（スマートホン３０）の再生アプリケーション５０と、デバイス（ＵＳＢリーダライタ１０）に装着された記録メディア（マイクロＳＤカード２１）間の記録再生用データファイルの送受信パスである。
セキュリティコマンドパス８１は、例えば、再生アプリケーション５０と、マイクロＳＤカード２１との認証処理において送受信されるコマンドのパスを示している。
【００５０】
マイクロＳＤカード２１と再生アプリケーション５０との間のパスは、いずれのパスも以下の経路となる。
マイクロＳＤカード２１〜ＵＳＢリーダライタ１０〜マスストレージクラス（ＭＳＣ）６２〜ファイルシステム６１〜再生アプリケーション５０
【００５１】
記録再生データは、この記録再生データパス７１を経由してマイクロＳＤカード２１と再生アプリケーション５０との間で転送される。
しかし、例えば、再生アプリケーション５０と、マイクロＳＤカード２１との認証処理において送受信される認証コマンドや認証データは、図４に示すセキュリティコマンドパス８１を経由したコマンド転送が許容されない。
ＵＳＢポートに接続されたデバイスが、ストレージデバイスであると判定されると、ＯＳ制御によってアプリケーションはコマンド転送が禁止されてしまうからである。
【００５２】
先に説明したように、ＯＳ（Ｏｐｅｒａｔｉｏｎ  Ｓｙｓｔｅｍ）としてＡｎｄｒｏｉｄ（登録商標）を搭載したＡｎｄｒｏｉｄ（登録商標）端末の一部機種では、ＵＳＢポートの装着デバイスがメモリデバイスであると認識した場合、メモリデバイスに対するデータの記録、あるいはメモリデバイスからのデータ読み取り処理のみを許容し、読み書きデータ以外の例えばコマンドの入出力を禁止してしまう。
すなわち、ファームウェアレイヤのマスストレージクラス（ＭＳＣ）６２が、スマートホン等のホストに接続されたＵＳＢデバイスが記憶装置であると判断すると、ＯＳベースの制御によって、アプリケーションレイヤのいかなるアプリケーションも、読み書きデータ以外の例えばコマンドの転送を実行できなくなる。
【００５３】
図５は、Ａｎｄｒｏｉｄ（登録商標）３．１以降において利用可能となったＵＳＢホストＡＰＩ（ＵＳＢ  ＨＯＳＴ  ＡＰＩ）６４をファームウェア（ＦＷ）レイヤに設定した構成例におけるセキュリティコマンドパス８２の設定例を示している。
【００５４】
ＵＳＢホストＡＰＩ（ＵＳＢ  ＨＯＳＴ  ＡＰＩ）６４は、ＵＳＢホスト機能、すなわちＵＳＢデバイスに対する制御機能を持ち、ＵＳＢデバイスとアプリケーションとのデータ転送制御機能を提供するＡＰＩである。
この場合、ＵＳＢデバイスはメディア（マイクロＳＤカード２１）を装着したＵＳＢリーダライタ１０であり、ＵＳＢホストＡＰＩ（ＵＳＢ  ＨＯＳＴ  ＡＰＩ）６４は、このメディア（マイクロＳＤカード２１）を装着したＵＳＢリーダライタ１０に対する制御を行うことが可能となる。
【００５５】
図５には、ＵＳＢホストＡＰＩ（ＵＳＢ  ＨＯＳＴ  ＡＰＩ）６４を持つ設定において想定される記録再生データパス７２と、セキュリティコマンドパス８２を示している。
これらの２つのパスを個別に利用してデータ転送が可能であれば、メディア（マイクロＳＤカード２１）を装着したＵＳＢリーダライタ１０とアプリケーション５０間において認証コマンドの送受信と記録再生データの送受信が可能となる。
【００５６】
しかし、図５に示すようにＵＳＢホストＡＰＩ（ＵＳＢ  ＨＯＳＴ  ＡＰＩ）６４は、ファームウェア（ＦＷ）レイヤの一つのコンポーネントに過ぎず、例えば、マスストレージクラス６２による制御権より優位性を持つコンポーネントではない。
従って、情報処理装置であるスマートホン３０のＵＳＢポートに接続されたデバイスがストレージデバイスであると認識され、ＯＳ制御下でマスストレージクラス６２による制御が開始された以降、すなわち、マスストレージクラス（ＭＳＣ）マウント状態設定後は、マスストレージクラス６２を介した記録再生データの転送のみが許容される。
【００５７】
結果として、ＵＳＢホストＡＰＩ（ＵＳＢ  ＨＯＳＴ  ＡＰＩ）６４を介したセキュリティコマンドの転送は禁止される。すなわち図５に示すセキュリティコマンドパス８２を利用した認証コマンド等の転送を行うことはできない。
従って、この図５に示すＵＳＢホストＡＰＩ（ＵＳＢ  ＨＯＳＴ  ＡＰＩ）６４を有する構成においても、やはり、図４の構成と同様、マスストレージクラス（ＭＳＣ）６２よるデータ転送制御が開始された後は、再生アプリケーション５０と、ＵＳＢリーダライタ１０に装着されたマイクロＳＤカード２１間のセキュリティコマンドの転送は実行できず、認証成立を条件としたコンテンツの読み出しや再生は行うことができない。
【００５８】
［３．メディアに対する記録再生データと、セキュアコマンドの転送を可能とする構成について］
次に、上記の問題を解決し、メディアに対する記録再生データと、セキュアコマンド、いずれのデータの転送も可能とした構成例について説明する。
【００５９】
図６は、本開示の一実施例に係るＵＳＢリーダライタ１００の構成例について説明する図である。
図６に示すＵＳＢリーダライタ１００は、先に図１他を参照して説明したＵＳＢリーダライタ１０と同様、
（ａ）ＵＳＢ−Ａコネクタ
（ｂ）ＵＳＢ−ｍｉｃｒｏＢコネクタ
（ｃ）記録メディア装着用カードスロット
これらの構成を有している。
【００６０】
本開示のＵＳＢリーダライタ１００も、ＵＳＢリーダライタ１００のＵＳＢ−Ａコネクタ側のカードスロットに記録メディア２００、例えばマイクロＳＤカードを装着可能な構成を持つ。さらに、ＵＳＢ−ｍｉｃｒｏＢコネクタをスマートホン等の情報処理装置３００のＵＳＢ−ｍｉｃｒｏＢポートに差し込むことで、情報処理装置３００は、記録メディア２００に対するアクセス（データ読み書き）を行うことができる。
【００６１】
図６に示すＵＳＢリーダライタ１００は、図６に示すように、
（１）マスストレージクラス（ＭＳＣ）対応データ転送部１１０、
（２）非マスストレージクラス（ＭＳＣ）対応データ転送部１２０、
これらの２つのデータ転送部を有する。
【００６２】
なお、これら２つのデータ転送部は、いずれもＵＳＢリーダライタ１００のＵＳＢ−ｍｉｃｒｏＢコネクタを介して、情報処理装置３００とのデータ転送を実行する。
すなわち、これら２つのデータ転送部は、物理的には１つのデータ転送部として構成されるが、論理的に異なるカテゴリのデータを転送可能とした論理的な２つのデータ転送部である。
もう一方のＵＳＢ−Ａコネクタ側のカードスロットにはマイクロＳＤカード等の記録メディア２００が装着可能である。
【００６３】
図６に示すＵＳＢリーダライタ１００の２つのデータ転送部は、それぞれ以下のデータ転送処理に利用される。
（１）マスストレージクラス（ＭＳＣ）対応データ転送部１１０は、記録メディア２００を利用した記録再生データのデータ転送処理に利用される。
（２）非マスストレージクラス（ＭＳＣ）対応データ転送部１２０は、記録メディア２００を利用した記録再生データ以外のデータ、例えば認証処理に適用する認証コマンド塔の認証用データの転送に利用されるデータ転送部である。
【００６４】
なお、非マスストレージクラス（ＭＳＣ）対応データ転送部１２０は、例えばベンダーユニーククラス対応データ転送部、あるいはＨＩＤ（Ｈｕｍａｎ  Ｉｎｔｅｒｆａｃｅ  Ｄｅｖｉｃｅ）クラス対応データ転送部等によって構成可能である。
ベンダーユニーククラス対応データ転送部や、ＨＩＤ（Ｈｕｍａｎ  Ｉｎｔｅｒｆａｃｅ  Ｄｅｖｉｃｅ）クラスは、情報処理装置３００側の例えばファームウェア（ＦＷ）レイヤに設定可能な１つのコンポーネントとしてＵＳＢ規格で定められているクラスである。ストレージデバイス以外のデバイス、例えばキーボードやマウスなどの様々な入力デバイスを接続した場合のデータやコマンドの入出力制御を実行するプログラムを含むコンポーネントである。
【００６５】
このように、非マスストレージクラス（ＭＳＣ）対応データ転送部１２０は、ベンダーユニーククラス対応データ転送部や、ＨＩＤクラス対応データ転送部として構成可能である。なお、非マスストレージクラス（ＭＳＣ）対応データ転送部１２０は、ベンダーユニーククラス対応データ転送部や、ＨＩＤクラス対応データ転送部に限定されるものではなく、その他の構成とすることも可能である。マスストレージクラス（ＭＳＣ）が制御する転送データと異なるカテゴリのデータ、具体的には認証コマンド等を転送可能なデータ転送部であればよい。
【００６６】
図７は、本開示のＵＳＢリーダライタ１００のデータ転送部の詳細構成について説明する図である。
ＵＳＢリーダライタ１００には、図６を参照して説明したように、
マスストレージクラス（ＭＳＣ）対応データ転送部１１０、
非マスストレージクラス（ＭＳＣ）対応データ転送部１２０、
これら２つのデータ転送部を有する。
これらは、いずれもＵＳＢリーダライタ１００のＵＳＢ−ｍｉｃｒｏＢコネクタを介したデータ転送部であり、物理的には１つのデータ転送部であるが、転送データの種類に応じて使い分けられる論理的に２つに分割されたデータ転送部である。
【００６７】
図７に示すように、ＵＳＢデバイスであるＵＳＢリーダライタ１００は、スマートホン等の情報処理装置３００からなるホスト（ＵＳＢホスト）とのデータ送受信を行う。
本実施例では、ＵＳＢリーダライタ１００のＵＳＢ−ｍｉｃｒｏＢコネクタを介してデータ転送が実行される。
ＵＳＢリーダライタ１００のＵＳＢ−Ａコネクタ側のカードスロットには記録メディア２００が装着される。
【００６８】
マスストレージクラス（ＭＳＣ）対応データ転送部１１０は、記録メディア２００に対する記録データ、または記録メディア２００からの再生データの転送処理に利用される。
非マスストレージクラス（ＭＳＣ）対応データ転送部１２０は、記録メディア２００を利用した記録再生データ以外のデータ、例えば認証処理に適用するコマンド等のデータ転送に利用される。
【００６９】
コントロールエンドポイント（Ｃｏｎｔｒｏｌ  ｅｎｄｐｏｉｎｔ）１３０は、ホスト（情報処理装置３００）とデバイス（ＵＳＢリーダライタ１００）間の制御情報転送用バッファである。例えば、データ転送モードの設定情報を格納する。
なお、このモード設定に応じて、例えばマスストレージクラス（ＭＳＣ）対応データ転送部１１０と、非マスストレージクラス（ＭＳＣ）対応データ転送部１２０のいずれかが選択的に利用される。
【００７０】
マスストレージクラス（ＭＳＣ）対応データ転送部１１０は、
エンドポイント（Ｅｎｄｐｏｉｎｔ（Ｂｕｌｋ−ｉｎ））１１１、
エンドポイント（Ｅｎｄｐｏｉｎｔ（Ｂｕｌｋ−ｏｕｔ））１１２、
ＣＢＷ／ＣＳＷ／データ転送部（ＣＢＷ／ＣＳＷ／Ｄａｔａ  Ｔｒａｎｓｆｅｒ）１１３、
データリーダライタ部（ＤａｔａＲ／Ｗ）１１４、
コマンド処理部（ＳｅｅＱＶａｕｌｔ  Ｃｏｍｍａｎｄ）１１５、
メディアドライバ（ＳＤ  Ｄｒｉｖｅｒ）１１６、
これらの構成を有する。
【００７１】
エンドポイント（Ｅｎｄｐｏｉｎｔ（Ｂｕｌｋ−ｉｎ））１１１は、デバイス（ＵＳＢリーダライタ１００）からホスト（情報処理装置３００）側に向けたデータのバルク転送（大容量データを高信頼で転送するモード）時に利用される中間バッファであり、ホスト（情報処理装置３００）への出力データを格納する。
マスストレージクラス（ＭＳＣ）対応データ転送部１１０のエンドポイント（Ｅｎｄｐｏｉｎｔ（Ｂｕｌｋ−ｉｎ））１１１は、例えば、デバイス（ＵＳＢリーダライタ１００）のＵＳＢ−Ａコネクタ側に装着された記録メディア２００からの読み出しデータを格納して情報処理装置（ホスト）３００に出力する場合に利用される。
【００７２】
エンドポイント（Ｅｎｄｐｏｉｎｔ（Ｂｕｌｋ−ｏｕｔ））１１２は、ホスト（情報処理装置３００）側からデバイス（ＵＳＢリーダライタ１００）に向けたデータのバルク転送時に利用される中間バッファであり、ホスト（情報処理装置３００）からの入力データを格納する。
マスストレージクラス（ＭＳＣ）対応データ転送部１１０のエンドポイント（Ｅｎｄｐｏｉｎｔ（Ｂｕｌｋ−ｏｕｔ））１１２は、例えば、ＵＳＢリーダライタ１００のＵＳＢ−Ａコネクタ側に装着された記録メディア２００への書き込みデータをホストから受信し格納する場合に利用される。
【００７３】
これらのエンドポイントを用いたデータ転送は、バルク転送として実行される。このバルク転送処理に際して、転送データ本体の他、コマンドや、ステータス情報が転送される。
ＣＢＷ／ＣＳＷ／データ転送部（ＣＢＷ／ＣＳＷ／Ｄａｔａ  Ｔｒａｎｓｆｅｒ）１１３は、このコマンド、ステータス、データの各転送情報の制御を実行する。
【００７４】
ＣＢＷは、コマンドブロックラッパー（Ｃｏｍｍａｎｄ  Ｂｌｏｃｋ  Ｗｒａｐｐｅｒ）であり、例えば、ホストがデバイスに対してＳＣＳＩコマンドを送るためのラッパーである。
ＣＳＷは、コマンドステータスラッパー（Ｃｏｍｍａｎｄ  Ｓｔａｔｕｓ  Ｗｒａｐｐｅｒ）であり、デバイス（ＵＳＢリーダライタ１００）がホスト（情報処理装置３００）に対してステータスを送るためのラッパー、すなわち転送データフォーマット生成部である。
ＣＢＷ／ＣＳＷ／データ転送部（ＣＢＷ／ＣＳＷ／Ｄａｔａ  Ｔｒａｎｓｆｅｒ）１１３は、ホスト（情報処理装置３００）から入力するＣＢＷからＳＣＳＩコマンドを取り出す処理や、デバイス（ＵＳＢリーダライタ１００）の出力するステータスをＣＳＷに従ったデータフォーマットに設定する処理等を行う。
【００７５】
データリーダライタ部（ＤａｔａＲ／Ｗ）１１４は、ホスト（情報処理装置３００）から入力するデータの記録メディア２００に対する記録要求または再生要求（Ｒｅａｄ／Ｗｒｉｔｅ  Ｒｅｑｕｅｓｔ）に応じて、記録メディア２００に対する記録再生コマンド（ＳＤコマンド）を用いて記録メディア２００に対するデータの読み書き（Ｒｅａｄ／Ｗｒｉｔｅ）を実行する。
【００７６】
コマンド処理部（ＳｅｅＱＶａｕｌｔ  Ｃｏｍｍａｎｄ）１１５はホスト（情報処理装置３００）から入力する各種のセキュリティコマンド実行要求に応じて、記録メディア２００に対するセキュリティコマンド（ＳＤコマンド）を利用したコマンドを適用した処理、例えば認証処理に必要なデータ転送制御を実行する。
【００７７】
コマンド処理部（ＳｅｅＱＶａｕｌｔ  Ｃｏｍｍａｎｄ）１１５は、次世代著作権保護技術の規格であるＳＱＶ（ＳｅｅＱＶａｕｌｔ）に従ってコンテンツ再生を実行する場合に必要となる認証コマンド等のセキュリティコマンドに関する処理を実行する。
なお、ＳＱＶ（ＳｅｅＱＶａｕｌｔ）は、ＳＤカード等のフラッシュメモリに利用制御コンテンツ、例えば著作権管理対象コンテンツを記録、再生する場合に、所定の利用管理下での処理を実行させることを可能としたコンテンツ利用管理を実現する規格である。
【００７８】
メディアドライバ（ＳＤ  Ｄｒｉｖｅｒ）１１６は、ＵＳＢリーダライタ１００のＵＳＢ−Ａコネクタ側のカードスロットに装着された記録メディア２００、例えばマイクロＳＤカードに対応するドライバである。
記録メディア２００、例えばマイクロＳＤカードに対するデータ記録、読み取り、コマンド転送処理を実行する。
【００７９】
一方、非スストレージクラス（ＭＳＣ）対応データ転送部１２０は、
エンドポイント（Ｅｎｄｐｏｉｎｔ（Ｂｕｌｋ−ｉｎ））１２１、
エンドポイント（Ｅｎｄｐｏｉｎｔ（Ｂｕｌｋ−ｏｕｔ））１２２、
これらの構成を有する。
【００８０】
エンドポイント（Ｅｎｄｐｏｉｎｔ（Ｂｕｌｋ−ｉｎ））１２１は、デバイス（（ＵＳＢリーダライタ１００）からホスト（情報処理装置３００）側に向けたデータのバルク転送時に利用される中間バッファであり、ホスト（情報処理装置３００）への出力データを格納する。
この非マスストレージクラス（ＭＳＣ）対応データ転送部１２０のエンドポイント（Ｅｎｄｐｏｉｎｔ（Ｂｕｌｋ−ｉｎ））１２１は、例えば、ホスト（情報処理装置３００）と、デバイス（ＵＳＢリーダライタ１００）のＵＳＢ−Ａコネクタ側に装着された記録メディア２００間の認証処理に適用する認証コマンドや認証用データ等をホスト（情報処理装置３００）に出力する場合に利用される。
【００８１】
エンドポイント（Ｅｎｄｐｏｉｎｔ（Ｂｕｌｋ−ｏｕｔ））１２２は、ホスト（情報処理装置３００）側からデバイス（ＵＳＢリーダライタ１００）に向けたデータのバルク転送時に利用される中間バッファであり、ホスト（情報処理装置３００）からの入力データを格納する。
この非マスストレージクラス（ＭＳＣ）対応データ転送部１２０のエンドポイント（Ｅｎｄｐｏｉｎｔ（Ｂｕｌｋ−ｏｕｔ））１２２は、例えば、ホスト（情報処理装置３００）と、デバイス（ＵＳＢリーダライタ１００）のＵＳＢ−Ａコネクタ側に装着された記録メディア２００間の認証処理に適用する認証コマンドや認証用データ等をホスト（情報処理装置３００）から入力する場合に利用される。
【００８２】
非マスストレージクラス（ＭＳＣ）対応データ転送部１２０を介して入出力する認証コマンド等のコマンドデータは、ホスト（情報処理装置３００）と、ＵＳＢリーダライタ１００のＵＳＢ−Ａコネクタ側のカードスロットに装着された記録メディア２００との間で送受信される。
【００８３】
このデータパスは、以下の各構成部を介したパスとなる。
非ＭＳＣ対応データ転送部１２０の２つのエンドポイント１２１，１２２、
ＭＳＣ対応データ転送部１１０のＣＢＷ／ＣＳＷ／データ転送部（ＣＢＷ／ＣＳＷ／Ｄａｔａ  Ｔｒａｎｓｆｅｒ）１１３、
ＭＳＣ対応データ転送部１１０のコマンド処理部（ＳｅｅＱＶａｕｌｔ  Ｃｏｍｍａｎｄ）１１５、
ＭＳＣ対応データ転送部１１０のメディアドライバ（ＳＤ  Ｄｒｉｖｅｒ）１１６、
これらの各構成部を介して、ホスト（情報処理装置３００）と、記録メディア２００との間で認証コマンド等が送受信され、認証処理が実行される。
【００８４】
なお、ホスト（情報処理装置３００）は、ＵＳＢリーダライタ１００のＵＳＢ−ｍｉｃｒｏＢコネクタを介して接続され、記録メディア２００は、ＵＳＢリーダライタ１００のＵＳＢ−Ａコネクタ側に設けられたカードスロットに装着された設定である。
【００８５】
［４．ＵＳＢリーダライタの回路構成例について］
次に、ＵＳＢリーダライタ１００の回路構成例について説明する。
本開示のＵＳＢリーダライタ１００は、図６、図７を参照して説明したように、
（１）マスストレージクラス（ＭＳＣ）対応データ転送部１１０、
（２）非マスストレージクラス（ＭＳＣ）対応データ転送部１２０、
これらの２つのデータ転送部を有する。
なお、これら２つのデータ転送部は、前述したように各々が異なるカテゴリのデータを転送する論理的な２つのデータ転送部である。
これら２つのデータ転送部は、いずれもＵＳＢリーダライタ１００のＵＳＢ−ｍｉｃｒｏＢコネクタを介して、情報処理装置３００とのデータ転送を実行する。
一方のＵＳＢ−Ａコネクタ側のカードスロットにはマイクロＳＤカード等の記録メディア２００が装着される。
【００８６】
本開示の２つのデータ転送部を有するＵＳＢリーダライタ１００の回路構成の説明の前に、従来型のＵＳＢリーダライタ、すなわち、上述した論理的な２つのデータ転送部を持たず、単一のデータ転送部のみを利用してデータ転送を行う従来型のＵＳＢリーダライタの回路構成例について、図８を参照して説明する。
【００８７】
図８は、従来型のＵＳＢリーダライタ１０の回路構成例である。
従来型のＵＳＢリーダライタ１０は、図８に示すように、
リーダライタ制御部１５０、
ＵＳＢ−Ａコネクタ１５１、
電圧変換部１５２、
ＵＳＢ−ｍｉｃｒｏＢコネクタ１６１、
これらを有する。
ＵＳＢ−Ａコネクタ１５１には、マイクロＳＤカード２１のカードスロットが設けられている。
【００８８】
ＵＳＢ−Ａコネクタ１５１、または、ＵＳＢ−ｍｉｃｒｏＢコネクタ１６１が、ＰＣや、スマートホン等の情報処理装置等のホストに接続される。
各コネクタ部記載のＶｂｕｓ，ＧＮＤは電顕用、Ｄ−，Ｄ＋は信号用の接続部を示している。Ｖｂｕｓは、５Ｖの電源に相当する。
【００８９】
ＵＳＢリーダライタは、これらのコネクタによって接続されたホストから５Ｖの電源供給を受け、電圧変換部１５２において変圧された３．３Ｖ（Ｖｃｃ）をリーダライタ制御部１５０に供給する。
電圧変換部１５２は、例えばＬＤＯ（Ｌｏｗ  Ｄｒｏｐ  Ｏｕｔ）やＤＣＤＣコンバータによって構成される。
【００９０】
リーダライタ制御部（Ｃａｒｄ  Ｒｅａｄｅｒ／Ｗｒｉｔｅｒ  ＩＣ）１５０は、３．３Ｖ（Ｖｃｃ）供給電源に基づいて、ＵＳＢリーダライタ１０内のデータ転送制御等を実行する。例えば、図示しないメモリに格納された制御プログラムに従ってデータ転送制御を実行する。
【００９１】
ここでは、ＵＳＢ−Ａコネクタ１５１側のカードスロットにマイクロＳＤカード２１が装着され、ＵＳＢ−ｍｉｃｒｏＢコネクタ１６１にスマートホン等の情報処理装置が接続された場合の処理について説明する。
【００９２】
リーダライタ制御部１５０は、ＵＳＢ−ｍｉｃｒｏＢコネクタ１６１に接続されたスマートホン等の情報処理装置であるホストから電力供給を受け、かつホスト主導の処理を実行する。
先に図４、図５を参照して説明したように、ＯＳ（Ｏｐｅｒａｔｉｏｎ  Ｓｙｓｔｅｍ）としてＡｎｄｒｏｉｄ（登録商標）を搭載したＡｎｄｒｏｉｄ（登録商標）端末としてのホストは、ＵＳＢポートの装着デバイスがメモリデバイスであると認識した場合、メモリデバイスに対するデータの記録、あるいはメモリデバイスからのデータ読み取り処理は許容するが、読み書きデータ以外の例えばコマンドの入出力は許容しない設定を行ってしまう場合がある。すなわち、図４、図５に示すファームウェアレイヤのマスストレージクラス（ＭＳＣ）６２が、スマートホン等のホストに接続されたＵＳＢ機器を記憶装置として認識すると、ＯＳベースの制御によって、アプリケーションレイヤのアプリケーションは、読み書きデータ以外の例えばコマンドの入出力を行うことができなくなる。
【００９３】
リーダライタ制御部１５０は、このホスト主導の制御に従い、ＵＳＢ−Ａコネクタ１５１側のカードスロットに装着されたマイクロＳＤカード２１に対する記録データの転送と、マイクロＳＤカード２１からの再生データの転送制御を行う。すなわち、リーダライタ制御部１５０は、ＵＳＢ−ｍｉｃｒｏＢコネクタ１６１に接続されたホストと、ＵＳＢ−Ａコネクタ１５１側のカードスロットに装着されたマイクロＳＤカード２１との間の記録再生データの転送制御を行うことになる。
先に図４、図５を参照して説明したように、ホストとマイクロＳＤカード２１間の認証コマンドの送受信は実行されない。
【００９４】
次に、図９を参照して、本開示の２つのデータ転送部を有するＵＳＢリーダライタ１００の回路構成の例について説明する。
本開示の２つのデータ転送部を有するＵＳＢリーダライタ１００は、図９に示すように、
リーダライタ制御部１５０、
ＵＳＢ−Ａコネクタ１５１、
電圧変換部１５２、
ＵＳＢ−ｍｉｃｒｏＢコネクタ１６１、
これらを有する。これらの構成は、先に図８を参照して説明した従来型のＵＳＢリーダライタ１０の回路とほぼ同様である。
【００９５】
本開示の２つのデータ転送部を有するＵＳＢリーダライタ１００は、図９に示すように、さらに、
電圧変換部１６２、
ＩＣリセット部（Ｒｅｓｅｔ  ＩＣ）１６３、
マイコン（ＭＣＵ）１６４、
これらの構成を有する。
【００９６】
ＵＳＢ−Ａコネクタ１５１には、マイクロＳＤカード等の記録メディア２００を装着するカードスロットが設けられている。
ＵＳＢ−Ａコネクタ１５１、または、ＵＳＢ−ｍｉｃｒｏＢコネクタ１６１が、ＰＣや、スマートホン等の情報処理装置等のホストに接続される。
各コネクタ部記載のＶｂｕｓ，ＧＮＤは電顕用、Ｄ−，Ｄ＋は信号用の接続部を示している。Ｖｂｕｓは、５Ｖの電源に相当する。
【００９７】
ＵＳＢリーダライタ１００は、ＵＳＢ−Ａコネクタ１５１にＰＣ等のホストが接続された場合、ＵＳＢ−Ａコネクタ１５１側の接続ホストから５Ｖの電源供給を受け、電圧変換部１５２において３．３Ｖ（Ｖｃｃ）に変圧して、供給電圧３．３Ｖをリーダライタ制御部１５０に供給する。
また、ＵＳＢ−ｍｉｃｒｏＢコネクタ１６１にスマートホン等のホストが接続された場合、ＵＳＢ−ｍｉｃｒｏＢコネクタ１６１側の接続ホストから５Ｖの電源供給を受け、電圧変換部１６２において３．３Ｖ（Ｖｃｃ）に変圧して、供給電圧３．３Ｖをリーダライタ制御部１５０、ＩＣリセット部１６３、マイコン（ＭＣＵ：Ｍｉｃｒｏ  Ｃｏｍｐｕｔｅｒ  Ｕｎｉｔ）１６４に供給する。
【００９８】
電圧変換部１５２と電圧変換部１６２は、例えばＬＤＯ（Ｌｏｗ  Ｄｒｏｐ  Ｏｕｔ）やＤＣＤＣコンバータによって構成される。
【００９９】
リーダライタ制御部（Ｃａｒｄ  Ｒｅａｄｅｒ／Ｗｒｉｔｅｒ  ＩＣ）１５０は、３．３Ｖ（Ｖｃｃ）供給電源に基づいて、ＵＳＢリーダライタ１００内のデータ転送制御等を実行する。例えば、図示しないメモリに格納された制御プログラムに従ってデータ転送制御を実行する。
【０１００】
ＩＣリセット部１６３は、３．３Ｖ（Ｖｃｃ）供給電源に基づいて、リーダライタ制御部（Ｃａｒｄ  Ｒｅａｄｅｒ／Ｗｒｉｔｅｒ  ＩＣ）１５０のリセット信号入力部に、所定タイミングでリセット信号を出力する。
このリセット信号出力タイミングについては、図１０、図１１を参照して後段で説明する。
【０１０１】
マイコン（ＭＣＵ）１６４は、３．３Ｖ（Ｖｃｃ）供給電源に基づいて、リーダライタ制御部（Ｃａｒｄ  Ｒｅａｄｅｒ／Ｗｒｉｔｅｒ  ＩＣ）１５０の汎用入出力部（ＧＰＩＯ：Ｇｅｎｅｒａｌ  Ｐｕｒｐｏｓｅ  Ｉｎｐｕｔ／Ｏｕｔｐｕｔ）に対して、Ｈｉｇｈ信号とＬｏｗ信号を所定タイミングで切り換えて出力する。
このＧＰＩＯ入力信号の切り替えタイミングについては、図１０、図１１を参照して後段で説明する。
【０１０２】
次に、図９を参照して説明した本開示の２つのデータ転送部を有するＵＳＢリーダライタ１００の回路における各信号の時間経過に伴う遷移について、図１０、図１１を参照して説明する。
【０１０３】
図１０は、ＵＳＢリーダライタ１００に対する電源供給ホストがＵＳＢリーダライタ１００のＵＳＢ−Ａコネクタ１５１に接続された場合の信号遷移図である。
図１１は、ＵＳＢリーダライタ１００に対する電源供給ホストがＵＳＢリーダライタ１００のＵＳＢ−ｍｉｃｒｏＢコネクタ１６１に接続された場合の信号遷移図である。
【０１０４】
図１０、図１１には、上段から、
（１）Ｖｃｃ＿ａ
（２）Ｖｃｃ＿ｂ
（３）ＲＥＳＥＴ
（４）ＧＰＩＯ（Ｇｅｎｅｒａｌ  Ｐｕｒｐｏｓｅ  Ｉｎｐｕｔ／Ｏｕｔｐｕｔ）
これら（１）〜（４）の信号の遷移を示している。
再下段に示す時間軸（Ｔ）の左から右に時間が経過し、この時間経過に伴う信号の遷移を示している。
【０１０５】
（１）Ｖｃｃ＿ａは、リーダライタ制御部１５０に対するＵＳＢ−Ａコネクタ１５１側接続ホストからの供給電圧の遷移である。電源供給が開始されると３．３Ｖに設定される。
（２）Ｖｃｃ＿ｂは、リーダライタ制御部１５０に対するＵＳＢ−ｍｉｃｒｏＢコネクタ１６１側接続ホストからの供給電圧の遷移である。電源供給が開始されると３．３Ｖに設定される。
【０１０６】
（３）ＲＥＳＥＴは、リーダライタ制御部１５０に対してＩＣリセット部１６３から入力されるＲＥＳＥＴ信号の遷移である。ＲＥＳＥＴ信号が入力されていない状態では、Ｌｏｗに維持されるが、ＲＥＳＥＴ信号が入力されると信号値が所定時間Ｈｉｇｈに設定される。
【０１０７】
（４）ＧＰＩＯ（Ｇｅｎｅｒａｌ  Ｐｕｒｐｏｓｅ  Ｉｎｐｕｔ／Ｏｕｔｐｕｔ）は、リーダライタ制御部１５０のＧＰＩＯ部に対してマイコン（ＭＣＵ）１６４から入力されるＧＰＩＯ信号の遷移である。マイコン１６４の制御によってＨｉｇｈ、またはＬｏｗのいずれかの信号がリーダライタ制御部１５０のＧＰＩＯ部に入力される。
【０１０８】
まず、図１０に示す信号遷移図について説明する。
図１０は、ＵＳＢリーダライタ１００に対する電源供給ホストがＵＳＢリーダライタ１００のＵＳＢ−Ａコネクタ１５１に接続された場合の信号遷移図である。
例えば、ＵＳＢリーダライタ１００のＵＳＢ−Ａコネクタ１５１にＰＣ等の電力供給ホストが接続された場合の設定である。
具体的には、例えば、ＳＢ−Ａコネクタ１５１側にＰＣ、ＵＳＢ−ｍｉｃｒｏＢコネクタ１６１側にカメラなどが接続され、ＰＣとカメラ間でデータにの入出力が行われる場合の設定に相当する。
【０１０９】
図１０に示す時間ｔ１において、電源供給ホストがＵＳＢリーダライタ１００のＵＳＢ−Ａコネクタ１５１に接続されたとする。この場合、時間ｔ１において、リーダライタ制御部１５０の電源供給部（Ｖｃｃ＿ａ）に、ＵＳＢ−Ａコネクタ１５１の接続ホストから３．３Ｖの電源供給が開始される。
ＵＳＢリーダライタ１００は、この電源供給に応じて、リーダライタ制御部１５０のＧＰＩＯ（Ｇｅｎｅｒａｌ  Ｐｕｒｐｏｓｅ  Ｉｎｐｕｔ／Ｏｕｔｐｕｔ）部の入力信号値を検証する。
このＧＰＩＯ入力値がＬｏｗ信号であることを確認し、その後、ＵＳＢリーダライタ１００のＵＳＢ−Ａコネクタ１５１に接続されたホストの指示に応じたデータ入出力制御を開始する。
【０１１０】
次に、図１１に示す信号遷移図について説明する。
図１１は、ＵＳＢリーダライタ１００に対する電源供給ホストがＵＳＢリーダライタ１００のＵＳＢ−ｍｉｃｒｏＢコネクタ１６１に接続された場合の信号遷移図である。
具体的には、ＵＳＢリーダライタ１００のＵＳＢ−Ｂコネクタ１６１にスマートホン等が接続され、ＵＳＢ−Ａコネクタ１５１のカードスロット部にマイクロＳＤカードが装着された場合の設定に相当する。
【０１１１】
図１１に示す時間ｔ１において、電源供給ホストがＵＳＢリーダライタ１００のＵＳＢ−ｍｉｃｒｏＢコネクタ１６１に接続されたとする。この場合、時間ｔ１において、リーダライタ制御部１５０の電源供給部（Ｖｃｃ＿ｂ）と、ＩＣリセット部１６３と、マイコン（ＭＣＵ）１６４の各々にＵＳＢ−ｍｉｃｒｏＢコネクタ１６１の接続ホストから３．３Ｖの電源供給が開始される。
この電源供給開始後、以下に示すステップ（Ｓ１）〜（Ｓ３）の順で処理が行われる。
【０１１２】
（Ｓ１）マイコン（ＭＣＵ）１６４は、ＵＳＢ−ｍｉｃｒｏＢコネクタ１６１の接続ホストから３．３Ｖの電源供給が開始されると、リーダライタ制御部１５０のＧＰＩＯ（Ｇｅｎｅｒａｌ  Ｐｕｒｐｏｓｅ  Ｉｎｐｕｔ／Ｏｕｔｐｕｔ）部に対して、Ｈｉｇｈ信号を出力する。（図１１の時間ｔ２）
（Ｓ２）ＩＣリセット部１６３は、ＵＳＢ−ｍｉｃｒｏＢコネクタ１６１の接続ホストから３．３Ｖの電源供給が開始された後、所定時間（ｔ２〜ｔ３）経過後、リーダライタ制御部１５０のリセット信号入力部に対して、リセット信号を出力（図１１（３）のＲＥＳＥＴ信号＝Ｈｉｇｈ）する。（図１１の時間ｔ３）
（Ｓ３）リーダライタ制御部１５０は、ＩＣリセット部１６３からのリセット信号の入力に応じて、ＧＰＩＯ部に対する入力がＨｉｇｈ信号に維持されていることを確認する。（図１１の時間ｔ４）
【０１１３】
リーダライタ制御部１５０は、ＧＰＩＯ入力値がＨｉｇｈ信号であることを確認し、その後、ＵＳＢリーダライタ１００のＵＳＢ−ｍｉｃｒｏＢコネクタ１６１に接続されたホストの指示に応じたデータ入出力制御を開始する。
ただし、リーダライタ制御部１５０は、ＧＰＩＯ入力値がＨｉｇｈ信号である状態では、図６、図７を参照して説明した２つのデータ転送部を利用した異なるカテゴリのデータ（メディアを利用した記録再生データと、認証コマンド等の記録再生データ以外のデータ）の転送制御を実行する。すなわち、
（１）マスストレージクラス（ＭＳＣ）対応データ転送部１１０、
（２）非マスストレージクラス（ＭＳＣ）対応データ転送部１２０、
これらの２つのデータ転送部を利用したデータ転送制御を実行する。
【０１１４】
すなわち、リーダライタ制御部１５０は、ＧＰＩＯ入力値がＬｏｗ信号の設定である場合は、従来と同様の単一のデータ転送部を介したデータ転送制御を行うが、ＧＰＩＯ入力値がＨｉｇｈ信号の設定である場合、
（１）マスストレージクラス（ＭＳＣ）対応データ転送部１１０、
（２）非マスストレージクラス（ＭＳＣ）対応データ転送部１２０、
これらの２つのデータ転送部を利用したデータ転送制御を実行する。
具体的には、
（１）マスストレージクラス（ＭＳＣ）対応データ転送部１１０を利用した記録メディア２００に対する記録再生データの転送制御を実行し、併せて、
（２）非マスストレージクラス（ＭＳＣ）対応データ転送部１２０を利用した認証コマンドや認証用データ、その他のセキュリティ情報のデータ転送を行う。
【０１１５】
ＧＰＩＯ入力値がＨｉｇｈ信号の設定となるのは、ＵＳＢ−ｍｉｃｒｏＢコネクタ１６１に電源供給ホストが接続され、ＵＳＢ−Ａコネクタ１５１側に設定された記録メディア装着部に記録メディアが装着された場合等である。このような設定が検出されると、リーダライタ制御部１５０は、
（１）マスストレージクラス（ＭＳＣ）対応データ転送部１１０、
（２）非マスストレージクラス（ＭＳＣ）対応データ転送部１２０、
これらの２つのデータ転送部各々を利用してそれぞれ異なる種類のデータ転送を実行する。
【０１１６】
［５．ＵＳＢリーダライタを接続したホストの構成例と処理例について］
次に、ＵＳＢリーダライタを接続したホストの構成例と処理例について説明する。
以下に説明する構成例は、ＵＳＢリーダライタ１００と、ＯＳとしてＡｎｄｒｏｉｄ（登録商標）を搭載したスマートホン等の情報処理装置３００との間で実行されるデータ転送処理構成である。
以下に示す３つの構成例について順次、説明する。
（１）構成例Ａ（図１２、図１３）
（２）構成例Ｂ（図１４、図１５）
（３）構成例Ｃ（図１６、図１７）
【０１１７】
［５−１．構成例Ａについて］
図１２を参照して、本開示の１つのデータ転送構成例（構成例Ａ）について説明する。
図１２には、先に図４を参照して説明したレイヤ構成と同様、ＵＳＢリーダライタ１００を装着したスマートホン等の情報処理装置３００の処理レイヤを示している。
情報処理装置３００の処理レイヤは大きく以下の２つのレイヤに区分できる。
（Ａ）アプリケーション（ＡＰＰ）レイヤ
（Ｂ）ファームウェア（ＦＷ）レイヤ
これらの２つのレイヤである。
【０１１８】
（Ａ）アプリケーション（ＡＰＰ）レイヤは、情報処理装置３００が、様々なアプリケーション提供サイト等からダウンロードして追加記録するなど追加、変更、削除可が容易なプログラムのレイヤである。
一方、（Ｂ）ファームウェア（ＦＷ）レイヤは、情報処理装置３００に基本的に固定プログラムとして記録されたプログラムのレイヤである。
【０１１９】
なお、ＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）であるＡｎｄｒｏｉｄ（登録商標）ＯＳからなるＯＳレイヤは、図には示していないが、図１２の（Ａ）アプリケーションレイヤと、（Ｂ）ファームウェアレイヤの間に位置する。
ただし、（Ｂ）ファームウェアレイヤの一部構成、例えば、ファイルシステム（Ｆｉｌｅ  Ｓｙｓｔｅｍ）３１３や、マスストレージクラス（Ｍａｓｓ  Ｓｔｒａｇｅ  Ｃｌａｓｓ）３１２は、ＯＳレイヤの一部として解釈される場合もある。
【０１２０】
なお、図１２に示す各レイヤ内のプログラム等の構成は、本開示の処理において利用される一部の構成のみを示している。
例えば、情報処理装置３００には様々なアプリケーションが搭載可能であるが、図１２の（Ａ）アプリケーション（ＡＰＰ）レイヤには、本開示の処理に直接関連する１つのアプリケーションのみを示している。
図１２（Ａ）アプリケーション（ＡＰＰ）レイヤに示すアプリケーションは、メディアに格納されたコンテンツを読み出して再生処理を実行する再生アプリケーション３５０である。
この再生アプリケーション３５０は、予め規定された所定のアルゴリズムに従ってコンテンツを格納したメディアとの認証処理を実行し、認証成立を条件として、メディアからコンテンツを読み出して再生処理を実行する。
【０１２１】
再生アプリケーション３５０は、具体的には、例えば、次世代著作権保護技術の規格であるＳＱＶ（ＳｅｅＱＶａｕｌｔ）に従ってコンテンツ再生を実行するアプリケーションであるＳＱＶプレーヤ等によって構成可能である。
なお、ＳＱＶ（ＳｅｅＱＶａｕｌｔ）は、ＳＤカード等のフラッシュメモリに利用制御コンテンツ、例えば著作権管理対象コンテンツを記録、再生する場合に、所定の利用管理下での処理を実行させることを可能としたコンテンツ利用管理を実現する規格である。
【０１２２】
再生アプリケーション３５０は、コンテンツを格納したメディアとの認証処理が成立しない場合、メディアからのコンテンツ再生を実行することはできない。
認証処理が成立し、メディアの正当性が確認された場合にメディアからコンテンツを読み出し、再生を実行することができる。
【０１２３】
再生アプリケーション３５０は、再生アプリライブラリ（例えばＳＱＶライブラリ）３５１を有する。
再生アプリライブラリ３５１は、再生アプリケーション３５０のコンポーネントであり、再生アプリケーション３５０の実行する様々な処理のロジックを実装したロジック実装部である。
この再生アプリケーション３５０は、ＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）としてのＡｎｄｒｏｉｄ（登録商標）上で動作するアプリケーションである。
【０１２４】
（Ｂ）ファームウェア（ＦＷ）レイヤは、情報処理装置３００に基本的に固定プログラムとして記録されたソフトウェアレイヤである。
なお、図１２には、本開示の処理において利用される一部のファームウェアのみを示している。
図１２には、ファイルシステム（Ｆｉｌｅ  Ｓｙｓｔｅｍ）３１１と、マスストレージクラス（Ｍａｓｓ  Ｓｔｒａｇｅ  Ｃｌａｓｓ）３１２と、ＵＳＢホストドライバ３１３と、ＵＳＢホストＡＰＩ３１４を示している。
【０１２５】
ファイルシステム（Ｆｉｌｅ  Ｓｙｓｔｅｍ）３１１は、Ａｎｄｒｏｉｄ（登録商標）端末である情報処理装置３００のファームウェア（ＦＷ）レイヤを構成する１つのコンポーネントであり、所定のファイルシステム規定に従って記録メディア２００、例えばマイクロＳＤカードに対するデータの読み書き（Ｒｅａｄ／Ｗｒｉｔｅ）機能を実現するプログラムである。例えばＦＡＴ３２やｅｘＦＡＴなどのファイルシステム規定に従ってデータの読み書きを実行する。
【０１２６】
マスストレージクラス（ＭＳＣ：Ｍａｓｓ  Ｓｔｒａｇｅ  Ｃｌａｓｓ）３１２は、Ａｎｄｒｏｉｄ（登録商標）端末である情報処理装置３００のファームウェア（ＦＷ）レイヤを構成する１つのコンポーネントであり、マスストレージクラスホスト機能を実行するプログラムである。
【０１２７】
マスストレージクラス（ＭＳＣ：Ｍａｓｓ  Ｓｔｏｒａｇｅ  Ｃｌａｓｓ）とはＵＳＢ規格で定められているＵＳＢメモリ等の補助記憶装置を接続するための仕様である。情報処理装置に接続されたＵＳＢ機器を記憶装置として認識して記憶装置用の制御を実行するためのドライバプログラムである。
このマスストレージクラス（ＭＳＣ：Ｍａｓｓ  Ｓｔｏｒａｇｅ  Ｃｌａｓｓ）を実装した機器では、外部接続するメディアに対応した専用のドライバを個別にインストールすることなく、接続されたＵＳＢ機器をリムーバブルメディアとして認識し、データの記録や読み取りを行うことが可能となる。
【０１２８】
ＵＳＢホストドライバ３１３は、Ａｎｄｒｏｉｄ（登録商標）端末である情報処理装置３００のファームウェア（ＦＷ）レイヤを構成する１つのコンポーネントであり、ＵＳＢデバイスの挿抜検出などのＵＳＢにおける汎用的な機能を実装している。
【０１２９】
ＵＳＢホストＡＰＩ３１４は、先に図５を参照して説明したように、Ａｎｄｒｏｉｄ（登録商標）３．１以降において利用可能となったコンポーネントであり、ＵＳＢホスト機能、すなわちＵＳＢデバイスに対する制御機能を持ち、ＵＳＢデバイスとアプリケーションとのデータ転送制御機能を提供するＡＰＩである。
図１２に示す構成において、ＵＳＢデバイスは、メディア（記録メディア２００）を装着したＵＳＢリーダライタ１００であり、ＵＳＢホストＡＰＩ（ＵＳＢ  ＨＯＳＴ  ＡＰＩ）３１４は、記録メディア２００を装着したＵＳＢリーダライタ１００に対する制御を行うことが可能となる。
【０１３０】
図１２の最下層に示す（Ｃ）デバイスは、ＵＳＢリーダライタ（ＵＳＢ  Ｒ／Ｗ）１００である。ＵＳＢリーダライタ１００は、図１２に示すように、
（１）マスストレージクラス（ＭＳＣ）対応データ転送部１１０、
（２）非マスストレージクラス（ＭＳＣ）対応データ転送部１２０、
これらの２つのデータ転送部を有する。
なお、前述したように、これら２つのデータ転送部は、物理的には１つのデータ転送部であるが、各々が異なるカテゴリのデータを転送する論理的な２つのデータ転送部として構成される。
【０１３１】
これら２つのデータ転送部は、いずれもＵＳＢリーダライタ１００のＵＳＢ−ｍｉｃｒｏＢコネクタを介して、情報処理装置３００とのデータ転送を実行する。
一方のＵＳＢ−Ａコネクタ側のカードスロットにはマイクロＳＤカード等の記録メディア２００が装着される。
非マスストレージクラス（ＭＳＣ）対応データ転送部１２０は、一例として、例えばベンダーユニーククラス対応データ転送部や、ＨＩＤ（Ｈｕｍａｎ  Ｉｎｔｅｒｆａｃｅ  Ｄｅｖｉｃｅ）クラス対応データ転送部によって構成可能である。
【０１３２】
このＵＳＢリーダライタ（ＵＳＢ  Ｒ／Ｗ）１００は、
（ａ）ＵＳＢ−Ａコネクタ
（ｂ）ＵＳＢ−ｍｉｃｒｏＢコネクタ
これら２つのコネクタを有する。
従って、スマートホン等の情報処理装置３００に対して、
（ａ）ＵＳＢ−Ａコネクタが接続された状態、
（ｂ）ＵＳＢ−ｍｉｃｒｏＢコネクタが接続された状態、
これら２つの接続状態が設定可能となる。
【０１３３】
さらに、
（ｂ）ＵＳＢ−ｍｉｃｒｏＢコネクタが接続された状態、
この状態においては、
ＵＳＢ−Ａコネクタ側に
（ｂ１）マイクロＳＤカード等の記録メディア２００が挿入されている状態、
（ｂ２）その他の装置が接続された状態
これらの２つの状態がある。
【０１３４】
ここでは、ＵＳＢリーダライタ（ＵＳＢ  Ｒ／Ｗ）１００の設定が、上記の状態（ｂ１）、すなわち、
スマートホン等の情報処理装置３００にＵＳＢ−ｍｉｃｒｏＢコネクタが接続され、一方のＵＳＢ−Ａコネクタ側にマイクロＳＤカード等の記録メディア２００が挿入されている状態、
この接続状態における処理について説明する。
【０１３５】
再生アプリケーション３５０は、予め規定された所定のアルゴリズムに従ってコンテンツを格納したメディア、すなわちＵＳＢリーダライタ１００に装着されたマイクロＳＤカード等の記録メディア２００との認証処理を実行し、認証成立を条件として、記録メディア２００からコンテンツを読み出して再生処理を実行する。
【０１３６】
図１２に示すスマートホン等の情報処理装置３００は、ＯＳ（Ｏｐｅｒａｔｉｏｎ  Ｓｙｓｔｅｍ）としてＡｎｄｒｏｉｄ（登録商標）を搭載した情報処理装置３００である。
先に図４等を参照して説明したＡｎｄｒｏｉｄ（登録商標）端末では、ＵＳＢポートの装着デバイスがメモリデバイスであると認識した場合、メモリデバイスに対するデータの記録、あるいはメモリデバイスからのデータ読み取り処理は許容するが、読み書きデータ以外の例えばコマンドの入出力は許容しない設定となってしまう。
すなわち、ファームウェアレイヤのマスストレージクラス（ＭＳＣ）が、接続されたＵＳＢ機器を記憶装置として認識すると、ＯＳベースの制御によって、アプリケーションレイヤのいかなるアプリケーションも、読み書きデータ以外の例えばコマンドの入出力が禁止される。
【０１３７】
しかし、図１２に示す本開示の構成において、ＵＳＢホストである（情報処理装置３００）のＡｎｄｒｏｉｄ（登録商標）上で動作する再生アプリケーション３５０は、ＵＳＢデバイスであるＵＳＢリーダライタ１００の２つのデータ転送部を利用して、記録メディア２００との記録再生データの転送と、認証処理等に用いるコマンドの転送を実現する。
すなわち、図１２に示す記録再生データパス４１１を介して記録メディア２００に対する記録再生データの転送を行い、図１２に示すセキュリティコマンドパス４１２を介して認証処理等に用いるコマンド等の転送を実行する。
【０１３８】
従って、再生アプリケーション３５０は、セキュリティコマンドパス４１２を介してリーダライタ１００に装着されたマイクロＳＤカード等の記録メディア２００との認証処理を実行し、認証処理の成立後に、記録再生データパス４１１を介して記録メディア２００からデータを読み出して、読み出しデータを再生することが可能となる。
【０１３９】
記録再生データパス４１１は、再生アプリケーション３５０と、マイクロＳＤカード等の記録メディア２００間の記録再生用データファイルの送受信パスである。
セキュリティコマンドパス４１２は、例えば、再生アプリケーション３５０と、記録メディア２００との認証処理において送受信されるコマンドのパスを示している。
【０１４０】
記録再生データパス４１１は、以下の経路となる。
記録メディア２００〜ＵＳＢリーダライタ１００のマスストレージクラス（ＭＳＣ）対応データ転送部１１０〜ＵＳＢホストドライバ３１３〜マスストレージクラス（ＭＳＣ）３１２〜ファイルシステム３１１〜再生アプリケーション３５０
記録再生データは、この記録再生データパス４１１を経由して記録メディア２００と再生アプリケーション３５０との間でデータ転送される。
【０１４１】
また、セキュリティコマンドパス４１２は、以下の経路となる。
記録メディア２００〜ＵＳＢリーダライタ１００の非マスストレージクラス（ＭＳＣ）対応データ転送部１２０〜ＵＳＢホストドライバ３１３〜ＵＳＢホストＡＰＩ３１４〜再生アプリケーション３５０
再生アプリケーション３５０と、記録メディア２００との認証処理において送受信される認証コマンドや認証データは、このセキュリティコマンドパス４１２を経由して記録メディア２００と再生アプリケーション３５０との間でデータ転送される。
【０１４２】
なお、これら、記録再生データとセキュリティコマンドとの２つの異なる種類のデータ転送は、ＵＳＢリーダライタ１００のリーダライタ制御部１５０の制御と、情報処理装置３００の再生アプリケーション３５０の双方の制御によって実現可能となる。
ＵＳＢリーダライタ１００のリーダライタ制御部１５０は、先に図９、図１１を参照して説明したようにＧＰＩＯ入力がＨｉｇｈの設定である場合に、
（１）マスストレージクラス（ＭＳＣ）対応データ転送部１１０、
（２）非マスストレージクラス（ＭＳＣ）対応データ転送部１２０、
これらの２つのデータ転送部を介した２つの異なる種類のデータ転送を許容したデータ転送制御を行う。
【０１４３】
また、情報処理装置３００の再生アプリケーション３５０は、ＵＳＢリーダライタ１００に装着された記録メディア２００からのデータ読み出しおよび再生処理に先行して、記録メディア２００との認証処理を実行する。この認証処理に際して、ＵＳＢホストＡＰＩ３１４を介した認証コマンドの送受信を実行する。
【０１４４】
このように、情報処理装置３００の再生アプリケーション３５０は、まず、セキュリティコマンドパス４１２、すなわちＵＳＢホストＡＰＩ３１４を介したパスを経由して認証コマンドの送受信を実行して記録メディア２００との認証処理を実行する。
この認証処理によって、認証が成立し、双方の正当性が確認された場合、情報処理装置３００の再生アプリケーション３５０は、記録再生データパス４１１を利用して記録メディア２００に記録されたデータの読み出しを行い、読み出しデータの再生処理を実行する。
【０１４５】
次に、図１３に示すシーケンス図を参照して図１２に示す２つのパスを利用した処理シーケンスについて説明する。
図１３に示すシーケンス図は、スマートホン等の情報処理装置３００が、ＵＳＢリーダライタ１００に装着された記録メディア２００との認証処理を実行し、認証成立を条件として、記録メディア２００からデータ（暗号化コンテンツ）を読み出して、読み出した暗号化コンテンツを復号して、再生処理を行なう場合の処理シーケンスを説明するシーケンス図である。
以下、各処理ステップについて、順次、説明する。
【０１４６】
（ステップＳ２０１）
まず、ステップＳ２０１において、情報処理装置３００のユーザ操作部を介してユーザがコンテンツ再生指示要求を入力する。
この要求は、情報処理装置３００の制御部の制御の下、再生アプリケーション３５０に入力される。
【０１４７】
（ステップＳ２０２）
再生アプリケーション３５０は、ユーザによるコンテンツ再生要求の入力に応じて、コンテンツを格納した記録メディア２００との認証処理を開始する。
この認証処理は、図１２を参照して説明したセキュリティコマンドパス４１２を利用して実行される。すなわち、セキュリティコマンドパス４１２を利用して再生アプリケーション３５０と記録デバイス２００間で認証処理に必要となる各種の認証コマンドや認証用データ等が送受信され、規定の認証アルゴリズムに従った認証処理が実行される。
【０１４８】
セキュリティコマンドパス４１２は、以下の各構成要素を経由したパスとして設定される。
（１）情報処理装置３００の再生アプリケーション３５０、
（２）情報処理装置３００のファームウェア（ＦＷ）のＵＳＢホストＡＰＩ３１４、
（３）情報処理装置３００のファームウェア（ＦＷ）のＵＳＢホストドライバ３１３、
（４）ＵＳＢリーダライタ１００の非マスストレージクラス（ＭＳＣ）対応データ転送部１２０、
（５）記録メディア２００、
再生アプリケーション３５０と、記録メディア２００との認証処理において送受信される認証コマンドや認証データ等は、このセキュリティコマンドパス４１２を経由して転送される。
【０１４９】
ステップＳ２０２において、このセキュリティコマンドパス４１２を利用した認証処理が実行され、認証が成立した場合に限り、ステップＳ２０３以下の処理を実行する。
認証が成立しない場合は、ステップＳ２０３以下の処理は実行されない。すなわち記録メディア２００からのデータ（暗号化コンテンツ）の読み出しと再生処理は実行されないことになる。
【０１５０】
（ステップＳ２０３〜Ｓ２０４）
ステップＳ２０２の認証処理において認証が成立した場合、再生アプリケーション３５０は、ステップＳ２０３〜Ｓ２０４において、記録メディア２００の記録データ（暗号化コンテンツ）の読み取り処理を実行する。
【０１５１】
このデータ読み取り処理は、図１２を参照して説明した記録再生データパス４１１を介して実行する。
記録再生データパス４１１は、以下の各構成要素を経由したパスとして設定される。
（１）情報処理装置３００の再生アプリケーション３５０、
（２）情報処理装置３００のファームウェア（ＦＷ）のファイルシステム３１１、
（３）情報処理装置３００のファームウェア（ＦＷ）のマスストレージクラス３１２、
（４）情報処理装置のファームウェア（ＦＷ）のＵＳＢホストドライバ３１３、
（５）ＵＳＢリーダライタ１００のマスストレージクラス（ＭＳＣ）対応データ転送部１１０、
（６）記録メディア２００、
再生アプリケーション３５０と、記録メディア２００との記録再生データの送受信は、この記録再生データパス４１１を利用して転送される。
【０１５２】
（ステップＳ２０５〜Ｓ２０６）
ステップＳ２０３〜Ｓ２０４において、記録メディア２００から再生用の暗号化コンテンツを取得した再生アプリケーション３５０は、ステップＳ２０５において、取得データである暗号化コンテンツの復号、デコード処理を実行し、ステップＳ２０６において、復号、デコード結果である再生データを出力部（ディスプレイ、スピーカ）に出力する。
【０１５３】
［５−２．構成例Ｂについて］
次に、図１４、図１５を参照して構成例Ｂについて説明する。
図１４は、先に［構成例Ａ］として説明した図１２に示す構成と同様、ＵＳＢリーダライタ１００を装着したスマートホン等の情報処理装置３００の処理レイヤを示している。
情報処理装置３００の処理レイヤは大きく以下の２つのレイヤに区分できる。
（Ａ）アプリケーション（ＡＰＰ）レイヤ
（Ｂ）ファームウェア（ＦＷ）レイヤ
これらの２つのレイヤである。
【０１５４】
構成例Ｂは、（Ｂ）ファームウェア（ＦＷ）レイヤに、コマンドデーモン（Ｃｏｍｍａｎｄ  Ｄａｅｍｏｎ）３１５を有する。
コマンドデーモン（Ｃｏｍｍａｎｄ  Ｄａｅｍｏｎ）３１６は、Ａｎｄｒｏｉｄ（登録商標）端末のファームウェア（ＦＷ）内の１つのコンポーネントとして設定され、アプリケーションに対して、ファイルシステム３１１経由以外のもう１つのマスストレージクラス（Ｍａｓｓ  Ｓｔｏｒａｇｅ  Ｃｌａｓｓ）３１２を介したＵＳＢデバイス（本例では記録メディア２００を装着したＵＳＢリーダライタ１００）へのアクセス機能を提供するコンポーネントである。
【０１５５】
すなわち、コマンドデーモン（Ｃｏｍｍａｎｄ  Ｄａｅｍｏｎ）３１６は、マスストレージクラス３１２を介して認証コマンド等の記録再生データ以外のデータの通信を実現する通信機能提供コンポーネント（プログラム）である。
【０１５６】
構成例Ｂでは、このコマンドデーモン（Ｃｏｍｍａｎｄ  Ｄａｅｍｏｎ）３１６を利用して、認証コマンドや認証データを情報処理装置３００の再生アプリケーション３５０と、記録メディア２００間での転送を実現する。
【０１５７】
なお、この構成例Ｂでは、ＵＳＢリーダライタ１００の２つのデータ転送部中、一方のマスストレージクラス（ＭＳＣ）対応データ転送部１１０のみを利用する。
記録再生データ、および認証処理に適用する認証コマンド等のデータのいずれもマスストレージクラス（ＭＳＣ）対応データ転送部１１０のみを介して転送する。
【０１５８】
再生アプリケーション３５０は、予め規定された所定のアルゴリズムに従ってコンテンツを格納したメディア、すなわちＵＳＢリーダライタ１００に装着されたマイクロＳＤカード等の記録メディア２００との認証処理を実行し、認証成立を条件として、記録メディア２００からコンテンツを読み出して再生処理を実行する。
【０１５９】
図１４に示すスマートホン等の情報処理装置３００は、ＯＳ（Ｏｐｅｒａｔｉｏｎ  Ｓｙｓｔｅｍ）としてＡｎｄｒｏｉｄ（登録商標）を搭載した情報処理装置３００である。
先に図４等を参照して説明したＡｎｄｒｏｉｄ（登録商標）端末では、ＵＳＢポートの装着デバイスがメモリデバイスであると認識した場合、メモリデバイスに対するデータの記録、あるいはメモリデバイスからのデータ読み取り処理は許容するが、読み書きデータ以外の例えばコマンドの入出力は許容しない設定となってしまう。
すなわち、ファームウェアレイヤのマスストレージクラス（ＭＳＣ）が、接続されたＵＳＢ機器を記憶装置として認識すると、ＯＳベースの制御によって、アプリケーションレイヤのいかなるアプリケーションも、読み書きデータ以外の例えばコマンドの入出力が禁止される。
【０１６０】
しかし、図１４に示す本開示の構成において、ＵＳＢホストである（情報処理装置３００）のＡｎｄｒｏｉｄ（登録商標）上で動作する再生アプリケーション３５０は、コマンドデーモン（Ｃｏｍｍａｎｄ  Ｄａｅｍｏｎ）３１５を利用して、記録メディア２００との認証処理等に用いるコマンドの転送を実現する。
【０１６１】
再生アプリケーション３５０は、図１４に示す記録再生データパス４２１を介して、記録メディア２００に対する記録再生データの転送を行い、図１４に示すセキュリティコマンドパス４２２を介して認証処理等に用いるコマンドの転送を実行する。
【０１６２】
再生アプリケーション３５０は、セキュリティコマンドパス４２２を介してリーダライタ１００に装着されたマイクロＳＤカード等の記録メディア２００との認証処理を実行し、認証処理の成立後に、記録再生データパス４２１を介して記録メディア２００からデータを読み出して、読み出しデータを再生することが可能となる。
【０１６３】
記録再生データパス４２１は、再生アプリケーション３５０と、マイクロＳＤカード等の記録メディア２００間の記録再生用データファイルの送受信パスである。
セキュリティコマンドパス４２２は、例えば、再生アプリケーション３５０と、記録メディア２００との認証処理において送受信されるコマンドのパスを示している。
【０１６４】
本構成例Ｂにおいて、記録再生データパス４２１は、以下の経路となる。
記録メディア２００〜ＵＳＢリーダライタ１００のマスストレージクラス（ＭＳＣ）対応データ転送部１１０〜ＵＳＢホストドライバ３１３〜マスストレージクラス（ＭＳＣ）３１２〜ファイルシステム３１１〜再生アプリケーション３５０
記録再生データは、この記録再生データパス４２１を経由して記録メディア２００と再生アプリケーション３５０との間でデータ転送される。
【０１６５】
また、セキュリティコマンドパス４２２は、以下の経路となる。
記録メディア２００〜ＵＳＢリーダライタ１００のマスストレージクラス（ＭＳＣ）対応データ転送部１１０〜ＵＳＢホストドライバ３１３〜マスストレージクラス（ＭＳＣ）３１２〜コマンドデーモン（Ｃｏｍｍａｎｄ  Ｄａｅｍｏｎ）３１５〜再生アプリケーション３５０
再生アプリケーション３５０と、記録メディア２００との認証処理において送受信される認証コマンドや認証データは、このセキュリティコマンドパス４２２を経由して記録メディア２００と再生アプリケーション３５０との間で転送される。
【０１６６】
次に、図１５に示すシーケンス図を参照して図１４に示す２つのパスを利用した処理シーケンスについて説明する。
図１５に示すシーケンス図は、スマートホン等の情報処理装置３００が、ＵＳＢリーダライタ１００に装着された記録メディア２００との認証処理を実行し、認証成立を条件として、記録メディア２００からデータ（暗号化コンテンツ）を読み出して、読み出した暗号化コンテンツを復号して、再生処理を行なう場合の処理シーケンスを説明するシーケンス図である。
以下、各処理ステップについて、順次、説明する。
【０１６７】
（ステップＳ２２１）
まず、ステップＳ２２１において、情報処理装置３００のユーザ操作部を介してユーザがコンテンツ再生指示要求を入力する。
この要求は、情報処理装置３００の制御部の制御の下、再生アプリケーション３５０に入力される。
【０１６８】
（ステップＳ２２２）
再生アプリケーション３５０は、ユーザによるコンテンツ再生要求の入力に応じて、コンテンツを格納した記録メディア２００との認証処理を開始する。
この認証処理は、図１４を参照して説明したセキュリティコマンドパス４２２を利用して実行される。すなわち、セキュリティコマンドパス４２２を利用して再生アプリケーション３５０と記録デバイス２００間で認証処理に必要となる各種の認証コマンドや認証用データ等が送受信され、規定の認証アルゴリズムに従った認証処理が実行される。
【０１６９】
セキュリティコマンドパス４２２は、以下の各構成要素を経由したパスとして設定される。
（１）情報処理装置３００の再生アプリケーション３５０、
（２）情報処理装置３００のファームウェア（ＦＷ）のコマンドデーモン３１５、
（３）情報処理装置３００のファームウェア（ＦＷ）のマスストレージクラス３１２、
（４）情報処理装置３００のファームウェア（ＦＷ）のＵＳＢホストドライバ３１３、
（５）ＵＳＢリーダライタ１００のマスストレージクラス（ＭＳＣ）対応データ転送部１１０、
（６）記録メディア２００、
再生アプリケーション３５０と、記録メディア２００との認証処理において送受信される認証コマンドや認証データ等は、このセキュリティコマンドパス４２２を経由して転送される。
【０１７０】
ステップＳ２２２において、このセキュリティコマンドパス４２２を利用した認証処理が実行され、認証が成立した場合に限り、ステップＳ２２３以下の処理を実行する。
認証が成立しない場合は、ステップＳ２２３以下の処理は実行されない。すなわち記録メディア２００からのデータ（暗号化コンテンツ）の読み出しと再生処理は実行されないことになる。
【０１７１】
（ステップＳ２２３〜Ｓ２２４）
ステップＳ２２２の認証処理において認証が成立した場合、再生アプリケーション３５０は、ステップＳ２２３〜Ｓ２２４において、記録メディア２００の記録データ（暗号化コンテンツ）の読み取り処理を実行する。
【０１７２】
このデータ読み取り処理は、図１４を参照して説明した記録再生データパス４２１を介して実行する。
記録再生データパス４２１は、以下の各構成要素を経由したパスとして設定される。
（１）情報処理装置３００の再生アプリケーション３５０、
（２）情報処理装置３００のファームウェア（ＦＷ）のファイルシステム３１１、
（３）情報処理装置３００のファームウェア（ＦＷ）のマスストレージクラス３１２、
（４）情報処理装置のファームウェア（ＦＷ）のＵＳＢホストドライバ３１３、
（５）ＵＳＢリーダライタ１００のマスストレージクラス（ＭＳＣ）対応データ転送部１１０、
（６）記録メディア２００、
再生アプリケーション３５０と、記録メディア２００との記録再生データの送受信は、この記録再生データパス４２１を利用して転送される。
【０１７３】
（ステップＳ２２５〜Ｓ２２６）
ステップＳ２２３〜Ｓ２２４において、記録メディア２００から再生用の暗号化コンテンツを取得した再生アプリケーション３５０は、ステップＳ２２５において、取得データである暗号化コンテンツの復号、デコード処理を実行し、ステップＳ２２６において、復号、デコード結果である再生データを出力部（ディスプレイ、スピーカ）に出力する。
【０１７４】
［５−３．構成例Ｃについて］
次に、図１６、図１７を参照して構成例Ｃについて説明する。
図１６は、先に［構成例Ａ］として説明した図１２に示す構成と同様、ＵＳＢリーダライタ１００を装着したスマートホン等の情報処理装置３００の処理レイヤを示している。
情報処理装置３００の処理レイヤは大きく以下の２つのレイヤに区分できる。
（Ａ）アプリケーション（ＡＰＰ）レイヤ
（Ｂ）ファームウェア（ＦＷ）レイヤ
これらの２つのレイヤである。
【０１７５】
構成例Ｃは、先に、図１２、図１３を参照して説明した［構成例Ａ］と同様、（Ｂ）ファームウェア（ＦＷ）レイヤに設定したＵＳＢホストＡＰＩ３１４を利用したデータ転送を行う。
ただし、構成例Ａでは、セキュリティコマンドパス４１２のみをＵＳＢホストＡＰＩ３１４を利用して設定した構成であったが、本［構成例Ｃ］では、図１６に示すように、セキュリティコマンドパス４３２のみならず、記録再生データパス４３１も、ＵＳＢホストＡＰＩ３１４を利用したパスとして設定している。
【０１７６】
なお、ＵＳＢホストＡＰＩ３１４は、先に図５を参照して説明したように、Ａｎｄｒｏｉｄ（登録商標）３．１以降において利用可能となったコンポーネントであり、ＵＳＢホスト機能、すなわちＵＳＢデバイスに対する制御機能を持ち、ＵＳＢデバイスとアプリケーションとのデータ転送制御機能を提供するＡＰＩである。
図１６に示す構成において、ＵＳＢデバイスは、メディア（記録メディア２００）を装着したＵＳＢリーダライタ１００であり、ＵＳＢホストＡＰＩ（ＵＳＢ  ＨＯＳＴ  ＡＰＩ）３１４は、記録メディア２００を装着したＵＳＢリーダライタ１００に対する制御を行うことが可能となる。
【０１７７】
さらに、本構成例Ｃでは、（Ａ）アプリケーション（ＡＰＰ）レイヤの再生アプリケーション３５０にファイルシステム３５２と、マスストレージクラス３５３を設定した点が構成例Ａ，Ｂと大きく異なる点である。
【０１７８】
構成例Ｃでは、記録メディア２００に対する記録再生データのアクセスに際して、（Ｂ）ファームウェア（ＦＷ）レイヤのファイルシステム３１１と、マスストレージクラス３１２を利用せず、（Ａ）アプリケーション（ＡＰＰ）レイヤの再生アプリケーション３５０内のファイルシステム３５２と、マスストレージクラス３５３を利用する。
【０１７９】
ＯＳとしてＡｎｄｒｏｉｄ（登録商標）を有するＡｎｄｒｏｉｄ（登録商標）端末である情報処理装置３００は、ＵＳＢポートに接続されたデバイスがストレージデバイスであると認識し、ＯＳ制御下でＦＷのマスストレージクラス３５３による制御が開始されると、ＦＷのマスストレージクラス３５３は、転送データを記録再生データのみに制限してしまう。
本構成例Ｃは、このような制限を回避するため、アプリケーションレイヤにファイルシステム３５２と、マスストレージクラス３５３を設定し、これらを利用した記録メディア２００に対するアクセス（データ読み書き）を実行する。
【０１８０】
本構成例Ｃにおいて、記録再生データパス４３１は、以下の経路となる。
記録メディア２００〜ＵＳＢリーダライタ１００のマスストレージクラス（ＭＳＣ）対応データ転送部１１０〜ＵＳＢホストドライバ３１３〜ＵＳＢホストＡＰＩ３１４〜再生アプリケーション３５０
【０１８１】
なお、再生アプリケーション３５０は、再生アプリケーション３５０内のマスストレージクラス（ＭＳＣ）３５３と、ファイルシステム３５２を利用して記録メディア２００から取得した再生データの処理、または記録メディア２００に対する記録データの生成を行う。
【０１８２】
また、セキュリティコマンドパス４３２は、以下の経路となる。
記録メディア２００〜ＵＳＢリーダライタ１００のマスストレージクラス（ＭＳＣ）対応データ転送部１１０〜ＵＳＢホストドライバ３１３〜ＵＳＢホストＡＰＩ３１４〜再生アプリケーション３５０
再生アプリケーション３５０と、記録メディア２００との認証処理において送受信される認証コマンドや認証データは、このセキュリティコマンドパス４３２を経由して記録メディア２００と再生アプリケーション３５０との間で転送される。
【０１８３】
次に、図１７に示すシーケンス図を参照して図１６に示す２つのパスを利用した処理シーケンスについて説明する。
図１７に示すシーケンス図は、スマートホン等の情報処理装置３００が、ＵＳＢリーダライタ１００に装着された記録メディア２００との認証処理を実行し、認証成立を条件として、記録メディア２００からデータ（暗号化コンテンツ）を読み出して、復号して、再生処理を行なう場合の処理シーケンスを説明するシーケンス図である。
以下、各処理ステップについて、順次、説明する。
【０１８４】
（ステップＳ２４１）
まず、ステップＳ２４１において、情報処理装置３００のユーザ操作部を介してユーザがコンテンツ再生指示要求を入力する。
この要求は、情報処理装置３００の制御部の制御の下、再生アプリケーション３５０に入力される。
【０１８５】
（ステップＳ２４２）
再生アプリケーション３５０は、ユーザによるコンテンツ再生要求の入力に応じて、コンテンツを格納した記録メディア２００との認証処理を開始する。
この認証処理は、図１６を参照して説明したセキュリティコマンドパス４３２を利用して実行される。すなわち、セキュリティコマンドパス４３２を利用して再生アプリケーション３５０と記録デバイス２００間で認証処理に必要となる各種の認証コマンドや認証用データ等が送受信され、規定の認証アルゴリズムに従った認証処理が実行される。
【０１８６】
セキュリティコマンドパス４３２は、以下の各構成要素を経由したパスとして設定される。
（１）情報処理装置３００の再生アプリケーション３５０、
（２）情報処理装置３００のファームウェア（ＦＷ）のＵＳＢホストＡＰＩ３１４、
（３）情報処理装置３００のファームウェア（ＦＷ）のＵＳＢホストドライバ３１３、
（４）ＵＳＢリーダライタ１００のマスストレージクラス（ＭＳＣ）対応データ転送部１１０、
（５）記録メディア２００、
再生アプリケーション３５０と、記録メディア２００との認証処理において送受信される認証コマンドや認証データ等は、このセキュリティコマンドパス４３２を経由して転送される。
【０１８７】
ステップＳ２４２において、このセキュリティコマンドパス４３２を利用した認証処理が実行され、認証が成立した場合に限り、ステップＳ２４３以下の処理を実行する。
認証が成立しない場合は、ステップＳ２４３以下の処理は実行されない。すなわち記録メディア２００からのデータ（暗号化コンテンツ）の読み出しと再生処理は実行されないことになる。
【０１８８】
（ステップＳ２４３〜Ｓ２４４）
ステップＳ２４２の認証処理において認証が成立した場合、再生アプリケーション３５０は、ステップＳ２４３〜Ｓ２４４において、記録メディア２００の記録データ（暗号化コンテンツ）の読み取り処理を実行する。
【０１８９】
このデータ読み取り処理は、図１６を参照して説明した記録再生データパス４３１を介して実行する。
記録再生データパス４３１は、以下の各構成要素を経由したパスとして設定される。
（１）情報処理装置３００の再生アプリケーション３５０（ファイルシステム３５２、マスストレージクラス３５３を含む）、
（２）情報処理装置３００のファームウェア（ＦＷ）のＵＳＢホストＡＰＩ３１４、
（３）情報処理装置のファームウェア（ＦＷ）のＵＳＢホストドライバ３１３、
（４）ＵＳＢリーダライタ１００のマスストレージクラス（ＭＳＣ）対応データ転送部１１０、
（５）記録メディア２００、
再生アプリケーション３５０と、記録メディア２００との記録再生データの送受信は、この記録再生データパス４３１を利用して転送される。
【０１９０】
（ステップＳ２４５〜Ｓ２４６）
ステップＳ２４３〜Ｓ２４４において、記録メディア２００から再生用の暗号化コンテンツを取得した再生アプリケーション３５０は、ステップＳ２４５において、取得データである暗号化コンテンツの復号、デコード処理を実行し、ステップＳ２４６において、復号、デコード結果である再生データを出力部（ディスプレイ、スピーカ）に出力する。
【０１９１】
［６．情報処理装置の再生アプリケーションの実行する処理のシーケンスについて］
次に、図１８に示すフローチャートを参照して、情報処理装置３００の再生アプリケーションが、ユーザからのコンテンツ再生要求に応じて、記録メディア２００との認証処理を開始するまでの処理シーケンスについて説明する。
【０１９２】
情報処理装置３００の再生アプリケーション３５０と、ＵＳＢリーダライタ２００に装着された記録メディア２００との間で実行する認証処理は、図１２〜図１７を参照して説明した３つの構成例Ａ〜Ｃのいずれかの構成を用いた処理として実行される。
図１８に示すフローは、再生アプリケーション３５０が、これら構成例Ａ〜Ｃのいずれの構成に従ったセキュリティコマンドパスを利用した処理が可能であるかを、順次確認して、利用可能なパスを利用して認証処理を開始するまでの処理手順を説明するフローチャートである。
フローに示す各ステップの処理について、順次、説明する。
【０１９３】
（ステップＳ３０１）
ステップＳ３０１において、情報処理装置３００の再生アプリケーション３５０は、ＵＳＢリーダライタ１００に装着された記録メディア２００対して、ホスト（情報処理装置３００）のＵＳＢホストＡＰＩと、デバイス（ＵＳＢリーダライタ１００）の非ＭＳＣ対応データ転送部を介したアクセスが可能か否かを判定する。
これは、先に図１２、図１３を参照して説明した［構成例Ａ］におけるセキュリティコマンドパス４１２が利用可能か否かを判定する処理である。
【０１９４】
なお、この判定処理は、例えば、再生アプリケーション３５０から記録メディア２００に対する認証コマンドの送信処理によって実行可能である。図１２に示すセキュリティコマンドパス４１２が存在することを想定して認証コマンドの送信処理をトライする。
コマンド送信に成功した場合は、ステップＳ３０１の判定はＹｅｓとなり、ステップＳ３０２に進む。
コマンド送信に失敗した場合は、ステップＳ３０１の判定はＮｏとなり、ステップＳ３０３に進む。
なお、コマンド送信に成功したか否かは、例えば記録デバイスからの応答（ＡＣＫ）の受信有無によって判定することができる。
【０１９５】
（ステップＳ３０２）
ステップＳ３０１の判定処理がＹｅｓと判定された場合は、ステップＳ３０２に進む。
ステップＳ３０２では、ホスト（情報処理装置３００）のＵＳＢホストＡＰＩと、デバイス（ＵＳＢリーダライタ１００）の非ＭＳＣ対応データ転送部を利用して認証処理を実行する。
これは、先に図１２、図１３を参照して説明した［構成例Ａ］におけるセキュリティコマンドパス４１２を利用した認証処理である。
【０１９６】
（ステップＳ３０３）
ステップＳ３０１の判定処理がＮｏと判定された場合、すなわち、図１２、図１３を参照して説明した［構成例Ａ］におけるセキュリティコマンドパス４１２を利用した認証コマンド送信に失敗した場合は、ステップＳ３０３に進む。
ステップＳ３０３において、情報処理装置３００の再生アプリケーション３５０は、ＵＳＢリーダライタ１００に装着された記録メディア２００に対して、コマンドデーモン（Ｃｏｍｍａｎｄ  Ｄａｅｍｏｎ）によるアクセスが可能か否かを判定する。
これは、先に図１４、図１５を参照して説明した［構成例Ｂ］におけるセキュリティコマンドパス４２２が利用可能か否かを判定する処理である。
【０１９７】
なお、この判定処理は、例えば、再生アプリケーション３５０から記録メディア２００に対する認証コマンドの送信処理によって実行可能である。図１４に示すセキュリティコマンドパス４２２が存在することを想定してコマンドデーモンを介した認証コマンドの送信処理をトライする。
コマンド送信に成功した場合は、ステップＳ３０３の判定はＹｅｓとなり、ステップＳ３０４に進む。
コマンド送信に失敗した場合は、ステップＳ３０３の判定はＮｏとなり、ステップＳ３０５に進む。
なお、コマンド送信に成功したか否かは、例えば記録デバイスからの応答（ＡＣＫ）の受信有無によって判定することができる。
【０１９８】
（ステップＳ３０４）
ステップＳ３０３の判定処理がＹｅｓと判定された場合は、ステップＳ３０４に進む。
ステップＳ３０４において、再生アプリケーション３５０は、ホスト（情報処理装置３００）のコマンドデーモン（Ｃｏｍｍａｎｄ  Ｄａｅｍｏｎ）とデバイス（ＵＳＢリーダライタ１００）のＭＳＣ対応データ転送部を利用して認証処理を実行する。
これは、先に図１４、図１５を参照して説明した［構成例Ｂ］におけるセキュリティコマンドパス４２２を利用した認証処理である。
【０１９９】
（ステップＳ３０５）
ステップＳ３０３の判定処理がＮｏと判定された場合、すなわち、図１４、図１５を参照して説明した［構成例Ｂ］におけるセキュリティコマンドパス４２２を利用した認証コマンド送信に失敗した場合は、ステップＳ３０５に進む。
【０２００】
ステップＳ３０３において、再生アプリケーション３５０は、ホスト（情報処理装置３００）のＵＳＢホストＡＰＩと、デバイス（ＵＳＢリーダライタ１００）のＭＳＣ対応データ転送部を利用して認証処理を実行する。
これは、先に図１６、図１７を参照して説明した［構成例Ｃ］におけるセキュリティコマンドパス４３２を利用した認証処理である。
【０２０１】
情報処理装置３００の再生アプリケーション３５０は、このように、認証コマンドの転送に成功するパスを順次、検索し、成功したパスを利用した認証処理を実行する。
なお、図１８に示すフローでは、構成例Ａ，Ｂ，Ｃの順番に従ってセキュリティコマンドパスを順次、利用可能か否かを判定するシーケンス例を説明したが、このパス確認の順番は様々な設定が可能である。例えば、構成例Ｂ，Ａ，Ｃの順に従ったパス利用可否判定や、構成例Ｃ，Ｂ，Ａの順に従ったパス利用の可否判定など、様々な順番でパス検索を行う設定としてよい。
【０２０２】
［７．情報処理装置（ホスト）に複数のＵＳＢリーダライタが装着された場合の処理について］
上述した実施例では、スマートホン等の情報処理装置に対して、１つのＵＳＢリーダライタが装着された場合の処理について説明した。
しかし、例えば図１９に示すように、ホスト装置としての情報処理装置（スマートホン）３００に対して、ＵＳＢハブ３８０を介して複数のＵＳＢリーダライタＡ，１００ａと，ＵＳＢリーダライタＢ，１００ｂが装着される場合がある。
【０２０３】
ＵＳＢリーダライタＡ，１００ａには、マイクロＳＤカード等の記録メディアＡ，２００ａが接続され、ＵＳＢリーダライタＢ，１００ｂには記録メディアＢ，２００ｂが装着されている。
このように情報処理装置（スマートホン）３００に対して、複数のＵＳＢリーダライタが接続されると、
各ＵＳＢリーダライタに対して、各々、
（１）記録再生データパス、
（２）セキュリティコマンドパス
これらの２つのパスが個別に設定される。
【０２０４】
図２０に情報処理装置３００に対して、２つのＵＳＢリーダライタＡ，１００ａ，ＵＳＢリーダライタＢ，１００ｂが装着された場合のパスの設定例を示す。
図２０に示すパス設定例は、先に図１２、図１３を参照して説明した「構成例Ａ」と同様の処理レイヤを適用した構成である。
【０２０５】
再下層には、情報処理装置３００に装着された２つのＵＳＢリーダライタＡ，１００ａ，ＵＳＢリーダライタＢ，１００ｂを示している。
ＵＳＢリーダライタＡ，１００ａには、記録メディアＡ，２００ａが接続され、ＵＳＢリーダライタＢ，１００ｂには記録メディアＢ，２００ｂが装着されている。
【０２０６】
情報処理装置３００の再生アプリケーション３５０は、これら２つのＵＳＢリーダライタＡ，１００ａ，ＵＳＢリーダライタＢ，１００ｂを選択的に利用して処理を行なう。
【０２０７】
情報処理装置３００と、ＵＳＢリーダライタＡ，１００ａ間の通信パスとして、
記録再生データパス５１１ａ、
セキュリティコマンドパス５１２ａ、
これら２つのパスが設定され、利用される。
同様に、情報処理装置３００と、ＵＳＢリーダライタＢ，１００ｂ間の通信パスとして、
記録再生データパス５１１ｂ、
セキュリティコマンドパス５１２ｂ、
これら２つのパスが設定され、利用される。
【０２０８】
情報処理装置３００と、ＵＳＢリーダライタＡ，１００ａ間の記録再生データパス５１１ａは、以下の経路となる。
記録メディアＡ，２００ａ〜ＵＳＢリーダライタＡ，１００ａのマスストレージクラス（ＭＳＣ）対応データ転送部１１０ａ〜ＵＳＢホストドライバ３１３〜マスストレージクラス（ＭＳＣ）３１２〜ファイルシステム３１１〜再生アプリケーション３５０
記録再生データは、この記録再生データパス５１１ａを経由して記録メディアＡ，２００ａと再生アプリケーション３５０との間でデータ転送される。
【０２０９】
また、情報処理装置３００と、ＵＳＢリーダライタＡ，１００ａ間のセキュリティコマンドパス５１２ａは、以下の経路となる。
記録メディアＡ，２００ａ〜ＵＳＢリーダライタＡ，１００ａの非マスストレージクラス（ＭＳＣ）対応データ転送部１２０ａ〜ＵＳＢホストドライバ３１３〜ＵＳＢホストＡＰＩ３１４〜再生アプリケーション３５０
再生アプリケーション３５０と、記録メディアＡ，２００ａとの認証処理において送受信される認証コマンドや認証データは、このセキュリティコマンドパス５１２ａを経由して記録メディアＡ，２００ａと再生アプリケーション３５０との間でデータ転送される。
【０２１０】
一方、情報処理装置３００と、ＵＳＢリーダライタＢ，１００ｂ間の記録再生データパス５１１ｂは、以下の経路となる。
記録メディアＢ，２００ｂ〜ＵＳＢリーダライタＢ，１００ｂのマスストレージクラス（ＭＳＣ）対応データ転送部１１０ｂ〜ＵＳＢホストドライバ３１３〜マスストレージクラス（ＭＳＣ）３１２〜ファイルシステム３１１〜再生アプリケーション３５０
記録再生データは、この記録再生データパス５１１ｂを経由して記録メディアＢ，２００ｂと再生アプリケーション３５０との間でデータ転送される。
【０２１１】
また、情報処理装置３００と、ＵＳＢリーダライタＢ，１００ｂ間のセキュリティコマンドパス５１２ｂは、以下の経路となる。
記録メディアＢ，２００ｂ〜ＵＳＢリーダライタＢ，１００ｂの非マスストレージクラス（ＭＳＣ）対応データ転送部１２０ｂ〜ＵＳＢホストドライバ３１３〜ＵＳＢホストＡＰＩ３１４〜再生アプリケーション３５０
再生アプリケーション３５０と、記録メディアＢ，２００ｂとの認証処理において送受信される認証コマンドや認証データは、このセキュリティコマンドパス５１２ｂを経由して記録メディアＢ，２００ｂと再生アプリケーション３５０との間でデータ転送される。
【０２１２】
このように、各ＵＳＢリーダライタに対して、
記録再生データパス、
セキュリティコマンドパス、
これら２つのパスが設定され、合計で４つのパスが設定されることになる。。
【０２１３】
情報処理装置３００の再生アプリケーション３５０は、この４つのパスの各々について、どの接続デバイス（マウントデバイス）に対して設定されているパスであるかを判別するために、各パスについてのマウントデバイス情報を取得する。
【０２１４】
再生アプリケーション３５０が取得可能なマウントデバイス情報について、図２１を参照して説明する。
【０２１５】
まず、ＵＳＢリーダライタＡ，１００ａと、ＵＳＢリーダライタＢ，１００ｂとの間に設定される記録再生データパス５１１ａ，５１１ｂに関するマウントデバイス情報について説明する。
再生アプリケーション３５０は、これらの記録再生データパス５１１ａ，５１１ｂに関するマウントデバイス情報をＡｎｄｒｏｉｄ（登録商標）ＯＳの利用するＬｉｎｕｘ（登録商標）システムファイルから得ることができる。
再生アプリケーション３５０は、ファームウェアレイヤのファイルシステム３１１、マスストレージクラス３１２の管理情報であるＬｉｎｕｘ（登録商標）システムファイルを参照して、各記録再生データパス５１１ａ，５１１ｂの接続先デバイスの情報（マウントデバイス情報）を取得する。
【０２１６】
例えば、図２１に示すように、
ＵＳＢリーダライタＡ，１００ａに対して設定された記録再生データパス５１１ａについては、
Ｌｉｎｕｘ（登録商標）システムファイルを参照して、Ｌｉｎｕｘ（登録商標）のマウントポイントを示すファイルパス（／ｓｔｒａｇｅ／ＵＳＢＤｒｉｖｅＡ）を取得する。
このファイルパス情報から、記録再生データパス５１１ａが、マウントポイント＝ＵＳＢＤｒｉｖｅＡの接続デバイス、すなわち、ＵＳＢリーダライタＡ，１００ａの接続パスであると判定することができる。
【０２１７】
同様に、ＵＳＢリーダライタＢ，１００ｂに対して設定された記録再生データパス５１１ｂについても、
Ｌｉｎｕｘ（登録商標）システムファイルを参照して、Ｌｉｎｕｘ（登録商標）のマウントポイントを示すファイルパス（／ｓｔｒａｇｅ／ＵＳＢＤｒｉｖｅＢを取得する。
このファイルパス情報から、記録再生データパス５１１ｂが、マウントポイント＝ＵＳＢＤｒｉｖｅＢの接続デバイス、すなわち、ＵＳＢリーダライタＢ，１００ｂの接続パスであると判定することができる。
【０２１８】
次に、ＵＳＢリーダライタＡ，１００ａと、ＵＳＢリーダライタＢ，１００ｂとの間に設定されるセキュリティコマンドパス５１２ａ，５１２ｂに関するマウントデバイス情報について説明する。
再生アプリケーション３５０は、これらのセキュリティコマンドパス５１２ａ，５１２ｂに関するマウントデバイス情報をＵＳＢホストＡＰＩ３１４が取得し管理する接続デバイス情報から得ることができる。
再生アプリケーション３５０は、ファームウェアレイヤのＵＳＢホストＡＰＩ３１４の管理情報である接続デバイス情報（マウントデバイス情報）を取得する。
【０２１９】
例えば、図２１に示すように、
ＵＳＢリーダライタＡ，１００ａに対して設定されたセキュリティコマンドパス５１２ａについて、ＵＳＢホストＡＰＩ３１４から、接続デバイス情報として、
ベンダーＩＤ（Ｖｅｎｄｏｒ  ＩＤ）＝０ｘ０１０１
プロダクトＩＤ（Ｐｒｏｄｕｃｔ  ＩＤ）＝０ｘ０００１
これら接続デバイス（ＵＳＢリーダライタＡ，１００ａ）に関する情報を取得する。
この接続デバイス情報から、セキュリティコマンドパス５１２ａに接続されたデバイスのベンダーＩＤとプロダクトＩＤを知ることが可能となる。
【０２２０】
同様に、ＵＳＢリーダライタＢ，１００ｂに対して設定されたセキュリティコマンドパス５１２ｂについて、ＵＳＢホストＡＰＩ３１４から、接続デバイス情報として、
ベンダーＩＤ（Ｖｅｎｄｏｒ  ＩＤ）＝０ｘ０１０８
プロダクトＩＤ（Ｐｒｏｄｕｃｔ  ＩＤ）＝０ｘ０００８
これら接続デバイス（ＵＳＢリーダライタＢ，１００ｂ）に関する情報を取得する。
この接続デバイス情報から、セキュリティコマンドパス５１２ｂに接続されたデバイスのベンダーＩＤとプロダクトＩＤを知ることが可能となる。
【０２２１】
このように、情報処理装置３００の再生アプリケーション３５０は、
２つの記録再生データパス５１１ａ，５１１ｂに対応する接続デバイス情報と、
２つのセキュリティコマンドパス５１２ａ，５１２ｂに対応する接続デバイス情報、
これらを取得することができる。
【０２２２】
しかし、２つの記録再生データパス５１１ａ，５１１ｂの各々に関する接続デバイス情報と、２つのセキュリティコマンドパス５１２ａ，５１２ｂに関する接続デバイス情報、これらの異なるパスの対応情報をえることができないという問題がある。
図２２を参照してこの問題点について説明する。
【０２２３】
図２２には、
（１）記録再生データパスの接続デバイス情報、
（２）セキュリティコマンドパスの接続デバイス情報、
これらの各接続デバイス情報を示している。
【０２２４】
（１）記録再生データパスの接続デバイス情報は、ファイルシステム３１１、マスストレージクラス３１２から得られるデバイス情報であり、
図２０、図２１に示す記録再生データパス５１１ａの接続デバイス情報である、
［接続デバイス情報１ａ］＝（／ｓｔｒａｇｅ／ＵＳＢＤｒｉｖｅＡ）と、
図２０、図２１に示す記録再生データパス５１１ｂの接続デバイス情報である、
［接続デバイス情報１ｂ］＝（／ｓｔｒａｇｅ／ＵＳＢＤｒｉｖｅＢ）、
これら２つの接続デバイス情報が含まれる。
【０２２５】
一方、（２）セキュリティコマンドパスの接続デバイス情報は、ＵＳＢホストＡＰＩ３１４から得られるデバイス情報であり、
図２０、図２１に示すセキュリティコマンドパス５１２ａの接続デバイス情報である、
［接続デバイス情報２ａ］＝（ベンダーＩＤ＝０ｘ０１０１、プロダクトＩＤ＝０ｘ０００１）と、
図２０、図２１に示すセキュリティコマンドパス５１２ｂの接続デバイス情報である、
［接続デバイス情報２ｂ］＝（ベンダーＩＤ＝０ｘ０１０８、プロダクトＩＤ＝０ｘ０００８）、
これら２つの接続デバイス情報が含まれる。
【０２２６】
このように、情報処理装置３００の再生アプリケーション３５０は、記録再生データパスに対する接続デバイス情報と、セキュリティコマンドパスに対応する接続デバイス情報を個別に取得することができる。
しかし、記録再生データパスに対応する接続デバイス情報と、セキュリティコマンドパスに対応する接続デバイス情報とを結びつける情報が得られない。
【０２２７】
例えば、図２２（１）に示す１つの記録再生データパスに対する［接続デバイス情報１ａ］＝（／ｓｔｒａｇｅ／ＵＳＢＤｒｉｖｅＡ）によって特定されるデバイスが、図２２（２）に示すセキュリティコマンドパスに関する接続デバイス情報である［接続デバイス情報２ａ］（＝（ベンダーＩＤ＝０ｘ０１０１、プロダクトＩＤ＝０ｘ０００１））によって特定されるデバイスであるのか、［接続デバイス情報２ｂ］（＝（ベンダーＩＤ＝０ｘ０１０８、プロダクトＩＤ＝０ｘ０００８））によって特定されるデバイスであるのか判別することができない。
【０２２８】
このように、記録再生データパスと、セキュリティコマンドパスとの対応付け、すなわち同一デバイスに対して設定された記録再生データパスとセキュリティコマンドパスとの組み合わせが把握できないという問題がある。
このパス対応が把握できないと、セキュリティコマンドパスを介して実行した認証処理対象のデバイスと、記録再生データパスを介して記録再生データを通信するデバイスが異なるデバイスに設定されるといった事態が発生する可能性がある。
【０２２９】
このような問題を解決し、記録再生データパスと、セキュリティコマンドパスとのパス対応付け、すなわち同一デバイスに対して設定された記録再生データパスとセキュリティコマンドパスとの組み合わせを把握するための処理について、図２３以下を参照して説明する。
【０２３０】
図２３に示すフローチャートは、情報処理装置３００の再生アプリケーション３５０によって実行される記録再生データパスとセキュリティコマンドパスとの組み合わせを把握するパス対応付け処理のシーケンスを説明するフローチャートである。
すなわち、同一デバイスに対応して設定された記録再生データパスとセキュリティコマンドパスとの組み合わせを確認するために行われるパス対応付け処理である。
フローに示す各ステップの処理について、順次、説明する。
【０２３１】
（ステップＳ５０１）
情報処理装置３００は、まずステップＳ５０１において、Ｌｉｎｕｘ（登録商標）システムファイル［ｐｒｏｃ／ｍｏｕｎｔｓ］からデバイスマウント情報の記述データを読み込む。
【０２３２】
Ｌｉｎｕｘ（登録商標）システムファイルに含まれるデバイスマウント情報の記述データの一例を図２４に示す。
【０２３３】
デバイスマウント情報の記述データには、図２４に示すように、以下の各データが含まれる。
（１）接続デバイス（マウントデバイス）が外部ストレージであるか否かを示すデータ（／ｄｅｖ／ｂｌｏｃｋの記述が含まれる場合は、外部ストレージであることを示す）
（２）ＵＳＢホストＡＰＩから取得される接続デバイス情報の記録ファイルに対するリンク情報（シンボリックリンク）の位置を示す情報（図の例では８：０）。
（３）接続デバイスポイント情報（ＵｓｂＤｒｉｖｅＡ）
【０２３４】
なお、Ｌｉｎｕｘ（登録商標）システムファイル［ｐｒｏｃ／ｍｏｕｎｔｓ］には、複数のデバイスマウント情報が含まれる。
【０２３５】
（ステップＳ５０２）
ステップＳ５０２において、Ｌｉｎｕｘ（登録商標）システムファイルの終端に達したか否かを判定する。終端に達した場合は処理を終了する。
終端に達していない場合は、ステップＳ５０３に進む。
【０２３６】
（ステップＳ５０３）
次に、情報処理装置３００は、ステップＳ５０３において、取得したデバイスマウント情報の記述データが、外部デバイスに関するデータであるか否かを判定する。
図２４を参照して説明したように、デバイスマウント情報の記述データには、接続デバイス（マウントデバイス）が外部ストレージであるか否かを示すデータ（／ｄｅｖ／ｂｌｏｃｋの記述が含まれる場合は、外部ストレージであることを示す）が含まれる。
このデータの有無に基づいて取得したデバイスマウント情報の記述データが、外部デバイスに関するデータであるか否かを判定する。
【０２３７】
デバイスマウント情報の記述データが、外部デバイスに関するデータでない場合は、ステップＳ５０１に戻る。
デバイスマウント情報の記述データが、外部デバイスに関するデータである場合は、ステップＳ５０４に進む。
【０２３８】
（ステップＳ５０４）
ステップＳ５０３において、デバイスマウント情報の記述データが、外部デバイスに関するデータであると判定した場合、ステップＳ５０４において、そのデバイスマウント情報の記述データから、マウントポイント情報を読み込む。
【０２３９】
図２３の下部に示す表には、読み込まれたマウントポイント情報の一例を示している。
マウントポイント情報＝［／ｓｔｒａｇｅ／ＵｓｂＤｒｉｖｅＡ］
このマウントポイント情報が読み込まれたものとする。
情報処理装置３００の再生アプリケーション３５０は、このマウントポイント情報をメモリに格納し、さらに、以下に説明するステップＳ５０６において取得される接続デバイス情報であるベンダーＩＤとプロダクトＩＤとの対応データを、ステップＳ５０４で取得したマウントポイント情報に対応付けてメモリに格納する。
【０２４０】
（ステップＳ５０５）
ステップＳ５０４において、デバイスマウント情報の記述データから取得したマウントポイント情報をメモリに格納した後、ステップＳ５０５では、同じデバイスマウント情報の記述データから、リンク情報（シンボリックリンク）の記録位置情報を取得し、取得し記録位置情報に従ってリンク情報を取得し、取得したリンク情報を用いてファイルを取得する。
【０２４１】
デバイスマウント情報の記述データから取得されるシンボリックリンクの置き場所を示す位置情報は、ＵＳＢホストＡＰＩから取得されるデバイスマウント情報の記録ファイルに対するリンク情報（シンボリックリンク）を記録したデータの設定位置である。
このリンク情報に従って、リンク先へ移動（／ｓｙｓ／ｄｅｖ／ｂｌｏｃｋ／  もしくは／ｓｙｓ／ｃｌａｓｓ／ｂｌｏｃｋ  のリンク先へ移動）する。
【０２４２】
先に図２４を参照して説明したように、デバイスマウント情報の記述データには、「ＵＳＢホストＡＰＩから取得される接続デバイス情報の記録ファイルに対するリンク情報（シンボリックリンク）の位置を示す情報（図の例では８．０）」が含まれる。
情報処理装置３００の再生アプリケーション３５０は、このリンク情報（シンボリックリンク）の記録位置を取得して、リンク情報を取得し、取得したリンク情報を用いてＵＳＢホストＡＰＩから取得されるデバイスマウント情報の記録ファイルを取得する。
【０２４３】
デバイスマウント情報の記述データから取得されるリンク情報（シンボリックリンク）の置き場所を示す位置情報は、図２４に示す例では［８：０］である。
このリンク情報の位置情報の設定構成について、図２５を参照して説明する。
図２５には、Ｌｉｎｕｘ（登録商標）ファイルシステムの構成要素であるディレクトリの一部（ｓｙｓ／ｄｅｖ／ｂｌｏｃｋ／８：０）を示している。
このファイル８：０が、デバイスマウント情報の記述データから取得されるリンク情報（シンボリックリンク）の置き場所を示す位置情報から導かれるファイルである。
【０２４４】
このファイルにはＵＳＢホストＡＰＩから取得される接続デバイス情報の記録ファイルに対するリンク情報（シンボリックリンク）が記録されている。
ファイル８：０の示すリンク先のパスは、例えば以下の設定である。
［．．／．．／ｄｅｖｉｃｅｓ／ｐｌａｔｆｏｒｍ／ｍｓｍ＿ｈｓｕｓｂ＿ｈｏｓｔ／ｕｓｂ２／２−１／２−１：１．０／ｈｏｓｔ０／ｔａｒｇｅｔ０：０：０／０：０：０：０／ｂｌｏｃｋ／ｓｄａ］
【０２４５】
情報処理装置３００のデータ処理部は、このパスに従って、リンク先へ移動して、ＵＳＢホストＡＰＩから取得されるデバイスマウント情報の記録ファイル［ベンダーＩＤ記述ファイル（ｉｄＶｅｎｄｏｒファイル）と、プロダクトＩＤ記述ファイル（ｉｄＰｒｏｄｕｃｔファイル）］を読み込む。
読み込まれるファイルの例を図２６に示す。
【０２４６】
図２６には、
（ａ）ベンダーＩＤ記述ファイル
（ｂ）プロダクトＩＤ記述ファイル
これら２つのファイルを示している。
これらのファイルは、ＵＳＢホストＡＰＩから取得されるデバイスマウント情報の記録ファイルである。
【０２４７】
ベンダーＩＤ記述ファイルに記録されたデータがＵＳＢホストＡＰＩから取得されるデバイスマウント情報としてのベンダーＩＤ（ＶｅｎｄｏｒＩＤ）＝０ｘ０１０１である。
また、プロダクトＩＤ記述ファイルに記録されたデータがＵＳＢホストＡＰＩから取得されるデバイスマウント情報としてのプロダクトＩＤ（ＰｒｏｄｕｃｔＩＤ）＝０ｘ０００１である。
【０２４８】
（ステップＳ５０６）
情報処理装置３００のデータ処理部は、図２６に示す各ファイルから接続デバイス情報を取得する。すなわち、ＵＳＢホストＡＰＩから取得される接続デバイス情報記録ファイルから、ベンダーＩＤ、プロダクトＩＤを取得する。
取得した接続デバイス情報を、図２３下部に示すように、先にステップＳ２０４で取得したマウントポイントに対応付けて記録する。
【０２４９】
この処理の結果、図２３に下部に示す表のように、
（１）Ｌｉｎｕｘ（登録商標）システムファイル［ｐｒｏｃ／ｍｏｕｎｔｓ］に含まれるデバイスマウント情報の記述データから得られる接続デバイス情報としてのマウントポイント情報、
（２）ＵＳＢホストＡＰＩから取得されるデバイスマウント情報としてのベンダーＩＤ（ＶｅｎｄｏｒＩＤ）と、プロダクトＩＤ（ＰｒｏｄｕｃｔＩＤ）
これらの２つの接続デバイス情報（デバイスマウント情報）の対応付けが完了する。
すなわち、これら２つの接続デバイス情報は、１つの同一デバイスに関する接続デバイス情報であると判定することができる。
【０２５０】
この処理によって、１つの記録再生データパスに接続された接続デバイスと同一のデバイスに接続されたセキュリティコマンドパスを正確に選択することが可能となる。
情報処理装置は、このような接続デバイス情報の対応付けが完了した後、セキュリティコマンドパスを利用した認証処理を実行して、そのセキュリティコマンドパスと同一のデバイスに接続された記録再生データパスを利用して記録再生データの転送を実行する。
【０２５１】
図２７は、図２３のフローチャートを参照して説明したパス対応判定処理を含む処理シーケンスを説明する図である。
図２７に示すシーケンス図は、先に図１３を参照して説明したシーケンス図に、ステップＳ２０１−２のパス対応判定処理を追加したものである。
すなわち、記録再生データパスは、ファイルシステム３１１と、マスストレージクラス３１２を経由したパスとして設定し、セキュリティコマンドパスは、ＵＳＢホストＡＰＩを経由したパスとして設定した構成において実行する処理を説明するシーケンス図である。
【０２５２】
スマートホン等の情報処理装置３００には複数のＵＳＢリーダライタが接続され、その一方を処理対象として選択して選択したＵＳＢリーダライタに接続された記録メディアとの認証処理を実行し、認証成立を条件として、記録メディアからデータ（暗号化コンテンツ）を読み出して、読み出した暗号化コンテンツを復号して、再生処理を行なう場合の処理シーケンスを説明するシーケンス図である。
【０２５３】
以下、各処理ステップについて、順次、説明する。
【０２５４】
（ステップＳ２０１）
まず、ステップＳ２０１において、情報処理装置３００のユーザ操作部を介してユーザがコンテンツ再生指示要求を入力する。
この要求は、情報処理装置３００の制御部の制御の下、再生アプリケーション３５０に入力される。
【０２５５】
（ステップＳ２０１−２）
次に、ステップＳ２０１−２において、情報処理装置３００の再生アプリケーションは、先に図２３を参照して説明したフローチャートに従ったパス対応判定処理を実行する。
これは、１つの記録再生データパスに接続された接続デバイス（ＵＳＢリーダライタ）と同一デバイスに接続されたセキュリティコマンドパスを検出するための処理である。
【０２５６】
このステップＳ２０１−２において実行するパス対応判定処理によって、１つの記録再生データパスに接続された接続デバイス（ＵＳＢリーダライタ）と同一デバイスに接続されたセキュリティコマンドパスが選択される。
【０２５７】
なお、ここでは、処理対象のデバイスを図２０に示すＵＳＢリーダライタＡ，１００ａとし、利用するパスを記録再生データパス５１１ａと、セキュリティコマンドパス５１２ａとした場合の処理について説明する。
【０２５８】
（ステップＳ２０２）
次に、再生アプリケーション３５０は、ステップＳ２０１−１において実行するパス対応判定処理において選択したセキュリティコマンドパス５１２ａを利用してコンテンツを格納した記録メディア２００ａとの認証処理を開始する。
記録再生データの転送に適用する記録再生データパス５１１ａの接続デバイス（ＵＳＢリーダライタＡ，１００ａ）と同一の接続デバイスを持つセキュリティコマンドパス５１２ａを利用して認証処理を実行する。
【０２５９】
なお、セキュリティコマンドパス５１２ａは、図２０を参照して説明したように、以下の各構成要素を経由したパスとして設定される。
（１）情報処理装置３００の再生アプリケーション３５０、
（２）情報処理装置３００のファームウェア（ＦＷ）のＵＳＢホストＡＰＩ３１４、
（３）情報処理装置３００のファームウェア（ＦＷ）のＵＳＢホストドライバ３１３、
（４）ＵＳＢリーダライタＡ，１００ａの非マスストレージクラス（ＭＳＣ）対応データ転送部１２０ａ、
（５）記録メディアＡ，２００ａ、
再生アプリケーション３５０と、記録メディアＡ，２００ａとの認証処理において送受信される認証コマンドや認証データ等は、このセキュリティコマンドパス５１２ａ経由して転送される。
【０２６０】
ステップＳ２０２において、このセキュリティコマンドパス５１２ａを利用した認証処理が実行され、認証が成立した場合に限り、ステップＳ２０３以下の処理を実行する。
認証が成立しない場合は、ステップＳ２０３以下の処理は実行されない。すなわち記録メディアＡ，２００ａからのデータ（暗号化コンテンツ）の読み出しと再生処理は実行されないことになる。
【０２６１】
（ステップＳ２０３〜Ｓ２０４）
ステップＳ２０２の認証処理において認証が成立した場合、再生アプリケーション３５０は、ステップＳ２０３〜Ｓ２０４において、記録メディアＡ，２００ａの記録データ（暗号化コンテンツ）の読み取り処理を実行する。
【０２６２】
このデータ読み取り処理は、図２０を参照して説明した記録再生データパス５１１ａを介して実行する。
記録再生データパス５１１ａは、以下の各構成要素を経由したパスとして設定される。
（１）情報処理装置３００の再生アプリケーション３５０、
（２）情報処理装置３００のファームウェア（ＦＷ）のファイルシステム３１１、
（３）情報処理装置３００のファームウェア（ＦＷ）のマスストレージクラス３１２、
（４）情報処理装置のファームウェア（ＦＷ）のＵＳＢホストドライバ３１３、
（５）ＵＳＢリーダライタＡ，１００ａのマスストレージクラス（ＭＳＣ）対応データ転送部１１０ａ、
（６）記録メディアＡ，２００ａ、
再生アプリケーション３５０と、記録メディアＡ，２００ａとの記録再生データの送受信は、この記録再生データパス５１１ａを利用して転送される。
【０２６３】
（ステップＳ２０５〜Ｓ２０６）
ステップＳ２０３〜Ｓ２０４において、記録メディアＡ，２００ａから再生用の暗号化コンテンツを取得した再生アプリケーション３５０は、ステップＳ２０５において、取得データである暗号化コンテンツの復号、デコード処理を実行し、ステップＳ２０６において、復号、デコード結果である再生データを出力部（ディスプレイ、スピーカ）に出力する。
【０２６４】
［８．情報処理装置の構成例について］
最後に、例えばスマートホン等によって構成される情報処理装置３００ハードウェア構成例について、図２８を参照して説明する。
【０２６５】
ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）７０１は、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）７０２、または記憶部７０８に記憶されているプログラムに従って各種の処理を実行するデータ処理部として機能する。例えば、上述した実施例において説明したシーケンス図やフローに従った処理を実行する。
なお、図１２等を参照して説明した再生アプリケーションやファームウェアレイヤのコンポーネントもデータ処理部において実行される。
【０２６６】
ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）７０３には、ＣＰＵ７０１が実行するプログラムやデータなどが記憶される。これらのＣＰＵ７０１、ＲＯＭ７０２、およびＲＡＭ７０３は、バス７０４により相互に接続されている。
【０２６７】
ＣＰＵ７０１はバス７０４を介して入出力インタフェース７０５に接続され、入出力インタフェース７０５には、各種スイッチ、キーボード、マウス、マイクロホンなどよりなる入力部７０６、ディスプレイ、スピーカなどよりなる出力部７０７が接続されている。ＣＰＵ７０１は、入力部７０６から入力される指令に対応して各種の処理を実行し、処理結果を例えば出力部７０７に出力する。
【０２６８】
入出力インタフェース７０５に接続されている記憶部７０８は、例えばハードディスク等からなり、ＣＰＵ７０１が実行するプログラムや各種のデータを記憶する。通信部７０９は、インターネットやローカルエリアネットワークなどのネットワークを介したデータ通信の送受信部として機能し、外部の装置と通信する。
【０２６９】
なお、通信部７０９にはＵＳＢポートを含まれ、ＵＳＢリーダライタが接続可能である。上述した記録デバイスを装着したＵＳＢリーダライタを接続して、記録デバイスとの通信処理、およびデータ転送処理に利用される。
【０２７０】
入出力インタフェース７０５に接続されているドライブ７１０は、磁気ディスク、光ディスク、光磁気ディスク、あるいはメモリカード等の半導体メモリなどのリムーバブルメディア７１１を駆動し、データの記録あるいは読み取りを実行する。
【０２７１】
［９．その他の実施例について］
上述した実施例では、情報処理装置の実行する再生アプリケーションの一例として、著作権管理コンテンツを格納したメディアとの認証成立を条件として実行するＳＱＶ（ＳｅｅＱＶａｕｌｔ）対応アプリケーション（ＳＱＶプレーヤ）を例として説明した。
【０２７２】
しかし、本開示の処理は、その他の再生アプリケーションにも適用可能である。
具体的には、ＣＰＲＭ（Ｃｏｎｔｅｎｔ  Ｐｒｏｔｅｃｔｉｏｎ  ｏｆ  Ｒｅｃｏｒｄａｂｌｅ  Ｍｅｄｉａ）や、Ｍａｇｉｃ  Ｇａｔｅ等、様々なデジタル著作権管理（ＤＲＭ：Ｄｉｇｉｔａｌ  Ｒｉｇｈｔ  Ｍａｎａｇｅｍｅｎｔ）に対応した再生アプリケーションを利用した処理に適用可能である。
【０２７３】
また、上述した実施例ではコンテンツを格納した記録メディアをＵＳＢリーダライタに装着し、ＵＳＢリーダライタを経由して記録メディアから読み出したコンテンツを再生する構成例について説明した。
すなわち、まず、情報処理装置と記録メディアとの認証を行い、記録メディアの格納コンテンツを情報処理装置に転送する構成例を説明した。
【０２７４】
しかし、コンテンツを記録した記録メディアとコンテンツ再生を実行する再生装置間の通信路はＵＳＢポート等のＵＳＢ接続部に限定されるものではない。例えばＷｉ−Ｆｉ、Ｂｌｕｅｔｏｏｔｈ（登録商標）、ＮＦＣ、イヤホンジャック等、様々な通信経路を利用した構成としてもよい。
【０２７５】
また、上述した実施例では記録メディアをＵＳＢリーダライタに装着した構成について説明した。しかし、本開示の処理は、メディア装着部を備えたＵＳＢリーダライタにＳＤカード等の記録メディアを組み合わせた構成のみではなく、その他の構成、例えばＵＳＢメモリを利用した構成においても適用することが可能である。
【０２７６】
［１０．本開示の構成のまとめ］
以上、特定の実施例を参照しながら、本開示の実施例について詳解してきた。しかしながら、本開示の要旨を逸脱しない範囲で当業者が実施例の修正や代用を成し得ることは自明である。すなわち、例示という形態で本発明を開示してきたのであり、限定的に解釈されるべきではない。本開示の要旨を判断するためには、特許請求の範囲の欄を参酌すべきである。
【０２７７】
なお、本明細書において開示した技術は、以下のような構成をとることができる。
（１）  記録メディアを装着可能な記録メディア装着部と、
ＵＳＢコネクタと、
前記記録メディア装着部に装着した記録メディアと、前記ＵＳＢコネクタに接続したホストとの間でデータ転送処理を実行する制御部を有し、
前記制御部は、
マスストレージクラス（ＭＳＣ：Ｍａｓｓ  Ｓｔｒａｇｅ  Ｃｌａｓｓ）対応データ転送部を利用した前記記録メディアに対する記録再生データの転送制御と、
非マスストレージクラス対応データ転送部を利用した前記記録メディアに対するセキュリティコマンドの転送制御を実行するＵＳＢリーダライタ装置。
【０２７８】
（２）  前記ＵＳＢリーダライタは、
ＵＳＢ−Ａコネクタと、ＵＳＢ−ｍｉｃｒｏＢコネクタを有する構成であり、
前記制御部は、
前記ＵＳＢ−ｍｉｃｒｏＢコネクタに電源供給ホストが接続された場合に、前記マスストレージクラス対応データ転送部と、前記非マスストレージクラス対応データ転送部の各々を介して異なる種類のデータ転送を実行する前記（１）に記載のＵＳＢリーダライタ装置。
【０２７９】
（３）  前記制御部は、
前記ＵＳＢ−ｍｉｃｒｏＢコネクタに電源供給ホストが接続され、
前記ＵＳＢ−Ａコネクタ側に設定された記録メディア装着部に記録メディアが装着された場合に、
前記マスストレージクラス対応データ転送部と、前記非マスストレージクラス対応データ転送部の各々を介して異なる種類のデータ転送を実行する前記（２）に記載のＵＳＢリーダライタ装置。
【０２８０】
（４）  前記制御部は、
制御部のＧＰＩＯ（Ｇｅｎｅｒａｌ  Ｐｕｒｐｏｓｅ  Ｉｎｐｕｔ／Ｏｕｔｐｕｔ）に対する入力信号を検出し、該入力信号の値に応じて、
単一のデータ転送部を利用したデータ転送制御を実行するか、
前記マスストレージクラス対応データ転送部と、前記非マスストレージクラス対応データ転送部の各々を介して異なる種類のデータ転送を実行するかの処理切り替えを実行する前記（１）〜（３）いずれかに記載のＵＳＢリーダライタ装置。
【０２８１】
（５）  前記ＵＳＢリーダライタ装置は、
前記制御部のＧＰＩＯ（Ｇｅｎｅｒａｌ  Ｐｕｒｐｏｓｅ  Ｉｎｐｕｔ／Ｏｕｔｐｕｔ）に対する信号入力を実行するＭＣＵ（Ｍｉｃｒｏ  Ｃｏｍｐｕｔｅｒ  Ｕｎｉｔ）を有し、
前記ＭＣＵは、前記ＵＳＢ−ｍｉｃｒｏＢコネクタに電源供給ホストが接続され、該電源供給ホストからの電源供給がなされたことを条件として、前記制御部のＧＰＩＯ（Ｇｅｎｅｒａｌ  Ｐｕｒｐｏｓｅ  Ｉｎｐｕｔ／Ｏｕｔｐｕｔ）に対する入力信号値を変更する前記（４）に記載のＵＳＢリーダライタ装置。
【０２８２】
（６）  前記制御部は、
制御部に対するリセット信号入力後に、制御部のＧＰＩＯ入力信号値を確認し、確認した入力信号値に応じてデータ転送制御態様を決定する前記（４）または（５）に記載のＵＳＢリーダライタ装置。
【０２８３】
（７）  前記非マスストレージクラス対応データ転送部は、ベンダーユニーククラス対応データ転送部、またはＨＩＤ（Ｈｕｍａｎ  Ｉｎｔｅｒｆａｃｅ  Ｄｅｖｉｃｅ）クラス対応データ転送部として構成される前記（１）〜（６）いずれかに記載のＵＳＢリーダライタ装置。
【０２８４】
（８）  記録メディアを装着したデバイスを接続する通信部と、
前記通信部を介して記録メディアの記録データを入力して再生する再生アプリケーションを実行するデータ処理部を有し、
前記データ処理部は、
（ａ）前記記録メディアの記録データを入力する記録再生データパス、
（ｂ）前記記録メディアの記録データ以外のセキュリティコマンドまたはセキュリティデータを転送するセキュリティコマンドパス、
上記２つのパスを利用してデータ転送処理を実行する情報処理装置。
【０２８５】
（９）  前記再生アプリケーションは、
前記セキュリティコマンドパスを介したデータ転送処理により、前記記録メディアとの認証処理を実行し、
前記認証処理の成立を条件として、前記記録再生データパスを介したデータ転送により、前記記録メディアの記録データを読み出して再生処理を実行する前記（８）に記載の情報処理装置。
【０２８６】
（１０）  前記通信部はＵＳＢポートであり、
前記記録メディアは、前記ＵＳＢポートに接続されたＵＳＢリーダライタに装着された記録デバイスである前記（８）または（９）に記載の情報処理装置。
【０２８７】
（１１）  前記データ処理部は、
前記情報処理装置のファームウェアコンポーネントであるマスストレージクラスを介する記録再生データパスを利用して前記記録メディアの記録データを入力し、
前記情報処理装置のファームウェアコンポーネントであるＵＳＢホストＡＰＩを介するセキュリティコマンドパスを利用して、セキュリティコマンドまたはセキュリティデータを転送する前記（１０）に記載の情報処理装置。
【０２８８】
（１２）  前記データ処理部は、
前記ＵＳＢリーダライタのマスストレージクラス対応データ転送部を利用して前記記録メディアの記録データを入力し、
前記ＵＳＢリーダライタの非マスストレージクラス対応データ転送部を利用して、セキュリティコマンドまたはセキュリティデータを転送する前記（１０）または（１１）に記載の情報処理装置。
【０２８９】
（１３）  前記データ処理部は、
前記情報処理装置のファームウェアコンポーネントであるマスストレージクラスを介する記録再生データパスを利用して前記記録メディアの記録データを入力し、
前記情報処理装置のファームウェアコンポーネントであるコマンドデーモンを介するセキュリティコマンドパスを利用して、セキュリティコマンドまたはセキュリティデータを転送する前記（１０）〜（１２）いずれかに記載の情報処理装置。
【０２９０】
（１４）  前記データ処理部は、
前記情報処理装置のアプリケーションレイヤのコンポーネントであるマスストレージクラスと、前記情報処理装置のファームウェアコンポーネントであるＵＳＢホストＡＰＩを介する記録再生データパスを利用して前記記録メディアの記録データを入力し、
前記情報処理装置のファームウェアコンポーネントであるＵＳＢホストＡＰＩを介するセキュリティコマンドパスを利用して、セキュリティコマンドまたはセキュリティデータを転送する前記（１０）〜（１３）いずれかに記載の情報処理装置。
【０２９１】
（１５）  前記データ処理部は、
１つの記録再生データパスによって接続されたデバイスと、同一デバイスに接続されたセキュリティコマンドパスを検出するパス対応判定処理を実行し、
前記パス対応判定処理に基づいて選択した同一デバイスに接続されたセキュリティコマンドパスと、記録再生データパスを利用した認証処理および記録再生データ転送処理を実行する前記（８）〜（１４）いずれかに記載の情報処理装置。
【０２９２】
（１６）  前記パス対応判定処理は、
前記情報処理装置のシステムファイルの記述情報を参照して実行する前記（１５）に記載の情報処理装置。
【０２９３】
（１７）  リーダライタ装置において実行するデータ転送制御方法であり、
前記リーダライタ装置は、記録メディアを装着可能な記録メディア装着部と、ＵＳＢコネクタと、
前記記録メディア装着部に装着した記録メディアと、前記ＵＳＢコネクタに接続したホストとの間でデータ転送処理を実行する制御部を有し、
前記制御部が、
マスストレージクラス（ＭＳＣ：Ｍａｓｓ  Ｓｔｒａｇｅ  Ｃｌａｓｓ）対応データ転送部を利用した前記記録メディアに対する記録再生データの転送制御と、
非マスストレージクラス対応データ転送部を利用した前記記録メディアに対するセキュリティコマンドの転送制御を実行するデータ転送制御方法。
【０２９４】
（１８）  情報処理装置において実行するデータ転送制御方法であり、
前記情報処理装置は、記録メディアを装着したデバイスを接続する通信部と、
前記通信部を介して記録メディアの記録データを入力して再生する再生アプリケーションを実行するデータ処理部を有し、
前記データ処理部が、
（ａ）前記記録メディアの記録データを入力する記録再生データパス、
（ｂ）前記記録メディアの記録データ以外のセキュリティコマンドまたはセキュリティデータを転送するセキュリティコマンドパス、
上記２つのパスを利用してデータ転送処理を実行するデータ転送制御方法。
【０２９５】
（１９）  リーダライタ装置においてデータ転送制御処理を実行させるプログラムであり、
前記リーダライタ装置は、記録メディアを装着可能な記録メディア装着部と、ＵＳＢコネクタと、
前記記録メディア装着部に装着した記録メディアと、前記ＵＳＢコネクタに接続したホストとの間でデータ転送処理を実行する制御部を有し、
前記プログラムは、前記制御部に、
マスストレージクラス（ＭＳＣ：Ｍａｓｓ  Ｓｔｒａｇｅ  Ｃｌａｓｓ）対応データ転送部を利用した前記記録メディアに対する記録再生データの転送制御と、
非マスストレージクラス対応データ転送部を利用した前記記録メディアに対するセキュリティコマンドの転送制御を実行させるプログラム。
【０２９６】
（２０）  情報処理装置においてデータ転送制御処理を実行させるプログラムであり、
前記情報処理装置は、記録メディアを装着したデバイスを接続する通信部と、
前記通信部を介して記録メディアの記録データを入力して再生する再生アプリケーションを実行するデータ処理部を有し、
前記プログラムは、前記データ処理部に、
（ａ）前記記録メディアの記録データを入力する記録再生データパス、
（ｂ）前記記録メディアの記録データ以外のセキュリティコマンドまたはセキュリティデータを転送するセキュリティコマンドパス、
上記２つのパスを利用してデータ転送処理を実行させるプログラム。
【０２９７】
また、明細書中において説明した一連の処理はハードウェア、またはソフトウェア、あるいは両者の複合構成によって実行することが可能である。ソフトウェアによる処理を実行する場合は、処理シーケンスを記録したプログラムを、専用のハードウェアに組み込まれたコンピュータ内のメモリにインストールして実行させるか、あるいは、各種処理が実行可能な汎用コンピュータにプログラムをインストールして実行させることが可能である。例えば、プログラムは記録媒体に予め記録しておくことができる。記録媒体からコンピュータにインストールする他、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、インターネットといったネットワークを介してプログラムを受信し、内蔵するハードディスク等の記録媒体にインストールすることができる。
【０２９８】
なお、明細書に記載された各種の処理は、記載に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。また、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。
【産業上の利用可能性】
【０２９９】
以上、説明したように、本開示の一実施例の構成によれば、ホストと、ホストに接続された記録デバイスとの間で記録再生データの転送のみならずセキュリティコマンドの転送も可能とする構成が実現される。
具体的には、ＵＳＢ−Ａコネクタと、ＵＳＢ−ｍｉｃｒｏＢコネクタを有するＵＳＢリーダライタであり、リーダライタ制御部がＵＳＢ−ｍｉｃｒｏＢコネクタに電源供給ホストが接続され、ＵＳＢ−Ａコネクタ側に記録メディアが装着された場合、マスストレージクラス対応データ転送部を介して記録メディアの記録再生データを転送し、非マスストレージクラス対応データ転送部を介して認証処理等に適用するセキュリティコマンドを転送する。ＵＳＢリーダライタを装着したホストは、記録再生データパスと、セキュリティコマンドパスの２つのパスを利用して異なるカテゴリのデータ転送を実行する。
本構成により、ホストと、ホストに接続された記録デバイスとの間で記録再生データの転送のみならずセキュリティコマンドの転送も可能とする構成が実現される。
【符号の説明】
【０３００】
１０  ＵＳＢリーダライタ
１１  ＵＳＢ−Ａコネクタ
１２  ＵＳＢ−ｍｉｃｒｏＢコネクタ
１３  カードスロット
２１  マイクロＳＤカード
３０  スマートホン
３２  タブレット端末
４１  ＰＣ
４２  ＴＶ
４３  記録再生装置
５０  再生アプリケーション
５１  再生アプリライブラリ
６１  ファイルシステム
６２  マスストレージクラス
６３  ＵＳＢホストドライバ
６４  ＵＳＢホストＡＰＩ
７１，７２  記録再生データパス
８１，８２  セキュリティコマンドパス
１００  情報処理装置
１１０  マスストレージクラス（ＭＳＣ）対応データ転送部
１２０  非マスストレージクラス（ＭＳＣ）対応データ転送部
１５０  リーダライタ制御部
１５１  ＵＳＢ−Ａコネクタ
１５２  電圧変換部
１６１  ＵＳＢ−ｍｉｃｒｏＢコネクタ
１６２  電圧変換部
１６３  ＩＣリセット部
１６４  マイコン
２００  記録メディア
３００  情報処理装置
３１１  ファイルシステム
３１２  マスストレージクラス
３１３  ＵＳＢホストドライバ
３１４  ＵＳＢホストＡＰＩ
３１５  コマンドデーモン
３５０  再生アプリケーション
３５１  再生アプリライブラリ
３５２  ファイルシステム
３５３  マスストレージクラス
３８０  ＵＳＢハブ
４１１，４２１，４３１  記録再生データパス
４１２，４２２，４３２  セキュリティコマンドパス
５１１ａ，５１１ｂ  記録再生データパス
５１２ａ，５１２ｂ  セキュリティコマンドパス
７０１  ＣＰＵ
７０２  ＲＯＭ
７０３  ＲＡＭ
７０４  バス
７０５  入出力インタフェース
７０６  入力部
７０７  出力部
７０８  記憶部
７０９  通信部
７１０  ドライブ
７１１  リムーバブルメディア
【図１】
2016031456.tif 000003
【図２】
2016031456.tif 000004
【図３】
2016031456.tif 000005
【図４】
2016031456.tif 000006
【図５】
2016031456.tif 000007
【図６】
2016031456.tif 000008
【図７】
2016031456.tif 000009
【図８】
2016031456.tif 000010
【図９】
2016031456.tif 000011
【図１０】
2016031456.tif 000012
【図１１】
2016031456.tif 000013
【図１２】
2016031456.tif 000014
【図１３】
2016031456.tif 000015
【図１４】
2016031456.tif 000016
【図１５】
2016031456.tif 000017
【図１６】
2016031456.tif 000018
【図１７】
2016031456.tif 000019
【図１８】
2016031456.tif 000020
【図１９】
2016031456.tif 000021
【図２０】
2016031456.tif 000022
【図２１】
2016031456.tif 000023
【図２２】
2016031456.tif 000024
【図２３】
2016031456.tif 000025
【図２４】
2016031456.tif 000026
【図２５】
2016031456.tif 000027
【図２６】
2016031456.tif 000028
【図２７】
2016031456.tif 000029
【図２８】
2016031456.tif 000030
【国際調査報告】
2016031456.tif 000031
2016031456.tif 000032
2016031456.tif 000033