(57)【要約】      （修正有）【課題】情報処理システム、情報処理方法およびプログラムを提供すること。【解決手段】情報処理システム１００は、第１の情報処理装置１１０および第２の情報処理装置１５０を含む。第１の情報処理装置１１０は、エントロピー源１１６から出力される出力情報を取得する取得手段１１２と、保護された通信路１０２を介して、エントロピー源１１６から取得した出力情報を送信する送信手段１１４とを有する。第２の情報処理装置１５０は、保護された通信路１０２を介して第１の情報処理装置１１０から出力情報を受信する受信手段１５４と、エントロピー供給が要求された場合に、第１の情報処理装置１１０から受信した出力情報を要求元１６０に供給する供給手段１５２とを有する。【選択図】図１
2017003900.tif 000002
【特許請求の範囲】
【請求項１】
第１の情報処理装置および第２の情報処理装置を含む情報処理システムであって、前記第１の情報処理装置は、
エントロピー源から出力される出力情報を取得する取得手段と、
保護された通信路を介して、前記エントロピー源から取得した出力情報を送信する送信手段と
を有し、前記第２の情報処理装置は、
前記保護された通信路を介して前記第１の情報処理装置から出力情報を受信する受信手段と、
エントロピー供給が要求された場合に、前記第１の情報処理装置から受信した出力情報を要求元に供給する供給手段と
を有する、情報処理システム。
【請求項２】
前記エントロピー源から取得した出力情報の送信は、前記第１の情報処理装置側から始動され、または、前記第２の情報処理装置側から、前記エントロピー供給の要求に備えるために始動され、前記第２の情報処理装置は、前記第１の情報処理装置から受信した１以上の出力情報を蓄積する蓄積手段をさらに含む、請求項１に記載の情報処理システム。
【請求項３】
前記エントロピー源から取得した出力情報の送信は、前記第２の情報処理装置側から、前記エントロピー供給の要求が発生したことに応じて始動される、請求項１に記載の情報処理システム。
【請求項４】
前記第１の情報処理装置は、前記第１の情報処理装置が備える前記エントロピー源から取得した１以上の出力情報を蓄積する蓄積手段をさらに含み、前記蓄積手段から取り出され送信された出力情報は前記蓄積手段から削除される、請求項１〜３のいずれか１項に記載の情報処理システム。
【請求項５】
前記エントロピー源は、単位情報あたりの最小エントロピーが２／３以上であることを特徴とする、請求項１〜４のいずれか１項に記載の情報処理システム。
【請求項６】
前記保護された通信路は、前記エントロピー源から取得した情報に基づいて前記出力情報を暗号化して伝送するための通信が確立される通信路である、請求項１〜５のいずれか１項に記載の情報処理システム。
【請求項７】
前記第２の情報処理装置は、
前記第２の情報処理装置が有するエントロピー源から取得した情報に基づいて前記通信を確立するための暗号鍵を生成した場合、前記出力情報の授受が所定の手順に従ったものであるか否かを監視する監視手段と
をさらに含む、請求項６に記載の情報処理システム。
【請求項８】
前記第２の情報処理装置は、
前記第２の情報処理装置が有するエントロピー源から取得した情報に基づいて、または、前記第１の情報処理装置から受信した出力情報に基づいて、前記通信を確立するための暗号鍵を生成する生成手段
をさらに含む、請求項６または７に記載の情報処理システム。
【請求項９】
第１の情報処理装置および第２の情報処理装置との間で実行される情報処理方法であって、
前記第１の情報処理装置が、エントロピー源から出力される出力情報を取得するステップと、
前記第１の情報処理装置が、保護された通信路を介して、前記エントロピー源から取得した出力情報を送信するステップと、
前記第２の情報処理装置が、前記保護された通信路を介して、前記第１の情報処理装置から出力情報を受信するステップと、
前記第２の情報処理装置が、エントロピー供給が要求されたことに応じて、前記第１の情報処理装置から受信した出力情報を要求元に供給するステップと
を有する、情報処理方法。
【請求項１０】
前記第１の情報処理装置が、または、前記第２の情報処理装置が前記エントロピー供給の要求に備えるために、前記エントロピー源から取得した出力情報の送信を始動させるステップと、
前記第２の情報処理装置が、前記第１の情報処理装置から受信した出力情報を蓄積するステップ
をさらに含む、請求項９に記載の情報処理方法。
【請求項１１】
前記第２の情報処理装置が、前記エントロピー供給の要求が発生したことに応じて、前記エントロピー源から取得した出力情報の送信を始動させるステップをさらに含む、請求項９に記載の情報処理方法。
【請求項１２】
前記第１の情報処理装置が、前記エントロピー源から取得した出力情報を蓄積するステップと、
前記第１の情報処理装置が、出力情報を取り出した場合に、取り出した出力情報を削除するステップと
をさらに含む、請求項９〜１１のいずれか１項に記載の情報処理方法。
【請求項１３】
前記第１の情報処理装置が、前記エントロピー源から取得した情報に基づいて暗号鍵を生成するステップと、
前記第１の情報処理装置および前記第２の情報処理装置が、前記暗号鍵を用いて前記出力情報を暗号化して伝送するための通信を確立するステップと
を含む、請求項９〜１２のいずれか１項に記載の情報処理方法。
【請求項１４】
前記第２の情報処理装置が、前記第２の情報処理装置が有するエントロピー源から取得した情報に基づいて前記通信を確立するための暗号鍵を生成したか否かを判定するステップと、
前記第２の情報処理装置が、前記第２の情報処理装置が有するエントロピー源から取得した情報に基づいて生成したと判定した場合、前記出力情報の授受が所定の手順に従ったものであるかを監視するステップと
をさらに含む、請求項１３に記載の情報処理方法。
【請求項１５】
前記第２の情報処理装置が、前記第２の情報処理装置が有するエントロピー源から取得した情報に基づいて、または、前記第１の情報処理装置から受信した出力情報に基づいて、前記通信を確立するための暗号鍵を生成するステップ
をさらに含む、請求項１３または１４に記載の情報処理方法。
【請求項１６】
エントロピー提供元の情報処理装置と接続される情報処理装置を実現するためのプログラムであって、前記エントロピー提供元の情報処理装置は、
エントロピー源から出力される出力情報を取得する取得手段と、
保護された通信路を介して、前記エントロピー源から取得した出力情報を送信する送信手段と
を有し、前記プログラムは、コンピュータを、
前記保護された通信路を介して前記エントロピー提供元の情報処理装置から出力情報を受信する受信手段、および、
エントロピー供給が要求された場合に、前記エントロピー提供元の情報処理装置から受信した出力情報を要求元に供給する供給手段
として機能させるためのプログラム。
【請求項１７】
保護された通信路を介してエントロピー提供先の情報処理装置と接続される情報処理装置を実現するためのプログラムであって、前記プログラムは、コンピュータを、
エントロピー源から出力される出力情報を取得する取得手段、および
保護された通信路を介して、前記エントロピー源から取得した出力情報を前記エントロピー提供先の情報処理装置へ送信する送信手段
として機能させるためのプログラムであり、前記エントロピー提供先の情報処理装置は、
前記保護された通信路を介して当該情報処理装置から出力情報を受信する受信手段と、
エントロピー供給が要求された場合に、当該情報処理装置から受信した出力情報を要求元に供給する供給手段と
を有する、プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理システム、情報処理方法およびプログラムに関する。
【背景技術】
【０００２】
情報処理装置間で送受信される情報や情報処理装置内に保持される情報をセキュアにするための暗号技術や認証技術などにおいて、乱数発生は、基盤技術を構成している。現在使用されている乱数としては、光子偏光などの物理現象やキー押下タイミングのブレなどの利用環境の不規則性に基づく物理乱数と、一定のアルゴリズムで乱数生成器の内部データから算出される算術乱数（擬似乱数ともいう。）とを挙げることができる。
【０００３】
物理乱数の場合は、物理現象や利用環境の不規則性に基づくノイズがハードウェア・コンポーネントから収集され、それをそのまま使用して、あるいは、確率分布の調整など後処理を施して、乱数が生成される。物理乱数の場合は、この物理乱数生成器自体がエントロピー源と呼ばれる。なお、エントロピーとは、乱数の不規則性の尺度をいう。
【０００４】
これに対して、算術乱数の場合、内部データの初期値や変更値が乱数生成器の外部から供給されるが、その値がシードと呼ばれ、その不規則なシードの供給源がエントロピー源と呼ばれる。算術乱数生成器のエントロピー源は、物理乱数生成器または別のアルゴリズムによる算術乱数生成器となる可能性がある。
【０００５】
従来、簡素なアルゴリズムの算術乱数が用いられていたが、近年のセキュリティ攻撃の高度化に伴い、簡素な算術乱数では充分な保護を得られ難くなっている。このため、それぞれが所定の基準を満たすエントロピー源と算術乱数アルゴリズムとを組み合わせる技術が主流となっている。算術乱数生成器のエントロピー源は、上述したように別の算術乱数生成器でもよいが、エントロピー源が所定の基準を満たすためには、少なくとも大元を辿っていった先のどこかに物理乱数生成器があることが求められる。
【０００６】
しかしながら、従来技術では、高品質なエントロピー源は、通常、高価なハードウェア・コンポーネントを必要とした。あるいは、装置の性能が低い場合は、ハードウェア・コンポーネントから充分なノイズを収集できなかったり、仮に収集できたとしても多大な時間を要してしまう可能性があった。
【０００７】
上記エントロピー源に関して、特表２０１３−５０２６６５号公報（特許文献１）が知られている。特許文献１の従来技術では、コンピューティングデバイスにおいて、ハードウェア・コンポーネントの各々に基づいて、エントロピー・データが収集され、収集したデータが、コンピューティングデバイスの仮想マシンに供給される。これにより、コンピューティングデバイス上で稼働する仮想マシン上で、適切なエントロピー源を利用することが可能となる。しかしながら、上記従来技術では、仮想マシンが、自身が稼働するコンピューティングデバイスが備えるエントロピー源を利用するというものに過ぎない。したがって、依然として、高品質なエントロピー源を利用するためには、装置のコストが増大してしまう点で、充分なものではなかった。
【発明の概要】
【発明が解決しようとする課題】
【０００８】
本発明は、上記点に鑑みてなされたものであり、本発明は、情報処理装置が有するエントロピー源の出力情報を他の情報処理装置が利用可能とすることができる、情報処理システムを提供することを目的とする。
【課題を解決するための手段】
【０００９】
本発明では、上記課題を解決するために、下記特徴を有する情報処理システムを提供する。本情報処理システムにおいて、第１の情報処理装置は、エントロピー源から出力される出力情報を取得する取得手段と、保護された通信路を介して、上記エントロピー源から取得した出力情報を送信する送信手段とを有する。本情報処理システムにおいて、第２の情報処理装置は、上記保護された通信路を介して第１の情報処理装置から出力情報を受信する受信手段と、エントロピー供給が要求された場合に、上記第１の情報処理装置から受信した出力情報を要求元に供給する供給手段とを有する。
【発明の効果】
【００１０】
上記構成により、情報処理装置が有するエントロピー源の出力情報を他の情報処理装置が利用可能とすることができる。
【図面の簡単な説明】
【００１１】
【図１】第１の実施形態による情報処理システムを示す機能ブロック図。
【図２】第１の実施形態による情報処理システムにおいて実行される（Ａ）エントロピー提供元の情報処理装置側から始動される場合および（Ｂ）エントロピー提供先の情報処理装置側から始動される場合のエントロピー源出力提供処理を示すシーケンス図。
【図３】エントロピー提供元の情報処理装置からエントロピー提供先の情報処理装置へ提供されるデータを例示する図。
【図４】（Ａ）第１の実施形態および（Ｂ）第２の実施形態にかかる情報処理システムの特定の実装例を示す図。
【図５】第２の実施形態による情報処理システムを示す機能ブロック図。
【図６】第２の実施形態による情報処理システムにおいて実行されるエントロピー提供元の情報処理装置側から始動される場合のエントロピー源出力提供処理を示すシーケンス図。
【図７】第２の実施形態による情報処理システムにおいて実行されるエントロピー提供先の情報処理装置側から始動される場合のエントロピー源出力提供処理を示すシーケンス図。
【図８】（Ａ，Ｂ）第２の実施形態による情報処理システムにおけるエントロピー提供先の情報処理装置の詳細な機能ブロックの例を示す図。
【図９】図８（Ａ）に示す構成を備えるエントロピー提供先の情報処理装置が実行する、図６に示すシーケンス図に対応する処理を示すフローチャート。
【図１０】図８（Ｂ）に示す構成を備えるエントロピー提供先の情報処理装置が実行する、図６に示すシーケンス図に対応する処理を示すフローチャート。
【図１１】（Ａ，Ｂ）第２の実施形態による情報処理システムにおけるエントロピー提供先の情報処理装置の詳細な他の例の機能ブロックの例を示す図。
【図１２】図１１（Ａ）に示す構成を備えるエントロピー提供先の情報処理装置が実行する、図７に示すシーケンス図に対応する処理を示すフローチャート。
【図１３】図１１（Ｂ）に示す構成を備えるエントロピー提供先の情報処理装置が実行する、図７に示すシーケンス図に対応する処理を示すフローチャート。
【図１４】複合機のハードウェア構成の実施形態を示す図。
【発明を実施するための形態】
【００１２】
以下、本実施形態について説明するが、以下に説明する実施形態に限定されるものではない。なお、以下に説明する実施形態では、情報処理システムとして、高品質なエントロピー源を有するエントロピー提供元の情報処理装置と、高品質なエントロピー源を必ずしも有さないエントロピー提供先の情報処理装置とを含む情報処理システムを一例として説明する。
【００１３】
本実施形態は、算術乱数発生器へのシード供給といったエントロピー供給に関するものである。本実施形態は、高品質なエントロピー源を有する情報処理装置が提供元として、必ずしも高品質なエントロピー源を有さない他の情報処理装置に対し、他の情報処理装置からの要求に応じて、または、他の情報処理装置での必要に備えて、保護された通信路を介して、自身の高品質なエントロピー源から取得した出力データを提供することを特徴とする。
【００１４】
すなわち、エントロピーの提供元の情報処理装置は、高品質なエントロピー源から出力される出力情報を取得し、保護された通信路を介して、取得した出力情報を送信する。これに対して、エントロピーの提供先の情報処理装置は、保護された通信路を介して上記出力情報を受信し、エントロピー供給が要求されたことに応じて、受信した出力情報を要求元に供給する。
【００１５】
以下、図１〜図４（Ａ）を参照しながら、第１の実施形態による情報処理システム１００についてより具体的に説明する。
【００１６】
図１は、第１の実施形態による情報処理システム１００の構成を示す機能ブロック図である。図１に示すように、情報処理システム１００は、エントロピー提供元の情報処理装置（以下、単に提供元装置と参照する場合がある。）１１０と、エントロピー提供先の情報処理装置（以下、単に提供先装置と参照する場合がある。）１５０とを含み構成される。
【００１７】
図１に示すエントロピー提供元およびエントロピー提供先の情報処理装置１１０，１５０は、専用の通信路１０２を介して互いに接続されている。第１の実施形態では、提供元装置１１０のエントロピー源出力を、提供元装置１１０から、通信路１０２を介して、提供先装置１５０へと供給する。通信路１０２は、本実施形態における、保護された通信路を構成する。なお、図１には、通信路１０２のみを示しているが、別の通信路を介して、提供元装置１１０および提供先装置１５０が接続されることを妨げるものではない。
【００１８】
提供元装置１１０は、高品質エントロピー源１１６を有しており、必ずしも高品質なエントロピー源を有さない提供先装置１５０に対し、高品質エントロピー源１１６から取り出した出力データを提供する機能を備える。これに対して、提供先装置１５０は、提供元装置１１０からの高品質エントロピー源１１６の出力データの提供を受領する機能を備える。
【００１９】
提供元装置１１０は、上述した高品質エントロピー源１１６のほか、高品質エントロピー源１１６からの出力データの採取および提供先装置１５０への出力データの提供に関する制御を司るエントロピー提供制御部１１２と、出力データ提供のための送受信処理を司る通信部１１４と、好ましくは、エントロピー・プール１１８とを有する。
【００２０】
高品質エントロピー源１１６は、所定の基準を満たすエントロピー源である。ここで、エントロピー源とは、一定程度の不規則性を有するデータを発生させる情報源をいう。特に限定されるものではないが、マウスの移動やキーストロークなどのユーザ操作に由来したデータ、システム情報に由来したデータ、ディスクアクセスに由来したデータ、ネットワークトラフィックに由来したデータ、音声信号や映像信号に基づくデータ、内蔵または接続されるハードウェア乱数発生器が生成するデータなどがエントロピー源となり得る。ここで、ハードアウェア乱数発生器とは、光子偏光、熱雑音、量子化効果、放射性崩壊といった物理現象に基づき乱数発生するハードアウェア・コンポーネントである。
【００２１】
高品質エントロピー源１１６の出力データは、そのまま、あるいは確率分布の調整など後処理を施して、乱数として使用したり、算術乱数発生器のシードとして使用したりすることができる。
【００２２】
なお、説明する実施形態において、エントロピー源が高品質であるとは、所定の条件を満たすことをいう。所定の条件は、例えばＳｈａｎｎｏｎエントロピーや最小エントロピーといった不規則性を定量する尺度が、所定閾値以上であるという条件を少なくとも含むことができる。例えば、単位情報（ビット）あたりの最小エントロピーが２／３以上であるといった条件を満たすエントロピー源を高品質なエントロピー源ということができる。上述した物理乱数に基づくハードウェア乱数発生器は、典型的には、高品質なエントロピー源ということができる。
【００２３】
なお、上述したＳｈａｎｎｏｎエントロピーＨＳｈａｎｎｏｎは、下記式で計算することができる。下記式中、ΩＸは、データ値ｘの全体を表す集合（１ビットなら０および１を含み、８ビットであれば０〜２５５の値を含む。）であり、Ｐ（ｘ）は、データ値ｘが出現する確率を表す。
【００２４】
【数１】
2017003900.tif 000003
【００２５】
また、最小エントロピーＨｍｉｎは、下記式で計算することができ、ＳｈａｎｎｏｎエントロピーＨＳｈａｎｎｏｎ以下の値となる。なお、下記式中、Ｐｍａｘは、出現確率の最大値を表す。
【００２６】
【数２】
2017003900.tif 000004
【００２７】
例えば、Ｐ（ｘ）が一様分布であれば、ビットあたりのＳｈａｎｎｏｎエントロピーは、１ビットである。確率がある１つのデータ値に集中する分布を有していれば（Ｐｍａｘ≒１）、単位ビットあたりのＳｈａｎｎｏｎエントロピーは０に近くなる。また、ビットあたりの最小エントロピーは、Ｐ（ｘ）が一様分布であれば１であり、確率がある１つのデータ値に集中する分布を有していれば（Ｐｍａｘ≒１）、０に近くなる。
【００２８】
エントロピー・プール１１８は、高品質エントロピー源１１６から採取された１以上の出力データを蓄積する、本実施形態における蓄積手段を構成する。なお、エントロピー・プール１１８は、任意のコンポーネントであり、特定の好ましい実施形態において設けられる。
【００２９】
エントロピー提供制御部１１２は、提供先装置１５０へのエントロピー提供にかかる処理を制御する。エントロピー提供制御部１１２は、提供先装置１５０へエントロピー源出力を提供するために、高品質エントロピー源１１６またはエントロピー・プール１１８から出力データを取得し、通信部１１４に渡す。エントロピー提供制御部１１２は、また、エントロピー・プール１１８を有する場合であって、エントロピー・プール１１８のデータ量が不足する場合（所定の閾値を下回った場合など）には、高品質エントロピー源１１６から出力データを採取して、エントロピー・プール１１８に補充する。また、エントロピー提供制御部１１２は、エントロピー・プール１１８から出力データを取得した場合、好ましくは、再利用されることを防止するため、取得した出力データをエントロピー・プール１１８から削除する。エントロピー提供制御部１１２は、本実施形態における取得手段を構成する。
【００３０】
通信部１１４は、エントロピー提供制御部１１２から渡された出力データを、保護された通信路１０２を介して、提供先装置１５０へ送信する、本実施形態における送信手段を構成する。通信部１１４は、また、提供先装置１５０からのエントロピー提供を求める要求を受信することができ、受信した要求をエントロピー提供制御部１１２に渡す。
【００３１】
これに対して、エントロピー提供先の情報処理装置１５０は、提供元装置１１０からの高品質エントロピー源１１６の出力データの提供を受領し、必要とするコンポーネントに供給する制御を行うエントロピー供給制御部１５２と、出力データの提供を受けるための送受信処理を実行する通信部１５４と、任意の低品質エントロピー源１５６と、好ましくは、エントロピー・プール１５８とを有する。また、図１には、シード供給を受けて乱数を発生させる算術乱数発生器１６０が示されている。しかしながら、提供元装置１１０から提供された出力データを、物理乱数としてそのまま使用することもできる。
【００３２】
エントロピー供給制御部１５２は、提供先装置１５０でのエントロピー供給にかかる処理を制御する。エントロピー供給制御部１５２は、算術乱数発生器１６０やその他のコンポーネントから、エントロピー供給を求める要求を受領した場合に、要求元のコンポーネントに対し、出力データを供給する。エントロピー・プール１５８が備えられる場合であって、エントロピー・プール１５８のデータ量が充分である場合には、エントロピー・プール１５８から出力データが読み出され、要求元のコンポーネントに供給される。エントロピー供給制御部１５２は、本実施形態における供給手段を構成する。
【００３３】
一方、エントロピー・プール１５８のデータ量が充分ではない場合（所定の閾値を下回る場合など）には、エントロピー供給制御部１５２は、通信部１５４により、提供元装置１１０に対しエントロピー提供を求める要求を送信させて、提供元装置１１０からエントロピー源出力の提供を受けてエントロピー・プール１５８に充分なデータが蓄えられるのを待機する。
【００３４】
通信部１５４は、保護された通信路１０２を介して、提供元装置１１０から出力データを受信する、本実施形態における受信手段を構成する。通信部１５４は、また、提供元装置１１０に対しエントロピー提供を求める要求を送信することもできる。
【００３５】
低品質エントロピー源１５６は、高品質となる基準を満たさないエントロピー源、あるいは、時計のように規則的なデータしか供給しないデータ供給手段である場合がある。低品質エントロピー源１５６が備えられる場合、低品質エントロピー源１５６は、提供元の高品質エントロピー源１１６よりも低い最小エントロピーを有する。なお、低品質エントロピー源１５６は、提供先装置１５０に備えられる場合もあるし、備えられない場合もある。
【００３６】
エントロピー・プール１５８は、提供元装置１１０から受信した１以上の出力データを蓄積する、本実施形態における蓄積手段を構成する。なお、エントロピー・プール１５８は、任意のコンポーネントであり、特定の実施形態において設けられる。
【００３７】
上述した提供元装置１１０から提供先装置１５０への出力データの送信は、提供元装置１１０側から始動される場合と、提供先装置１５０側から始動される場合とがある。図２（Ａ）は、提供元装置１１０側から始動される場合のエントロピー源出力提供処理を示すシーケンス図である。これに対し、図２（Ｂ）は、提供先装置１５０側から始動される場合のエントロピー源出力提供処理を示すシーケンス図である。
【００３８】
図２（Ａ）に示す処理は、ユーザからの明示的な指示、スケジュールしたタイミングの到来、または、エントロピー・プール１１８のデータ量が閾値を超えた場合などに、提供元装置１１０側から開始される。
【００３９】
ステップＳ１０１では、提供元装置１１０は、自身の高品質エントロピー源１１６またはエントロピー・プール１１８から所定量の出力データを取り出す。提供元装置１１０は、エントロピー・プール１１８を有していない場合は、高品質エントロピー源１１６から出力データを直接取り出し、エントロピー・プール１１８を有する場合は、エントロピー・プール１１８から出力データを取り出す。もし、エントロピー・プール１１８のデータ量が不足する場合は、高品質エントロピー源１１６からエントロピー・プール１１８に出力データを補充する。なお、エントロピー・プール１１８から取り出した出力データは、消費したものとして、エントロピー・プール１１８から削除される。
【００４０】
ステップＳ１０２では、提供元装置１１０は、通信路１０２を介して、取り出した出力データを提供先装置１５０へ送信する。ステップＳ１０３では、提供先装置１５０は、提供元装置１１０から受信した出力データを、エントロピー・プール１５８に格納する。なお、図２（Ａ）に示すように、提供元装置１１０側から始動する場合は、提供先で現にエントロピー供給が要求されているとは限らないので、提供先装置１５０は、要求に備えて出力データを蓄積するためエントロピー・プール１５８を備えることになる。
【００４１】
図３は、上述した提供元装置１１０から提供先装置１５０へ提供されるデータを例示する。図３に示すデータは、データ列を１６進数で表現したものである。図３に示すように、高品質エントロピー源１１６から取り出された出力データは、不規則なデータ列として構成される。
【００４２】
再び図２（Ａ）を参照すると、提供先装置１５０において算術乱数発生器１６０へのシード供給などエントロピー供給が必要になった場合は、ステップＳ１０４で、提供先装置１５０は、エントロピー供給の要求に応答して、エントロピー・プール１５８から蓄積された高品質エントロピー源１１６の出力データを取り出し、算術乱数発生器１６０などのコンポーネントに供給し、使用する。なお、エントロピー・プール１５８に充分な出力データが蓄えられていなければ、提供先装置１５０は、充分な出力データが蓄えられるまで待機する。エントロピー・プール１５８から取り出したデータは、消費したものとして、エントロピー・プール１５８から削除される。
【００４３】
以下、引き続き、図２（Ｂ）を参照しながら、提供先装置１５０側から始動される場合のエントロピー源出力提供処理を説明する。図２（Ｂ）に示す処理は、エントロピー源出力の必要が発生したことに応答して開始される。エントロピー・プール１５８が有る場合には、プールのデータ量の不足が検出された場合には、追加のエントロピー源の出力データが必要となる。エントロピー・プール１５８がない場合は、算術乱数発生器１６０へのシード供給といったエントロピー供給の供給が現に発生した場合に、エントロピー源の出力データが必要となる。
【００４４】
ステップＳ２０２では、提供先装置１５０は、提供元装置１１０に対しエントロピー源出力を要求する。特定の実施形態では、エントロピー源出力の要求には、所望のデータ量を指定することができる。ステップＳ２０３では、提供元装置１１０は、要求に応答して、自身の高品質エントロピー源１１６またはエントロピー・プール１１８から所定量または所望量の出力データを取り出す。
【００４５】
ステップＳ２０４では、提供元装置１１０は、取り出した所定量または所望量の出力データを、通信路１０２を介して提供先装置１５０へ送信する。
【００４６】
ステップＳ２０５では、提供先装置１５０は、必要に応じて、提供元装置１１０から受信した出力データをエントロピー・プール１５８に蓄積することができる。なお、現にエントロピー供給の要求があったことに応答して始動される場合は、提供先装置１５０は、エントロピー・プール１５８を備える必要はなく、ステップＳ２０５は、任意のステップである。一方、提供先装置１５０側から始動される場合でも、将来のエントロピー供給の要求に備えて前もって始動される場合は、提供先装置１５０は、エントロピー・プール１５８を備え、ステップＳ２０５の処理が実行されることになる。
【００４７】
提供先装置１５０で算術乱数発生器１６０へのシード供給などエントロピー供給が現に必要になったことに応答して当該フローが始動された場合は、ステップＳ２０６で、提供先装置１５０は、提供元装置１１０から提供された出力データを直接、使用する。将来のエントロピー供給の要求に備えて前もって始動される場合は、提供先装置１５０は、以降の任意のタイミングで発生するエントロピー供給の要求に応答して、ステップＳ２０６で、エントロピー・プール１５８に蓄積された出力データを取り出し、使用する。
【００４８】
図２（Ｂ）に示すフローは、提供先装置１５０がエントロピー・プール１５８を有さない場合は、算術乱数発生器１６０へのシード供給などのエントロピー供給が要求される度に行われ、受信した出力データを直接使用することができる。提供先装置１５０がエントロピー・プール１５８を有する場合は、エントロピー・プール１５８内のデータ量が不足する場合に、図２（Ｂ）に示すフローが行われ、算術乱数発生器へのシード供給などのエントロピーが必要になると、エントロピー・プール１５８から必要な量のデータを取り出される。
【００４９】
図４（Ａ）は、第１の実施形態にかかる情報処理システムの特定の実装例を示す図である。図４（Ａ）は、互いに分離され、専用の通信路で接続された操作パネル装置１５０と、複合機本体１１０とを含む複合機のシステム構成１００を例示する。図４（Ａ）に例示する複合機１００の操作パネル装置１５０は、高品質なエントロピー源を有しておらず、図１に示した提供先の情報処理装置１５０に対応する。これに対し、複合機本体１１０は、高品質エントロピー源１１６を有しており、図１に示した提供元の情報処理装置１１０に対応する。
【００５０】
第１の実施形態による情報処理システム１００は、図４（Ａ）に示すような、複数の装置からなるシステムに対して好適に適用することができる。その場合には、いずれかの装置に高品質エントロピー源を設ければよく、残りの装置には必ずしも高品質なエントロピー源を備えさせる必要がなく、システム全体としてのコストを削減することができる。なお、図１および図４（Ａ）には、２つの装置を含むシステムを示したが、システムに含まれる装置の数は、２つに限定されるものではなく、任意の数の１以上の提供元装置１１０と、任意の数の１以上の提供先装置１５０とを含むシステムとして構成してもよい。
【００５１】
以上説明した実施形態は、通信路１０２を介してエントロピー源出力が送信されていた。以下、共用の通信路を介して、エントロピー源出力の送信が行われる第２の実施形態について、図５〜図７および図４（Ｂ）を参照しながら説明する。なお、第２の実施形態は、第１の実施形態と共通する構成を備えるので、以下、相違点を中心に説明する。
【００５２】
図５は、第２の実施形態による情報処理システム２００の構成を示す機能ブロック図である。情報処理システム２００は、第１の実施形態と同様に、エントロピー提供元の情報処理装置２１０と、エントロピー提供先の情報処理装置２５０とを含み構成される。
【００５３】
図５に示す第２の実施形態では、提供元装置２１０および提供先装置２５０は、システム外部の装置２９０も接続される共用の通信路２０２を介して接続されている。第２の実施形態では、通信路２０２を介して、提供元装置２１０から提供先装置２５０へと提供元装置２１０のエントロピー源出力が提供される。通信路２０２は、システム外部の装置２９０と共用されているが、第２の実施形態では、通信路２０２を介したエントロピー源出力にかかる通信は、提供元装置２１０および提供先装置２５０間で確立される暗号通信セッションにより保護される。
【００５４】
提供元装置２１０は、第１の実施形態と同様に、高品質エントロピー源２１６から取り出した出力データを提供する機能を備える。これに対して、提供先装置２５０は、提供元装置２１０からの高品質エントロピー源２１６の出力データの提供を受領する機能を備える。
【００５５】
提供元装置２１０は、第１の実施形態と同様に、エントロピー提供制御部２１２と、通信部２１４と、高品質エントロピー源２１６と、好ましくは、エントロピー・プール２１８とを有する。
【００５６】
通信部２１４は、通信路２０２を介して、エントロピー提供制御部２１２により渡された出力データを、提供先装置２５０へ送信する。通信部２１４は、また、提供先装置２５０からのエントロピー提供を求める要求を受信することもできる。第２の実施形態では、さらに、通信部２１４は、提供先装置２５０との間に暗号通信セッションを確立するために暗号通信能力を交換したり、暗号鍵を生成したりする。
【００５７】
これに対して、提供先装置２５０は、第１の実施形態と同様に、エントロピー供給制御部２５２と、通信部２５４と、任意の低品質エントロピー源２５６と、好ましくは、エントロピー・プール２５８とを有する。また、図５には、シード供給を受けて乱数を発生させる算術乱数発生器２６０が示されている。
【００５８】
通信部２５４は、通信路２０２を介して提供元装置２１０から出力データを受信する。通信部２５４は、また、提供元装置２１０に対しエントロピー提供を求める要求を送信することもできる。第２の実施形態では、さらに、通信部２５４は、提供元装置２１０との間に暗号通信セッションを確立するために暗号通信能力を交換したり、暗号鍵を生成したりする。
【００５９】
第２の実施形態も、第１の実施形態と同様に、出力データの送信が、提供元装置２１０側から始動される場合と、提供先装置２５０側から始動される場合とがある。図６は、提供元装置２１０側から始動される場合のエントロピー源出力提供処理を示すシーケンス図である。これに対し、図７は、提供先装置２５０側から始動される場合のエントロピー源出力提供処理を示すシーケンス図である。
【００６０】
図６に示す処理は、提供元装置２１０側から開始される。ステップＳ３０１からステップＳ３０３では、提供元装置２１０主動で暗号通信セッションが確立される。ステップＳ３０１では、提供元装置２１０と提供先装置２５０との間で、サポートしている暗号スイートなど暗号通信能力を交換し、これから確立しようとしている暗号通信セッションで用いる暗号スイートや通信パラメータなどを決定する。ステップＳ３０２では、提供元装置２１０および提供先装置２５０の双方で、暗号通信のための暗号鍵を生成する。提供元装置２１０は、暗号鍵を生成する際に高品質エントロピー源２１６を使用する。これに対して、提供先装置２５０は、暗号鍵を生成する際に低品質エントロピー源２５６を使用する。この場合、低品質エントロピー源２５６が、提供先装置２５０に備えられるものとする。
【００６１】
なお、提供先装置２５０が生成した暗号鍵は、低品質エントロピー源２５６に基づくものであるため、強度不足の可能性があるが、機密性を重視すべきエントロピー源の出力データは、提供元装置２１０によって高品質エントロピー源２１６に基づいて暗号化されるものなので特段の問題は生じない。ステップＳ３０３では、提供元装置２１０と提供先装置２５０との間で、暗号通信のための暗号鍵を相互に提示し、暗号通信セッションを確立する。これにより、通信路２０２は、高品質エントロピー源２１６から取得した出力データに基づいて暗号化して伝送するための通信が確立された、保護された通信路となる。
【００６２】
ステップＳ３０４では、提供元装置２１０は、自身の高品質エントロピー源２１６またはエントロピー・プール２１８から所定量の出力データを取り出す。なお、ステップＳ３０４のタイミングは、図６に示したものに限られず、例えば、暗号通信セッションの確立を開始する前に実施してもよい。
【００６３】
ステップＳ３０５では、提供元装置２１０は、通信路２０２上の暗号通信セッションを介して、取り出した出力データを提供先装置２５０へ送信する。ステップＳ３０６では、提供元装置２１０と提供先装置２５０との間で確立された暗号通信セッションを終了する。
【００６４】
ステップＳ３０７では、提供先装置２５０は、提供元装置２１０から受信した出力データを、エントロピー・プール２５８に格納する。なお、ステップＳ３０７のタイミングは、図６に示したものに限られず、例えば暗号通信セッション終了の前に実施してもよい。
【００６５】
ステップＳ３０８では、提供先装置２５０は、算術乱数発生器２６０などからのエントロピー供給の要求に応答して、エントロピー・プール２５８に蓄積された高品質エントロピー源２１６の出力データを取り出し、要求元に渡して、使用する。
【００６６】
以下、引き続き、図７を参照しながら、提供先装置２５０側から始動される場合のエントロピー源出力提供処理を説明する。図７に示す処理は、エントロピー源出力の必要が発生したことに応答して、ステップＳ４０１から開始される。ステップＳ４０２からステップＳ４０４では、提供先装置２５０主動で暗号通信セッションが確立される。ステップＳ４０２では、提供先装置２５０と提供元装置２１０との間で、サポートしている暗号スイートなど暗号通信能力を交換する。ステップＳ４０３では、提供先装置２５０および提供元装置２１０の双方で、暗号通信のための暗号鍵を生成する。提供先装置２５０は、暗号鍵を生成する際に低品質エントロピー源２５６を使用するが、特段の問題が生じないことは上述した通りである。ステップＳ４０４では、提供先装置２５０と提供元装置２１０との間で、暗号通信セッションを確立する。これにより、通信路２０２は、保護された通信路となる。
【００６７】
ステップＳ４０５では、提供先装置２５０は、提供元装置２１０に対し、エントロピー源出力を要求する。なお、要求自体の機密性を重視する必要が無いため、ステップＳ４０５を、例えばステップＳ４０１とステップＳ４０２との間で行ってもよい。ステップＳ４０６では、提供元装置２１０は、要求に応答して、自身の高品質エントロピー源２１６またはエントロピー・プール２１８から所定量または所望量の出力データを取り出す。
【００６８】
ステップＳ４０７では、提供元装置２１０は、通信路２０２上の暗号通信セッションを介して、出力データを提供先装置２５０へ送信する。ステップＳ４０８では、提供先装置２５０と提供元装置２１０との間で確立された暗号通信セッションを終了する。
【００６９】
ステップＳ４０９では、提供先装置２５０は、必要に応じて、提供元装置２１０から受信した出力データをエントロピー・プール２５８に蓄積することができる。なお、ステップＳ４０９のタイミングは、図７に示したものに限らない。ステップＳ４１０では、提供先装置２５０は、提供元装置２１０から提供された出力データを使用する。
【００７０】
図４（Ｂ）は、第２の実施形態にかかる情報処理システムの特定の実装例を示す図である。図４（Ｂ）は、互いにローカル・エリア・ネットワーク（ＬＡＮ）などの通信路を介して接続されたローエンド複合機２５０と、ハイエンド複合機２１０とを含むシステム構成２００を例示する。図４（Ｂ）に例示するローエンド複合機２５０は、高品質なエントロピー源を有しておらず、図５に示した提供先の情報処理装置２５０に対応する。これに対し、ハイエンド複合機２１０は、高品質エントロピー源２１６を有しており、図５に示した提供元の情報処理装置２１０に対応する。
【００７１】
第２の実施形態による情報処理システム２００は、図４（Ｂ）に示すような、複数の装置をネットワーク上に配置した環境に対して好適に適用することができる。その場合には、高品質エントロピー源を備える装置を１つだけでも環境に導入すればよく、残りの装置は必ずしも高品質なエントロピー源を備えている必要がない。したがって、システム全体として、装置の導入コストを低減しつつ、システム内の装置が高品質なエントロピー源を利用可能な環境を構築することができる。なお、図５および図４（Ｂ）には、システムを構成する２つの装置を含む環境を示したが、システムを構成する装置の数は、２つに限定されるものではなく、任意の数の１以上の提供元装置２１０と、任意の数の１以上の提供先装置２５０とを含むシステムとして構成してもよい。
【００７２】
以下、図８〜図１３を参照しながら、上述した第２の実施形態による情報処理システムにおける提供先装置２５０における構成について、より詳細に説明する。
【００７３】
図８（Ａ）は、上述した第２の実施形態による情報処理システムにおける提供先装置２５０の詳細な機能ブロックを示す。なお、図８（Ａ）に示す例の機能ブロックは、図６のシーケンス図に示す処理を実行する場合に対応する。図８（Ａ）に示す機能ブロックでは、エントロピー供給制御部２５２Ａ、通信部２５４Ａ、低品質エントロピー源２５６Ａ、エントロピー・プール２５８Ａ、算術乱数発生器２６０Ａに加えて、さらに、エントロピー出力受領用暗号通信サーバ（以下、受領用サーバと参照する。）２６２Ａと、通常用暗号通信サーバ（以下、通常用サーバと参照する。）２６４Ａとを含み構成される。
【００７４】
受領用サーバ２６２Ａは、図５に示した機能ブロックにおいて、通信部２５４が備えていた一部機能を切り出して、別の機能ブロックとしたものである。受領用サーバ２６２Ａは、通信部２５４Ａを介した暗号通信を用いて提供元装置２１０から提供されるエントロピー源出力データを受け取り、エントロピー供給制御部２５２Ａに引き渡す。受領用サーバ２６２Ａは、さらに、低品質エントロピー源２５６Ａから取得した出力データに基づいて、または、提供元装置２１０から受信した出力データに基づいて、暗号通信セッションを確立するための暗号鍵を生成する。低品質エントロピー源２５６Ａから取得した出力データに基づいて暗号鍵を生成した場合は、受領用サーバ２６２Ａは、さらに、暗号通信セッションを介した出力データの授受が所定の手順に従ったものであるか否かを監視する。受領用サーバ２６２Ａは、本実施形態における生成手段および監視手段を構成する。
【００７５】
なお、受領用サーバ２６２Ａは、装置内に静的に存在する場合と、ソフトウェアにより動的にインスタンス生成される場合とがある。動的にインスタンス生成される場合は、さらに、最初に必要となる前または最初に必要になった際に生成され、以降は同じインスタンスが使われる場合と、必要になる毎にインスタンス生成され、暗号通信終了後に削除される場合とがある。
【００７６】
通常用サーバ２６４Ａは、通信部２５４Ａを介してエントロピー出力受領以外の暗号通信を受け付ける。なお、通常用サーバ２６４Ａは、任意であるが、設けられる場合は、ＵＲＬ（Universal Resource Locator）などにより受領用サーバ２６２Ａと区別されることが好ましい。
【００７７】
また、図８（Ａ）には特に示していないが、暗号通信クライアントなど、エントロピー供給を必要とする他のコンポーネントを備える場合もある。通常用サーバ２６４Ａや暗号通信クライアントといったエントロピー供給を必要とするコンポーネントは、提供元装置２１０から提供された出力データをエントロピー供給制御部２５２Ａから受け取って使用することができる。
【００７８】
図９は、図８（Ａ）に示す構成を備える提供先装置２５０が実行する、図６に示すシーケンス図に対応する処理を示すフローチャートである。なお、図９に示す処理は、受領用サーバ２６２Ａが実行する。図９に示す処理は、提供元装置２１０主動で暗号通信セッション確立が開始されるので、通信部２５４Ａを介して暗号通信要求を受領したことに応答して、ステップＳ５００から開始される。ステップＳ５０１では、受領用サーバ２６２Ａは、提供元装置２１０との暗号通信能力を交換する。ステップＳ５０２では、受領用サーバ２６２Ａは、低品質エントロピー源２５６Ａを利用して鍵生成を行うとともに、監視ルーチンを起動する。ステップＳ５０３では、受領用サーバ２６２Ａは、提供元装置２１０との暗号通信セッションを確立する。
【００７９】
監視ルーチンは、ステップＳ５５０から開始され、ステップＳ５５１で、受領用サーバ２６２Ａの内部で、エントロピー出力の授受における通信内容を監視し、正しい手順であるか否かを監視する。ステップＳ５５２で、正しい手順と異なる通信を検知した場合（ＹＥＳ）は、ステップＳ５５３で、受領用サーバ２６２Ａの内部でエラーを発生せて、ステップＳ５５４でルーチンを終了する。一方で、ステップＳ５５２で、正しい手順と異なる通信を検知せず手順が終了した場合（ＮＯ）は、そのままステップＳ５５４でルーチンを終了する。
【００８０】
ステップＳ５５１では、ステップＳ５０３のセッション確立の手順が監視されており、ステップＳ５０４では、受領用サーバ２６２Ａは、エラーが有るか否かを判定する。ステップＳ５０４で、エラーが有ると判定された場合（ＹＥＳ）は、ステップＳ５０８へ処理を直接分岐させる。ステップＳ５０８では、受領用サーバ２６２Ａは、提供元装置２１０との暗号通信セッションを終了し、ステップＳ５０９で本処理を終了させる。
【００８１】
一方、ステップＳ５０４で、エラーが無いと判定した場合（ＮＯ）は、ステップＳ５０５へ処理が進められる。ステップＳ５０５では、受領用サーバ２６２Ａは、提供元装置２１０からのエントロピー源出力を受信する。
【００８２】
ステップＳ５５１では、ステップＳ５０５のエントロピー源出力の受信の手順が監視されており、ステップＳ５０６では、受領用サーバ２６２Ａは、エラーが有るか否かを判定する。ステップＳ５０６で、エラーが有ると判定した場合（ＹＥＳ）は、ステップＳ５０８へ処理を分岐させて、提供元装置２１０との暗号通信セッションが終了し、ステップＳ５０９で本処理が終了する。
【００８３】
これに対して、ステップＳ５０６で、エラーが無いと判定した場合（ＮＯ）は、ステップＳ５０７へ処理が進められる。ステップＳ５０７では、受領用サーバ２６２Ａは、受信したエントロピー源出力をエントロピー供給制御部２５２へ提供する。ステップＳ５０８では、受領用サーバ２６２Ａは、提供元装置２１０との暗号通信セッションを終了し、ステップＳ５０９で本処理を終了させる。
【００８４】
図８（Ｂ）は、上述した第２の実施形態による情報処理システムにおける提供先装置２５０の他の例の詳細な機能ブロック図である。なお、図８（Ｂ）に示す例の機能ブロックも、図６のシーケンス図に示す処理を実行する場合に対応する。図８（Ｂ）に示す機能ブロック図では、図８（Ａ）に示した受領用サーバ２６２Ａおよび通常用サーバ２６４Ａに代えて、暗号通信サーバ２６２Ｂを含み構成される。図８（Ｂ）における暗号通信サーバ２６２Ｂは、図８（Ａ）における受領用サーバ２６２Ａおよび通常用サーバ２６４Ａの両方の機能を有し、暗号鍵生成に利用するエントロピー源が低品質エントロピー源２５６であるか、エントロピー・プール２５８であるかに応じて振舞いを切り替える。
【００８５】
図１０は、図８（Ｂ）に示す構成を備える提供先装置２５０が実行する、図６に示すシーケンス図に対応する処理を示すフローチャートである。なお、図１０に示す処理は、暗号通信サーバ２６２Ｂが実行する。図１０に示す処理は、提供元装置２１０主動で行われ、通信部２５４Ｂを介して暗号通信要求を受領したことに応答して、ステップＳ６００から開始される。ステップＳ６０１では、暗号通信サーバ２６２Ｂは、提供元装置２１０との暗号通信能力を交換する。
【００８６】
ステップＳ６０２では、暗号通信サーバ２６２Ｂは、エントロピー・プール２５８Ｂのデータ量が充分であるか否か（例えば所定の閾値以上であるか否か）を判定し、処理を分岐させる。ステップＳ６０２で、充分であると判定された場合（ＹＥＳ）は、ステップＳ６０３で、暗号通信サーバ２６２Ｂは、エントロピー・プール２５８Ｂの出力データを利用して鍵生成を行い、ステップＳ６０５へ処理を進める。これに対して、ステップＳ６０３で、充分ではないと判定された場合（ＮＯ）は、ステップＳ６０４で、暗号通信サーバ２６２Ｂは、低品質エントロピー源２５６Ｂを利用して鍵生成を行うとともに、監視ルーチンを起動する。
【００８７】
ステップＳ６０５〜ステップＳ６１１のメイン処理、および、ステップＳ６５０〜Ｓ６５４の監視ルーチンは、図９に示したステップＳ５０３〜ステップＳ５０９のメイン処理、および、ステップＳ５５０〜Ｓ５５４の監視ルーチンと同様であるため、説明を割愛する。
【００８８】
図１０に示すように、暗号通信サーバ２６２Ｂにおける暗号鍵生成には、エントロピー・プール２５８Ｂまたは低品質エントロピー源２５６Ｂが利用される。エントロピー・プール２５８Ｂに充分な出力データが蓄えられていれば、その高品質なエントロピー源出力が利用され、そうでなければ、低品質エントロピー源２５６Ｂが利用される。暗号鍵生成に低品質エントロピー源２５６Ｂが利用された場合は、図８（Ａ）における受領用サーバ２６２Ａと同様に、暗号通信サーバ２６２Ｂ内部で、エントロピー源出力の受領における通信内容が監視され、正しい手順と異なる通信を検知した場合は、通信エラーとして暗号通信セッションが終了される。
【００８９】
図１１（Ａ）は、上述した第２の実施形態による情報処理システムにおける提供先の情報処理装置２５０のさらに他の例の詳細な機能ブロック図である。なお、図１０（Ａ）に示す例の機能ブロックは、図７のシーケンス図に示す処理を実行する場合に対応する。図７に示す処理では、提供先装置２５０主動で暗号通信セッションの確立を開始するため、図１１（Ａ）に示す機能ブロック図では、図８（Ａ）に示した受領用サーバ２６２Ａおよび通常用サーバ２６４Ａに代えて、エントロピー受領用暗号通信クライアント（以下、受領用クライアントと参照する。）２６２Ｃおよび通常用暗号通信クライアント（以下、通常用クライアントと参照する。）２６４Ｃを含み構成される。
【００９０】
なお、受領用クライアント２６２Ｃは、図８（Ａ）に示した受領用サーバ２６２Ａと同様に、装置内に静的に存在する場合と、ソフトウェアにより動的にインスタンス生成される場合とがある。動的にインスタンス生成される場合は、さらに、最初に必要となる前または最初に必要になった際に生成され、以降は同じインスタンスが使われる場合と、必要になる毎にインスタンス生成され、暗号通信終了後に削除される場合とがある。受領用サーバ２６２Ａとは異なり、通常用クライアント２６４Ｃがある場合も、受領用クライアント２６２Ｃと通常用クライアント２６４Ｃとを提供元装置２１０が区別できる必要はない。
【００９１】
また、図１１（Ａ）には示していないが、暗号通信サーバなど、エントロピー供給を必要とする他のコンポーネントを備える場合もある。暗号通信サーバや通常用クライアント２６４Ｃといったエントロピー供給を必要とするコンポーネントは、提供元装置２１０から提供された出力データをエントロピー供給制御部２５２Ｃから受け取って使用することができる。
【００９２】
エントロピー供給制御部２５２Ｃは、算術乱数発生器２６０Ｃへのシード供給のようなエントロピー供給の必要が生じた場合に、要求元のコンポーネントに出力データを供給する。エントロピー・プール２５８Ｃに充分な出力データが蓄えられている場合は、そこからデータを読み出して利用する。エントロピー・プール２５８Ｃのデータ量が不十分な場合は、エントロピー供給制御部２５２Ｃは、受領用クライアント２６２Ｃを用いて提供元装置２１０からのエントロピー源出力の補充を行なった後に、エントロピー・プール２５８Ｃから出力データを読み出して利用する。エントロピー・プール２５８Ｃが無い場合は、エントロピー供給制御部２５２Ｃは、受領用クライアント２６２Ｃを用いて提供元装置２１０からのエントロピー提供を受けて、その出力データを利用する。
【００９３】
図１２は、図１１（Ａ）に示す構成を備える提供先装置２５０が実行する、図７に示すシーケンス図に対応する処理を示すフローチャートである。なお、図１２に示す処理は、受領用クライアント２６２Ｃが実行する。図１２に示す処理は、エントロピー源出力の必要が発生したことに応答して、ステップＳ７００から開始され、提供先装置２５０主動で開始される。ステップＳ７０１では、受領用クライアント２６２Ｃは、提供元装置２１０に対し暗号通信を要求する。ステップＳ７０２では、受領用クライアント２６２Ｃは、提供元装置２１０との暗号通信能力を交換する。
【００９４】
以降、ステップＳ７０３〜ステップＳ７１０のメイン処理、および、ステップＳ７５０〜Ｓ７５４の監視ルーチンは、実行主体が、受領用クライアント２６２Ｃであることを除き、図９に示したステップＳ５０２〜ステップＳ５０９のメイン処理、および、ステップＳ５５０〜Ｓ５５４の監視ルーチンと同様であるため、説明を割愛する。
【００９５】
図１１（Ｂ）は、上述した第２の実施形態による情報処理システムにおける提供先装置２５０のまたさらに他の例の詳細な機能ブロック図である。なお、図１１（Ｂ）に示す例の機能ブロックも、図７のシーケンス図に示す処理を実行する場合に対応する。図１１（Ｂ）に示す機能ブロック図では、図１１（Ａ）に示した受領用クライアント２６２Ｃおよび通常用クライアント２６４Ｃに代えて、暗号通信クライアント２６２Ｄを含み構成される。図１１（Ｂ）における暗号通信クライアント２６２Ｄは、図１１（Ａ）における受領用クライアント２６２Ｃおよび通常用クライアント２６４Ｃの両方の機能を有し、暗号鍵生成に利用するエントロピー源が低品質エントロピー源２５６であるか、エントロピー・プール２５８Ｄであるかに応じて振舞いを切り替える。
【００９６】
図１３は、図１１（Ｂ）に示す構成を備える提供先装置２５０が実行する、図７に示すシーケンス図に対応する処理を示すフローチャートである。なお、図１３に示す処理は、暗号通信クライアント２６２Ｄが実行する。図１３に示す処理は、エントロピー源出力の必要が発生したことに応答して、ステップＳ８００から開始され、提供先装置２５０主動で開始される。ステップＳ８０１では、暗号通信クライアント２６２Ｄは、提供元装置２１０に対し暗号通信を要求する。ステップＳ８０２では、暗号通信クライアント２６２Ｄは、提供元装置２１０との暗号通信能力を交換する。
【００９７】
ステップＳ８０３〜ステップＳ８１２のメイン処理、および、監視ルーチンは、図１０に示したステップＳ６０２〜ステップＳ６１１のメイン処理、および、ステップＳ６５０〜Ｓ６５４の監視ルーチンと同様であるため、説明を割愛する。
【００９８】
図１４は、複合機１００のハードウェア構成の実施形態を示す。なお、ここでは、図４（Ａ）に示した複合機１００のハードウェア構成を示すが、図４（Ｂ）に示したハイエンド複合機２１０およびローエンド複合機２５０も同様の構成を備えることができる。複合機１００は、コントローラ５２と、オペレーションパネル１５０と、ＦＣＵ（ファクシミリ・コントロール・ユニット）８４と、エンジン部８６とを含み構成される。コントローラ５２は、ＣＰＵ５４と、ＮＢ（ノースブリッジ）５８と、ＮＢ５８を介してＣＰＵ５４と接続するＡＳＩＣ６０と、システムメモリ５６とを含み構成される。ＡＳＩＣ６０は、各種画像処理を実行し、ＡＧＰ（Accelerated Graphic Port）８８を介してＮＢ５８と接続される。システムメモリ５６は、描画用メモリなどとして用いられる。
【００９９】
ＡＳＩＣ６０は、ローカルメモリ６２と、ハードディスクドライブ６４と、フラッシュメモリなどの不揮発性メモリ（以下、ＮＶ−ＲＡＭとして参照する。）６６と接続する。ローカルメモリ６２は、コピー用画像バッファや符号バッファとして用いられ、ＨＤＤ６４は、画像データ、文書データ、プログラム、フォントデータやフォームデータなどを蓄積するストレージである。ＮＶ−ＲＡＭ６６は、複合機１１０を制御するためのプログラムや各種システム情報や各種設定情報を格納する。
【０１００】
コントローラ５２は、さらにＳＢ（サウスブリッジ）６８と、ＮＩＣ（ネットワーク・インタフェース・カード）７０と、ＳＤ（Secure Digital）カード・スロット７２と、ＵＳＢインタフェース７４と、ＩＥＥＥ１３９４インタフェース７６と、セントロニクス・インタフェース７８とを含み構成され、これらはＰＣＩバス９０を介してＮＢ５８と接続される。ＳＢ６８は、図示しないＲＯＭやＰＣＩバス周辺デバイスなどとＮＢ５８とを接続するためのブリッジである。ＮＩＣ７０は、複合機１１０をインターネットやＬＡＮなどのネットワーク１０２に接続するインタフェース機器であり、ネットワークを介した指令を受付けている。ＳＤカード・スロット７２は、図示しないＳＤカードを着脱可能に装着する。ＵＳＢインタフェース７４、ＩＥＥＥ１３９４インタフェース７６およびセントロニクス・インタフェース７８は、それぞれの規格に準じたインタフェースであり、印刷ジョブなどを受付けている。
【０１０１】
オペレーションパネル１５０は、コントローラ５２のＡＳＩＣ６０と専用通信路を介して接続され、オペレータからの各種指示の入力を受付けや、画面表示を行なうためのユーザ・インタフェースを提供する。ＦＣＵ８４およびエンジン部８６は、ＰＣＩバス９２を介してＡＳＩＣ６０と接続する。ＦＣＵ８４は、Ｇ３またはＧ４といったファクシミリ通信規格に準じた通信方法を実行する。エンジン部８６は、アプリケーションが発行したプリント指令やスキャン指令を受け、画像形成処理や画像読取処理を実行する。本実施形態による複合機１１０は、ハードディスクドライブ６４やＮＶ−ＲＡＭ６６から制御プログラムを読み出し、システムメモリ５６やローカルメモリ６２が提供する作業空間に展開することにより、ＣＰＵ５４の制御の下、上述した各機能部および各処理を実現する。
【０１０２】
図１４に示すハードウェア構成において、オペレーションパネル１５０以外の構成１１０が、図４（Ａ）に示す複合機本体１１０に対応する。オペレーションパネル１５０が、操作パネル装置１５０に対応する。図１４に示す複合機では、複合機本体１１０に高品質エントロピー源が備えられており、オペレーションパネル１５０は、複合機本体１１０から提供される高品質なエントロピー源出力を利用することができるよう構成される。
【０１０３】
以上説明したように、上述した本実施形態によれば、情報処理装置が有するエントロピー源の出力情報を他の情報処理装置が利用可能とすることができる情報処理システム、情報処理方法およびプログラムを提供することができる。
【０１０４】
なお、上述した説明では、情報処理システムとして、複合機１００または複数の複合機２１０，２５０からなるシステム２００を例示して説明したが、情報処理システムは、特に限定されるものではない。他の実施形態では、情報処理システムとしては、レーザプリンタなどの画像形成装置、スキャナなどの画像読取装置、ファクシミリなどの画像通信装置、プロジェクタなどの映像投影装置、映像表示装置、サーバ装置、電子会議端末、電子黒板、携帯情報端末、撮像装置、自動販売機、医療機器、電源装置、空調システム、ガスや水道や電気などの計量装置、冷蔵庫や洗濯機といったネットワーク家庭用電化製品などの情報機器、または複数の情報機器を含むシステムを挙げることができる。
【０１０５】
また、上記機能部は、アセンブラ、Ｃ、Ｃ＋＋、Ｃ＃、Ｊａｖａ（登録商標）などのレガシープログラミング言語やオブジェクト指向プログラミング言語などで記述されたコンピュータ実行可能なプログラムにより実現でき、ＲＯＭ、ＥＥＰＲＯＭ、ＥＰＲＯＭ、フラッシュメモリ、フレキシブルディスク、ＣＤ−ＲＯＭ、ＣＤ−ＲＷ、ＤＶＤ−ＲＯＭ、ＤＶＤ−ＲＡＭ、ＤＶＤ−ＲＷ、ブルーレイディスク、ＳＤカード、ＭＯなど装置可読な記録媒体に格納して、あるいは電気通信回線を通じて頒布することができる。
【０１０６】
これまで本発明の実施形態について説明してきたが、本発明の実施形態は上述した実施形態に限定されるものではなく、他の実施形態、追加、変更、削除など、当業者が想到することができる範囲内で変更することができ、いずれの態様においても本発明の作用・効果を奏する限り、本発明の範囲に含まれるものである。
【符号の説明】
【０１０７】
５２…コントローラ、５４…ＣＰＵ、５６…システムメモリ、５８…ＮＢ、６０…ＡＳＩＣ、６２…ローカルメモリ、６４…ＨＤＤ、６８…ＳＢ、７０…ＮＩＣ、７２…ＳＤカード・スロット、７４…ＵＳＢインタフェース、７６…ＩＥＥＥ１３９４インタフェース、７８…セントロニクス・インタフェース、８４…ＦＣＵ、８６…エンジン部、８８…ＡＧＰ、９０…ＰＣＩバス、９２…ＰＣＩバス、１００，２００…情報処理システム、１０２，２０２…通信路、１１０，２１０…提供元の情報処理装置、１１２，２１２…エントロピー提供制御部、１１４，２１４…通信部、１１６，２１６…高品質エントロピー源、１１８，２１８…エントロピー・プール、１５０，２５０…提供先の情報処理装置、１５２，２５２…エントロピー供給制御部、１５４，２５４…通信部、１５６，２５６…低品質エントロピー源、１５８，２５８…エントロピー・プール、１６０，２６０…算術乱数発生器、２６２Ａ…エントロピー出力受領用暗号通信サーバ、２６２Ｂ…暗号通信サーバ、２６２Ｃ…エントロピー出力受領用暗号通信クライアント、２６２Ｄ…暗号通信クライアント、２６４Ａ…通常用暗号通信サーバ、２６４Ｃ…通常用暗号通信クライアント、
【先行技術文献】
【特許文献】
【０１０８】
【特許文献１】特表２０１３−５０２６６５号公報
【図１】
2017003900.tif 000005
【図２】
2017003900.tif 000006
【図３】
2017003900.tif 000007
【図４】
2017003900.tif 000008
【図５】
2017003900.tif 000009
【図６】
2017003900.tif 000010
【図７】
2017003900.tif 000011
【図８】
2017003900.tif 000012
【図９】
2017003900.tif 000013
【図１０】
2017003900.tif 000014
【図１１】
2017003900.tif 000015
【図１２】
2017003900.tif 000016
【図１３】
2017003900.tif 000017
【図１４】
2017003900.tif 000018