説明

ライセンス管理・認証方式

【課題】ドングル等の特殊な専用ハードウェアを用意しなくとも、特定ハードウェアにインストールされるソフトウェアのライセンス管理を可能とし、不正コピーを防いでインストールされたハードウェア数に応じたライセンス料の徴収を可能とする。
【解決手段】外部コントローラ103は、検知した初期化要求に基づいて、ハードウェア固有情報を特定キーとし、初期化情報の一部の情報を復号化し、得られた復号化データと、少なくとも一つの内部に記憶してある初期化パスコード情報が一致するかどうかを調べ、一致した初期化パスコードに基づく動作モードへと移行する制御を行なうと共に、初期化パスコード情報と一致しない場合には、申請フォーマットデータにハードウェア固有情報をマージし、得られた申請データを画像処理装置104へ出力する制御を行なう。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ソフトウェアのライセンス認証および管理方式に関し、一例として、画像処理装置と所定の通信プロトコルに従い通信し、画像データおよびプリント、スキャン等のジョブの送受信を行なうことの可能であって、画像処理装置ではない外部の装置にインストールされ実行される、通信ソフトウェアモジュールにおけるライセンス管理・認証方式に関する。
【背景技術】
【0002】
従来より、複写機などの画像処理装置に接続される、外部コントローラ装置が提供されている。この外部コントローラ装置は、例えば、ホストコンピュータのプリント・ドライバで生成されたPDLプリントジョブをネットワーク経由で受信し、PDL言語を解釈してプリントジョブをページ画像に展開し、ジョブコントロールコマンドと共に画像処理装置に送って、用紙媒体上に画像を形成するという目的で使用されている。
【0003】
近年、複写機はMFP化してきており、実行することのできるジョブも、リモートコピーやBox画像の送信など、多種多様になってきている。これに伴い、外部装置との通信I/Fプロトコルも複雑化してきており、特定目的の外部装置を作成する場合、複雑なプロトコルの中から目的とする動作をさせるコマンドを選択するだけでも、プロトコルに精通している必要があって、困難となってきている。
【0004】
そのため、特定目的に特化したより簡単なプロトコルを、外部コントローラ装置ベンダーに提供する目的で、外部コントローラOS上で動作するプロトコル変換モジュールが開発された。これにより、外部コントローラ装置ベンダーは、複雑な直MFPプロトコルを理解すること無しに、目的とする機能を提供する外部コントローラ装置を速やかに開発できるようになり、また複写機メーカーとしては、対自社製機器・ソフトの通信のみで使用する、特定目的以外の外部ベンダーに触らせたくないコマンドを使えないようにするなど機密保持することを可能とするとともに、このプロトコル変換機能を外部装置側で実行させることにより、複写機CPUに余分な負荷を与えず処理を最適化することが可能となった。
【0005】
パソコンなどの高機能化および普及に伴って、汎用ハードウェアの機能は年々進化してきており、コストは下がってきている。このため、上記の外部コントローラ装置としては、そのハードウェアに汎用ハードウェアまたはその部分的カスタマイズ品を使用し、汎用OSで動作するシステムが採用されるようになってきている。従って、上記プロトコル変換モジュールは、汎用OS上で動作するバイナリ・ソフトモジュールとして、ベンダーに提供されることが多い。
【0006】
しかしながら、汎用ハードウェア汎用OSの外部コントローラ装置は、一方で、第三者に解析されやすいという面も持っている。そのため、例えばHDD装置等に格納された上記のプロトコル変換モジュールが、提供メーカーの望まない第三者によって取り出され、流用されるという危険性がある。
【0007】
また、メーカーが提供したベンダーであっても、上記モジュールを搭載した装置の実数をメーカー側が把握し辛く、これによって正確なライセンス料の徴収を妨げるという問題点があった。
【0008】
このような問題を解決しライセンス管理をするための方法としては、例えばメーカーがインターネット上に認証サーバを立て、上記モジュールが外部ネットワークを介して認証サーバに接続し、ライセンス認証するという手段がある。
【0009】
しかしながら、上記のような外部コントローラ装置は、複写機などの画像処理装置に対する特定機能を提供するという特性上、インターネットに接続可能なネットワーク環境で使用されるとは限らず、装置を使用するユーザの社内LANなどのローカルネットワーク環境で使用されることも多い。
【0010】
また、一般的なソフトウェアのライセンス管理の方法として、インストール後に特定のKeyコードを入力させる手段も一般的にだが、Keyコードごとコピーされた場合にはなんら有効性を発揮しない。
【0011】
また、特許文献1に提案される方式においては、外部コントローラ装置の持つ、例えばセントロニクス仕様パラレルI/Fなどの、画像処理装置との通信には使用しない特定I/Fにドングルという特殊な装置を接続し、ドングルが接続されているときにしか、特定機能が動作しないようにすると共に、メーカーからのドングルの提供によってライセンス数を管理するという方法も提案されている。
【特許文献1】特開2000−137590号公報
【発明の開示】
【発明が解決しようとする課題】
【0012】
しかし、この方式においては、外部コントローラ装置は、空いているI/Fを提供するためハードウェアコストアップにもなり、提供できるドングルが、外部コントローラ装置ベンダーとして使用したいI/Fとバッティングする可能性もある。さらに提供メーカーとしては、ドングル用のデバイスドライバソフトウェアも合わせて開発し、提供する必要があって、ハードウェアに近い部分の制御を行なうドライバ・ソフトウェアが、外部ベンダーのハードウェア制御ソフトと不整合を起こす可能性も高くなる、といった問題点があった。
【課題を解決するための手段】
【0013】
本発明は、上記の問題点を解消するための、
画像処理装置と所定の通信ハードウェアおよび通信プロトコルを用いて通信を行なうソフトウェアモジュールのライセンス管理・認証方式であって、
初期化要求を検知する初期化要求検知手段と、
初期化要求に付随する初期化情報を読み取る初期化情報読み取り手段と、
少なくとも一つの初期化パスコード情報を記憶しておく初期化パスコード記憶手段と、
前記ソフトウェアモジュールがインストールされたハードウェアに固有の情報を読み取るハードウェア固有情報読み取り手段と、
特定キーによって暗号化された暗号化データを前述の特定キーを用いて暗号化される前の状態に復号化する復号化手段と、
前述の初期化情報の少なくとも一部の情報を得るための申請フォーマットデータを記憶する申請フォーマットデータ記憶手段と、
前述の申請フォーマットデータ記憶手段より前述の申請フォーマットデータを読み出し、所定のデータとマージする申請データマージ手段とを備え、
前述の初期化要求検知手段によって検知した初期化要求に基づき、前述のハードウェア固有情報読み取り手段によって得られたハードウェア固有情報を前述の特定キーとし、前述の初期化情報読み取り手段によって読み取られた初期化情報の一部の情報を、前述の復号化手段によって復号化し、得られた復号化データと前述の少なくとも一つの初期化パスコード情報が一致するかどうかを調べ、一致した初期化パスコードに基づく動作モードへと移行する制御を行なうと共に、
前述の復号化データが前述の初期化パスコード情報と一致しない場合には、前述の申請データマージ手段によって、前述の申請フォーマットデータに前述のハードウェア固有情報をマージし、得られた申請データを画像処理装置へ出力する制御を行なうことを特徴とする。
【0014】
また、これに加え、前述のソフトウェアモジュールにおける前述の初期化要求受信手段とは、他のソフトウェアまたは装置より、所定の通信インターフェースおよびプロトコルを持って送信される初期化要求コマンドを受信する初期化コマンド受信手段であることを特徴とする。
【0015】
また、これに加え、前述の初期化情報読み取り手段とは、前述の初期化要求コマンドに付随するパラメータを読み取る初期化要求コマンドパラメータ読み取り手段であることを特徴とする。
【0016】
あるいは、これに加え、前述の初期化要求検知手段によって検知した初期化要求とは、前述のソフトウェアモジュール自体が起動されることであることを特徴とする。
【0017】
あるいは、これに加え、前述の初期化情報読み取り手段とは、前述のソフトウェアモジュールの管理するメモリ装置内部に保持される初期化情報データを読み出すメモリ読み出し手段であることを特徴とする。
【0018】
また、これらに加え、前述のハードウェア固有情報読み取り手段とは、前述のソフトウェアモジュールが使用する通信I/Fハードウェアの固有情報であることを特徴とする。
【0019】
また、これらに加え、前述の申請フォーマットデータ記憶手段に記憶される前述の申請フォーマットデータとは、ビットマップ画像形式の画像データであって、前述の申請データマージ手段とは、前述のハードウェア固有情報を所定のビットマップ画像に変換し、前記申請フォーマットデータのビットマップ画像とマージして一つのビットマップ画像とする手段であることを特徴とする。
【0020】
あるいは、これらに加え、前述の申請フォーマットデータ記憶手段に記憶される前述の申請フォーマットデータとは、ビットマップ画像形式に展開可能なPDL言語で記述されたPDLデータであって、
前述の申請データマージ手段とは、前述のハードウェア固有情報を所定のPDL言語の記述方式に則って記述し、前記申請フォーマットデータのPDLデータとマージして一つのPDLデータとする手段であることを特徴とする。
【0021】
また、これらに加え、前述の申請データを画像処理装置へ出力する制御とは、前述の申請データマージ手段によって得られた申請データを、プリントジョブとして所定のコマンドシーケンスと共に画像処理装置へと出力する制御であることを特徴とする。
【0022】
あるいは、これらに加え、前述の申請データを画像処理装置へ出力する制御とは、前述の申請データマージ手段によって得られた申請データを、特定の送信宛先を含むFAXジョブとして所定のコマンドシーケンスと共に画像処理装置へと出力する制御であることを特徴とする。
【0023】
あるいは、これらに加え、前述の申請データを画像処理装置へ出力する制御とは、前述の申請データマージ手段によって得られた申請データを、特定の送信宛先を含むE−mail送信ジョブとして所定のコマンドシーケンスと共に画像処理装置へと出力する制御であることを特徴とする。
【0024】
また、これらに加え、前述の画像処理装置とは、MFPタイプあるいはSFPタイプの複写機装置またはプリンタ装置であることを特徴とする。
【0025】
あるいは、これらに加え、前述の画像処理装置とは、ネットワーク上に存在する前述の申請データを解釈する機能を持ったサーバ装置であることを特徴とする。
【発明の効果】
【0026】
本発明によれば、特別なライセンス管理用ハードウェアを用意すること無しに、外部コントローラ装置のハードウェア1台につき、プロトコル変換モジュールの1ライセンスを管理することが可能となり、ライセンス料を徴収したりユーザ管理することによるバージョンアップ等のサポートを行なうことが可能となる。
【発明を実施するための最良の形態】
【0027】
以下本発明を実施するための最良の形態を、実施例により詳しく説明する。
【実施例1】
【0028】
以下に図面を参照して本発明の好適な実施例を示す。
【0029】
図1は、本発明の第1の実施例を示す画像処理システムのハードウェア構成を説明する概略ブロック図である。この画像処理システムは、ネットワーク(101)を介して1台以上のホストコンピュータ(102)と、PDLプリントジョブなどのジョブを解釈し画像展開するなどの画像処理を行う外部コントローラ装置(103)と、外部コントローラ装置が接続する画像処理装置(104)から構成されている。
【0030】
外部コントローラ装置(103)は、HDD(114)またはROMメモリ(115)等に格納されたプログラムを、CPU(113)が実行することにより動作しており、プログラムに応じて、受け取ったPDLジョブをビットマップ画像データに画像展開(RIP)したり、画像処理装置にジョブを表すコマンドスクリプトや画像データを送受信したり、あるいは内部バスに接続されている各機器部の制御を行うことができる。内部バスにはネットワークI/F1(112)およびネットワークI/F2(117)も接続されている。外部コントローラ装置(103)は、ネットワークI/F1(112)を介して外部ネットワーク(101)に接続され、ネットワークI/F2(117)を介して画像処理装置と接続されている。また、ユーザ・インタフェースあるいは他のインタフェース、その他の装置(116)も備えている。
【0031】
本実施例における画像処理装置(104)は、MFPタイプの複写機であって、外部と通信を行なうための不図示のネットワークI/Fを備え、ここに外部コントローラ装置(103)が接続されている。そして、外部からのジョブコマンドスクリプトを受信したり、画像データを送受信して、用紙媒体上に画像形成するプリントジョブや、原稿画像を読み取るスキャンジョブを実行することが可能である。
【0032】
なお、本実施例の場合、外部コントローラ装置(103)の外部接続用I/Fと画像処理装置接続用I/Fを共にネットワークI/F(イーサネット(登録商標))で構成しているが、外部ネットワークあるいは画像処理装置(104)の外部I/Fに合わせて、どちらか一方あるいは両方を、他のI/Fハードウェアにしてももちろん良い。
【0033】
次に、外部コントローラ装置(103)で処理するジョブの一例として、PDLプリントジョブを記述するPDLデータについて説明する。
【0034】
アドビ(ADOBE)社のPostScript(登録商標)言語に代表されるPDL(Page Description Language)は、1ページの画像を、(i)文字コードによる画像記述、(ii)図形コードによる図形記述、(iii)ラスタ画像データによる画像記述などの要素を組み合わせて記述するための言語であり、それで記述されたデータがPDLデータである。
【0035】
該PDLデータは、このように文字コードや図形コード、言い換えると図形描画コマンドを中心として構成されているので、ラスタ画像データのみの場合に比べて、一般にプリントジョブのデータ量が少なくて済む。このため、多数の機器が接続されるネットワークを介してジョブを送る場合、トラフィックを減らして高速にジョブを転送することが可能である。
【0036】
このようなPDLデータよりなるPDLプリントジョブを、1ページずつラスター画像データの形式に展開することをRIP処理という。すなわちPDLプリントジョブを印刷するためには、RIP処理を行なってラスター画像データ(ビットマップ)に変換する必要がある。
【0037】
画像処理装置(104)が特定PDLに対するRIP機能を持っていない場合は、本実施例のように外部コントローラ装置(103)を接続し、外部コントローラ装置(103)に特定PDLのRIP機能を持たせることによって、画像処理装置(104)を機能拡張して特定PDLプリントシステムとして提供できるようになる。
【0038】
外部コントローラ装置(103)は、図1においてHDD(114)上に格納されたプログラムにより、CPU(113)が動作することにより、RIP機能を実現している。展開されたラスター画像は、RAM(115)上に圧縮された状態で一時保持され、ネットワークI/F2(117)を介してプリントジョブコマンドスクリプトと共に画像処理装置(104)へと送られてプリント処理される。
【0039】
以上はPDLプリント処理機能を持たせた外部コントローラ装置(103)についての説明であるが、同様の仕組みで、これ以外にも例えば、画像処理装置(104)に原稿画像をスキャンさせ、読み取った画像に対してOCR等の何らかの処理を行なう機能や、あるいは画像処理装置(104)の不図示のUI等を制御して所望のユーザに対するメッセージ等を表示する機能を実現する外部コントローラ装置(103)を提供することももちろん可能である。
【0040】
次に図2を用いて、外部コントローラ装置(103)内部で動作するソフトウェア構成について説明する。
【0041】
図2におけるハードウェア201とは、図1で説明したネットワークI/F1および2(112, 117)を含む、外部コントローラ装置103のハードウェア全般を模式的に示している。これの上に、ハードウェア制御のためのデバイスドライバを含むOS(202)プログラムが動作する。
【0042】
そして、OS上で動作するプログラムモジュールとして、コントローラ制御ソフトウェア(203)、前述のプロトコル変換モジュール(204)、および転送モジュール(205)が動作する。
【0043】
コントローラ制御ソフトウェア(203)とは、例えば前述のPDLジョブのRIP処理機能を備えたプリントジョブ制御機能であって、外部コントローラ装置(103)の目的とする特定機能を提供するための制御ソフトウェアである。もちろん、装置全般の必要なハードウェア制御も含めて動作する。
【0044】
プロトコル変換モジュール(204)は、前述の通り、画像処理装置を制御する複雑なプロトコル(B)を、より簡単な特定機能に特化したプロトコル(A)に変換するソフトウェアモジュールであって、プロトコル(A)を持ってコントローラ制御ソフトウェア(203)からジョブ送信指令等のコマンドを受けると、変換プログラム部(211)において画像処理装置が直接解釈することのできるプロトコル(B)に変換し、送信する。同様に、画像処理装置からプロトコル(B)で来たコントローラ制御ソフト(203)に対するコマンドを、プロトコル(A)に変換して伝える。実際には両プロトコルのコマンドやパラメータは1対1とは限らず、複数のコマンドやパラメータを一つのコマンドにまとめたり、その逆を行なったり、あるいはプロトコル変換モジュール(204)としての内部状態を持ち、内部状態に応じた特定コマンドシーケンスやパラメータに変換したり、複数の種類の異なったプロトコル(B)を組み合わせて送受信するなど、複雑な変換アルゴリズムを実現している。
【0045】
また、特に本特許に関わる構成として、変換モジュール(204)は内部データとして恒久Passcode申請フォームというデータを持っている。これについては後述する。
【0046】
さらに、転送モジュール(202)というモジュールも内蔵される。これは、コントローラ制御ソフトウェア(203)が使用しないコマンドプロトコル(B)について、画像処理コントローラがネットワーク上のホストコンピュータ等他の機器と、直接やりとりをするためのものであって、OSを通じてネットワークI/F2(117)での通信とネットワークI/F1(112)での通信をアドレス変換して直接結びつけるスルー転送動作を行なう。これによって、画像処理装置は、外部コントローラ装置(103)を増設する前の対ネットワーク機能を損なうことなく外部コントローラ装置(103)による機能拡張が可能になる。例えば、SNMPやHTTPなどの汎用プロトコルを使用するサービスを、画像処理装置が外部ネットワーク上の機器に対して公開する場合、スルーモジュールによって、この機能はそのまま外部機器から利用可能となる。さらに、外部機器からは、アドレス的に一つの装置として、外部装置を含んだ画像処理装置システムとして認識することができ、IPアドレスを1つのみ割り当てれば良いようにできる。
【0047】
次に、本発明のライセンス認証処理について、図3の処理フロー図と、プロトコル変換モジュール(204)における動作フローチャート図4を用いて説明する。尚、図3において、転送モジュール(205)は直接本発明の動作には関わらないため省略している。
【0048】
図3は、本発明におけるライセンス認証の全体的な流れを示している。また、図4は本発明に関わるプロトコル変換モジュールの動作フローを示している。
【0049】
プロトコル変換モジュール(204)は、外部コントローラ装置103に組み込まれ、コントローラ制御ソフトウェア・システムから起動されると、必要な内部初期化処理を行なった後、図4のS401に示すコマンド待受け状態となる。このコマンド受信待ち状態のコマンドとは、コントローラ制御ソフトからのプロトコル(A)のコマンドだけでなく、接続されている画像処理装置からネットワークI/F2を介して送られてくるプロトコル(B)のコマンドも含めることができるが、説明を簡略化するため本フローチャートでは、コントローラ制御ソフトからのコマンド待受けとする。
【0050】
外部コントローラ装置ベンダーには、変換モジュール(204)提供と合わせて「仮パスコード」文字列を通知してあり、コントローラ制御ソフトは、初期状態で内部データとしてこの仮パスコードを組み込んでいる。初回の外部コントローラ装置立ち上げ時において、コントローラ制御ソフトは、この仮パスコードをパラメータとして組み込んだ初期化コマンドを、プロトコル変換モジュールに発行する。
【0051】
変換モジュール(204)は、コマンドを受信するとまずそれが初期化コマンドかどうかを判定し(S402)、初期化コマンドである場合には、付随するパラメータが仮パスコードであるかどうかを判定する(S403)。(すなわち、制御モジュールも内部データとして仮パスコードの文字列を持っている。)
仮パスコードであると判定された場合には、情報処理装置と所定の初期化通信を行い(S404)、ネットワークI/F2のハードウェア固有の情報であるMACアドレスを取得する。これは、図3においては<2>に相当する。このMACアドレスの取得には、例えばUNIX(登録商標)系OSの場合には、ioctlというシステムコールが使用可能であり、OSの機能を利用して取得できる。
【0052】
もちろん、本発明の本質としては、シリアル番号等、外部コントローラ装置のハードウェア固有の情報であれば、MACアドレスに限らず利用可能であるが、ベンダーの不正行為により不正情報を割り当てられないものを使用する必要がある。また、どのハードウェア情報を使用しているかは、ベンダーに知られないようにした方がよい。
【0053】
MACアドレスを取得したら、次に、外部ネットワークへと繋がるネットワークI/F1を介して、インターネット上に接続されている画像処理装置メーカのライセンス認証サーバとの接続が可能かどうかを調べる(S406)。これは、図3における<3>に相当する。
【0054】
認証サーバと通信可能であれば、通信して所定の認証処理を行なう(S407)。この認証処理を行なう上では、認証するための登録情報が必要となる。登録情報を入手するための方法の一例としては、例えばプロトコル(A)における初期化コマンドに、ユーザ登録情報のパラメータを持たせて、かつコントローラ制御ソフトにおいては、初期化コマンド発行前にUIを介してユーザに登録情報を入力させた後に初期化コマンドを送る、という手段がある。
【0055】
また、別の例としては、仮パスコードによる初期化コマンド受信後に、変換モジュール(204)が情報処理装置と所定の通信を行い、情報処理装置のUIを利用して、ユーザに対し必要となる登録情報を入力させることによって入手するという手段もある。
【0056】
あるいは、ベンダーごとに予め定めたベンダーコードを登録情報として用いることにし、ベンダーごとのライセンスの数のみを管理するという手法も取れる。
【0057】
いずれにせよ、S407においては、認証サーバに、先に読み取ったハードウェア固有情報と共に、入手した登録情報を送ってユーザ登録を行い、認証サーバでは受け取った登録情報が不正でないことを確認して、予め定めてある恒久パスコード文字列を、ハードウェア固有情報をKeyとする暗号化変換を行い、変換モジュールに通知する。
【0058】
この暗号化恒久パスコードを受け取ったら認証成功となり、S408において自己のモードを制限解除モードに移行し、初期化コマンドに対するOKの返信(Ack返信)をコントローラ制御ソフトへと返す。尚、このAck返信の際には、パラメータとして暗号化恒久パスコードが含まれており、コントローラ制御ソフトはこれを不揮発性メモリ領域に保存して、次回の起動からは初期化コマンドに暗号化恒久パスコードを付けて送信する。
【0059】
また、特に図示はしていないが、もし認証処理が不正情報等の理由により失敗した場合には、初期化コマンドNGの返信(Nack返信)を返し、変換モジュールは未初期化状態のままとなる。
【0060】
S406において、認証サーバと通信不可能と判断された場合、すなわち図3における<3>のステップで接続不可と判断された場合の処理が、本発明の本質に関わる。
【0061】
このとき、変換モジュールは、S410において、内部データである恒久パスコード申請フォームデータを読み出し、先にS403において読み取ったMACアドレス情報をマージする。尚、申請フォームデータは、ビットマップ形式の画像データとしてもよいし、情報処理装置の解釈可能なデータ形式であれば都合の良いフォーマット選択を選択できる。簡単に偽造できないように電子透かし等を含んだデータであれば尚良い。
【0062】
また、MACアドレス情報を文字列そのままでマージしてしまうと、MACアドレスを使用していることが分かりやすくなってしまうので、文字列変換あるはバーコード変換等を行なって、簡単には読み取られないものにする。
【0063】
そして、S411においては作成した画像データを情報処理装置に出力する。本実施例ではこれを1ページの印刷ジョブとして、情報処理装置に印刷指令をしている。これが図3における<4>の手順である。
【0064】
プロトコル変換モジュール自体は、印刷処理が終わると、初期化済み状態となると共に、仮パスコードによる機能制限モードへと移行し(S412)、初期化コマンドAck返信を行なって、コマンド待受けS401と戻る。
【0065】
以後の動作については、コントローラ制御ソフトから初期化以外のプロトコル(A)のコマンドを受信すると、「初期化済み」かつ「機能制限モード」であるので、S430およびS431の張って居処理を経て、S432〜S435の機能制限モード動作を行なう。
【0066】
機能制限モード動作においては、まずS432において、受信したコマンドが制限されるべきコマンドか否かを判定し、制限されるコマンドであればS435として、そのコマンドに対してNack返信を行い、情報処理装置とは一切通信しない。制限無しコマンドと判定された場合にのみ、通常の動作である、所定のプロトコル変換処理を行ない(S433)、画像処理装置と通信を行なってその結果をコマンド返信として返す(S434)。
【0067】

