(57)【要約】      （修正有）【課題】安全なプロセス間データ通信のためのシステムおよび方法の提供。【解決手段】ユーザに対応する識別データが受信され、対称暗号鍵の生成に使用される。この対称暗号鍵は、ジョブ・データの暗号化に使用される。暗号化されたジョブ・データに関連付けされるトークンが生成される。そのトークンの有効期間に対応する満了データがトークンに関連付けされ、ストアされる。生成された対称鍵が、静的対称暗号鍵で暗号化され、その暗号化された対称鍵もトークンに関連してストアされる。プロセスが暗号化ジョブ・データを受信すると、プロセスは、トークンを検索し、満了データに基づいてそのトークンの有効性を決定する。有効なら静的鍵が検索され、暗号化された暗号鍵の平文化に使用される。平文化された暗号鍵は、ジョブ・データの平文化に使用され、その結果プロセスが、それに関連付けされた機能を平文化されたジョブ・データに対して実行する。【選択図】図１
2007325274.tif 000002
【特許請求の範囲】
【請求項１】
ジョブ・データを受信するためのジョブ・データ受信手段と、
対称鍵データを受信するための対称鍵データ受信手段と、
前記対称鍵データに従って前記ジョブ・データを暗号化するための暗号化手段と、
暗号化されたジョブ・データと一意的に関連付けされるトークン・データを生成するためのトークン生成手段と、
前記対称鍵データを暗号化して暗号化された鍵を生成するための鍵データ暗号化手段と、
前記トークン・データおよび暗号化された鍵データをストアするためのストレージ手段と、
複数のプロセスのそれぞれの中に暗号化されたデータを受信するための暗号化データ受信手段と、
前記複数のプロセスのそれぞれに従ってトークン・データおよび暗号化された鍵データを検索するための検索手段と、
前記検索されたトークン・データおよび検索された暗号化された鍵データに従って、前記複数のプロセスのそれぞれにおいて暗号化されたデータを平文化するための平文化手段と、
を含むことを特徴とするプロセス間データ通信システム。
【請求項２】
時間データを前記ストレージ手段内に受信するための時間データ受信手段と、
前記複数のプロセスのそれぞれに従って前記時間データをテストするためのテスト手段と、
前記テスト手段の出力に従って、前記平文化手段による平文化の操作を選択的に防止するための防止手段と、
を含むことを特徴とする請求項１に記載のプロセス間データ通信システム。
【請求項３】
前記時間データは、前記トークン・データに関連付けされた満了時を表すデータを含む、ことを特徴とする請求項２に記載のプロセス間データ通信システム。
【請求項４】
関連ユーザを表すユーザ・データを受信するためのユーザ・データ受信手段と、
受信したユーザ・データに従って前記対称鍵データを生成するための対称鍵データ生成手段と、
を含むことを特徴とする請求項３に記載のプロセス間データ通信システム。
【請求項５】
前記トークン生成手段は、現在時に従って前記トークン・データを生成することを特徴とする請求項４に記載のプロセス間データ通信システム。
【請求項６】
前記対称鍵データ暗号化手段は、前記対称鍵データに従って前記対称鍵データを暗号化することを特徴とする請求項５に記載のプロセス間データ通信システム。
【請求項７】
ジョブ・データを受信するステップと、
対称鍵データを受信するステップと、
前記対称鍵データに従って前記ジョブ・データを暗号化するステップと、
暗号化されたジョブ・データと一意的に関連付けされるトークン・データを生成するステップと、
前記対称鍵データを暗号化して暗号化された鍵を生成するステップと、
前記トークン・データおよび暗号化された鍵データを関連ストレージ内にストアするステップと、
複数のプロセスのそれぞれの中に暗号化されたデータを受信するステップと、
前記複数のプロセスのそれぞれに従ってトークン・データおよび暗号化された鍵データを検索するステップと、
検索されたトークン・データおよび検索された暗号化された鍵データに従って、前記複数のプロセスのそれぞれにおいて暗号化されたデータを平文化するステップと、
を含むことを特徴とするプロセス間データ通信方法。
【請求項８】
時間データを前記関連ストレージ内に受信するステップと、
前記複数のプロセスのそれぞれに従って前記時間データをテストするステップと、
前記テストの出力に従って、平文化の操作を選択的に防止するステップと、
を含むことを特徴とする請求項７に記載のプロセス間データ通信方法。
【請求項９】
前記時間データは、前記トークン・データに関連付けされた満了時を表すデータを含む、ことを特徴とする請求項８に記載のプロセス間データ通信方法。
【請求項１０】
関連ユーザを表すユーザ・データを受信するステップと、
受信したユーザ・データに従って前記対称鍵データを生成するステップと、
を含むことを特徴とする請求項９に記載のプロセス間データ通信方法。
【請求項１１】
前記トークン・データは、現在時に従って生成されることを特徴とする請求項１０に記載のプロセス間データ通信方法。
【請求項１２】
前記対称鍵データは、前記対称鍵データに従って暗号化されることを特徴とする請求項１１に記載のプロセス間データ通信方法。
【請求項１３】
ジョブ・データを受信するステップと、
対称鍵データを受信するステップと、
前記対称鍵データに従って前記ジョブ・データを暗号化するステップと、
暗号化されたジョブ・データと一意的に関連付けされるトークン・データを生成するステップと、
前記対称鍵データを暗号化して暗号化された鍵を生成するステップと、
前記トークン・データおよび暗号化された鍵データを関連ストレージ内にストアするステップと、
複数のプロセスのそれぞれの中に暗号化されたデータを受信するステップと、
前記複数のプロセスのそれぞれに従ってトークン・データおよび暗号化された鍵データを検索するステップと、
検索されたトークン・データおよび検索された暗号化された鍵データに従って、前記複数のプロセスのそれぞれにおいて暗号化されたデータを平文化するステップと、
を含むことを特徴とするコンピュータによって具体化されるプロセス間データ通信方法。
【請求項１４】
時間データを前記関連ストレージ内に受信するステップと、
前記複数のプロセスのそれぞれに従って前記時間データをテストするステップ；および、
前記テストの出力に従って、平文化の操作を選択的に防止するステップと、
を含むことを特徴とする請求項１３に記載のコンピュータによって具体化されるプロセス間データ通信方法。
【請求項１５】
前記時間データは、前記トークン・データに関連付けされた満了時を表すデータを含む、ことを特徴とする請求項１４に記載のコンピュータによって具体化されるプロセス間データ通信方法。
【請求項１６】
関連ユーザを表すユーザ・データを受信するステップと、
受信したユーザ・データに従って前記対称鍵データを生成するステップと、
を含むことを特徴とする請求項１５に記載のコンピュータによって具体化されるプロセス間データ通信方法。
【請求項１７】
前記トークン・データは、現在時に従って生成されることを特徴とする請求項１６に記載のコンピュータによって具体化されるプロセス間データ通信方法。
【請求項１８】
前記対称鍵データは、前記対称鍵データに従って暗号化されることを特徴とする請求項１７に記載のコンピュータによって具体化されるプロセス間データ通信方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プロセス間データ通信のためのシステムおよびプロセスに関し、特に、状態遷移を監視して安全な操作を検証できるように、プロセス間においてユーザの介入なく認証情報を送信するためのプロセス間データ通信システムおよびプロセス間データ通信方法に関する。
【背景技術】
【０００２】
ディジタル・コンピュータは、通常、それぞれが結果として状態遷移をもたらす１ないしは複数のプロセスまたはスレッドを実行するソフトウエアを伴って機能する。マシンの状態は、所定時のそのステータスを反映し、メモリの状態、入力／出力、機能、およびこれらの類を含む。多くのデバイスが、それらの機能のすべてまたは一部のコントロールまたは監視のためにディジタル・コンピュータに頼っている。多機能周辺デバイス等のデバイスのコントローラ・アーキテクチャは、通常、それぞれがドキュメント処理ジョブにおける特定機能を実行する複数のプロセスからなる。デバイスに入力またはそれから出力されるデータのためのセキュリティを提供するべく多くのシステムが開発されている。
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかしながら、システム内にデータが受信されるとき、および平文化されてその種の平文化済みデータが種々のプロセス間において渡されるときに脆弱性が存在する。システム、特にネットワークされた、または共有されるシステムは、ハッキングまたは不正侵入に脆弱である。許可されていないユーザがシステムを危険にさらし、プロセス間で渡されるデータを横取りできることもある。
【０００４】
ユーザがプライベートなプリント・ジョブ等の安全なドキュメント処理ジョブを要求した場合に、その種のジョブに関係するデータは、その種のデータが持続性メモリ内にストアされているいかなる時点においても暗号化されていなければならない。したがって、そのジョブの実行内の各プロセスは、処理のためにそのジョブ・データを平文化し、その後それが再度メモリ内にストアされるときにはそのジョブ・データを暗号化するためにユーザ認証または鍵情報に対するアクセスを有していなければならない。プロセス間におけるユーザ認証および鍵情報の送信は、ユーザが各プロセスに必要な情報を供給する必要性を伴うことなくトランスペアレントにかつ自動的に進行する必要がある。それに加えてジョブ・データは、プロセス間の送信の最中に情報の横取りが可能な第三者に対して保護される必要がある。またシステムは、侵入的または誤ったプロセスがプロセスまたは情報の正常な流れを中断したとき、すなわちこれは要注意の、または秘密の情報についての脆弱性を表すが、それが検出可能である必要がある。
【０００５】
本発明は、上記事情によりなされたもので、その目的は、安全なプロセス間通信のためのシステムおよび方法を提供することを目的とするものである。
【課題を解決するための手段】
【０００６】
本発明の一態様によれば、ジョブ・データを受信するためのジョブ・データ受信手段と、
対称鍵データを受信するための対称鍵データ受信手段と、
前記対称鍵データに従って前記ジョブ・データを暗号化するための暗号化手段と、
暗号化されたジョブ・データと一意的に関連付けされるトークン・データを生成するためのトークン生成手段と、
前記対称鍵データを暗号化して暗号化された鍵を生成するための鍵データ暗号化手段と、
前記トークン・データおよび暗号化された鍵データをストアするためのストレージ手段と、
複数のプロセスのそれぞれの中に暗号化されたデータを受信するための暗号化データ受信手段と、
前記複数のプロセスのそれぞれに従ってトークン・データおよび暗号化された鍵データを検索するための検索手段と、
前記検索されたトークン・データおよび検索された暗号化された鍵データに従って、前記複数のプロセスのそれぞれにおいて暗号化されたデータを平文化するための平文化手段と、
を含むことを特徴とするプロセス間データ通信システムが提供される。
【０００７】
また、本発明の別の一態様によれば、ジョブ・データを受信するステップと、対称鍵データを受信するステップと、前記対称鍵データに従って前記ジョブ・データを暗号化するステップと、暗号化されたジョブ・データと一意的に関連付けされるトークン・データを生成するステップと、前記対称鍵データを暗号化して暗号化された鍵を生成するステップと、前記トークン・データおよび暗号化された鍵データを関連ストレージ内にストアするステップと、複数のプロセスのそれぞれの中に暗号化されたデータを受信するステップと、前記複数のプロセスのそれぞれに従ってトークン・データおよび暗号化された鍵データを検索するステップと、検索されたトークン・データおよび検索された暗号化された鍵データに従って、前記複数のプロセスのそれぞれにおいて暗号化されたデータを平文化するステップと、を含むことを特徴とするプロセス間データ通信方法が提供される。
【発明の効果】
【０００８】
本発明によれば、安全なプロセス間データ通信のためのシステムであって、状態遷移を監視して安全な操作を検証できる。
【発明を実施するための最良の形態】
【０００９】
以下、本発明の実施の形態について、図面を参照しながら説明する。尚、各図において同一箇所については同一の符号を付している。
【００１０】
この発明は、安全なプロセス間通信のためのシステムおよび方法に指向されている。特にこの発明は、状態遷移を監視して安全な操作を検証できるように、プロセス間においてユーザの介入なく認証情報を送信するためのシステムおよび方法に指向されている。
【００１１】
図１を参照すると、この発明に従った安全なプロセス間通信のための全体的なシステム１００を例示した図解が示されている。図１に示されているとおり、システム１００は、コンピュータ・ネットワーク１０２として表されている分散コンピューティング環境を含む。当業者によって理解されることになろうが、コンピュータ・ネットワーク１０２は、２またはそれより多くの電子デバイスの間におけるデータの交換を可能にすることができるこの分野で周知の任意の分散通信環境である。コンピュータ・ネットワーク１０２は、たとえば限定の意図ではないが、ローカル・エリア・ネットワーク、ワイド・エリア・ネットワーク、パーソナル・エリア・ネットワーク、仮想ネットワーク、イントラネット、インターネット、またはそれらの任意の組み合わせを含む、この分野で周知の任意のコンピュータ・ネットワークである。この発明の好ましい実施態様においては、たとえば限定の意図ではないが、トークン‐リング、８０２．１１（ｘ）、イーサネット（登録商標）、またはそのほかの有線ベースまたは無線のデータ通信メカニズムといった従来的な多数のデータ転送メカニズムによって例示されているとおり、コンピュータ・ネットワーク１０２が、物理レイヤおよびトランスポート・レイヤから構成される。
【００１２】
システム１００はまた、ドキュメント処理デバイス１０４を含み、多機能周辺デバイスとして表されている。ドキュメント処理デバイス１０４は、たとえば限定の意図ではないが、電子メール、スキャン、コピー、ファクシミリ、ドキュメント管理、プリント、およびこれらの類といった多様なドキュメント処理サービスを提供するべく適切に適合されている。適切な市販ドキュメント・レンダリング・デバイスは、東芝製のｅ−Ｓｔｕｄｉｏ（商品名）シリーズの制御装置を含むがそれに限定されない。
【００１３】
本発明の１つの実施態様においては、ドキュメント処理デバイス１０４が、限定の意図ではないがファイヤワイヤ・ドライブ、ＵＳＢドライブ、ＳＤメモリカード、マルチメディアカード、ＸＤピクチャーカード、ＣＦカード、メモリスティックおよびこれらの類を含む複数のポータブル・ストレージ・メディアを受け入れるべく適切に装備される。この発明の好ましい実施態様においては、さらにドキュメント処理デバイス１０４が、タッチ‐スクリーン・インターフェース、ＬＣＤディスプレイ、またはこれらの類等の関連ユーザ‐インターフェースを含み、それを介して関連ユーザがドキュメント処理デバイス１０４と直接インタラクションすることができる。
【００１４】
ドキュメント処理デバイス１０４には、図１に例示されているとおり、コントローラ１０６が機能的に結合されている。コントローラ１０６は、ドキュメント処理デバイス１０４にコントロール機能を提供するべく適切に適合された任意のソフトウエア、ハードウエア、またはそれらの組み合わせである。この発明の好ましい実施態様によれば、コントローラ１０６がさらに、複数のプロセスを包含するアーキテクチャを含み、それにおいては各プロセスがドキュメント処理操作における特定の機能を実行する。さらにこの発明の好ましい実施態様によれば、コントローラ１０６が安全なドキュメント処理能力も含む。上記に加えてコントローラ１０６は、さらに、暗号鍵を生成し、かつそれに対するアクセスを管理するべく適切に適合されたセキュリティ・ライブラリを組み込んでいる。コントローラ１０６は、図１に示されているが、この分野で周知の複数のプロセスを実行することが可能な任意のコンピューティング・デバイス上で採用され得る。コントローラ１０６の機能は、図２および３を参照して下記にさらに詳細を後述する。
【００１５】
好ましくはデータ・ストレージ・デバイス１０８等の、ドキュメント処理デバイス１０４上で実行するプロセスに対するストレージ・サービス、ユーザ認証情報、およびそれらの類を提供するべく適切に適合された持続性データ・ストレージがコントローラ１０６に通信結合されている。データ・ストレージ・デバイス１０８は、この分野で周知の任意の大容量ストレージ・デバイスであり、たとえば限定の意図ではないが、ハードディスク・ドライブ、そのほかの磁気ストレージ・デバイス、光学ストレージ・デバイス、フラッシュ・メモリ・デバイス、またはそれらの任意の組み合わせを含む。この発明の１つの実施態様によれば、ドキュメント処理デバイス１０４は、適切な通信リンク１１０を介してコンピュータ・ネットワーク１０２とデータ通信する。この発明に従って採用される適切な通信リンク１１０は、ワイマックス（ＷｉＭａｘ）、８０２．１１ａ、８０２．１１ｂ、８０２．１１ｇ、８０２．１１（ｘ）、ブルートゥース（Ｂｌｕｅｔｏｏｔｈ（登録商標））、公衆交換電話網、プロプラエタリ通信ネットワーク、赤外線、光、またはそのほかの任意の適切なこの分野で周知の有線または無線のデータ送信通信を含む。
【００１６】
図１に例示されているシステム１００は、さらに少なくとも１つのクライアント・デバイス１１２を含む。好ましくはこのクライアント・デバイス１１２が、適切な通信リンク１１４を介してコンピュータ・ネットワーク１０２と通信結合される。クライアント・デバイス１１２は、例示目的だけのためにラップトップ・コンピュータとして図１に図示されている。図１に示されているクライアント・デバイス１１２は、この分野で周知の任意のパーソナル・コンピューティング・デバイスを表し、それにはたとえば限定の意図ではないが、コンピュータ・ワークステーション、パーソナル・コンピュータ、携帯情報端末、ウェブ適合携帯電話、スマートフォン、またはそのほかの、多機能周辺デバイスに対する電子ドキュメント・データの生成および／または送信を適切に行うことができるウェブ適合電子デバイスが含まれる。通信リンク１１４は、この分野で周知の任意の適切なデータ通信のチャンネルであり、無線通信、たとえば、ブルートゥース（Ｂｌｕｅｔｏｏｔｈ（登録商標））、ワイマックス（ＷｉＭａｘ）、８０２．１１ａ、８０２．１１ｂ、８０２．１１ｇ、８０２．１１（ｘ）、プロプラエタリ通信ネットワーク、赤外線、光、公衆交換電話網、または任意の適切な無線データ送信システム、またはこの分野で周知の有線通信を含む。好ましい実施態様においては、クライアント・デバイス１１２が、ドキュメント処理要求、またはジョブ要求を生成するべく適切に適合されている。
【００１７】
ここで図２を参照すると、図１にコントローラ１０６として示されていた適切なコントローラ２００の代表的なアーキテクチャが例示されており、その上でこのシステム１００の動作が遂行される。そこには、適切に中央処理ユニットからなるプロセッサ２０２が含まれる。しかしながら、プロセッサ２０２を、互いに調和して働く複数のプロセッサから好適に構成できることが認識されるであろう。またここには、ＢＩＯＳ機能、システム機能、システム構成データ、およびコントローラ２００の動作のために使用されるそのほかのルーチンまたはデータ等の静的または固定のデータまたはインストラクションのために好適に使用される不揮発性または読み出し専用メモリ２０４も含まれる。
【００１８】
またコントローラ２００内には、ダイナミック・ランダム・アクセス・メモリ、スタティック・ランダム・アクセス・メモリ、または任意のそのほかの適切なアドレス可能かつ書き込み可能なメモリ・システムから適切に構成されるランダム・アクセス・メモリ２０６が含まれている。ランダム・アクセス・メモリは、プロセッサ２０２によって達成されるデータ・ハンドリングおよびアプリケーションに関連付けされるデータ・インストラクションのためのストレージ・エリアを提供する。
【００１９】
ストレージ・インターフェース２０８は、コントローラ２００に関連付けされるデータの、不揮発性、大容量、または長期ストレージのためのメカニズムを適切に提供する。ストレージ・インターフェース２０８は、任意の適切なアドレス可能またはシリアル・ストレージ、たとえば２１６として示されているようなディスク、光学、テープ・ドライブ、およびその類をはじめ、任意の適切なストレージ・メディア等の大容量ストレージを適切に使用する。
【００２０】
ネットワーク・インターフェース・サブシステム２１０は、関連ネットワークからの入力および出力を適切にルーティングし、コントローラ２００がほかのデバイスと通信することを可能にする。ネットワーク・インターフェース・サブシステム２１０は、デバイス２００の外側にあるデバイスを伴う１ないしは複数の接続と適切にインターフェースする。例によれば、イーサネット（登録商標）、トークン・リング、およびその類といった固定または有線ネットワークとのデータ通信のための少なくとも１つのネットワーク・インターフェース・カード２１４、およびワイファイ（ＷｉＦｉ）、ワイマックス（ＷｉＭａｘ）、無線モデム、セルラ・ネットワーク、または任意の適切な無線通信システム等の手段を経由する無線通信のために適切に適合された無線インターフェース２１８が図示されている。しかしながら、ネットワーク・インターフェース・サブシステムは、任意の物理または非物理データ転送レイヤまたはプロトコル・レイヤを適切に使用することが認識されるものとする。例示においては、ネットワーク・インターフェース２１４が、適切にローカル・エリア・ネットワーク、ワイド・エリア・ネットワーク、またはそれらの組み合わせからなる物理ネットワーク２２０を経由するデータの相互交換のために相互接続されている。
【００２１】
プロセッサ２０２、読み出し専用メモリ２０４、ランダム・アクセス・メモリ２０６、ストレージ・インターフェース２０８、およびネットワーク・インターフェース・サブシステム２１０の間におけるデータ通信は、バス２１２によって例示されているようなバス・データ転送メカニズムを経由して適切に達成される。
【００２２】
またバス２１２とデータ通信するものにドキュメント・プロセッサ・インターフェース２２２がある。ドキュメント・プロセッサ・インターフェース２２２は、１ないしは複数のドキュメント処理操作を実行するハードウエア２３２との接続を適切に提供する。その種の操作は、コピー・ハードウエア２２４を介して達成されるコピー、スキャン・ハードウエア２２６を介して達成されるスキャン、プリント・ハードウエア２２８を介して達成されるプリント、およびファクシミリ・ハードウエア２３０を介して達成されるファクシミリ通信を含む。ここで認識する必要があるが、コントローラ２００は、上記のドキュメント処理操作のうちのいずれかまたはすべてを適切に行う。１を超えるドキュメント処理操作を達成するシステムは、一般に多機能周辺または多機能デバイスと呼ばれる。
【００２３】
このシステム１００の機能は、ドキュメント処理デバイスに関連付けされたインテリジェント・サブシステムとして図２のコントローラ２００を含む適切なドキュメント処理デバイス上において達成される。図３の例示においては、好ましい実施態様のコントローラ機能３００がドキュメント処理エンジン３０２を含む。適切なコントローラ機能は、好ましい実施態様においては東芝製のｅ−Ｓｔｕｄｉｏ（商品名）シリーズシステムに組み込まれているものになる。図３は、当業者によって認識されるとおり、ソフトウエアおよびオペレーティング・システム機能に関連する図２のハードウエアの適切な機能を例示している。
【００２４】
好ましい実施態様においては、エンジン３０２が、プリント操作、コピー操作、ファクシミリ操作、およびスキャン操作を可能にする。この機能は、業界選り抜きのドキュメント処理周辺となった多機能周辺としばしば関連付けされる。しかしながら、このコントローラがこの種の能力をすべて有していなくてもよいことは認識されよう。コントローラは、また、上にリストしたドキュメント処理操作のサブセットである専用またはより限定された目的のドキュメント処理デバイス内においても好適に採用される。
【００２５】
エンジン３０２は、ユーザ‐インターフェース・パネル３１０と適切にインターフェースされ、このパネルが、ユーザまたは管理者がエンジン３０２によってコントロールされる機能にアクセスすることを可能にする。アクセスは、適切にコントローラに備わるインターフェースを介して、またはリモートのシンまたはシック・クライアントを介してリモートでなされる。
【００２６】
エンジン３０２は、プリンタ機能３０４、ファクシミリ機能３０６、およびスキャン機能３０８とデータ通信する。これらのデバイスは、プリント、ファクシミリ送受信、およびコピーまたは電子バージョンの生成のためのドキュメントのイメージの確保において使用するためのドキュメントのスキャンの実際の操作を容易にする。
【００２７】
ジョブ・キュー３１２は、プリンタ機能３０４、ファクシミリ機能３０６、およびスキャン機能３０８と適切にデータ通信する。ビットマップ、ページ記述言語またはベクトル・フォーマット、およびそれらの類といった多様なイメージ形式が、スキャン機能３０８から、その後に続くハンドリングのためにジョブ・キュー３１２を経由して適切に中継されることが認識されるであろう。
【００２８】
またジョブ・キュー３１２は、ネットワーク・サービス３１４ともデータ通信する。好ましい実施態様においては、ジョブ・コントロール、ステータス・データ、または電子ドキュメント・データが、ジョブ・キュー３１２とネットワーク・サービス３１４の間で交換される。したがって、任意の適切なシンまたはシック・クライアントとなるクライアント側ネットワーク・サービス３２０を経由するコントローラ３００に対するネットワーク・ベースのアクセスのために適切なインターフェースが提供される。好ましい実施態様においては、このウェブ・サービス・アクセスが、ハイパーテキスト・トランスファ・プロトコル、ファイル・トランスファ・プロトコル、ユニフォーム・データ・ダイアグラム・プロトコル、またはそのほかの適切な交換メカニズムを介して適切に達成される。またネットワーク・サービス３１４は、好適に、ＦＴＰ、電子メール、テルネット（ＴＥＬＮＥＴ）、またはこれらの類を介した通信のためにクライアント側サービス３２０とのデータ相互交換も提供する。このようにコントローラ機能３００は、多様なネットワーク・アクセス・メカニズムを介して電子ドキュメントおよびユーザ情報の出力または受信を容易にする。
【００２９】
ジョブ・キュー３１２は、イメージ・プロセッサ３１６とのデータ通信も好適に行う。イメージ・プロセッサ３１６は、適切に、ラスタ・イメージ処理、ページ記述言語インタプリタ、または任意の適切な、プリント３０４、ファクシミリ３０６、またはスキャン３０８等のデバイス・サービスとの相互交換に、より良好に適したフォーマットに対する電子ドキュメントの相互交換のためのメカニズムになる。
【００３０】
最後に、ジョブ・キュー３１２はパーサ３１８とデータ通信し、このパーサがクライアント・デバイス・サービス３２２等の外部デバイスからプリント・ジョブ言語ファイルを受信するべく適切に機能する。クライアント・デバイス・サービス３２２は、プリント、ファクシミリ送信、またはそのほかの適切な、コントローラ機能３００によるハンドリングが有利となる電子ドキュメントの入力を適切に含む。パーサ３１８は、受信された電子ドキュメント・ファイルを解釈し、前述した機能およびコンポーネントに関連するハンドリングのためにジョブ・キュー３１２に中継するべく機能する。
【００３１】
動作においては、ドキュメント処理デバイス１０４がクライアント・デバイス１１２から、要求されたドキュメント処理操作を表すジョブ・データを受信する。好ましくはこのジョブ・データが、たとえば限定の意図ではないが、プリント、コピー、ファクシミリ、スキャン、スキャンに続く電子メール、スキャンに続くストア、ドキュメント管理、またはこれらの類等の選択されたドキュメント処理操作を表すデータを含む。より好ましくはこのジョブ・データが、安全なドキュメント処理要求を表し、それによってドキュメント処理デバイス１０４に、そのジョブ・データのプライバシを維持すること、およびその種のデータが許可されていないユーザによって見られることを防止することを要求する。当業者は認識することになろうが、ドキュメント処理デバイス１０４によって受信されるジョブ・データが安全なドキュメント処理操作に対応するとき、それに関連付けされたデータは、それが持続性メモリ内に、たとえばプロセス間にデータ・ストレージ・デバイス１０８内にストアされるときは常に暗号化されることが求められる。ジョブ・データの受信に加えてドキュメント処理デバイス１０４は、受信されたドキュメント処理要求を提出したユーザに関連付けされたユーザ識別データを受信する。この発明の１つの実施態様によれば、この識別データが、たとえば限定の意図ではないが、ユーザＩＤ／パスワードの組み合わせ、パスワード、またはこの分野で周知のそのほかの適切なユーザ識別データを含む。
【００３２】
コントローラ１０６は、その上に常駐するセキュリティ・ライブラリ・コンポーネントを介して、受信されたユーザ識別データを使用して一意的な対称暗号鍵を生成する。コントローラ１０６は、その後、任意の適切な手段を介して、以下において考察するトークンが有効に存続する時間期間を表す満了データを受信する。この満了データは、ネットワーク管理者によってあらかじめ決定済み、プリセットされた時間期間、このトークンが関連付けされる操作のタイプ、およびこれらの類とすることが可能である。その後このジョブ・データがコントローラ１０６によって、対称暗号鍵を使用して暗号化され、その後、暗号化されたジョブ・データおよび満了データに関連付けされたトークンが生成される。この発明の１つの実施態様においては、トークンが現在時に従って生成される。静的かつランダムな対称暗号鍵が、その後コントローラ１０６によって検索され、ユーザ識別データから生成された対称鍵の暗号化に使用される。好ましくは、この静的な対称鍵がドキュメント処理デバイス１０４のスタートアップの間にコントローラ１０６によって生成される。この発明の好ましい実施態様においては、この静的な対称鍵が、ドキュメント処理デバイス１０４が機能している期間にわたって種々のドキュメントのために生成されたほかのすべての暗号鍵の暗号化に使用される。シャットダウンおよびリスタート時には、新しい静的な鍵が、ドキュメント処理操作の間における使用のためにコントローラ１０６によって生成される。その種の実施態様においては、静的な対称鍵が好適にデータ・ストレージ・デバイス１０８内にストアされ、それによってその後に続く操作のために利用可能になる。その後、トークンおよび暗号化された鍵データは、続く処理によるその後の使用のために関連ストレージ１０８内にストアされる。
【００３３】
プロセスが暗号化されたジョブ・データを受信するとき、それに関連付けされたトークンが、暗号化された鍵データとともに関連ストレージ１０８から検索される。コントローラ１０６上の暗号化されたデータを受信したプロセスは、その後、そのトークンに関連付けされた満了データを検索し、そのトークンが失効しているか否かの決定が行われる。満了データによって割り当てられた時間期間が経過しているとき、すなわち失効しているときは、そのプロセスに、暗号化されたジョブ・データを平文化する能力が与えられず、そのドキュメント処理操作が終了する。コントローラ１０６が、現在のプロセスを介して、そのトークンが失効していないと決定すると、静的な対称鍵が使用されて、ユーザ識別データから生成された暗号化済みの対称鍵が平文化される。生成された一意的な対称鍵が平文化されると、その鍵を使用してジョブ・データが平文化される。その後、現在のプロセスに関連付けされた機能が、そのジョブ・データに対して実行される。その後そのジョブ・データにアクセスする追加のプロセスが残っているか否かの決定がなされる。追加のプロセスが残っていないときには、このドキュメント処理操作が完了する。その後に続くプロセスが処理されるべく残存している場合には、最近完了したプロセスによって出力されたジョブ・データが、その後、一意的な対称暗号鍵を使用して暗号化され、その結果、次のプロセスが暗号化されたデータを受信する。次のプロセスは、その後、トークン・データおよび暗号化されたデータを検索し、それらに対して上に述べたとおりに進む。この発明の１つの実施態様によれば、最初のプロセスが、その関連機能の完了に成功すると、トークン・データ、暗号化された鍵データ、およびジョブ・データを次のプロセスに送信する。
【００３４】
以上の、図１、２、および３に示されているシステム１００およびコンポーネントは、図４および図５に例示されている方法とともに考察するとより良好に理解されるであろう。図４を参照すると、この発明に従った安全なプロセス間通信のための方法に従ったトークンの生成のための方法を例示したフローチャート４００が示されている。ステップ４０２において開始すると、コントローラ１０６が、ドキュメント処理デバイス１０４を介して関連ユーザからジョブ・データを受信する。好ましくはジョブ・データが、コンピュータ・ネットワーク１０２を介してクライアント・デバイス１１２から受信されるが、ユーザはドキュメント処理デバイス１０４の近隣の関連ユーザ‐インターフェースを介してジョブ・データを提出できる。この発明の好ましい実施態様によれば、このジョブ・データが、選択されたドキュメント処理操作、電子ドキュメント・データ、ドキュメント処理データ、またはこれらの類を表すデータを含む。コントローラ１０６は、その後ステップ４０４において、関連ユーザからユーザ識別データを受信する。ユーザ識別は、たとえば限定の意図ではないが、ユーザＩＤ／パスワードの組み合わせ、バイオメトリック識別、およびこの分野で周知のそのほかのユーザ識別証を含む。
【００３５】
セキュリティ・ライブラリは、コントローラ１０６上に常駐するコンポーネントであるが、その後ステップ４０６において、関連使用から受信されたユーザ識別データを使用して対称暗号鍵を生成する。暗号鍵の生成は、暗号鍵を生成することのできるこの分野で周知の任意の手段を介して適切に達成される。ステップ４０８においては、生成されたトークンの有効時間期間を表す満了データがコントローラ１０６によって受信される。この満了データは、ネットワーク管理者によってあらかじめ設定済みとすること、ドキュメント処理デバイスのセットアップの間にプリセットされること、またはこれらの類が可能である。ジョブ・データは、その後ステップ４１０において、生成された暗号鍵を使用して暗号化され、暗号化済みジョブ・データがもたらされる。暗号化済みジョブ・データおよび満了データに関連付けされたトークンが、その後ステップ４１２において生成される。１つの実施態様においては、このトークンが現在時を使用して生成される。その後ステップ４１４において、ランダムな静的暗号鍵が検索される。ユーザ識別データから生成された暗号鍵が、その後ステップ４１６において、検索された静的暗号鍵を使用して暗号化される。暗号化された暗号鍵およびトークンは、その後ステップ４１８において関連データ・ストレージ１０８内にストアされる。
【００３６】
この発明は、関連ユーザからの各ドキュメント処理要求についてトークンを生成することができる。言い換えるとこの発明によれば、最初に、ユーザＩＤ／パスワードの組み合わせの形式でユーザ識別データ、トークンに関連付けされる有効期間、およびジョブ・データが受信される。その後、続くプロセスによって使用されることの可能な暗号化されたジョブ・データおよび暗号化されたトークンがともに出力される。前述したとおり、コントローラ１０６上に常駐するセキュリティ・ライブラリがこのユーザＩＤ／パスワードの組み合わせを使用して、ジョブ・データの暗号化に使用される一意的な対称鍵を生成する。そのほかのユーザ情報および満了データに加えて、この一意的な暗号鍵が静的なランダム対称鍵を使用して暗号化され、暗号化されたブロブとして関連ストレージ１０８内にストアされる。このブロブは、その後、暗号化されたデータのハッシュを基礎として文字列にマップされる。ここで使用するブロブという用語は、まとめてグループ化される異なる暗号化エンティティ、たとえば鍵、暗号化されたデータ、およびそれらの類を包含する構造を言う。内部データのハッシュは、一意的なトークンとして機能する。したがってプロセスがユーザＩＤ／パスワードを提供するときには、それが、暗号化されたデータおよびその一意的なトークン文字列を受け取る。その後プロセスは、その後に続くプロセスにその文字列を渡すことが可能であるが、安全なデータに対するアクセスを希望するそれらのその後に続くプロセスに、暗号化されたデータおよび一意的なトークン文字列を渡すことを要求する。次のプロセスは、そのトークンの満了をチェックした後、暗号化されたデータのハッシュを生成してトークンを再生成し、再生成したトークンと提供されたトークンを比較する。検証が成功すると、暗号化されたブロブがメモリ・マップ上にロケートされ、静的な鍵によって実際のデータ暗号鍵を復元するべく平文化される。その後、この暗号鍵がデータの平文化に使用される。
【００３７】
上記の説明は、図５に示されているトークンを使用するための方法とともに考察するとより良好に理解されるであろう。図５を参照すると、この発明に従った安全なプロセス間通信のための方法に従ったトークンを使用するための方法を例示したフローチャート５００が示されている。ステップ５０２において開始すると、暗号化されたデータが、この分野で周知の任意の適切な手段を介してプロセス内に受信される。受信された暗号化されたデータに関連付けされたトークン・データおよび暗号化された鍵データが、その後ステップ５０４において任意の適切な手段を介して検索される。その後ステップ５０６においてそのトークンに関連付けされた満了データが検索され、フローが、そのトークンが失効しているか否かを決定するためのステップ５０８に進む。コントローラ１０６が、ステップ５０８において、そのトークンがすでに有効でないこと、すなわちそのトークンが失効していると決定すると、フローがステップ５１０に進み、それにおいてプロセスは、暗号化された鍵データを平文化するための静的な鍵に対するアクセスが拒否される。
【００３８】
ステップ５０８において、そのトークンが有効であること、すなわちそのトークンがまだ失効していないと決定されると、フローがステップ５１２に進み、それにおいて暗号化された一意的な対称鍵が、静的な暗号鍵を使用し、コントローラ１０６のセキュリティ・ライブラリ・コンポーネントによって平文化される。一意的な対称鍵の平文化の後はフローがステップ５１４に進み、それにおいてジョブ・データが、その一意的な対称鍵を使用して平文化される。ジョブ・データが平文化されると、ステップ５１６において、ドキュメント処理デバイス１０４上のプロセスが、それに関連付けされている機能をその平文化されたジョブ・データに対して実行する。その後ステップ５１８において、そのドキュメント処理操作内に追加の処理が残存しているか否かの決定がなされる。追加のプロセスが残存していないときには、その操作が終了する。１ないしは複数のプロセスが残存しているときにはフローがステップ５２０に進み、それにおいて以前に完了されたプロセスからもたらされたデータが、一意的な対称鍵を使用して暗号化される。この暗号化されたデータは、その後ステップ５２２において次のプロセスによって受け取られ、次のプロセスは、ステップ５０４においてトークン・データおよび暗号化された鍵データを検索する。その後、前述した方法に従ってそれに対する操作が続けられる。
【００３９】
この発明は、ソース・コード、オブジェクト・コード、ソースと部分的にコンパイルされたオブジェクト・コードの中間のコードの形式、またはこの発明の実装における使用に適した任意の別の形式のコンピュータ・プログラムに及ぶ。コンピュータ・プログラムは、適切に、スタンドアロン・アプリケーション、ソフトウエア・コンポーネント、スクリプト、またはほかのアプリケーションに対するプラグ‐インとすることができる。この発明を埋め込んだコンピュータ・プログラムは、コンピュータ・プログラムを伝達することができる任意のエンティティまたはデバイスとなるキャリア：たとえば、ＲＯＭまたはＲＡＭ等のストレージ・メディア、ＣＤ‐ＲＯＭ等の光学記録メディア、またはフロッピー（登録商標）ディスク等の磁気記録メディア上において好適に具体化される。このキャリアは、電気もしくは光ケーブルによって、または無線もしくはそのほかの手段によって伝達される電気または光信号等の任意の伝達可能なキャリアである。コンピュータ・プログラムは、インターネットを介してサーバから適切にダウンロードされる。またコンピュータ・プログラムを集積回路内に埋め込むことも可能である。
【００４０】
なお、本発明は上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。
【図面の簡単な説明】
【００４１】
【図１】本発明に係るプロセス間通信システムの全体的なシステム図である。
【図２】本発明に係るプロセス間通信システム内における使用のためのコントローラ・ハードウエアを例示したブロック図である。
【図３】本発明に係るプロセス間通信システム内における使用のためのコントローラを例示した機能ブロック図である。
【図４】本発明に係るプロセス間通信方法に従ったトークンの生成のための方法を例示したフローチャートである。
【図５】本発明に係るプロセス間通信方法に従ったトークンを使用するための方法を例示したフローチャートである。
【符号の説明】
【００４２】
１００：通信システム、１０２：コンピュータ・ネットワーク、１０４：ドキュメント処理デバイス、１０６：コントローラ、１０８：データ・ストレージ・デバイス、１１０：通信リンク、１１２：クライアント・デバイス。
【図１】
2007325274.tif 000003
【図２】
2007325274.tif 000004
【図３】
2007325274.tif 000005
【図４】
2007325274.tif 000006
【図５】
2007325274.tif 000007