(57)【特許請求の範囲】
【請求項１】
保存対象の第１のデータが格納された記憶媒体が装着される入出力部と、
前記第１のデータを保存するための記憶部と、
前記第１のデータの保存指示が入力されると、前記第１のデータを前記記憶部に格納し、該第１のデータを符号化した符号化データを生成し、該符号化データからランダムまたは均等にデータを抜き出し、抜き出したデータおよび抜き出した位置を示す情報である付加情報を暗号化して第２のデータを生成し、前記符号化データからランダムまたは均等にデータを抜き出した後の残りのデータである第３のデータと前記第２のデータのうち、いずれか一方のデータを前記記憶媒体に格納し、他方のデータを前記記憶部または他の情報処理装置の記憶部に格納する制御部と、
を有する情報処理装置。
【請求項２】
ネットワークを介して前記他の情報処理装置と接続するための通信部がさらに設けられ、
前記制御部は、前記他方のデータを前記通信部および前記ネットワークを介して前記他の情報処理装置に送信する、請求項１記載の情報処理装置。
【請求項３】
前記制御部は、
前記第１のデータの出力指示が入力されると、前記記憶部および前記記憶媒体から前記第２のデータおよび前記第３のデータを読み出し、前記暗号化に対応する復号処理を前記第２のデータに行うことで該第２のデータを前記抜き出したデータおよび前記付加情報に変換し、該付加情報に基づいて前記抜き出したデータを前記第３のデータに挿入し、該抜き出したデータを該第３のデータに挿入した後のデータに対して前記符号化に対応する復号処理を行うことで前記第１のデータを生成する、請求項１または２に記載の情報処理装置。
【請求項４】
情報処理装置によるデータ処理方法であって、
保存対象の第１のデータが格納された記憶媒体が前記情報処理装置に装着され、前記第１のデータの保存指示が入力されると、該第１のデータを符号化した符号化データを生成し、
前記符号化データからランダムまたは均等にデータを抜き出し、抜き出したデータおよび抜き出した位置を示す情報である付加情報を暗号化して第２のデータを生成し、
前記符号化データからランダムまたは均等にデータを抜き出した後の残りのデータである第３のデータと前記第２のデータのうち、いずれか一方のデータを前記記憶媒体に格納し、他方のデータを前記情報処理装置内の記憶部または他の情報処理装置の記憶部に格納する、データ処理方法。
【請求項５】
前記第１のデータの出力指示が入力されると、前記記憶部および前記記憶媒体から前記第２のデータおよび前記第３のデータを読み出し、
前記暗号化に対応する復号処理を前記第２のデータに行うことで該第２のデータを前記抜き出したデータおよび前記付加情報に変換し、
前記付加情報に基づいて前記抜き出したデータを前記第３のデータに挿入し、
前記抜き出したデータを該第３のデータに挿入した後のデータに対して前記符号化に対応する復号処理を行うことで前記第１のデータを生成する、請求項４記載のデータ処理方法。
【請求項６】
コンピュータに実行させるためのプログラムであって、
保存対象の第１のデータが格納された記憶媒体が前記コンピュータに装着され、前記第１のデータの保存指示が入力されると、該第１のデータを符号化した符号化データを生成し、
前記符号化データからランダムまたは均等にデータを抜き出し、抜き出したデータおよび抜き出した位置を示す情報である付加情報を暗号化して第２のデータを生成し、
前記符号化データからランダムまたは均等にデータを抜き出した後の残りのデータである第３のデータと前記第２のデータのうち、いずれか一方のデータを前記記憶媒体に格納し、他方のデータを前記コンピュータ内の記憶部または他の情報処理装置の記憶部に格納する処理を前記コンピュータに実行させるためのプログラム。
【請求項７】
前記第１のデータの出力指示が入力されると、前記記憶部および前記記憶媒体から前記第２のデータおよび前記第３のデータを読み出し、
前記暗号化に対応して前記第２のデータを復号することで、該第２のデータを前記抜き出したデータおよび前記付加情報に変換し、
前記付加情報に基づいて前記抜き出したデータを前記第３のデータに挿入し、
前記抜き出したデータを該第３のデータに挿入した後のデータに対して前記符号化に対応する復号処理を行うことで前記第１のデータを生成する処理をさらに有する、請求項６記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、入力されるデータの保存および保存したデータの出力を行う情報処理装置、データ処理方法、およびその方法をコンピュータに実行させるためのプログラムに関する。
【背景技術】
【０００２】
画像のデータや重要書類のデータなどを他人に容易に見られないようにする方法の一例として、データを暗号化処理して保存するという方法がある。しかし、データの暗号化処理には複雑な演算を行う必要があることから、暗号化処理にかかる時間はデータサイズに応じて長くなってしまう。【０００３】
暗号化処理にかかる時間が長くなるという問題に対して、データの全てを暗号化するのではなく、その一部を暗号化するという方法がある。その方法の一例が特開２００４−１９８７６０号公報（以下では、特許文献１と称する）に開示されている。この特許文献１に開示された方法では、ハフマン符号化やＪＰＥＧ／ＭＰＥＧなどの圧縮データを全て暗号化するのではなく、それらのデータ圧縮処理に必要なパラメータ・テーブルを暗号化するものである。
【発明の概要】
【０００４】
特許文献１に開示された方法では、パラメータ・テーブルを必要とするデータ圧縮方式による処理が行われた画像データしか対象にならないという欠点がある。
【０００５】
また、パーソナルコンピュータ（以下、ＰＣと称する）に比べて携帯端末などの、処理能力の低い情報処理装置においては、データ保存の際の暗号化処理と、データ復元の際の復号処理に多くの時間を費やし、利便性が損なわれてしまうことがあった。近年、記憶媒体の容量の増加に伴って、情報処理装置の単位時間あたりに処理すべきデータ量が著しく増加している。処理能力の低い情報処理装置であっても、大容量のデータに秘匿性を持たせて保存する際、利便性を損なわず処理できることが要求されている。
【０００６】
本発明の目的の一つは、データに秘匿性を持たせて保存する際の処理時間を低減した情報処理装置、データ処理方法およびその方法をコンピュータに実行させるためのプログラムを提供することである。
【０００７】
本発明の一側面の情報処理装置は、保存対象の第１のデータが格納された記憶媒体が装着される入出力部と、第１のデータを保存するための記憶部と、第１のデータの保存指示が入力されると、第１のデータを記憶部に格納し、第１のデータを符号化した符号化データを生成し、符号化データからランダムまたは均等にデータを抜き出し、抜き出したデータおよび抜き出した位置を示す情報である付加情報を暗号化して第２のデータを生成し、符号化データからランダムまたは均等にデータを抜き出した後の残りのデータである第３のデータと第２のデータのうち、いずれか一方のデータを記憶媒体に格納し、他方のデータを記憶部または他の情報処理装置の記憶部に格納する制御部とを有する構成である。
【０００８】
本発明の一側面のデータ処理方法は、情報処理装置によるデータ処理方法であって、保存対象の第１のデータが格納された記憶媒体が情報処理装置に装着され、第１のデータの保存指示が入力されると、第１のデータを符号化した符号化データを生成し、符号化データからランダムまたは均等にデータを抜き出し、抜き出したデータおよび抜き出した位置を示す情報である付加情報を暗号化して第２のデータを生成し、符号化データからランダムまたは均等にデータを抜き出した後の残りのデータである第３のデータと第２のデータのうち、いずれか一方のデータを記憶媒体に格納し、他方のデータを情報処理装置内の記憶部または他の情報処理装置の記憶部に格納するものである。
【０００９】
本発明の一側面のプログラムは、コンピュータに実行させるためのプログラムであって、保存対象の第１のデータが格納された記憶媒体がコンピュータに装着され、第１のデータの保存指示が入力されると、第１のデータを符号化した符号化データを生成し、符号化データからランダムまたは均等にデータを抜き出し、抜き出したデータおよび抜き出した位置を示す情報である付加情報を暗号化して第２のデータを生成し、符号化データからランダムまたは均等にデータを抜き出した後の残りのデータである第３のデータと第２のデータのうち、いずれか一方のデータを記憶媒体に格納し、他方のデータをコンピュータ内の記憶部または他の情報処理装置の記憶部に格納する処理をコンピュータに実行させるものである。
【図面の簡単な説明】
【００１０】
【図１】図１は第１の実施形態の情報処理装置の一構成例を示すブロック図である。
【図２】図２は図１に示した外部記憶部へのデータ格納方法を説明するための図である。
【図３】図３は第１の実施形態の情報処理装置によるデータ処理方法の一例を説明するためのブロック図である。
【図４】図４は第１の実施形態の情報処理装置の動作手順を示すフローチャートである。
【図５】図５は第１の実施形態におけるデータ処理方法を説明するための模式図である。
【図６】図６は第１の実施形態のデータ保存方法を情報処理装置が実行した場合の処理時間を説明するための計算書である。
【図７】図７は第２の実施形態の情報処理装置の一構成例を示すブロック図である。
【図８】図８は第２の実施形態の情報処理装置が他の情報処理装置と接続される構成の一例を示すブロック図である。
【図９】図９は第３の実施形態の情報処理装置の一構成例を示すブロック図である。
【図１０】図１０は本発明の特徴となるデータ処理方法を実行可能な情報処理装置を示すブロック図である。
【発明を実施するための形態】
【００１１】
（第１の実施形態）
本実施形態のデータ処理方法を実行する情報処理装置の構成を説明する。図１は本実施形態の情報処理装置の一構成例を示すブロック図である。本実施形態では、情報処理装置１００は携帯電話機などの携帯端末である。
【００１２】
図１に示すように、情報処理装置１００は、プログラムにしたがって所定の処理を実行するＣＰＵ１１０と、ユーザが指示を入力するための入力部１２０と、ユーザに情報を表示する表示部１３０と、情報を記憶する記憶部１４２と、外部機器とデータの入出力を行うための外部入出力部１６０とを有する。記憶部１４２は、主記憶部１４０および外部記憶部１５０を含む。
【００１３】
主記憶部１４０は、ＣＰＵ１１０によって処理された情報を一時的に保存する。主記憶部１４０の一例として、ＲＡＭ（Random  Access  Memory）がある。外部記憶部１５０には、内蔵フラッシュメモリ１５１およびリムーバブルドライブ１５２が設けられている。リムーバブルドライブ１５２に装着される記憶媒体の一例として、ｍｉｃｒｏＳＤがある。ＣＰＵ１１０が実行するプログラムは、ＣＰＵ１１０内のメモリ（不図示）に格納されていてもよく、内蔵フラッシュメモリ１５１に格納されていてもよい。
【００１４】
図２は図１に示した外部記憶部へのデータ格納方法を説明するための図である。
【００１５】
図２に示す記憶媒体１５４のデータ記憶領域は、記憶容量が５１２バイトのセクタ毎に、Ｎ個（Ｎは２以上の整数）に区分けされている。また、区分けされたＮ個のセクタを区別するために、０からＮ−１までの番号がＮ個のセクタに順に割り振られている。セクタｉの「ｉ」は０からＮ−１のいずれかの整数である。各セクタには、セクタの位置を特定するための識別子が付与されている。
【００１６】
図２に示す記憶媒体１５４に、本実施形態のデータ保存方法の処理対象となるデータが格納されているものとする。図２は、内蔵フラッシュメモリ１５１に、その処理対象のデータの一部が保存されていることを示す。以下では、本実施形態のデータ保存方法の処理対象となるデータの全体に対応するデータを第１のデータと称する。第１のデータから抜き出され、内蔵フラッシュメモリ１５１に格納されるデータを第２のデータと称する。また、第１のデータから第２のデータに対応する部分を除いた後のデータを第３のデータと称する。本実施形態では、第３のデータの容量の方が、第２のデータのために第１のデータから抜き出される部分よりも大きい。
【００１７】
内蔵フラッシュメモリ１５１には、第１のデータが格納された、記憶媒体１５４のセクタに対応して第２のデータが保存されている。図２に示す内蔵フラッシュメモリ１５１には、記憶媒体１５４の１つのセクタに対して３１バイトの容量のデータが保存されている。また、記憶媒体１５４の０番のセクタには記憶媒体毎に異なる識別子が予め登録されており、第２のデータが内蔵フラッシュメモリ１５１に格納される際、その識別子も内蔵フラッシュメモリ１５１に一緒に格納される。識別子により、内蔵フラッシュメモリ１５１に格納された第２のデータと、第２のデータに対応する第３のデータが格納された記憶媒体１５４との対応付けが可能となる。
【００１８】
なお、本実施形態では、説明を簡単にするために、処理対象となるデータが記憶媒体１５４に１つだけ格納されている場合で説明するが、記憶媒体１５４に処理対象のデータが複数格納されている場合には、記憶媒体毎に異なる識別子の代わりに、処理対象のデータ毎に異なる識別子を用いればよい。また、図２は、各セクタから抽出された３２バイトのデータが暗号化処理され、内蔵フラッシュメモリ１５１に保存されていることを示しているが、この保存方法については、動作手順で詳しく説明する。さらに、暗号化処理の対象となるデータを、各セクタから均等に抽出する場合で説明したが、ランダムにデータを抽出してもよい。
【００１９】
入力部１２０をユーザが操作することにより、リムーバブルドライブ１５２に装着された記憶媒体のデータの読み出しを指示するためのデータ出力要求、または、記憶媒体へのデータの書き込みを指示するためのデータ入力要求のコマンドが入力部１２０に入力されると、そのコマンドの信号がＣＰＵ１１０に入力される。「データ入力」とは、本実施形態のデータ保存方法でデータを保存し直すことを意味する。また、「データ出力」とは、本実施形態のデータ保存方法で保存されたデータを復元することを意味する。
【００２０】
外部入出力部１６０の一例として、ＵＳＢインタフェースがある。外部入出力部１６０にＰＣなどの他の情報処理装置が接続されている場合、他の情報処理装置からデータ出力要求またはデータ入力要求の信号が外部入出力部１６０を介してＣＰＵ１１０に入力される。
【００２１】
ＣＰＵ１１０に入力されるデータ入力要求およびデータ出力要求のそれぞれの信号には、処理対象となるデータについて、記憶媒体の識別子と、記憶媒体におけるデータ開始位置のセクタ番号と、データ開始位置からデータ終了位置までのセクタ数とがパラメータの情報として含まれている。記憶媒体の識別子、データ開始位置を示すセクタ番号およびセクタ数を含む情報をデータ関連情報と称する。
【００２２】
ＣＰＵ１１０は、リムーバブルドライブ１５２に記憶媒体が装着され、入力部１２０または外部入出力部１６０を介してデータ入力要求の指示が入力されると、記憶媒体に記録されたデータに対して符号化処理を行う。そして、ＣＰＵ１１０は、符号化処理されたデータのうち、一部のデータに暗号化処理を行って内蔵フラッシュメモリ１５１に格納し、残りのデータを記憶媒体に保存する。符号化処理および暗号化処理のそれぞれの内容と、符号化処理に対応する復号処理および暗号化処理に対応する復号処理の内容は、プログラムに予め記述されている。このデータ保存方法は動作手順で詳述する。
【００２３】
また、ＣＰＵ１１０は、リムーバブルドライブ１５２に記憶媒体が装着され、入力部１２０または外部入出力部１６０を介してデータ出力要求の指示が入力されると、内蔵フラッシュメモリ１５１に格納されたデータを復号し、復号したデータと記憶媒体に格納されたデータとを結合する。そして、ＣＰＵ１１０は、結合したデータに対して、符号化処理の逆変換を実行し、元のデータに復元する。このデータ復元方法は動作手順で詳述する。
【００２４】
次に、本実施形態のデータ処理方法の手順について説明する。図３は本実施形態の情報処理装置によるデータ保存方法およびデータ復元方法の一例を説明するためのブロック図である。図４は本実施形態の情報処理装置の動作手順を示すフローチャートである。
【００２５】
図３に示すように、情報処理装置１００の外部入出力部１６０が信号ケーブルを介してＰＣ２１０と接続されている。また、ＰＣ２１０はプロジェクタ２２０と接続されている。ユーザは、記憶媒体１５４に格納したデータを本実施形態のデータ保存方法を用いて保存し直す際、ＰＣ２１０を操作してデータ入力要求のコマンドを入力する。また、ユーザは、本実施形態のデータ保存方法で保存されたデータを記憶媒体１５４からプロジェクタ２２０に出力させる際、ＰＣ２１０を操作してデータ出力要求のコマンドを入力する。
【００２６】
はじめに、処理対象となるデータの保存方法について図１から図４を参照して説明する。図２に示した記憶媒体１５４に、処理対象の第１のデータが予め格納されている。
【００２７】
情報処理装置１００のリムーバブルドライブ１５２に記憶媒体１５４が装着され、外部入出力部１６０を介してコマンドが入力されると、ＣＰＵ１１０は、入力されたコマンドがデータ入力要求か、データ出力要求のいずれであるかを判定する（ステップＡ１）。入力されたコマンドがデータ入力要求であると、ＣＰＵ１１０は、データ入力要求のコマンドに含まれるデータ関連情報を読み出し、データ関連情報を主記憶部１４０に保存する。そして、ＣＰＵ１１０は、データ関連情報に含まれるセクタ番号とセクタ数を読み出すと、セクタ番号が示すセクタを開始位置とする、そのセクタ数分の第１のデータを記憶媒体１５４から読み出し、主記憶部１４０に入力データとして保存する（ステップＡ２）。
【００２８】
続いて、ＣＰＵ１１０は、主記憶部１４０に格納された入力データに対して、データ全体が揃わないと元のデータに復元できない符号化処理をセクタ毎に実行し、符号化処理された第１のデータを主記憶部１４０に格納する（ステップＡ３）。符号化処理された第１のデータを符号化処理データと称する。符号化処理の方法の一例として、ハフマン符号化法がある。
【００２９】
次に、ＣＰＵ１１０は、主記憶部１４０に格納された符号化処理データに対して、セクタ毎に、容量の大きいデータと容量の小さいデータの２つに分割する処理を実行する（ステップＡ４）。分割した２つのデータについて、図２を参照して詳細に説明する。符号化処理データの１つのセクタが５１２バイトの容量であるものとする。
【００３０】
容量の小さいデータは、符号化処理データのセクタ単位で、始めの１バイトおよび１７バイトのサンプリング間隔で１バイトずつ抽出されたもの（容量は３０バイト）を合計した３１バイトの符号化処理データと、「サンプリング間隔＝１７バイト」であることを示す付加情報（容量は１バイト）とを合わせた３２バイトのデータである。なお、セクタ単位で容量３１バイトのデータを処理対象としているが、サンプリング間隔は１７バイトに限らない。一方、容量の大きいデータは、符号化処理データのセクタ単位で、５１２バイトのデータから上記３１バイトのデータを除いた後の４８１バイトのデータである。
【００３１】
次に、ＣＰＵ１１０は、各セクタから抽出した、容量の小さいデータのそれぞれに秘匿性の強固な暗号化処理を実行する（ステップＡ５）。暗号化処理の例として、３ＤＥＳ（Data  Encryption  Standard）およびＡＥＳ（Advanced  Encryption  Standard）で規定された暗号方法がある。容量の小さいデータのそれぞれを暗号化処理したものをひとまとめにしたものを、以下では、暗号化処理されたデータと称する。この暗号化処理されたデータが上記第２のデータに相当する。一方、各セクタにおける、容量の大きいデータをひとまとめにしたものが上記第３のデータに相当する。
【００３２】
ＣＰＵ１１０は、暗号化処理されたデータを主記憶部１４０に保存したデータ関連情報と関連付けて、内蔵フラッシュメモリ１５１に記録する（ステップＡ６）。第２のデータをデータ関連情報と関連づけして内蔵フラッシュメモリ１５１に記録することで、暗号化処理されたデータを復号した際、復号後のデータと第３のデータと対応づけることが可能となる。
【００３３】
次に、ＣＰＵ１１０は、主記憶部１４０に保存したデータ関連情報にしたがって、記憶媒体１５４で第１のデータが保存されている記憶領域を特定する。続いて、ＣＰＵ１１０は、特定した記憶領域に第３のデータを記録する（ステップＡ７）。その際、第３のデータの開始位置が元のデータである第１のデータの開始位置に設定される。
【００３４】
次に、上述のデータ保存方法で保存したデータの復元方法の動作手順を、図１から図４を参照して説明する。図１に示すリムーバブルドライブ１５２に図２に示す記憶媒体１５４が装着されている。記憶媒体１５４には第３のデータが格納され、内蔵フラッシュメモリ１５１には第２のデータが格納されている。
【００３５】
図４に示すステップＡ１で、入力されたコマンドがデータ出力要求であると、ＣＰＵ１１０は、ＣＰＵ１１０は、データ出力要求の信号に含まれるデータ関連情報を読み出す。そして、ＣＰＵ１１０は、データ関連情報のセクタ番号とセクタ数の情報と関連づけて記録された第２のデータを内蔵フラッシュメモリ１５１で特定する。第２のデータは暗号化処理されたデータであることから、ＣＰＵ１１０は、特定した第２のデータを内蔵フラッシュメモリ１５１から読み出し（ステップＡ８）、第２のデータに復号処理を実行する（ステップＡ９）。
【００３６】
続いて、ＣＰＵ１１０は、データ関連情報のセクタ番号とセクタ数に対応する第３のデータを記憶部１５４から読み出す（ステップＡ１０）。そして、ＣＰＵ１１０は、ステップＡ９による復号処理後のデータをセクタ毎に３１バイトの処理対象データと１バイトの付加情報とに分離する。さらに、ＣＰＵ１１０は、「サンプリング間隔＝１７バイト」の付加情報を参照し、第３のデータおよび復号処理後のデータのそれぞれのセクタを対応させ、各セクタにおいて３１バイトの処理対象データを１バイトずつ１７バイト間隔で第３のデータに戻す（ステップＡ１１）。これにより、第２のデータについて復号処理されたデータと第３のデータとが結合される。結合されたデータはステップＡ３による符号化処理がされた状態である。
【００３７】
次に、ＣＰＵ１１０は、ステップＡ３で実行された符号化処理に対する復号処理を、結合されたデータに対してセクタ単位で実行し、第１のデータに復元する（ステップＡ１２）。続いて、ＣＰＵ１１０は、データ出力要求の信号に含まれるデータ関連情報にしたがって、復元した第１のデータを外部入出力部１６０を介してＰＣ２１０に出力する（ステップＡ１３）。ＰＣ２１０は、情報処理装置１００から受信するデータをプロジェクタ２２０に出力する。プロジェクタ２２０は、ＰＣ２１０から受信するデータによる画像をスクリーン（不図示）に投射する。
【００３８】
上述したように、本実施形態のデータ処理方法は、秘匿対象のデータの全てに対して暗号化処理を行う場合に比べて、暗号化および復号する際の演算処理の時間が低減する。特に、大容量のデータを扱う場合、データの全てに対して暗号化処理を行う場合よりも、暗号化および復号する際の演算処理の時間が大幅に軽減する。元のデータのうち、容量の小さいデータに対して、ＣＰＵにとって演算処理の負荷の高い、暗号化アルゴリズムの処理が実行され、容量の大きいデータにはその暗号化アルゴリズムの処理が実行されないからである。
【００３９】
また、処理対象のデータから暗号化対象となる部分をランダムまたは均等に抽出しており、処理対象のデータ量が増えても暗号化処理には影響がなく、処理時間が長くなるのを防げる。
【００４０】
また、特許文献１では処理対象のデータは所定のデータ圧縮方式で処理された画像データに限定されるが、本実施形態では、処理対象のデータの種類は限定されず、任意のデータを対象とすることが可能となる。
【００４１】
また、記憶媒体を紛失したり、記憶媒体が盗まれたりしても、記憶媒体に格納されたデータは元のデータから一部が欠落しているため、記憶媒体に格納されたデータから元のデータに復元されることを防げる。
【００４２】
また、元のデータのうち容量の大きいデータが記憶媒体に格納され、容量の小さいデータがその記憶媒体の識別子とともに内蔵フラッシュメモリに格納されているため、記憶媒体の識別子で、容量の大きいデータと容量の小さいデータとを対応付けられる。対象となる元のデータが複数あって、容量の小さいデータが内蔵フラッシュメモリに複数格納されていても、装着される記憶媒体の識別子で、容量の大きいデータと容量の小さいデータとを対応づけることができる。
【００４３】
なお、本実施形態では、処理対象のデータの種類を限定せず、任意のデータを対象として説明したが、処理対象のデータが既に符号化処理されたデータ（例えば、ＪＰＥＧ画像ファイルなど）である場合には、図４に示した符号化処理（ステップＡ８）とそれに対応する復号処理（ステップＡ１２）を省略してもよい。
【００４４】
次に、上述のデータ保存方法の手順をまとめて簡単に説明する。
【００４５】
情報処理装置は、秘匿対象のデータに対して、データ全体が揃わないと元のデータに復元できないような符号化処理を施したデータを作成する。
【００４６】
次に、情報処理装置は、符号化処理を施したデータを、容量の大きいデータと容量の小さいデータの２つのデータに分割する。容量の大きいデータを単に「大きいデータ」と称し、容量の小さいデータを単に「小さいデータ」と称する。大小２つのデータに分割する際、「小さいデータ」は元のデータの全体から満遍なく取り出した部分集合のデータとすることが望ましい。その部分集合の要素となるデータの取り出し位置は、予め決められたデータ単位でもよく、ランダムな位置でもよい。このとき、分割された、大小２つのデータのうち、小さいデータには、符号化処理を施したデータに復元するための付加情報を追加する。付加情報は、分割したデータを元の位置に戻すための位置情報となる。
【００４７】
次に、情報処理装置は、付加情報を追加した「小さいデータ」に、秘匿性の強固な暗号化アルゴリズムの処理を行って、秘匿性の高いデータを作成する。このようにすることで、「小さいデータ」は容易に元に戻せなくなり、データの大部分を占める「大きいデータ」は、「符号化された、欠落したデータ」となる。そのため、「大きいデータ」だけでは、元のデータを再構成することはできない。
【００４８】
このようにして、元のデータを大小２つのデータに分け、「小さいデータ」にのみ秘匿性の強固な暗号化アルゴリズムの処理を行っている。そのため、この方法は、元のデータ全体に暗号化アルゴリズムの処理を行う場合に比べて、暗号化処理にかかる時間が大幅に低減し、かつ、秘匿性の強固な暗号化アルゴリズムを利用して秘匿性の高いデータを作成することができる。
【００４９】
さらに、上述したデータ保存方法の手順を、模式図を参照して説明する。図５は本実施形態におけるデータ処理方法を説明するための模式図である。図５において、データ１は、秘匿対象のデータを示している。
【００５０】
はじめに、情報処理装置は、データ１に対し、データ全体が存在しないと元のデータ１に復元できないデータ２を作成する。この処理方法として、一般的な符号化圧縮などの方法を用いることが可能である。なお、データ１自体が、符号化処理された画像ファイル、例えば、ＪＰＥＧファイルなどであった場合においては、データ１をそのままデータ２に用いることが可能である。この場合、データ１の一部が欠落していると、元の画像を再構成することができないことが必要条件となる。
【００５１】
次に、情報処理装置は、データ２から満遍なく取り出した部分集合のデータ３Ａとそれ以外のデータ３Ｂとに分割する。データ３Ｂは、データ２に比べてデータ３Ａのサイズ分データが欠落しているため、データ３Ｂだけでは元のデータ２に復元することはできない。さらに、情報処理装置は、付加情報として、データ３Ａを構成する各データについてデータ２における取り出し位置を示す情報をデータ３Ａに付加して、データ３Ａ’を作成する。続いて、情報処理装置は、データ３Ａ’に対し、秘匿性の強固な暗号化アルゴリズムを用い、秘匿性の高いデータ４を作成する。
【００５２】
このようにして、秘匿対象のデータ１は、符号化された後、データの一部が欠落した状態のデータ３Ｂと秘匿性の強固な暗号化アルゴリズムが施された秘匿性の高いデータ４とに変換される。
【００５３】
一方、上述のようにして保存したデータの復元処理は次のようにして行われる。データ４およびデータ３Ｂが入力データとして情報処理装置に与えられると、情報処理装置は、上記暗号化アルゴリズムに対する復号処理をデータ４に対して行い、付加情報を含むデータ３Ａ’を求める。続いて、情報処理装置は、データ３Ａ’に含まれるデータ３Ａおよび付加情報とデータ３Ｂとからデータ２を再構成する。そして、情報処理装置は、データ２に対し、上記符号化処理に対する復号処理を実行し、元のデータ１を得る。
【００５４】
次に、本実施形態のデータ処理方法を実行した場合の処理時間について説明する。図６は本実施形態のデータ保存方法を情報処理装置が実行した場合の処理時間を説明するための計算書である。ここでは、説明を簡単にするために、処理対象となる元データのうち、暗号化処理の対象となるデータを「小さいデータ」とし、それ以外を「大きいデータ」としている。
【００５５】
図６に示すように、元データ、小さいデータ、大きいデータ、および付加情報のそれぞれのデータの容量を示すサイズをＳ、Ｓ１、Ｓ２、ＳＤのそれぞれに定義している。また、符号化処理の負荷係数をＣＰとし、暗号化処理の負荷係数をＣＥとしている。本実施形態のデータ保存方法による処理時間Ｔは、Ｔ＝ＣＰ（Ｓ１＋Ｓ２）＋ＣＥ（Ｓ１＋ＳＤ）と表される。図６には、処理時間の比較のために、元データの全てに暗号化処理を行った場合の処理時間ＴＥも示している。処理時間ＴＥは、ＴＥ＝ＣＥ（Ｓ１＋Ｓ２）と表される。
【００５６】
そして、図６には、暗号化処理と符号化処理の演算量の比と、大きいデータと小さいデータのサイズの比（以下では、データ分割サイズ比と称する）を変化させた場合の、処理時間ＴＥおよび処理時間Ｔが求められている。
【００５７】
１）暗号化処理と符号化処理の演算量の比＝３：１、データ分割サイズ比＝９９：１、付加情報のサイズ＝小さいデータのサイズの場合
元データの全てに暗号化処理を行った場合の処理時間ＴＥ＝３００ＣＰＳ１
本実施形態のデータ保存方法による処理時間Ｔ＝１０６ＣＰＳ１
処理時間Ｔを処理時間ＴＥで割った値Ｔ／ＴＥを計算してみる。この値が小さいほど、情報処理装置の演算負荷が、元データの全てに暗号化処理を行った場合に比べて小さいことを示す。Ｔ／ＴＥを算出すると、Ｔ／ＴＥ＝０．３５である。
【００５８】
２）暗号化処理と符号化処理の演算量の比＝５：１、データ分割サイズ比＝９９：１、付加情報のサイズ＝小さいデータのサイズの場合
元データの全てに暗号化処理を行った場合の処理時間ＴＥ＝５００ＣＰＳ１
本実施形態のデータ保存方法による処理時間Ｔ＝１１０ＣＰＳ１
この場合のＴ／ＴＥを算出すると、Ｔ／ＴＥ＝０．２２である。
【００５９】
３）暗号化処理と符号化処理の演算量の比＝５：１、データ分割サイズ比＝９：１、付加情報のサイズ＝小さいデータのサイズの場合
元データの全てに暗号化処理を行った場合の処理時間ＴＥ＝５０ＣＰＳ１
本実施形態のデータ保存方法による処理時間Ｔ＝２０ＣＰＳ１
この場合のＴ／ＴＥを算出すると、Ｔ／ＴＥ＝０．４である。
【００６０】
上記１）〜３）の計算結果から、データ分割サイズ比が９９：１の場合では、本実施形態におけるデータ保存処理時間は、処理対象となるデータの全てに暗号化処理を行う場合に比べて、暗号化処理と符号化処理の演算量の比にほぼ比例して小さくなることがわかる。また、大きいデータの割合が大きいほど、処理時間が小さくなることがわかる。なお、データ復元処理についても、同様な結果になるため、その詳細な説明を省略する。
【００６１】
（第２の実施形態）
本実施形態の情報処理装置は、ネットワークを介して他の情報処理装置とデータの送受信をするための通信部が設けられた構成である。
【００６２】
図７は本実施形態の情報処理装置の一構成例を示すブロック図である。図８は本実施形態の情報処理装置が他の情報処理装置と接続される構成の一例を示すブロック図である。なお、第１の実施形態と同様な構成には同一の符号を付し、その詳細な説明を省略する。
【００６３】
図７に示すように、本実施形態の情報処理装置３００には、第１の実施形態で説明した情報処理装置１００の外部入出力部１６０の代わりに通信部３７０が設けられている。情報処理装置３００は、通信部３７０を介してネットワーク３５０と接続される。ネットワーク３５０にはサーバ３６０が接続されている。本実施形態では、ネットワーク３５０をＩＰ（Internet  Protocol）ネットワークとする。
【００６４】
内蔵フラッシュメモリ１５１には、ネットワーク３５０に接続される装置毎に異なる識別子がサーバ３６０および自装置のそれぞれについて予め登録されている。情報処理装置３００とサーバ３６０間で送受信されるデータには、データの送信元および送信先のそれぞれの装置の識別子の情報が含まれている。
【００６５】
ＣＰＵ１１０は、データ入力要求の信号が入力されると、第１の実施形態で説明したデータ保存方法を実行し、暗号化処理されたデータを通信部３７０およびネットワーク３５０を介してサーバ３６０に送信する。そして、ＣＰＵ１１０は、データ入力要求の信号に含まれるデータ関連情報と一緒にサーバ３６０の識別子を内蔵フラッシュメモリ１５１に記録する。
【００６６】
ＣＰＵ１１０は、データ出力要求の信号が入力されると、その信号に含まれるデータ関連情報に一致する情報と一緒に記録された識別子を内蔵フラッシュメモリ１５１から読み出し、その識別子のサーバ３６０宛にデータを要求する。そして、ＣＰＵ１１０は、サーバ３６０から暗号化処理されたデータを受信すると、第１の実施形態で説明したようにデータ復元処理を実行する。
【００６７】
サーバ３６０は、記憶部３６２および制御部３６１を有する。制御部３６１は、データを情報処理装置３００から受信すると、情報処理装置３００の識別子とともにデータを記憶部３６２に保存する。また、制御部３６１は、情報処理装置３００からデータ要求を受けると、要求元の識別子に一致する識別子とともに格納されたデータを記憶部３６２から読み出して情報処理装置３００に送信する。
【００６８】
次に、情報処理装置３００による、データ保存処理方法の動作手順を説明する。
【００６９】
情報処理装置３００は、処理対象のデータが格納された記憶媒体がリムーバブルドライブ１５２に装着され、データ入力要求の信号が入力されると、第１の実施形態で説明したデータ保存方法を実行し、暗号化処理されたデータを通信部３７０およびネットワーク３５０を介してサーバ３６０に送信する。そして、情報処理装置３００は、データ関連情報と一緒にサーバ３６０の識別子を内蔵フラッシュメモリ１５１に記録する。サーバ３６０は、データを情報処理装置３００から受信すると、情報処理装置３００の識別子とともにデータを記憶部３６２に保存する。
【００７０】
次に、情報処理装置３００による、データ復元処理方法の動作手順を説明する。
【００７１】
情報処理装置３００は、リムーバブルドライブ１５２に記憶媒体が装着され、データ出力要求の信号が入力されると、その信号に含まれるデータ関連情報に一致する情報と一緒に記録された識別子を内蔵フラッシュメモリ１５１から読み出す。そして、情報処理装置３００は、読み出した識別子のサーバ３６０宛にデータを要求する。サーバ３６０は、情報処理装置３００からデータ要求を受けると、情報処理装置３００の識別子とともに格納されたデータを記憶部３６２から読み出して情報処理装置３００に送信する。情報処理装置３００は、サーバ３６０から暗号化処理されたデータを受信すると、第１の実施形態で説明したようにデータ復元処理を実行する。
【００７２】
本実施形態では、第１の実施形態と同様にして、符号化処理後のデータから暗号化処理されたデータに相当する「小さいデータ」とそれ以外のデータに相当する「大きいデータ」を生成した後、内蔵フラッシュメモリの代わりにネットワーク上のサーバに「小さいデータ」を格納している。秘匿性の強固な暗号化アルゴリズムの処理が施された「小さいデータ」を情報処理装置内に保存する必要がないため、「大きいデータ」が格納された記憶媒体と情報処理装置の両方を紛失しても、両方を手に入れない限り、データの秘匿性が維持される。
【００７３】
また、「小さいデータ」の容量を元のデータの１／１０〜１／１０００程度にすれば、サーバに格納されるデータは元のデータに比べて容量が非常に小さいデータとなる。そのため、ユーザは、本実施形態の方法で保存したデータを元のデータに復元する際、情報処理装置を操作して、情報処理装置をサーバに接続させ、サーバから「小さいデータ」を短時間でダウンロードすることが可能となる。その結果、本実施形態のデータ保存処理によって保存したデータを容易に復元することができる。
【００７４】
（第３の実施形態）
本実施形態は、第１の実施形態で説明した情報処理装置の外部記憶部に、不揮発性メモリの内蔵フラッシュメモリの代わりに磁気記憶装置が設けられた構成である。
【００７５】
図９は本実施形態の情報処理装置の一構成例を示すブロック図である。なお、第１の実施形態と同様な構成には同一の符号を付し、その詳細な説明を省略する。また、本実施形態では、図３で説明したように、情報処理装置４００の外部入出力部１６０とＰＣをケーブルで接続し、ユーザがＰＣを操作して指示を入力する場合としている。そのため、図１に示した入力部１２０および表示部１３０を情報処理装置４００に設けていなくてもよい。
【００７６】
図９に示すように、本実施形態の情報処理装置４００は、記憶部４２０を有する。記憶部４２０は主記憶部１４０および外部記憶部４３０を有し、外部記憶部４３０はハードディスクドライブ４３１およびリムーバブルドライブ１５２を含む。図１に示した内蔵フラッシュメモリ１５１の代わりに、大容量記憶装置に相当するハードディスクドライブ４３１が設けられている。
【００７７】
本実施形態では、ハードディスクドライブ４３１は、例えば、１ＴＢの記憶容量を有しているものとする。また、リムーバブルドライブ１５２にはＵＳＢメモリが装着される。ＵＳＢメモリの記憶容量は、例えば、１６ＧＢである。ＣＰＵ１１０は、データ入力要求が入力されると、第１の実施形態で説明したデータ保存方法を実行し、符号化処理後のデータのうち、暗号化処理されたデータに相当する「小さいデータ」をＵＳＢメモリに保存し、それ以外のデータに相当する「大きいデータ」をハードディスクドライブ４３１に保存する。
【００７８】
なお、第１の実施形態では、記憶媒体からデータを一部抜き出す際、セクタ単位でデータを抽出したが、本実施形態では、ハードディスクドライブ４３１からブロック単位でデータを抽出してもよい。また、本実施形態では、「小さいデータ」の格納先が記憶媒体であり、「大きいデータ」の格納先がハードディスクドライブ４３１であることを除いて、情報処理装置４００の動作手順は、第１の実施形態と同様になるため、その詳細な説明を省略する。
【００７９】
本実施形態では、ハードディスクドライブと記憶媒体の容量差を利用し、データの一部が欠落したデータの集合である「大きいデータ」をハードディスクドライブに、秘匿性に強固な暗号化アルゴリズムを適用した「小さいデータ」をＵＳＢメモリに分割して保存している。情報処理装置のハードディスクドライブのデータを出力しようとしても、「小さいデータ」を記憶したＵＳＢメモリなしでは、元のデータを復元できないので、情報処理装置を使用するための鍵として本ＵＳＢメモリを機能させることができる。本実施形態は、秘匿性の高いデータを記憶媒体に保存する必要がある場合により有効である。
【００８０】
上述した第１から第３の実施形態のいずれの実施形態においても、「小さいデータ」と「大きいデータ」を別々の記憶装置と記憶媒体に保存している。秘匿性の強固な暗号化アルゴリズムの処理が施された、一部のデータと、その一部のデータが欠落した大容量のデータを、記憶媒体と記憶装置に別々に保存することによって、大容量のデータが盗まれても、その大容量のデータの秘匿性が維持される。大容量のデータは、符号化されたデータから一部のデータが欠落したものであるため、符号化処理がわかっても、データが欠落したままでは元のデータに復元することはできないからである。また、欠落部分に相当するデータには秘匿性の強固な暗号化アルゴリズムの処理が施されているため、たとえ「小さいデータ」が盗まれても、「小さいデータ」が解読されることを防げるからである。
【００８１】
なお、第１、第２および第３の実施形態のそれぞれの情報処理装置１００、３００、４００は、本発明の特徴となるデータ処理方法を実行する装置として、図１０に示すような、制御部１０５および記憶部１４５を有する装置に置き換えられる。図１０に示す情報処理装置５００の制御部１０５が図１に示したＣＰＵ１１０に相当する。図１０に示す記憶部１４５が図１に示した記憶部１４２に相当し、また、記憶部１４５が図９に示した記憶部４２０に相当する。
【００８２】
以上、実施形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
【符号の説明】
【００８３】
１００、３００、４００、５００    情報処理装置
１０５    制御部
１１０    ＣＰＵ
１４０    主記憶部
１４２、１４５、４２０    記憶部
１５０、４３０    外部記憶部
１５１    内蔵フラッシュメモリ
１５２    リムーバブルドライブ
【図１】
0005403708.tif 000002
【図２】
0005403708.tif 000003
【図３】
0005403708.tif 000004
【図４】
0005403708.tif 000005
【図５】
0005403708.tif 000006
【図６】
0005403708.tif 000007
【図７】
0005403708.tif 000008
【図８】
0005403708.tif 000009
【図９】
0005403708.tif 000010
【図１０】
0005403708.tif 000011