図3に戻り、<5>において、申請書が印刷されたら、ユーザは所定の登録情報を書き込み、FAXやスキャンして画像をE−mail添付などして、メーカーの認証サーバへと送る。登録情報は、先に述べたとおりコントローラ制御ソフトから初期化コマンドのパラメータとして送られてくる実装とした場合には、自動的に申請フォームにマージされ印刷されるようにすることももちろん可能である。
【0068】
また、情報処理装置がインターネット以外の通信手段例えばFAX回線をもつような場合、変換モジュールからの指令は印刷ジョブとするのではなく、FAXジョブとして、ユーザの指示無しに自動的に認証サーバに送るような構成とすることも可能である。
【0069】
先のMACアドレスを文字列変換とするならば、電話等でオペレータが受け付けるようにしてもよく、また、これらの認証サーバへの通知作業をユーザが行なうのではなく、情報処理装置および外部コントロール装置を設置するサービスマンが行なうものとする運用ももちろん可能である。
【0070】
<6>の手順として、認証サーバにおいては、届けられた登録情報およびMACアドレスなどのハードウェア固有情報を用い、S407における登録処理で説明した認証サーバの動作と全く同等の処理を行なって、暗号化恒久パスコードを生成し、発行する。
【0071】
<7>の手順として、認証サーバで発行された暗号化恒久パスコードは、E−MailやFax、あるいは郵便などの手段を用いて、ユーザまたはサービスマンへと届けられ、ユーザまたはサービスマンは、外部コントローラ装置のUI等を用いて、コントローラ制御ソフトに暗号化恒久パスコードを入力する。
【0072】
暗号化恒久パスコードを入力されたコントローラ制御ソフトは、<8>の手順として、この恒久パスコードを用いて初期化要求を行なうとともに、このパスコードを記憶し、以後の立ち上げでは毎回これを使用するようになる。
【0073】
図4に戻り、暗号化恒久パスコードが付随した初期化コマンドを受信した際のプロトコル変換モジュールの動作について説明する。
【0074】
S402において初期化コマンドと判定され、S403において付随するパスコードパラメータが仮パスコードでないと判定されると、S420の処理へと進む。
【0075】
S420においては、S405と同様にMACアドレスのようなハードウェア固有情報を取得する。そしてS421において、取得したMACアドレス等の情報をKeyとして、初期化コマンドに付随するパスコードパラメータの復号化を行なう。これは認証サーバで行なわれた暗号化の逆の処理であり、予め所定の暗号化および復号化アルゴリズムを定めておき、変換モジュールは復号化アルゴリズムを内蔵しておくことによって行なっている。
【0076】
また、プロトコル変換モジュールは、内部データとして復号化された後の恒久パスコードを持っている。S422の処理においては、S421で復号化されたパスコードの文字列が、内部データの恒久パスコードと一致するかどうかの判定を行なう。
【0077】
判定の結果、正式な恒久パスコードである場合には、情報処理装置と所定の初期化通信処理を行ない(S423)初期化済状態になると共に、自己を動作制限のない制限解除モードへと移行する(S424)。そして、初期化コマンドにAck返信を行い(S425)、S401のコマンド待受けへと戻る。
【0078】
判定の結果が正式な恒久パスコードでないと判断された場合には、S426における初期化コマンドのNack返信をおこなって、自己の状態やモードの変更は行なわずにコマンド待受け状態S401に戻る。
【0079】
次に、制限解除モードに移行した後のコマンド処理動作について説明する。初期化コマンドでない通常のコマンドを受信すると、S402を経てS430において、初期化すみか否かを調べる。初期化済みでなければ、S450としてコマンドに対しNack返信を行なってコマンド待受け状態S401へと戻るが、制限解除モードへ移行している場合は、初期化済み状態であるので、S431の判定を行なう。
【0080】
S431のモード判定においては、制限解除モードと判定されるため、S440においてS433と同様の所定のプロトコル変換処理をコマンドに寄らず行い、S441にて、その結果をコマンド返信として返した後に、S401の次のコマンドの待ちうけ処理へと移行する。
【0081】
尚、本実施例においては、説明を簡単にするため、機能制限モードと制限解除モードの2つのモードのみを持たせたが、複数の恒久パスコード文字列を持ってそれぞれに対応する、複数の機能モードを持たせる実装とすることももちろん可能である。例えば、プリントのみ可能なモード、プリントとスキャンは可能だかUIの一部機能を制限するモードなどである。この場合、使用可能とする機能に応じたライセンス料の設定を行なったり、機能をオプション化し、設置後に増やすという運用も可能となる。
【実施例2】
【0082】
本発明を、図5に示す接続形態の外部拡張装置に適用することも可能である。
【0083】
図5において、501〜516の各部/各装置については、それぞれ図1の101〜116と全く同等であるので、詳細な説明は省略する。
【0084】
図5においては、図1におけるネットワークI/F2(117)を取り外したハードウェア構成となっている。そして、画像処理装置504は、図1の実施形態のように、直接外部コントローラ装置503と接続するのではなく、ネットワーク501と接続され、ネットワーク501を介して外部コントローラ装置503と通信する。
【0085】
すなわち、外部コントローラ装置503においては、同一のI/Fハードウェアを用いて、ホストコンピュータ502とも、画像処理装置504とも通信することになる。また、このような形態であるため、外部コントローラ装置503を、特定の画像処理装置(504)1台のための機能拡張装置とするのではなく、複数の画像処理装置に対して機能拡張を行なう、機能拡張サーバとして構築し、本特許を適用することももちろん可能である。
【0086】
図5における外部コントローラ装置のソフトウェア構成図は、図6のようになる。図2と比較し、601〜612の構成部分は、それぞれ201〜212における構成部分と全く同等であるので、詳細な説明は省略する。
【0087】
603のコントローラ制御ソフトは、実施例1における図2の203のコントローラ制御ソフトと少なくとも通信手段に関しては全く同等で、プロトコル(A)を用いて、プロトコル変換モジュールと装置内部で通信し、画像処理装置に対する通信手段としており、その他のホストコンピュータ等の装置とは、ネットワークI/F1を介して直接通信を行なう。
【0088】
もちろん実現する機能としては、実施例1と同等でも良いし、複数台の画像処理装置と通信可能であることを利用した新しい機能を実現することも可能である。
【0089】
また、ホストコンピュータ等の外部装置と画像処理装置との通信は、ネットワークを介して直接行なわれるため、図2における転送モジュール(205)は必要ない。
【0090】
プロトコル変換モジュール604に関しては、実施例1における変換モジュール204と全く同じものが使用可能である。変換モジュール604はOSの機能を利用して外部との通信を行なっているので、単に通信の宛先アドレスを、内側のネットワークのものから外側のネットワークのものに変更するのみでよい。もちろんTCP/IPプロトコルを用いるならば、プロトコル(B)のポート番号は、他のホストコンピュータ等との通信で用いるプロトコルとバッティングしないようにする必要はある。
【0091】
プロトコル変換モジュール604の動作についても図4の動作フローと全く同等でよく、全体のライセンス管理手順についても図3の手順フローがそのまま適用可能である。但し、取得するハードウェア固有情報としては、ネットワークI/F1(512)のMACアドレスを取得するようにする。
【実施例3】
【0092】
また、本発明の本質によれば、実施例1および実施例2で説明したプロトコル変換モジュールに限らず、ソフトのみをユーザに提供する際のライセンス管理にも適用可能であるのは自明である。
【0093】
インストール後の起動より、MACアドレスまたはその他のインストールされたハードウェアに固有の情報を取得し、取得した固有情報を含めた申請データを何らかの外部装置に出力可能であれば、適用できることは明らかである。
【0094】
さらに、ここでいう外部装置を、ネットワーク上に存在する何らかのサーバ型装置、例えば実施例1および実施例2で説明した認証サーバそのものとして、ハードウェア固有情報の送り先として適用する運用ももちろん可能である。
【図面の簡単な説明】
【0095】
【図1】本発明の1実施形態である外部コントローラ装置を含む画像処理システムの構成を示すブロック図である。
【図2】図1に示した外部コントローラ装置上で動作するプログラムのソフトウェア構成を示すソフトウェア構成概念図である。
【図3】本発明の1実施形態におけるライセンス認証・管理の手順を示す手順フロー図である。
【図4】本発明の1実施形態における外部コントローラ装置上で動作するプロトコル変換モジュールの、本発明のライセンス認証・管理に関わる動作を示す動作フローチャートである。
【図5】本発明の第二の実施形態である外部コントローラ装置を含む画像処理システムの構成を示すブロック図である。
【図6】図5に示した外部コントローラ装置上で動作するプログラムのソフトウェア構成を示すソフトウェア構成概念図である。
【符号の説明】
【0096】
101 ネットワーク
102 情報処理装置
103 外部コントローラ装置
104 画像処理装置
111 内部バス
112 ネットワークインターフェース1
113 CPU
114 HDD
115 RAM/ROM
116 UI/他のインターフェース装置等
117 ネットワークインターフェース2

