(57)【要約】【課題】ＪＰＭファイル等の文書ファイル内の要素（ページ、セクション等）ごとにセキュリティを設定できるようにする。【解決手段】文書ファイル５０内の各要素をアクセスする手段１１０と、文書ファイル内の各要素にセキュリティを設定する手段１２０とを備え、一つの文書ファイルを構成する各要素ごとにセキュリティを設定する。必要なら、文書ファイル内の各要素ごとにセキュリティ設定の要／不要を管理する手段を更に備え、文書ファイル内の所定の要素だけに選択的にセキュリティを設定するようにする。セキュリティは、アクセス制限、暗号化または電子署名などである。【選択図】図４
2010157013.tif 000002
【特許請求の範囲】
【請求項１】
文書ファイル内の各要素をアクセスする手段と、文書ファイル内の各要素にセキュリティを設定する手段とを備え、
一つの文書ファイルを構成する各要素ごとにセキュリティを設定することを特徴とするセキュリティ設定装置。
【請求項２】
文書ファイル内の各要素ごとにセキュリティ設定の要／不要を管理する手段を更に備え、
文書ファイル内の所定の要素だけに選択的にセキュリティを設定することを特徴とする請求項１に記載のセキュリティ設定装置。
【請求項３】
セキュリティは、アクセス制御、暗号化または電子署名であることを特徴とする請求項１又は２に記載のセキュリティ設定装置。
【請求項４】
セキュリティレベルの異なる複数のセキュリティ鍵と、文書ファイル内の要素ごとに、設定すべきセキュリティレベルを管理する手段とを更に備え、
文書ファイル内の一つの要素にセキュリティレベルの異なる複数のセキュリティを設定することを特徴とする請求項１乃至３のいずれか１項に記載のセキュリティ設定装置。
【請求項５】
一つのセキュリティ鍵から、セキュリティレベルの異なる複数のセキュリティ鍵を生成する鍵生成手段を更に備えることを特徴とする請求項４に記載のセキュリティ設定装置。
【請求項６】
鍵生成手段は、一方向性ハッシュ関数を用いて、セキュリティレベルの異なる複数のセキュリティ鍵をレベル順に生成することを特徴とする請求項５に記載のセキュリティ設定装置。
【請求項７】
鍵生成手段は、セキュリティレベルの異なる複数のセキュリティ鍵をランダムに生成すると共に、前記生成された複数のセキュリティ鍵をレベル順に並べ替える手段を更に備えることを特徴とする請求項５に記載のセキュリティ設定装置。
【請求項８】
文書ファイルはＪＰＭファイルであり、要素はページ、メインページコレクションボックス、プライマリページコレクションボックス、補助ページコレクションボックスのいずれかであることを特徴とする請求項１乃至７のいずれか１項に記載のセキュリティ設定装置。
【請求項９】
コンピュータが、文書ファイル内の要素に対してセキュリティを設定するセキュリティ設定処理方法であって、
文書ファイル内の各要素をアクセスするステップと、文書ファイル内の各要素にセキュリティを設定するステップとを有し、
一つの文書ファイルを構成する各要素ごとにセキュリティを設定することを特徴とするセキュリティ設定処理方法。
【請求項１０】
文書ファイル内の各要素ごとにセキュリティ設定の要／不要を管理し、文書ファイル内の所定の要素だけに選択的にセキュリティを設定することを特徴とする請求項９に記載のセキュリティ設定処理方法。
【請求項１１】
セキュリティは、アクセス制御、暗号化または電子署名であることを特徴とする請求項９又は１０に記載のセキュリティ設定処理方法。
【請求項１２】
セキュリティレベルの異なる複数のセキュリティ鍵を有すると共に、文書ファイル内の要素ごとに、設定すべきセキュリティレベルを管理し、
文書ファイル内の一つの要素にセキュリティレベルの異なる複数のセキュリティを設定することを特徴とする請求項９乃至１１のいずれか１項に記載のセキュリティ設定処理方法。
【請求項１３】
一つのセキュリティ鍵から、セキュリティレベルの異なる複数のセキュリティ鍵を生成する鍵生成ステップを更に有することを特徴とする請求項１２に記載のセキュリティ設定処理方法。
【請求項１４】
鍵生成ステップは、一方向性ハッシュ関数を用いて、セキュリティレベルの異なる複数のセキュリティ鍵をレベル順に生成することを特徴とする請求項１３に記載のセキュリティ設定処理方法。
【請求項１５】
鍵生成ステップは、セキュリティレベルの異なる複数のセキュリティ鍵をランダムに生成すると共に、前記生成された複数のセキュリティ鍵をレベル順に並べ替えるステップを更に有することを特徴とする請求項１３に記載のセキュリティ設定処理方法。
【請求項１６】
文書ファイルはＪＰＭファイルであり、要素はページ、メインページコレクションボックス、プライマリページコレクションボックス、補助ページコレクションボックスのいずれかであることを特徴とする請求項９乃至１５のいずれか１項に記載のセキュリティ設定処理方法。
【請求項１７】
コンピュータが、文書ファイル内の要素に対して設定されたセキュリティを解除するセキュリティ解除処理方法であって、
請求項９乃至１６のいずれか１項に記載のセキュリティ設定処理方法により設定された文書ファイル内の各要素のセキュリティを解除することを特徴とするセキュリティ解除処理方法。
【請求項１８】
複数の利用者装置と、利用者装置からの文書ファイルを保持し、任意の利用者装置に該文書ファイルを提供する文書共存サーバとがネットワークにより接続されてなる文書共有システムであって、
前記利用者装置は、文書ファイル内の要素ごとにセキュリティを設定する請求項１乃至８のいずれか１項に記載のセキュリティ設定装置であるセキュリティ設定手段と、文書ファイルの要素ごとに設定されたセキュリティを解除するセキュリティ解除手段のいずれか一方あるいは両方を備える、
ことを特徴とする文書共有システム。
【請求項１９】
コンピュータを請求項１乃至８のいずれか１項に記載のセキュリティ設定装置として機能させるためのプログラム。
【請求項２０】
コンピュータに請求項９乃至１６のいずれか１項に記載のセキュリティ設定処理方法を実行させるためのプログラム。
【請求項２１】
コンピュータに請求項１７に記載のセキュリティ解除処理方法を実行させるためのプログラム。
【請求項２２】
請求項１９、２０または２１のプログラムが記録されていることを特徴とするコンピュータが読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワーク上で閲覧等のために多数のユーザで共有される文書ファイルにセキュリティを設定する技術に関する。
【背景技術】
【０００２】
従来から、ネットワークを利用してユーザに電子文書（文書ファイル）を提供する場合、機密等を保持する必要がある文書ファイルに対してセキュリティをかけて、解除鍵を有するユーザのみがセキュリティを解除できるようにすることが行われている。例えば、特許文献１には、階層構造を有する電子文書について暗号鍵を用いて暗号化を行い、暗号鍵に対応する復号鍵を有するものだけが正しく復号することを可能とすることが開示されている。また、特許文献２には、電子文書の各ページに異なるアクセス制限をかけると共に、ユーザがページを表示する要求を出す前にアクセス権があるかどうか確認可能とすることが開示されている。
【０００３】
【特許文献１】特開２００４−２４２２８７号公報
【特許文献２】特開２００５−１７４１２３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
従来技術においては、文書ファイルを構成する要素ごとにセキュリティを設定することは容易ではなかった。また、1つのファイル内に異なるセキュリティレベル設定が複数存在するとき、それら複数設定されたセキュリティレベルの両方にアクセスするためにはその個数分の解除鍵を持っている必要があった。そのためセキュリティレベル数やセキュリティを設定した場所が多くあると、その鍵を管理するのに煩雑さを要し正当なアクセスをする場合でも困難を極め、本来アクセス権限がある情報であるにも拘らずスピーディにアクセスすることができない問題があった。
【０００５】
本発明の目的は、文書ファイルを構成する要素毎に容易かつきめ細かにセキュリティを設定することが可能なセキュリティ設定装置、セキュリティ設定処理方法、セキュリティ解除処理方法及びプログラム、記録媒体、並びに、それを適用した文書共有システムを提供することにある。
【０００６】
また、本発明の目的は、鍵管理を容易にし、本来アクセス権限がある情報を快適かつスピーディにアクセスできるようにするセキュリティ設定装置、セキュリティ設定処理方法、セキュリティ解除処理方法及びプログラム、記録媒体、並びに、それを適用した文書共有システムを提供することにある。
【課題を解決するための手段】
【０００７】
請求項１の発明は、文書ファイル内の各要素をアクセスする手段と、文書ファイル内の各要素にセキュリティを設定する手段とを備え、一つの文書ファイルを構成する各要素ごとにセキュリティを設定することを特徴とするセキュリティ設定装置である。
【０００８】
請求項２の発明は、請求項１に記載のセキュリティ設定装置において、文書ファイル内の各要素ごとにセキュリティ設定の要／不要を管理する手段を更に備え、文書ファイル内の所定の要素だけに選択的にセキュリティを設定することを特徴とする。
【０００９】
請求項３の発明は、請求項１又は２に記載のセキュリティ設定装置において、セキュリティは、アクセス制御、暗号化または電子署名であることを特徴とする。
【００１０】
請求項４の発明は、請求項１乃至３のいずれか１項に記載のセキュリティ設定装置において、セキュリティレベルの異なる複数のセキュリティ鍵と、文書ファイル内の要素ごとに、設定すべきセキュリティレベルを管理する手段とを更に備え、文書ファイル内の一つの要素にセキュリティレベルの異なる複数のセキュリティを設定することを特徴とする。
【００１１】
請求項５の発明は、請求項４に記載のセキュリティ設定装置において、一つのセキュリティ鍵から、セキュリティレベルの異なる複数のセキュリティ鍵を生成する鍵生成手段を更に備えることを特徴とする。
【００１２】
請求項６の発明は、請求項５に記載のセキュリティ設定装置において、鍵生成手段は、一方向性ハッシュ関数を用いて、セキュリティレベルの異なる複数のセキュリティ鍵をレベル順に生成することを特徴とする。
【００１３】
請求項７の発明は、請求項５に記載のセキュリティ設定装置鍵生成手段は、セキュリティレベルの異なる複数のセキュリティ鍵をランダムに生成すると共に、前記生成された複数のセキュリティ鍵をレベル順に並べ替える手段を更に備えることを特徴とする。
【００１４】
請求項８の発明は、請求項１乃至７のいずれか１項に記載のセキュリティ設定装置において、文書ファイルはＪＰＭファイルであり、要素はページ、メインページコレクションボックス、プライマリページコレクションボックス、補助ページコレクションボックスのいずれかであることを特徴とする。
【００１５】
請求項９の発明は、コンピュータが、文書ファイル内の要素に対してセキュリティを設定するセキュリティ設定処理方法であって、文書ファイル内の各要素をアクセスするステップと、文書ファイル内の各要素にセキュリティを設定するステップとを有し、一つの文書ファイルを構成する各要素ごとにセキュリティを設定することを特徴とする。
【００１６】
請求項１０の発明は、請求項９に記載のセキュリティ設定処理方法において、文書ファイル内の各要素ごとにセキュリティ設定の要／不要を管理し、文書ファイル内の所定の要素だけに選択的にセキュリティを設定することを特徴とする。
【００１７】
請求項１１の発明は、請求項９又は１０に記載のセキュリティ設定処理方法において、セキュリティは、アクセス制御、暗号化または電子署名であることを特徴とする。
【００１８】
請求項１２の発明は、請求項９乃至１１のいずれか１項に記載のセキュリティ設定処理方法において、要素ごとに、設定すべきセキュリティレベルを管理し、文書ファイル内の一つの要素にセキュリティレベルの異なる複数のセキュリティを設定することを特徴とする。
【００１９】
請求項１３の発明は、請求項１２に記載のセキュリティ設定処理方法において、一つのセキュリティ鍵から、セキュリティレベルの異なる複数のセキュリティ鍵を生成する鍵生成ステップを更に有することを特徴とする。
【００２０】
請求項１４の発明は、請求項１３に記載のセキュリティ設定処理方法において、鍵生成ステップは、一方向性ハッシュ関数を用いて、セキュリティレベルの異なる複数のセキュリティ鍵をレベル順に生成することを特徴とする。
【００２１】
請求項１５の発明は、請求項１３に記載のセキュリティ設定処理方法において、鍵生成ステップは、セキュリティレベルの異なる複数のセキュリティ鍵をランダムに生成すると共に、前記生成された複数のセキュリティ鍵をレベル順に並べ替えるステップを更に有することを特徴とする。
【００２２】
請求項１６の発明は、請求項９乃至１５のいずれか１項に記載のセキュリティ設定処理方法において、文書ファイルはＪＰＭファイルであり、要素はページ、メインページコレクションボックス、プライマリページコレクションボックス、補助ページコレクションボックスのいずれかであることを特徴とする。
【００２３】
請求項１７の発明は、コンピュータが、文書ファイル内の要素に対して設定されたセキュリティを解除するセキュリティ解除処理方法であって、請求項９乃至１６のいずれか１項に記載のセキュリティ設定処理方法により設定された文書ファイル内の各要素のセキュリティを解除することを特徴とする。
【００２４】
請求項１８の発明は、複数の利用者装置と、利用者装置からの文書ファイルを保持し、任意の利用者装置に該文書ファイルを提供する文書共存サーバとがネットワークにより接続されてなる文書共有システムであって、前記利用者装置は、文書ファイル内の要素ごとにセキュリティを設定する請求項１乃至８のいずれか１項に記載のセキュリティ設定装置であるセキュリティ設定手段と、文書ファイルの要素ごとに設定されたセキュリティを解除するセキュリティ解除手段のいずれか一方あるいは両方を備えることを特徴とする。
【００２５】
請求項１９の発明は、コンピュータを請求項１乃至８のいずれか１項に記載のセキュリティ設定装置として機能させるためのプログラムである。
【００２６】
請求項２０の発明は、コンピュータを請求項９乃至１６のいずれか１項に記載のセキュリティ設定処理方法を実行させるためのプログラムである。
【００２７】
請求項２１の発明は、コンピュータに請求項１７に記載のセキュリティ解除処理方法を実行させるためのプログラムである。
【００２８】
請求項２２の発明は、請求項１９、２０または２１のプログラムが記録されていることを特徴とするコンピュータが読み取り可能な記録媒体である。
【発明の効果】
【００２９】
本発明によれば、１つの文書ファイル内の要素毎にセキュリティを容易かつきめ細かに設定することができるだけでなく、鍵管理を容易にし、本来アクセス権限がある情報を快適かつスピーディにアクセスすることができるようになる。
【発明を実施するための最良の形態】
【００３０】
以下に、本発明の実施の形態について図面を用いて詳細に説明する。
【００３１】
図１は、本発明の一実施の形態のシステム構成を示した図である。本システムは文書共有システムの一つである会社などにおける文書閲覧システムであり、多数の電子文書ファイル（以下、単に文書ファイル）を保持管理している文書共有サーバ１、ユーザが該文書共有サーバ１に文書ファイルを登録あるいは該文書共有サーバ１の文書ファイルを閲覧するための利用者装置２，３，４、及び、これら文書共有サーバ１や利用者装置２，３，４を接続するＬＡＮ等のネットワークからなる。利用者装置２，３，４はセキュリティ設定手段１００及び／又はセキュリティ解除手段２００を備えているが、図１では、説明の便宜上、利用者装置１がセキュリティ設定手段１００を備え、利用者装置３，４がセキュリティ解除手段２００を備えるとする。また、図１では、利用者装置は３台としたが、一般には多数存在する。文書共有サーバも１台である必要はない。
【００３２】
利用者装置２のユーザは、文書ファイルを一般に公開すべく、該文書ファイルを文書共有サーバ１へ送信する際、必要ならばセキュリティ設定手段１００を用いて当該文書ファイルにセキュリティを設定し、ネットワーク５を介して文書共有サーバ１へ送信する。本発明のセキュリティ設定装置は、このセキュリティ設定手段１００に適用される。一方、利用者装置３，４のユーザは、ネットワーク５を介して文書共有サーバ１にアクセスして所望の文書ファイルを閲覧する。この時、当該文書ファイルにセキュリティが設定されている場合、セキュリティ解除手段２００を用いてセキュリティを解除する。
【００３３】
図２は利用者装置２，３，４のハードウェア構成例を示す。利用者装置２，３，４は、通常のコンピュータ装置と同様の構成であり、ＣＰＵ１１、ＲＯＭ１２、ＲＡＭ１３、マウスやキーボード等の操作部１４、液晶モニタ等の表示部１５、ＨＤＤ等の記憶部１６、文書共有サーバ１やその他の外部装置との通信を行う通信Ｉ／Ｆ部１７、これら各部を接続する内部バス１８などで構成される。ＲＯＭ１２や記憶部１６には、各種プログラムや各種データが記憶されている。ＣＰＵ１１は、ＲＯＭ１２に記憶されているプログラムを実行するか、あるいは、記憶部１６に記憶されているプログラムをＲＡＭ１３にロードして実行することにより、所定の機能を実現する。ここでは、図１のセキュリティ設定手段１００及びセキュリティ解除手段２００の機能を実現する。記憶部１６には、文書ファイルが記憶され、処理対象データとしてＣＰＵ１１により同様にＲＡＭ１３にロードされる。ＲＡＭ１３には、必要に応じて処理途中結果のデータも記憶される。
【００３４】
文書共有サーバ１のハードウェア構成は、図２と基本的に同様であるので省略する。相違は、文書共有サーバ１の記憶部には、閲覧に供される多数の文書ファイルが記憶されていることである。そして、この文書ファイル群の一部あるいは全部の文書ファイルにセキュリティが設定されている。
【００３５】
図３に本発明で対象とする文書ファイルの構成例を示す。これは、国際標準ＩＳＯ１５４４４−６で規定されるＪＰＭファイルのデータ構造を模式的に示したものである。図３に示すようにＪＰＭファイルは、ＪＰＭファイルを管理するための各種の情報（管理情報）が格納されるヘッダ部と、ＪＰＭファイルの各ページに含まれた各種のコードストリームが格納されるデータ部とに大別される。
【００３６】
ヘッダ部のうち、メタデータには、図示しない下記の３つのフィールドが格納されている。
１．マジックナンバー
２．Ｓｉｇｎａｔｕｒｅ  Ｆｉｅｌｄ
３．Ｔｙｐｅ  ｆｉｅｌｄ
ここで「マジックナンバー」には、本ＪＰＭファイルに固有の識別情報が記述されている。また、「Ｓｉｇｎａｔｕｒｅ  Ｆｉｅｌｄ」には、本ＪＰＭファイルがＪＰＥＧ２０００に依存したファイルであることを示す情報が記述されている。また、「Ｔｙｐｅ  ｆｉｅｌｄ」には、ファイルタイプ、バージョン、互換性等を示す情報が記述されている。これら３つのフィールドは、この順序でＪＰＭファイルの先頭部分に格納されるよう規定されている。
【００３７】
メタデータの後段に位置するヘッダデータには、コンパウンドヘッダボックスと、ページコレクションボックスと、ページボックスとが格納されている。コンパウンドヘッダデータには、本ＪＰＭファイルが構造化文書であることを示す情報が記述されている。ページコレクションボックスには、本ＪＰＭファイルに含まれる各ページを管理するための情報が記述されており、各ページを指示するためのページボックスと対応付けられている。図３の例では、ページボックスとして「ページボックス０」と「ページボックス１」とが示されているが、これは「ページボックス０」と「ページボックス１」とに対応する２ページ分のファイルからＪＰＭファイルが構成されることを意味している。すなわち、「ページボックス０」に対応するページが「ページ０」、「ページボックス１」に対応するページが「ページ１」である。
【００３８】
各ページボックス内には、対応するページの要素となるオブジェクト毎に図示しないオブジェクトボックス（Ｏｂｊｅｃｔ  Ｂｏｘ）が用意されている。これら各オブジェクトボックスには、対応するオブジェクトを表すコードストリームの位置を指示するための情報（オフセットと長さ）が夫々記述されており、このオフセットと長さが示す位置に基づいてコードストリームが読み出されるようになっている。ここで「オフセット」とは、ＪＰＭファイルにおいて一意に定まる位置から、各コードストリームの先頭位置までの距離を示す情報である。また「長さ」とは、各コードストリームの先頭から終端までのデータ長を示す情報である。なお、各コードストリームについてのオフセットと長さは、ＪＰＥＧ２０００による圧縮・符号化の際に、対応する各ページボックスに含まれるオブジェクトボックスに夫々書き込まれるものとする。
【００３９】
図３の例では、「ページボックス０」に含まれるオブジェクトボックス０は「コードストリーム０」の格納位置を示す「オフセット０」、オブジェクトボックス１には「コードストリーム１」の格納位置を示す「オフセット１」と記述されることで、ページ０の要素として「コードストリーム０」と「コードストリーム１」とを参照することが可能となる。同様に「ページボックス１」に含まれるオブジェクトボックス２は「オフセット２」が記述されることで、ページ１の要素として「コードストリーム２」を参照することが可能となっている。このように、各ページボックスからは、対応するページの要素となるコードストリームに夫々アクセスできるようになっている。
【００４０】
なお、本発明でセキュリティ設定の対象とする文書ファイルは、図３に示したＪＰＭファイルに限定されるものではなく、ＪＰＭファイル以外の文書ファイルにも広く適用することができる。要は、文書ファイルは独立した複数の要素（ページ、セクション等）から構成されていればよい。
【００４１】
以下に、本発明の特徴とするセキュリティ設定装置（セキュリティ設定手段１００）の種々の実施形態について説明する。セキュリティ解除手段２００は、基本的にセキュリティ設定手段１００の逆の処理を行えばよいので、構成等の詳細は省略し、その処理のみを必要に応じて説明することにとどめる。
【００４２】
＜実施形態１＞
実施形態１は、文書ファイル内の複数の要素について、その要素毎にセキュリティを設定するものである。ここで、一つの文書ファイルは１〜Ｎの要素（例えば、Ｎページ）で構成されるとする。これは後述の他の実施形態でも同様とする。
【００４３】
図４に本実施形態にかかるセキュリティ設定装置１００の機能ブロック図を示す。本セキュリティ設定装置１００は、文書ファイル５０内の要素（１〜Ｎ）をアクセスする手段１１０と、要素にセキュリティを設定する手段１２０を具備する。
【００４４】
文書ファイル５０内の要素をアクセスする手段１１０は、文書ファイル５０について、例えば、当該ファイルの先頭位置から各要素に対応したオフセットと長さを基に、各要素毎に、そのオフセットと長さで示されるデータを順次読み込むことで実現される。要素にセキュリティを設定する手段１２０は、各要素毎に、設定すべきセキュリティを管理するテーブルを備え、該テーブルを基に読み込まれた各要素毎にセキュリティを設定する。セキュリティの具体例については後述する。
【００４５】
図５に、本実施形態にかかるセキュリティ設定装置１００の処理フローチャートを示す。まず、ステップ１００１で初期設定として現在の要素番号を１に設定する。次に、ステップ１００２で、全要素が処理済みかどうかチェックし（要素番号がＮを超えたかチェック）、全要素が処理済みのときは、処理終了とし、そうでない場合にはステップ１００３に進む。ステップ１００３では、現在の要素番号に対応する要素をアクセスする。そして、ステップ１００４で、当該要素に所望のセキュリティを設定する。次に、ステップ１００５で、現在の要素番号を＋１してステップ１００２に戻る。以下、要素番号がＮに達するまで、ステップ１００２〜１００５の処理を繰り返す。
【００４６】
図５の処理フローチャートはソフトウェアによって実現し、ソフトウェアダウンロードにより提供されてもよい。また、かかるソフトウェアをＣＤ−ＲＯＭ等の記録媒体に記録して配布することも可能である。先に述べたように、かかるソフトウェア（プログラム）をＣＰＵ１１（図２）で実行することで、図４のセキュリティ設定装置１００の機能が実現される。なお、かかるソフトウェアによる実現については、後述の他の実施形態についても同様である。
【００４７】
本実施形態を利用すれば、文書ファイル内の独立した複数の要素（例えば、ページ等）について、各要素毎に所望のセキュリティを簡単に設定することができる。
【００４８】
＜実施形態２＞
実施形態２は、文書ファイル内の複数の要素について、必要な要素のみに選択的にセキュリティを設定するものである。
【００４９】
図６に本実施形態にかかるセキュリティ設定装置１００の機能ブロック図を示す。本セキュリティ設定装置１００は、文書ファイル５０内の要素（１〜Ｎ）をアクセスする手段１１０と、要素にセキュリティを設定する手段１２０と、セキュリティ設定要／不要管理手段１３０を具備する。
【００５０】
文書ファイル５０内の要素をアクセスする手段１１０、及び、要素にセキュリティを設定する手段１２０は実施形態１と同様である。セキュリティ設定要／不要管理手段１３０は、各要素毎にセキュリティ設定の要／不要を管理する。具体的には、各要素毎にセキュリティ設定の要／不要を記入したテーブルにより実現される。例えば、セキュリティ設定要の要素は“１”、セキュリティ設定不要の要素は“０”とする。なお、先に説明した手段１２０の各要素毎に、設定すべきセキュリティを管理しているテーブルが、セキュリティ設定要／不要のテーブルを兼ねてもよい。
【００５１】
図７に、本実施形態にかかるセキュリティ設定装置１００の処理フローチャートを示す。まず、ステップ１１０１で初期設定として現在の要素番号を１に設定する。次に、ステップ１１０２で、全要素が処理済みかどうかチェックし（要素番号がＮを超えたかチェック）、全要素が処理済みの時は処理終了とし、そうでない場合にはステップ１１０３に進む。ステップ１１０３では、現在の要素番号に対応する要素がセキュリティ設定要／不要かチェックし、セキュリティ設定不要の場合は、何もせずにステップ１１０６にスキップし、セキュリティ設定要の場合にのみステップ１１０４に進む。ステップ１１０４では、現在の要素番号に対応する要素をアクセスし、ステップ１１０５で、当該要素に所望のセキュリティを設定する。そして、ステップ１１０６で、現在の要素番号を＋１してステップ１１０２に戻る。以下、要素番号がＮに達するまで、ステップ１１０２〜１１０６の処理を繰り返す。
【００５２】
本実施形態を利用すれば、一つの文書ファイル内で必要な要素（例えば、ページ）だけに所望のセキュリティを設定することができ、きめ細かなセキュリティの設定が可能になる。
【００５３】
＜実施形態３＞
実施形態３は、実施形態２において必要な要素に、セキュリティとしてアクセス制御（アクセス制限）を行うものである。なお、実施形態１において同様に各要素にアクセス制御を行うことも可能である。
【００５４】
図８に本実施形態にかかるセキュリティ設定装置１００の機能ブロック図を示す。本セキュリティ設定装置１００は、文書ファイル５０内の要素（１〜Ｎ）をアクセスする手段１１０と、要素をアクセス制御（アクセス制限）する手段１２１と、セキュリティ設定要／不要管理手段１３０と、アクセス制御鍵１４１を具備する。
【００５５】
文書ファイル５０内の要素をアクセスする手段１１０、及び、セキュリティ設定要／不要管理手段１３０は実施形態２の場合と同様である。アクセス制御鍵１４１は、アクセス制御（アクセス制限）が必要な要素に対してアクセス制御をかけるときの鍵（情報）である。要素をアクセス制御する手段１２１は、アクセス制御鍵１４１を用いて当該要素にアクセス制御を行うものである。ここで、アクセス制御鍵１４１は、各要素毎あるいは所定のグループごとに異なる鍵とすることでもよい。
【００５６】
アクセス制御の一例としては、所望の要素をアクセス不能にすることが考えられる。これは、文書ファイル５０について、該ファイルの先頭位置からの当該要素に対応したオフセットと長さを架空の値に変更することで実現される。図３のＪＰＭファイルで云えば、該ページボックス内のオフセットと長さの情報を架空の値とすることで実現される。この場合、アクセス制御鍵１４１は、この架空のオフセットと長さの情報である。これに対する解除鍵は、この架空のオフセットと長さの情報と、真のオフセットと長さの情報との対応テーブルとすればよく、該対応テーブルを持つユーザのみが当該要素をアクセスすることができる。
【００５７】
アクセス制御は、上記の方法に限られるものではなく、一般に、ある要素に対してアクセス制御（アクセス制限）をかけて、解除鍵を持つ特定のユーザだけにアクセスできるようにするものであれば、その方法は何でもよい。また、アクセス制御は、例えば、当該要素に対して、読出しのみ可能で、書込みは不可とすることでもよい。これは、例えば、当該要素に読出し／書込み可・不可ビットを立てることで実現される。
【００５８】
図９に、本実施形態にかかるセキュリティ設定装置１００の処理フローチャートを示す。まず、ステップ１２０１で初期設定として現在の要素番号を１に設定する。次に、ステップ１２０２で、全要素が処理済みかどうかチェックし（要素番号がＮを超えたかチェック）、全要素が処理済みの時は処理終了とし、そうでない場合にはステップ１２０３に進む。ステップ１２０３では、現在の要素番号に対応する要素がセキュリティ設定要／不要かチェックし、セキュリティ設定不要の場合は、何もせずにステップ１２０６にスキップし、セキュリティ設定要の場合にのみステップ１２０４に進む。ステップ１２０４では、現在の要素番号に対応する要素をアクセスし、ステップ１２０５で、当該要素に対して、アクセス制御鍵１４１を用いてアクセス制御（アクセス制限）を行う。その後、ステップ１２０６で、現在の要素番号を＋１してステップ１２０２に戻る。以下、要素番号がＮに達するまで、ステップ１２０２〜１２０６の処理を繰り返す。
【００５９】
本実施形態を利用すれば、一つの文書ファイル内で必要な要素だけにセキュリティとしてアクセス制御（アクセス制限）をかけることができる。実施形態１に適用すれば、文書ファイル内の各要素ごとに所定のアクセス制御（アクセス制限）をかけることができる。
【００６０】
＜実施形態４＞
実施形態４は、実施形態２において必要な要素にセキュリティとして暗号化を行うものである。なお、実施形態１において同様に各要素に暗号化を行うことも可能である。
【００６１】
図１０に本実施形態にかかるセキュリティ設定装置１００の機能ブロック図を示す。本セキュリティ設定装置１００は、文書ファイル５０内の要素（１〜Ｎ）をアクセスする手段１１０と、要素を暗号化する手段１２２と、セキュリティ設定要／不要管理手段１３０と、暗号鍵１４２を具備する。
【００６２】
文書ファイル５０内の要素をアクセスする手段１１０、及び、セキュリティ設定要／不要管理手段１３０は実施形態２の場合と同様である。暗号化鍵１４２は、セキュリティとして暗号化が必要な要素に対して暗号化をかけるときの鍵である。要素を暗号化する手段１２２は、暗号化鍵１４２を用いて該当要素を暗号化する。ここで、暗号化鍵１４２は、各要素毎あるいは所定のグループごとに異なる鍵とすることでもよい。
【００６３】
暗号化には、共通暗号方式や公開鍵暗号方式、非対称暗号化方式、ブロック暗号化方式、ストリーム暗号化方式などがあるが、これらに制限されるものではない。一般に、アクセス可能なデータである要素に対して暗号化をかけて、その解除鍵を所有するユーザだけが当該要素を復号できればよい。例えば、共通暗号方式の場合、暗号鍵は共通鍵であり、解除鍵も同じ共通鍵となる。また、公開鍵暗号方式の場合は、秘密鍵と公開鍵を用い、暗号化鍵１４２は公開鍵で、解除鍵は秘密鍵となる。
【００６４】
図１１に、本実施形態にかかるセキュリティ設定装置１００の処理フローチャートを示す。まず、ステップ１３０１で初期設定として現在の要素番号を１に設定する。次に、ステップ１３０２で、全要素が処理済みかどうかチェックし（要素番号がＮを超えたかチェック）、全要素が処理済みの時は処理終了とし、そうでない場合にはステップ１３０３に進む。ステップ１３０３では、現在の要素番号に対応する要素がセキュリティ設定要／不要かチェックし、セキュリティ設定不要の場合は、何もせずにステップ１３０６にスキップし、セキュリティ設定要の場合にのみステップ１３０４に進む。ステップ１３０４では、現在の要素番号に対応する要素をアクセスし、ステップ１３０５で、当該要素を、暗号化鍵１４２を用いて暗号化する。その後、ステップ１３０６で、現在の要素番号を＋１してステップ１３０２に戻る。以下、要素番号がＮに達するまで、ステップ１３０２〜１３０６の処理を繰り返す。
【００６５】
本実施形態を利用すれば、一つの文書ファイル内で必要な要素だけにセキュリティとして暗号化をかけることができる。実施形態１に適用すれば、文書ファイル内の各要素ごとに所望の暗号化をかけることができる。
【００６６】
＜実施形態５＞
実施形態５は、実施形態２においてセキュリティとして電子署名を行うものである。すなわち、文書ファイル内の必要な要素に電子署名を付して、検証鍵を所持する特定のユーザだけが当該要素のデータが改ざんされているか検証できるようにする。なお、実施形態１において同様に各要素に電子署名を行うことも可能である。
【００６７】
図１２に本実施形態にかかるセキュリティ設定装置１００の機能ブロック図を示す。本セキュリティ設定装置１００は、文書ファイル５０内の要素（１〜Ｎ）をアクセスする手段１１０と、要素に署名設定する手段１２３と、セキュリティ設定要／不要管理手段１３０と、署名鍵１４３を具備する。
【００６８】
文書ファイル５０内の要素をアクセスする手段１１０、及び、セキュリティ設定要／不要管理手段１３０は実施形態２の場合と同様である。要素に署名設定する手段１２３は、署名鍵１４３を用いて、文書ファイル５０内の必要な要素に電子署名を行うものである。ここで、署名鍵１４３は、各要素毎あるいは所定のグループごとに異なる鍵とすることでもよい。
【００６９】
電子署名の一例としては、先の公開鍵暗号化方式用いる方法がある。この場合、署名鍵１４３は秘密鍵とする。この秘密鍵で、文書ファイル５０内の必要な要素のデータを暗号化して電子署名を作る。この秘密鍵に対応する公開鍵を所持するユーザのみが、該公開鍵を使って電子署名を復号化し、元のデータと突き合わせて検証することができる。
【００７０】
また、電子署名の他の例としては、ＣＲＣ（Ｃｙｃｌｉｃ  Ｒｅｄｕｄａｎｃｙ  Ｃｈｅｃｋ）方式がある。ＣＲＣ方式とは巡回符号を用いてブロック・エラーを検出する方式である。文書ファイル５０内の電子署名を設定したい要素のデータに対してＣＲＣを計算し、その値を電子署名（署名値）とする。この署名値を所持するユーザのみが、アクセスした当該要素のデータに対してＣＲＣを計算し、その値と所持している署名値を比較することで、元のデータが改ざんされているか検証することができる。このＣＲＣ方式の場合、署名鍵１４３は不要である。巡回符号には、一般にはＩＴＵ−Ｔが勧告している生成多項式（１６次の多項式）が採用され、ＨＤＬＣのエラー検出にも活用されている。ＣＲＣ方式は構成が簡単で符号器や復号器が簡単に実現でき、エラー検出能力が高い利点がある。
【００７１】
なお、電子署名は、上記した方式に限られるものではなく、一般にアクセス可能な要素のデータに対して電子署名を付して、所定のユーザが該データの真正性を検証できればよい。
【００７２】
図１３に、本実施形態にかかるセキュリティ設定装置１００の処理フローチャートを示す。まず、ステップ１４０１で初期設定として現在の要素番号を１に設定する。次に、ステップ１４０２で、全要素が処理済みかどうかチェックし（要素番号がＮを超えたかチェック）、全要素が処理済みの時は処理終了とし、そうでない場合にはステップ１４０３に進む。ステップ１４０３では、現在の要素番号に対応する要素がセキュリティ設定要／不要かチェックし、セキュリティ設定不要の場合は、何もせずにステップ１４０６にスキップし、セキュリティ設定要の場合にのみステップ１４０４に進む。ステップ１４０４では、現在の要素番号に対応する要素をアクセスし、ステップ１４０５で、当該要素に電子署名を付与する。その後、ステップ１４０６で、現在の要素番号を＋１してステップ１４０２に戻る。以下、要素番号がＮに達するまで、ステップ１４０２〜１４０６の処理を繰り返す。
【００７３】
本実施形態を利用すれば、一つの文書ファイル内で必要な要素だけにセキュリティとして電子署名を行うことができる。実施形態１に適用すれば、文書ファイル内の各要素ごとに電子署名を行うことができる。
【００７４】
＜実施形態６＞
実施形態６は、実施形態２において一つの要素にセキュリティの強さの観点から相異なセキュリティレベルの複数のセキュリティを設定するものである。セキュリティは、実施形態３，４，５で説明したアクセス制御、暗号化、電子署名のいずれでもよい。なお、実施形態１において各要素に同様に複数のセキュリティを設定することも可能である。
【００７５】
図１４に、一つの要素に複数の独立したセキュリティレベルを持つデータを構成した場合のイメージを示す。すなわち、要素ｉに対して、まず、セキュリティレベル１の低セキュリティ鍵を使用してセキュリティを設定し、低セキュリティデータ１を生成する。次に、セキュリティレベル２の高セキュリティ鍵を使用してセキュリティを設定し、高セキュリティレベルデータ２を生成する。
【００７６】
図１４では、簡単のためにセキュリティレベルが２段階の例を示したが、一般にセキュリティレベルの異なるｎ個のセキュリティ鍵を使用して、一つの要素に対し、それぞれ独立したｎ段階のセキュリティレベルのデータを作ることができる。
【００７７】
図１５に本実施形態にかかるセキュリティ設定装置１００の機能ブロック図を示す。本セキュリティ設定装置１００は、文書ファイル５０内の要素（１〜Ｎ）をアクセスする手段１１０と、要素にセキュリティを設定する手段１２０と、セキュリティ設定要／不要管理手段１３０と、セキュリティ鍵管理手段１４０と、セキュリティ設定レベル管理手段１５０を具備する。文書ファイル５０内の要素をアクセスする手段１１０、要素にセキュリティを設定する手段１２０及びセキュリティ設定要／不要管理手段１３０は実施形態２と同様である。
【００７８】
セキュリティ鍵管理手段１４０は、各要素あるい各要素に共通の複数のセキュリティ鍵１〜ｎを管理している。セキュリティ鍵１〜ｎはそれぞれセキュリティレベル１〜ｎに対応し、セキュリティ鍵１が最低セキュリティ鍵、セキュリティ鍵ｎが最高セキュリティ鍵を意味している。
【００７９】
セキュリティ鍵は、具体的には実施形態３，４，５に示したアクセス制御鍵、暗号化鍵、署名鍵などである。本実施形態では、これらについて更に強さの観点から相異なる複数のセキュリティレベルを導入する。図１４に示したように、簡単にセキュリティレベルを２段階とした場合、アクセス制御鍵としては、「弱いアクセス制御鍵（レベル１）」と「強いアクセス制御鍵（レベル２）」を用意する。一例として、セキュリティレベル２の強いアクセス鍵では、当該要素のデータについて、読込み／書込みのいずれも不可能なアクセス制御を行い、セキュリティ１の弱いアクセス制御鍵では、少なくとも読込みのみは可能なアクセス制御を行う。他の例としては、強いアクセス制御鍵では、当該要素のデータ全部をアクセス不可能とし、弱いアクセス制御鍵では、一部のデータはアクセス可能とすることでもよい。例えば、図３のＪＰＭファイルで云えば、当該要素のデータがコードストリーム１と２からなる場合（例えば、図３のページ０）、強いアクセス制御鍵では、コードストリーム１と２の両方をアクセス不可能とし、弱いアクセス制御鍵では、コードストリーム１はアクセス可能とする。同様に、暗号化鍵として「弱い暗号化鍵（レベル１）」と「強い暗号化鍵（レベル２）」を用意し、例えば、強い暗号化鍵では、当該要素のデータ全体を暗号化し、弱い暗号化鍵では一部のデータのみを暗号化する。また、カラー文書では、暗号化鍵の強弱により、例えば、カラーデータを全て暗号化、モノクロデータは非暗号化とすることでもよい。すなわち、復号鍵を所持する特定のユーザには、カラー文書をそのまま閲覧でき、他のユーザにはモノクロでのみ閲覧できるようにする。同様に、署名鍵として「弱い署名鍵（レベル１）」と「強い署名鍵（レベル２）」を用意し、例えば、強い署名鍵では、当該要素のデータ全体を署名対象（検証対象）とし、弱い署名鍵では一部のデータのみを署名対象とする。
【００８０】
これらは一例にすぎず、一般にセキュリティレベルが異なる複数のアクセス制御鍵、暗号化鍵、署名鍵などを導入することで、一つの要素に対して、強さの観点からそれぞれセキュリティの異なる複数のアクセス制御、暗号化、電子署名などを設定することが可能になる。
【００８１】
図１５において、セキュリティレベル設定管理手段１５０は、文書ファイル５０内の各要素毎に必要なセキュリティレベルを管理する。ここで、セキュリティレベルを１〜ｎとすると、例えば、要素１はセキュリティレベル１と２、要素２はセキュリティレベル１〜ｎのすべて、要素ｉもセキュリティレベル１〜ｎのすべてと云うように、要素番号とセキュリティレベルは独立して管理する。このように管理することで、例えば、一つの社内文書でページ１は社外秘、ページ２から最終ページまでは極秘として、セキュリティの強さを社外秘＜極秘として社内に公開した社外秘文書に対し、一般社員はページ１が読め、２ページ以降は、一般社員には読めず、社内の関連する人のみが読み書きできる状況を作ることが可能となる。
【００８２】
図１６に、本実施形態に係るセキュリティ設定装置１００の処理フローチャートを示す。まず、ステップ１５０１で初期設定として現在の要素番号を１に設定する。次に、ステップ１５０２で、全要素が処理済みかどうかチェックし（要素番号がＮを超えたかチェック）、全要素が処理済みの時は処理終了とし、そうでない場合にはステップ１５０３に進む。ステップ１５０３では、現在の要素番号に対応する要素がセキュリティ設定要／不要かチェックし、セキュリティ設定不要の場合は、何もせずにステップ１５１０にスキップし、セキュリティ設定要の場合にのみステップ１５０４に進む。ステップ１５０４では、現在の要素番号に対応する要素をアクセスし、ステップ１５０５で、当該要素について、初期設定として現在のセキュリティレベルを最小値１に設定する。ステップ１５０６はセキュリティレベルに関する終了条件で、現在のセキュリティレベルが最大セキュリティレベルｎを超えない場合、ステップ１５０７に進む。ステップ１５０７では、現在のセキュリティレベルがセキュリティ設定レベル管理手段１５０に登録されているかどうかチェックし、登録されていない場合は、そのままステップ１５０９にスキップし、登録されていればステップ１５０８に進む。ステップ１５０８では、当該要素に対して、当該セキュリティレベルに対応するセキュリティ鍵を使用してセキュリティ（アクセス制御、暗号化、署名など）を設定する。そして、ステップ１５０９に進む。ステップ１５０９では、現在のセキュリティレベルを＋１してステップ１５０６に戻る。その後、現在のセキュリティレベルが最大のセキュリティレベルｎになるまで、ステップ１５０６〜１５０９の処理を繰り返す。これにより、当該要素に対して、セキュリティ設定レベル管理手段１５０に登録されているセキュリティレベルに対応する複数のセキュリティが設定される。
【００８３】
ステップ１５０６で現在のセキュリティレベルが最大のセキュリティレベルｎを超えると、ステップ１５１０で現在の要素番号を＋１してステップ１５０１に戻る。以下、要素番号がＮに達するまで、ステップ１５０２〜１５１０の処理を繰り返す。これにより、文書ファイル内の必要な要素に対し、所望の相異なるセキュリティレベルの複数のセキュリティが設定される。
【００８４】
本実施形態を利用すれば、一つの文書ファイルの必要な要素に対して、セキュリティの強さの観点から相異なる複数のセキュリティレベルを設定し、各レベルの強弱を反映した複数のセキュリティを設定することができる。実施形態１に適用すれば、文書ファイル内の各要素ごとに複数のセキュリティレベルを設定することができる。
【００８５】
＜実施形態７＞
実施形態７は、実施形態６において、一つのセキュリティ鍵から少なくとも一つ以上のセキュリティレベルのセキュリティ鍵を生成し、これらセキュリティ鍵を使用して、一つの文書ファイル内の必要な要素に相異なるセキュリティレベルの複数のセキュリティを設定するものである。なお、実施形態１においても各要素について同様のことが可能である。
【００８６】
図１７は本実施形態の処理イメージを示した図である。すなわち、セキュリティレベルの高い高セキュリティ鍵からセキュリティレベルの低い低セキュリティ鍵を生成する。そして、要素ｉに対して、該生成した低セキュリティ鍵を使用して低セキュリティレベルのセキュリティを設定し、また、当初の高セキュリティ鍵を使用して高セキュリティレベルのセキュリティを設定する。
【００８７】
図１７では、簡単のためにセキュリティレベルが２段階の例を示したが、一般に一つのセキュリティ鍵から複数レベルのセキュリティ鍵を生成することで、これらセキュリティ鍵を使用して、一つの要素に対し、それぞれ独立した３段階以上のセキュリティレベルのデータを作ることができる。
【００８８】
図１８に本実施形態にかかるセキュリティ設定装置１００の機能ブロック図を示す。本セキュリティ設定装置１００は、文書ファイル５０内の要素（１〜Ｎ）をアクセスする手段１１０と、要素にセキュリティを設定する手段１２０と、セキュリティ設定要／不要管理手段１３０と、一つのセキュリティ鍵１４５と、セキュリティレベル設定管理手段１５０と、鍵生成手段１６０を具備する。文書ファイル５０内の要素をアクセスする手段１１０、要素にセキュリティを設定する手段１２０、セキュリティ設定要／不要管理手段１３０及びセキュリティ設定レベル管理手段１５０は実施形態６と同様である。
【００８９】
本実施形態では、セキュリティ鍵として各要素毎あるいは各要素に共通の一つのセキュリティ鍵１４５のみを備える。鍵生成手段１６０は、セキュリティ鍵１４５の鍵値とセキュリティレベル、レベル数をパラメータとして、各要素ごとあるいは各要素に共通の、相異なるセキュリティレベルの複数のセキュリティ鍵を生成する。
【００９０】
図１９に、鍵生成手段１６０の処理フローチャートを示す。ここでは、セキュリティ鍵は高セキュリティレベルから低セキュリティレベルのものへと生成するとする。まず、ステップ１６０１で初期設定としてセキュリティレベルの番号ｉをｎとし、セキュリティレベルｎのセキュリティ鍵ｎを現在のセキュリティ鍵（ｉ）とする。ここでは、セキュリティ鍵１４５がセキュリティレベルｎのセキュリティ鍵ｎである。ステップ１６０２でセキュリティレベルの番号ｉをｉ−１とする。次に、ステップ１６０３で、全セキュリティレベルが処理済みかどうかチェックし（すなわち、ｉ＝０になったかチェック）、全セキュリティレベルが処理済みの時は処理終了とし、そうでない場合にはステップ１６０４に進む。ステップ１６０４では、現在のセキュリティ鍵（ｉ）から次レベルのセキュリティ鍵（ｉ−１）を生成する。そして、ステップ１６０５で、この生成したセキュリティ鍵（ｉ−１）を新たに現在のセキュリティ鍵（ｉ）とし、ステップ１６０２に戻る。以下、全セキュリティレベルの処理が終了するまで、ステップ１６０２〜１６０５の処理を繰り返すことで、一つのセキュリティ鍵１４５から必要なセキュリティレベルのセキュリティ鍵を次々に生成することができる。
【００９１】
鍵生成手段１６０以外の全体の処理フローチャートは図１６と同様であり、鍵生成手段については上述のとおり説明したので説明を省略する。
【００９２】
本実施形態を利用すれば、実施形態６において必要とする相異なるセキュリティレベルの複数のセキュリティ鍵を一つのセキュリティ鍵から生成することができ、要素数やレベル数が増大しても煩雑な鍵管理から解放される。特に要素毎に複数のセキュリティ鍵を備える場合、要素毎にセキュリティ数分の異なる鍵を正確に管理する必要がある。セキュリティレベルが２つ、要素が１つ程度の時には人間でも何とか覚えていられるが、例えば要素数５０００、セキュリティレベル５等となった時には設定鍵と解除鍵の対応関係を正確に把握することは困難である。本実施形態により、１つのファイル内にあるセキュリティ設定が必要な各要素に対して要素数やレベル数が複雑化しても設定鍵と解除鍵の対応関係を１対１で把握する必要がなくなり、不正確かつ煩雑な鍵管理から開放される。
【００９３】
＜実施形態８＞
実施形態８は、実施形態７において一つのセキュリティ鍵からセキュリティレベルの異なる別のセキュリティ鍵を生成するのに一方向性ハッシュ関数を用いるものである。セキュリティレベルに高低関係がある場合、鍵生成手段として大小関係を維持した一方向性ハッシュ関数を用いると、必要なセキュリティレベルに対応したセキュリティ鍵を容易に生成することができる。
【００９４】
図２０に本実施形態の処理イメージを示す。すなわち、セキュリティレベルが高い高セキュリティ鍵から一方向性ハッシュ関数によりセキュリティレベルが低い低セキュリティ鍵を生成する。そして、要素ｉに対し、生成した低セキュリティ鍵を使用して低セキュリティレベルのセキュリティを設定する一方、高セキュリティ鍵を使用して高セキュリティレベルのセキュリティを設定する。
【００９５】
図２０では、簡単のためにセキュリティレベルが２段階の例を示したが、一般に一つのセキュリティ鍵から一方向性ハッシュ関数を用いて複数レベルのセキュリティ鍵をレベル順に生成することが可能であり、これらセキュリティ鍵を使用して、一つの要素に対し、それぞれ独立した３段階以上のセキュリティレベルのデータを作ることができる。
【００９６】
本実施形態にかかるセキュリティ設定装置１００の構成は図１８と同様であるので省略する。本実施形態では、鍵生成手段１６０は、大小関係を維持した一方向性関数を用いて高レベルから低レベルと順にセキュテリィ鍵を生成する。
【００９７】
ここで、大小関係を維持した一方向性ハッシュ関数とは、入力パラメータから出力パラメータを一方向だけに生成し、生成されたハッシュ値の大小関係が入力パラメータの大小関係と一致するものである。このハッシュ関数には、例えば、実施形態５で述べたＣＲＣ方式を適用することができる。すなわち、入力パラメータに対してＣＲＣを計算し、生成したＣＲＣ値から現在のセキュリティレベルの値を除算することにより、大小関係を維持した一方向性ハッシュ関数を適用することができる。鍵生成のフローチャートは図１９と同様であるので省略する。
【００９８】
本実施形態を利用すれば、簡単な演算で大小関係を維持した互いに異なるハッシュ値をもったセキュリティ鍵を生成することができる。これにより、実施形態７と同様に、一つのファイル内のセキュリティ設定が必要な各要素に対して、要素数やレベル数が複雑化しても設定鍵と解除鍵の対応関係を１対１で把握する必要がなくなり、不正確かつ煩雑な管理から解放され、しかもセキュリティの高低関係を維持することができる。
【００９９】
＜実施形態９＞
実施形態９は、実施形態６で使用する相異なるセキュリティレベルの複数のセキュリティ鍵をランダムに生成して大きさ順に並べ替えることで、設定したいを要素のセキュリティの上下関係と鍵値の上下関係に相関を持たせることを可能にしたものである。
【０１００】
図２１に本実施形態の処理イメージを示す。すなわち、ユーザ設定値からセキュリティレベルの上下関係に関係なく複数のセキュリティ鍵を生成し、この生成した複数のセキュリティ鍵を大きさ順に並べ替える。そして、要素ｉに複数のセキュリティ設定レベルがあるとき、まず、最低セキュリティレベルを選択し、対応するセキュリティレベルの鍵でセキュリティを設定する。以下、順次セキュリティレベルを選択し、対応するセキュリティレベルの鍵でセキュリティを設定する。
【０１０１】
図２２に本実施形態にかかるセキュリティ設定装置１００の機能ブロック図を示す。本セキュリティ設定装置１００は、文書ファイル５０内の要素（１〜Ｎ）をアクセスする手段１１０と、要素にセキュリティを設定する手段１２０と、セキュリティ設定要／不要管理手段１３０と、各要素毎あるいは各要素に共通の一つのセキュリティ鍵１４５と、セキュリティ設定レベル管理手段１５０と、鍵生成手段１６０と、並べ替え手段１７０を具備する。ここで、並べ替え手段１７０が追加されている以外は、実施形態７の図１８と同様である。セキュリティ鍵１４５はユーザ設定値である。
【０１０２】
鍵生成手段１６０は、ユーザ設定値であるセキュリティ鍵１４５からセキュリティレベルの上下関係に関係なく複数のセキュリティ鍵を順次生成する。並べ替え手段１７０は、生成された複数のセキュリティ鍵を大きい順に並べ替える。該並べ替え手段１７０は特別なものである必要はなく、複数のセキュリティ鍵を値が高い順に並べ替えるソート手段でよい。
【０１０３】
図２３に鍵生成手段１６０及び並べ替え手段１７０を一緒にした処理フローチャートを示す。まず、ステップ１７０１で、変数ｊを１として、セキュリティ鍵の初期値を設定する。すなわち、ユーザ設定値をセキュリティ鍵の初期値とする。そして、ステップ１７０２でｊを＋１する。ステップ１７０３は鍵生成の終了手段である。ステップ１７０４で、一つのセキュリティ鍵を生成する。ここでの鍵生成は、一方向性ハッシュ関数以外のどのような方法を用いてもよいが、あとのステップ１７０５で鍵の大小関係により並べ替えを行うので、新たに生成された鍵は、それまでに生成された鍵と同じ値であってはならない。そのため、ステップ１７０４では、もし以前生成した鍵と同じ値が生成されたら、その値と異なる値が生成されるまで鍵生成を繰り返す。ステップ１７０４での鍵生成処理後、ステップ１７０２に戻る。以下、必要な全セキュリティレベルのセキュリティ鍵が生成されるまで、ステップ１７０２〜１７０４の処理を繰り返す。そして、全セキュリティレベルの鍵が生成されたなら、該生成された鍵に高低関係を示すため、ステップ１７０５で、値の高い順にセキュリティ鍵を並べ替える。こうして生成されたセキュリティ鍵が最終的にセキュリティの高低レベルを反映した鍵となる。
【０１０４】
図２２のセキュリティ設定装置１００の全体の処理フローチャートは図１６と同様であるので省略する。
【０１０５】
本実施形態によれば、任意の鍵生成方式で複数のセキュリティレベルのセキュリティ鍵を生成することができる。また、生成した複数のセキュリティ鍵を大きさ順に並べ替えることで、各要素で複数のセキュリティ設定レベルがあっても、各要素のセキュリティの高低関係をセキュリティ鍵値の高低関係に容易に反映することができる。
【０１０６】
以上、種々の実施形態について説明したが、これらの実施形態は任意の組み合わせで可能であることは明らかであり、それらあらゆる組み合わせも本発明の範囲内である。
【０１０７】
＜ＪＰＭファイルへの適用＞
以下に、本発明を文書ファイルが具体的に図３に示したようなＪＰＭファイルに対して適用した場合のセキュリティ設定ファイルの構成例をいくつか示す。
【０１０８】
図２４は、簡単に主ページコレクションボックスとその配下の複数のページからなり、任意のページにセキュリティが設定されているＪＰＭファイルの構成例を示したものである。ここで、Ｐ１〜Ｐ５はページ、ＰＣａ（ＭＰＣ）は主ページコレクションボックス（文書全体のルート）を意味している。図２４では、ページＰ２とＰ５にセキュリティが設定され、それ以外のページにはセキュリティが設定されていないことを示している。図２４に示すＪＰＭファイルを複数のユーザに同報し、その中で特定のユーザにだけ解除鍵を配布したとすると、該ファイルを配布されたすべてのユーザは少なくともページＰ１，Ｐ３，Ｐ４をアクセスすることができ、解除鍵を配布されたユーザは、それ加えてページＰ２，Ｐ５もアクセスすることができる。
【０１０９】
図２５に、図２４のように階層関係がフラットで任意のセキュリティが設定されているＪＰＭファイルをアクセスする処理フローチャートを示す。これは、利用者装置内のセキュリティ解除手段２００（図１）が受け持てばよい。
【０１１０】
ステップ１８０１はアクセス終了条件のチェックで、アクセス終了が指示されない場合、ステップ１８０２で一つのページを選択し、ステップ１８０３で当該ページのセキュリティ設定の有無をチェックする。セキュリティが設定されている場合、ステップ１８０４でセキュリティレベルに合った解除鍵の有無をチェックし、解除鍵が無ければ、そのままステップ１８０１に戻る。解除鍵があれば、ステップ１８０５でセキュリティを解除し、ステップ１８０６で当該ページをアクセスする。一方、ステップ１８０３でセキュリティ設定なしと判定された場合には、そのままステップ１８０６に進んで当該ページをアクセスする。以下、アクセス終了が指示されるまで、ステップ１８０１〜１８０６の処理を繰り返す。
【０１１１】
図２４のようなＪＰＭファイル構成とすることにより、ページごとにセキュリティ制御する用途に適用することができる。
【０１１２】
図２６は、主ページコレクションボックスに加えてプライマリーページコレクションボックスを有し、プライマリーページコレクションボックスによりいくつかのページが階層構造を持ったまとまりとして一括管理されている場合で、ページコレクションボックス（セクション）にセキュリティが設定されているＪＰＭファイルの構成例を示したものである。ここで、Ｐ１〜Ｐ１２はページ、ＰＣａ（ＭＰＣ）は主ページコレクションボックス（文書全体のルート）、ＰＣｂとＰＣｃとＰＣｄはプライマリーページコレクションボックスを意味している。ＰＣａはＰ１，ＰＣｂ，Ｐ９，Ｐ１０，ＰＣｃを管理し、ＰＣｂはＰ２，ＰＣｄ，Ｐ７，Ｐ８を管理し、ＰＣｄはさらにＰ３〜Ｐ６を管理している。また、ＰＣｃはＰ１１，Ｐ１２を管理している。そして、図２６では、主ページコレクションボックスＰＣａ、プライマリページコレクションボックスＰＣｂ，ＰＣｄにセキュリティが設定されていることを示している。
【０１１３】
ここで、ページコレクションボックス（セクション）の階層関係とセキュリティの強さ順には相関を持たせるようにする。これには先の実施形態８を適用すればよい。図２６の例で云えば、ＰＣａ∋ＰＣｂ∋ＰＣｄの包含関係が成立する。そこで各セクションに設定される鍵の強さを以下の順に設定する。
ＰＣａの鍵＜ＰＣｂの鍵＜ＰＣｄの鍵
こうすることによりＰＣｄに含まれるＰ３〜Ｐ６は最も強いセキュリティ設定となり、
次いでＰＣｂ、ＰＣａの順となる。
【０１１４】
これにより、例えば、Ｐ３からＰ６には極秘情報、Ｐ２，Ｐ７，Ｐ８には丸秘、Ｐ１，Ｐ９，Ｐ１０，Ｐ１１，Ｐ１２には社外秘のデータを入れ、社内の各部門に配布する一方、解除鍵をそれぞれセキュリティレベルが対応する部門や人に対して配布することにより、同一のファイルを配布しても、配布先毎にアクセスできる情報を変化させる用途に対応することができる。また、実施形態９を適用することにより、同じファイルを渡しても、渡した鍵毎に異なるセキュリティレベルを実現することができる。
【０１１５】
図２７に、図２６のように階層関係を有する複数のページコレクションボックス（セクション）にセキュリティが設定されているＪＰＭファイルをアクセスする処理フローチャートを示す。これは、利用者装置内のセキュリティ解除手段２００（図１）が受け持てばよいが、セキュリティが許可されている各レベルの解除鍵生成機能が必要になる。
【０１１６】
図２７において、まず、ステップ１９０１で、配布された鍵から各階層の解除鍵を生成する。ステップ１９０２はアクセス終了条件のチェックで、アクセス終了が指示されない場合、ステップ１９０３で一つのページコレクションボックス（セクション）を選択し、ステップ１９０４で当該ページコレクションボックスのセキュリティ設定の有無をチェックする。セキュリティが設定されている場合、ステップ１９０５でセキュリティレベルに合った解除鍵の有無をチェックし、解除鍵が無ければ、そのままステップ１９０２に戻る。解除鍵が有れば、ステップ１９０６で当該ページコレクションボックスのセキュリティを解除し、ステップ１９０７で当該ページコレクションボックス配下のページをアクセスする。一方、ステップ１９０４でセキュリティ設定なしと判定された場合には、そのままステップ１９０７に進んで、当該ページコレクションボックス配下のページをアクセスする。以下、アクセス終了が指示されるまで、ステップ１９０２〜１９０７の処理を繰り返す。
【０１１７】
図２６のようなＪＰＭファイル構成とすることにより、意味的にまとまりのある複数のページあるいはセクション毎にセキュリティ制御する用途に適用することができる。
【０１１８】
図２８は、主ページコレクションボックスとプライマリーページコレクションボックスにより複数ページが階層的に管理されると共に、補助ページコレクションボックスによりいくつかのページが二重に管理されている場合で、主ページコレクションボックスと補助ページコレクションボックスにセキュリティが設定されているＪＰＭファイルの構成例を示したものである。ここで、ＰＣｅ（ＡＰＣ）が補助ページコレクションボックスであり、これ以外は図２６と同じである。補助ページコレクションボックスは、特定の観点から共有する特性等を持つページを別途管理する場合に用いられる。ここでは、その一例として、セキュリティをかけたいページのまとまりを補助ページコレクションで別途管理するものである。
【０１１９】
図２８の例では、主ページコレクションボックスＰＣａ（ＭＰＣ）に加えて、補助ページコレクションボックスＰＣｅ（ＡＰＣ）にもセキュリティが設定とされていることを示している。これにより、ページＰ６，Ｐ１１，Ｐ１２は、主ページコレクションボックスＰＣａをルートとして階層的にセキュリティ制御されると共に、補助ページコレクションボックスＰＣｅにより別途セキュリティ制御することができる。
【０１２０】
ここで、補助ページコレクションボックスに含まれる各ページは必ず主ページコレクションボックスに含まれるという包含関係とセキュリティの強さ順には相関を持たせるようにする。図２８の例で云えば、ＰＣａ∋ＰＣeの包含関係が成立する。そこで、主ページコレクションボックスＰＣａと補助ページコレクションボックスＰＣｅに設定される鍵の強さを以下の順に設定する。
ＰＣａの鍵＜ＰＣeの鍵
こうすることにより、ＰＣeに含まれるＰ６，ＰＣｃ、Ｐ１１，Ｐ１２は主ページコレクションボックスＰＣａに設定したセキュリティよりも強い鍵を持つことになる。
【０１２１】
これにより、Ｐ６，Ｐ１１，Ｐ１２には極秘情報、それ以外のページには社外秘情報のデータを入れ、社内の各部門に配布する一方、補助ページコレクションボックスに該当するページの解除鍵はセキュリティレベルが高い、極秘情報を扱う部門や人に対して配布することにより、同一のファイルを配布しても、配布先毎に社外秘、極秘と変化させる用途に対応することができる。また、実施形態９を適用することにより、同じファイルを渡しても、渡したページ毎に異なるセキュリティレベルを実現することができる。
【０１２２】
図２９に、図２８のように主ページコレクションボックスと補助ページコレクションボックスにセキュリティが設定されているＪＰＭファイルをアクセスする処理フローチャートを示す。これは利用者装置内のセキュリティ解除手段２００（図１）が受け持てばよい。
【０１２３】
ステップ２００１はアクセス終了条件のチェックで、アクセス終了が指示されない場合、ステップ２００２で一つのページを選択する。ステップ２０３で、該当するページのセキュリティ設定の有無をチェックし、セキュリティが設定されていない場合は、そのままステップ２００９に進んで当該ページをアクセスする。セキュリティが設定されている場合、ステップ２００４で主ページコレクションボックスのセキュリティレベルに合った解除鍵の有無をチェックする。主ページコレクションボックスのセキュリティレベルに合った解除鍵がなれば、ステップ２００１に戻るが、解除鍵が有れば、ステップ２００５で主ページコレクションボックスに設定された解除鍵でセキュリティの解除を試みる。そして、解除できなければ、ステップ２００１に戻る。一方、解除できた場合には、次にステップ１００６で、そのページが補助ページコレクションボックスで管理されているかどうかチェックし、補助ページコレクションの解除鍵でも解除できるかどうかを確認する。ここで、補助ページコレクションボックスで管理されていない場合には、すでに主ページコレクションボックスに設定された解像鍵でセキュリティの解除が確認されているので、ステップ２００９に進んで、当該ページをアクセスする。当該ページが補助ページコレクションボックスで管理されている場合には、ステップ２００７で、補助ページコレクションボックスの解除鍵を持っているかどうかをチェックし、持っていなければ、ステップ２００１にもどるが、もしも持っていれば、ステップ２００８で、補助ページコレクションボックスに設定された解除鍵で解除を試みる。そして、解除できなければ、ステップ２００１に戻るが、解除できれば、ステップ２００９に進んで当該ページをアクセスする。以下、アクセス終了が指示されるまで、ステップ２００１〜２００９の処理を繰り返す。
【０１２４】
以上、本発明をＪＰＭファイルに適用した場合のいくつかの例を示したが、これらの任意の組み合わせも可能である。また、本発明はＪＰＭファイルに限らず、例えば、Ａdobe  Ｐortable  Ｄocument  ＦormatやＭicrosoft社のＸＰＳをはじめとしてさまざまな形態の絵文字混在文書のフォーマット等に適用できることも明らかであり、それらもすべて本発明の範囲内である。
【図面の簡単な説明】
【０１２５】
【図１】本発明を適用したシステム構成例を示す図。
【図２】図１の利用者装置のハードウェア構成例を示す図。
【図３】文書ファイルとしてのＪＰＭファイルの模式図。
【図４】実施形態１のセキュリティ設定装置の構成図。
【図５】実施形態１の処理フローチャートを示す図。
【図６】実施形態２のセキュリティ設定装置の構成図。
【図７】実施形態２の処理フローチャートを示す図。
【図８】実施形態３のセキュリティ設定装置の構成図。
【図９】実施形態３の処理フローチャートを示す図。
【図１０】実施形態４のセキュリティ設定装置の構成図。
【図１１】実施形態４の処理フローチャートを示す図。
【図１２】実施形態５のセキュリティ設定装置の構成図。
【図１３】実施形態５の処理フローチャートを示す図。
【図１４】実施形態６のセキュリティ設定イメージを示す図。
【図１５】実施形態６のセキュリティ設定装置の構成図。
【図１６】実施形態６の処理フローチャートを示す図。
【図１７】実施形態７のセキュリティ設定イメージを示す図。
【図１８】実施形態７のセキュリティ設定装置の構成図。
【図１９】図１８の鍵生成手段の処理フローチャートを示す図。
【図２０】実施形態８のセキュリティ設定装置の構成図。
【図２１】実施形態９のセキュリティ設定イメージを示す図。
【図２２】実施形態９のセキュリティ設定装置の構成図。
【図２３】図２２の鍵生成手段と並べ替え手段の処理フローチャートを示す図。
【図２４】本発明を適用したＪＰＭファイルの第１の構成例を示す図。
【図２５】図２４のＪＰＭファイルをアクセスする処理フローチャートを示す図。
【図２６】本発明を適用したＪＰＭファイルの第２の構成例を示す図。
【図２７】図２６のＪＰＭファイルをアクセスする処理フローチャートを示す図。
【図２８】本発明を適用したＪＰＭファイルの第３の構成例を示す図。
【図２９】図２８のＪＰＭファイルをアクセスする処理フローチャートを示す図。
【符号の説明】
【０１２６】
１    文書共有サーバ
２，３，４  利用者装置
５    ネットワーク
１００    セキュリティ設定手段
２００    セキュリティ解除手段
５０    要素群
１１０    ファイル内の要素をアクセスする手段
１２０    要素にセキュリティを設定する手段
１３０    セキュリティ設定要／不要管理手段
【図１】
2010157013.tif 000003
【図２】
2010157013.tif 000004
【図３】
2010157013.tif 000005
【図４】
2010157013.tif 000006
【図５】
2010157013.tif 000007
【図６】
2010157013.tif 000008
【図７】
2010157013.tif 000009
【図８】
2010157013.tif 000010
【図９】
2010157013.tif 000011
【図１０】
2010157013.tif 000012
【図１１】
2010157013.tif 000013
【図１２】
2010157013.tif 000014
【図１３】
2010157013.tif 000015
【図１４】
2010157013.tif 000016
【図１５】
2010157013.tif 000017
【図１６】
2010157013.tif 000018
【図１７】
2010157013.tif 000019
【図１８】
2010157013.tif 000020
【図１９】
2010157013.tif 000021
【図２０】
2010157013.tif 000022
【図２１】
2010157013.tif 000023
【図２２】
2010157013.tif 000024
【図２３】
2010157013.tif 000025
【図２４】
2010157013.tif 000026
【図２５】
2010157013.tif 000027
【図２６】
2010157013.tif 000028
【図２７】
2010157013.tif 000029
【図２８】
2010157013.tif 000030
【図２９】
2010157013.tif 000031