【特許請求の範囲】
【請求項1】
画像処理装置と所定の通信ハードウェアおよび通信プロトコルを用いて通信を行なうソフトウェアモジュールのライセンス管理・認証方式であって、
初期化要求を検知する初期化要求検知手段と、
初期化要求に付随する初期化情報を読み取る初期化情報読み取り手段と、
少なくとも一つの初期化パスコード情報を記憶しておく初期化パスコード記憶手段と、
前記ソフトウェアモジュールがインストールされたハードウェアに固有の情報を読み取るハードウェア固有情報読み取り手段と、
特定キーによって暗号化された暗号化データを前述の特定キーを用いて暗号化される前の状態に復号化する復号化手段と、
前述の初期化情報の少なくとも一部の情報を得るための申請フォーマットデータを記憶する申請フォーマットデータ記憶手段と、
前述の申請フォーマットデータ記憶手段より前述の申請フォーマットデータを読み出し、所定のデータとマージする申請データマージ手段とを備え、
前述の初期化要求検知手段によって検知した初期化要求に基づき、前述のハードウェア固有情報読み取り手段によって得られたハードウェア固有情報を前述の特定キーとし、前述の初期化情報読み取り手段によって読み取られた初期化情報の一部の情報を、前述の復号化手段によって復号化し、得られた復号化データと前述の少なくとも一つの初期化パスコード情報が一致するかどうかを調べ、一致した初期化パスコードに基づく動作モードへと移行する制御を行なうと共に、
前述の復号化データが前述の初期化パスコード情報と一致しない場合には、前述の申請データマージ手段によって、前述の申請フォーマットデータに前述のハードウェア固有情報をマージし、得られた申請データを画像処理装置へ出力する制御を行なうことを特徴とするライセンス管理・認証方式。
【請求項2】
前述のソフトウェアモジュールにおける前述の初期化要求受信手段とは、他のソフトウェアまたは装置より、所定の通信インターフェースおよびプロトコルを持って送信される初期化要求コマンドを受信する初期化コマンド受信手段であることを特徴とする請求項1に記載のライセンス管理・認証方式。
【請求項3】
前述の初期化情報読み取り手段とは、前述の初期化要求コマンドに付随するパラメータを読み取る初期化要求コマンドパラメータ読み取り手段であることを特徴とする請求項1に記載のライセンス管理・認証方式。
【請求項4】
前述の初期化要求検知手段によって検知した初期化要求とは、前述のソフトウェアモジュール自体が起動されることであることを特徴とする請求項1に記載のライセンス管理・認証方式。
【請求項5】
前述の初期化情報読み取り手段とは、前述のソフトウェアモジュールの管理するメモリ装置内部に保持される初期化情報データを読み出すメモリ読み出し手段であることを特徴とする請求項1に記載のライセンス管理・認証方式。
【請求項6】
前述のハードウェア固有情報読み取り手段とは、前述のソフトウェアモジュールが使用する通信I/Fハードウェアの固有情報であることを特徴とする請求項1に記載のライセンス管理・認証方式。
【請求項7】
前述の申請フォーマットデータ記憶手段に記憶される前述の申請フォーマットデータとは、ビットマップ画像形式の画像データであって、
前述の申請データマージ手段とは、前述のハードウェア固有情報を所定のビットマップ画像に変換し、前記申請フォーマットデータのビットマップ画像とマージして一つのビットマップ画像とする手段であることを特徴とする請求項1に記載のライセンス管理・認証方式。
【請求項8】
前述の申請フォーマットデータ記憶手段に記憶される前述の申請フォーマットデータとは、ビットマップ画像形式に展開可能なPDL言語で記述されたPDLデータであって、
前述の申請データマージ手段とは、前述のハードウェア固有情報を所定のPDL言語の記述方式に則って記述し、前記申請フォーマットデータのPDLデータとマージして一つのPDLデータとする手段であることを特徴とする請求項1に記載のライセンス管理・認証方式。
【請求項9】
前述の申請データを画像処理装置へ出力する制御とは、前述の申請データマージ手段によって得られた申請データを、プリントジョブとして所定のコマンドシーケンスと共に画像処理装置へと出力する制御であることを特徴とする請求項1に記載のライセンス管理・認証方式。
【請求項10】
前述の申請データを画像処理装置へ出力する制御とは、前述の申請データマージ手段によって得られた申請データを、特定の送信宛先を含むFAXジョブとして所定のコマンドシーケンスと共に画像処理装置へと出力する制御であることを特徴とする請求項1に記載のライセンス管理・認証方式。
【請求項11】
前述の申請データを画像処理装置へ出力する制御とは、前述の申請データマージ手段によって得られた申請データを、特定の送信宛先を含むE−mail送信ジョブとして所定のコマンドシーケンスと共に画像処理装置へと出力する制御であることを特徴とする請求項1に記載のライセンス管理・認証方式。
【請求項12】
前述の画像処理装置とは、MFPタイプの複写機装置であることを特徴とする請求項1に記載のライセンス管理・認証方式。
【請求項13】
前述の画像処理装置とは、ネットワーク上に存在する前述の申請データを解釈する機能を持ったサーバ装置であることを特徴とする請求項1に記載のライセンス管理・認証方式。

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図1】
image rotate


【公開番号】特開2006−171947(P2006−171947A)
【公開日】平成18年6月29日(2006.6.29)
【国際特許分類】
【出願番号】特願2004−360917(P2004−360917)
【出願日】平成16年12月14日(2004.12.14)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】