(57)【要約】      （修正有）【課題】デバッガのライセンス情報を改ざんや不正使用ができないようにする。【解決手段】ホストコンピュータとデータの送受信を行うホスト通信部１と、デバッグ対象のターゲットＣＰＵとデータの送受信を行うターゲット通信部５と、記憶媒体を一意に表す識別コード７と暗号化されたライセンス情報８を格納する外部記憶媒体６と、暗号化されたライセンス情報８を所定の秘密鍵４を用いて復号化し、ライセンス情報８の有効性を識別コード７を用いて判定する制御部２とを備える。【選択図】図２
2006259810.tif 000002
【特許請求の範囲】
【請求項１】
ホストコンピュータとデータの送受信を行うホスト通信部と、
デバッグ対象となるターゲットＣＰＵとデータの送受信を行うターゲット通信部と、
記憶媒体を一意に表す識別コードと暗号化されたライセンス情報を格納する外部記憶媒体と、
前記ライセンス情報を所定の秘密鍵を用いて復号化し、前記ライセンス情報の有効性を前記識別コードを用いて判定する制御部とを備えたデバッグ装置。
【請求項２】
さらに、時間と日付を管理する時間管理部を備えた請求項１に記載のデバッグ装置。
【請求項３】
さらに、外部のネットワーク回線との間でデータの送受信を行うネットワーク部を備えた請求項１または請求項２に記載のデバッグ装置。
【請求項４】
前記ターゲットＣＰＵは、ターゲットの種別を一意に表す個別の識別コードを備えている請求項１から請求項３までのいずれかに記載のデバッグ装置。
【請求項５】
前記ライセンス情報は、デバッガおよびデバッグ装置の使用可能な期間を表すライセンス有効期間情報を含んでいる請求項１から請求項４までのいずれかに記載のデバッグ装置。
【請求項６】
前記ライセンス情報は、デバッガの起動を許可する回数を表す起動許可回数情報を含んでいる請求項１から請求項４までのいずれかに記載のデバッグ装置。
【請求項７】
前記ライセンス情報は、デバッガのデバッグコマンドに使用制限の有無を表すデバッグコマンド使用設定情報を含んでいる請求項１から請求項４までのいずれかに記載のデバッグ装置。
【請求項８】
前記ライセンス情報は、デバッガのデバッグコマンドで使用が許可されているコマンドを表すコマンド使用許可情報を含んでいる請求項１から請求項４までのいずれかに記載のデバッグ装置。
【請求項９】
前記ライセンス情報は、デバッガのデバッグコマンドで使用が不許可とされているコマンドを表すコマンド使用不許可情報を含んでいる請求項１から請求項４までのいずれかに記載のデバッグ装置。
【請求項１０】
前記ライセンス情報は、デバッガがデバッグ可能なＣＰＵの品種を表す対応品種情報を含んでいる請求項１から請求項４までのいずれかに記載のデバッグ装置。
【請求項１１】
前記ライセンス情報は、ユーザを一意に表すユーザＩＤ情報を含んでいる請求項１から請求項４までのいずれかに記載のデバッグ装置。
【請求項１２】
前記ライセンス情報は、デバッグ装置との接続を許可するホストコンピュータを一意に表す使用許可ホスト情報を含んでいる請求項１から請求項４までのいずれかに記載のデバッグ装置。
【請求項１３】
前記ライセンス情報は、デバッガのデバッグコマンドで使用が許可されている回数を表すコマンド実行回数情報を含んでいる請求項１から請求項４までのいずれかに記載のデバッグ装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＣＰＵ（central processing unit）のプログラム実行状態を外部装置から観測可能なデバッグシステムにおいて、デバッグ装置のライセンス管理のための技術に関するものである。
【背景技術】
【０００２】
従来、デバッグシステムのライセンス管理には、ホストコンピュータやデバッグ装置が具備する固有の機器番号を用いている（例えば、特許文献１参照）。
【０００３】
以下、図面を参照しながら従来の技術におけるデバッグシステムのライセンス管理について説明する。
【０００４】
図３２は従来の技術におけるデバッグシステムの構成を示すブロック図である。従来のデバッグシステムは、ホストコンピュータ５０、キーボードやマウス等の入力部５４、ホストコンピュータ５０での処理結果を表示するための表示部５５、デバッグ装置Ｂ、ターゲットＣＰＵ６０から構成されている。ホストコンピュータ５０とデバッグ装置Ｂの接続形態はＵＳＢ（Universal Serial Bus）のような汎用的ホストインタフェースであり、互いにケーブルで接続されている。デバッグ装置ＢとターゲットＣＰＵ６０との接続形態は例えばＩＥＥＥ１１４９．１で定義されるＪＴＡＧインタフェースであり、互いにケーブルにて接続されている。ホストコンピュータ５０は、デバッガ５１とライセンス情報ファイル５３とで構成されている。デバッガ５１はホストコンピュータ５０上で動作するソフトウェアであり、ライセンス判定部５２はデバッガ５１の処理に含まれている。ライセンス判定部５２は、ライセンス情報ファイル５３を参照し、デバッガのライセンスの有効性を判定するものである。ライセンス情報ファイル５３については後述する。
【０００５】
デバッガ５１は、入力部５４から入力されたデバッグコマンドを解釈し、デバッグコマンドＤ１１をデバッグ装置Ｂへ出力する。デバッグ装置Ｂは、受信したデバッグコマンドＤ１１をターゲットＣＰＵ６０に送信可能な信号に変換し、ターゲットコマンドＤ１２をターゲットＣＰＵ６０へ出力する。ターゲットＣＰＵ６０は、受信したターゲットコマンドＤ１２に従って必要な処理を行い、ターゲットデータＤ１３をデバッグ装置Ｂへ出力する。ターゲットデータＤ１３を受信したデバッグ装置Ｂは、デバッグデータＤ１４をホストコンピュータ５０へ出力し、デバッガ５１がターゲットＣＰＵ６０のデバッグ情報を受信する。デバッガ５１は、デバッグ情報を基に必要な処理を行い、その結果を表示部５５に表示する。デバッガ５１のライセンス処理は、デバッガ５１の起動時にライセンス判定部５２にて行う。ライセンス判定処理については後述する。
【０００６】
図３３はデバッグ装置Ｂの構成を示すブロック図である。デバッグ装置Ｂは、ホスト通信部４１とターゲット通信部４２とで構成されている。ホスト通信部４１は、ホストコンピュータ５０上のデバッガ５１との間でデータの送受信を行い、ターゲット通信部４２は、ターゲットＣＰＵ６０との間でデータの送受信を行う。ホスト通信部４１は、デバッガ５１からのデバッグコマンドＤ１１を受信すると、ターゲット通信部４２へ内部信号Ｓ２１を出力する。内部信号Ｓ２１を入力したターゲット通信部４２は、内部信号Ｓ２１をＪＴＡＧコマンドに変換し、ターゲットコマンドＤ１２をターゲットＣＰＵ６０へ出力する。また、ターゲット通信部４２は、ターゲットＣＰＵ６０からのターゲットデータＤ１３を受信して、内部信号Ｓ２２をホスト通信部４１へ出力する。内部信号Ｓ２２を入力したホスト通信部４１は、デバッグデータＤ１４をデバッガ５１へ出力する。
【０００７】
デバッグ装置Ｂは、ホストコンピュータ５０とターゲットＣＰＵ６０との間で信号の送受信を行うが、ライセンス管理は行わない。ライセンス管理を行うのは、ホストコンピュータ５０におけるライセンス判定部５２である。
【０００８】
ライセンス情報ファイル５３は、図３４に示すように、ターゲットＣＰＵ６０の品種情報である“ＴＡＲＧＥＴ_ＴＹＰＥ＝ＭＮ１０ＸＸＸＸ”と、ライセンス有効期限“ＧＯＯＤＴＨＲＵ＝２００５／１２／３１”と、ユーザ名“ＵＳＥＲ＝ＴＡＲＯ_ＭＡＴＳＵＳＨＩＴＡ”と、パスワード“ＰＡＳＳＷＯＲＤ＝＊＊＊＊＊＊＊＊”のようにテキストファイル形式で格納されている。
【０００９】
デバッガ５１によるライセンス判定処理を図３５のフローチャートに従って説明する。
【００１０】
使用者がデバッガの起動を要求すると、ステップｐ１へ移行し、処理を開始する。
【００１１】
ステップｐ２において、ライセンス情報ファイル５３の読み込みを行う。
【００１２】
ステップｐ３において、読み込んだライセンス情報ファイル５３の正当性をチェックの上、現在有効なライセンスかどうかをチェックする。ライセンスが有効であればステップｐ４へ、無効の場合はステップｐ５へ移行する。
【００１３】
ステップｐ４において、デバッガ５１の起動を行う。
【００１４】
ステップｐ５において、表示部５５にライセンスエラー表示を行う。ライセンスエラー表示を図３６に示す。ライセンス判定処理に失敗した場合、デバッガ５１のソフトウェアは、表示部５５にエラーメッセージ５５ａを表示し、デバッガ５１の起動を抑制する。
【００１５】
このようにホストコンピュータ５０上において、ライセンス情報ファイル５３からライセンス情報の有効性を判断し、有効な場合はデバッガ５１の起動を行い、無効な場合は処理を中断してデバッガ５１の起動を抑制することで、デバッガ５１のライセンス管理を行っている。
【特許文献１】特開２００１−２１１１７１号公報（第６頁、第１図）
【発明の開示】
【発明が解決しようとする課題】
【００１６】
上述の従来技術では、デバッガのライセンス管理に用いるライセンス情報ファイルがホストコンピュータ内にあり、ホストコンピュータには入力部（キーボードやマウス）があるため、その入力部を使ってファイル内情報の改ざんや不正コピーを行えば、デバッガが簡単に不正使用されてしまうという問題があった。
【００１７】
このような問題点に鑑み、本発明は、デバッガのライセンス情報を簡単には改ざん、不正使用できないセキュリティ性の高いライセンス管理が可能なデバッグ装置を提供することを目的としている。
【課題を解決するための手段】
【００１８】
本発明によるデバッグ装置は、
ホストコンピュータとデータの送受信を行うホスト通信部と、
デバッグ対象となるターゲットＣＰＵとデータの送受信を行うターゲット通信部と、
記憶媒体を一意に表す識別コードと暗号化されたライセンス情報を格納する外部記憶媒体と、
前記ライセンス情報を所定の秘密鍵を用いて復号化し、前記ライセンス情報の有効性を前記識別コードを用いて判定する制御部とを備えたものである。
【００１９】
上記構成によれば、入力手段のないデバッグ装置において、その外部記憶媒体に暗号化されたライセンス情報をもち、このライセンス情報を秘密鍵により復号化するようになっている。したがって、第三者による解読が困難なものとなり、セキュリティ性の高い状態でデバッガのライセンス管理を行うことができる。
【００２０】
上記構成のデバッグ装置において、さらに、時間と日付を管理する時間管理部を備えた構成も有効である。このように構成すれば、デバッグ装置内の時間管理部で時間と日付を管理し、セキュリティ性高くライセンス有効期限の管理を行うことができる。
【００２１】
また、上記構成のデバッグ装置において、さらに、外部のネットワーク回線との間でデータの送受信を行うネットワーク部を備えた構成も有効である。このように構成すれば、デバッグ装置内のネットワーク部で外部のネットワーク回線との間でデータの送受信を行い、セキュリティ性高くライセンス更新を行うことができる。
【００２２】
上記の構成において、前記ターゲットＣＰＵは、ターゲットの種別を一意に表す個別の識別コードを備えているものとする。これによれば、ターゲットＣＰＵに合致したデバッガのライセンス管理を行うことができる。
【００２３】
上記の構成において、前記ライセンス情報については、次のようないくつかの好ましい態様がある。
【００２４】
第１に、前記ライセンス情報が、デバッガおよびデバッグ装置の使用可能な期間を表すライセンス有効期間情報を含んでいるものとする。これによれば、デバッガおよびデバッグ装置の使用可能な期間を表すライセンス有効期間を管理することができる。
【００２５】
第２に、前記ライセンス情報が、デバッガの起動を許可する回数を表す起動許可回数情報を含んでいるものとする。これによれば、デバッガの起動を許可する回数を管理することができる。
【００２６】
第３に、前記ライセンス情報が、デバッガのデバッグコマンドに使用制限の有無を表すデバッグコマンド使用設定情報を含んでいるものとする。これによれば、デバッガのデバッグコマンドの使用制限の有無を管理することができる。
【００２７】
第４に、前記ライセンス情報が、デバッガのデバッグコマンドで使用が許可されているコマンドを表すコマンド使用許可情報を含んでいるものとする。これによれば、デバッガのデバッグコマンドで使用が許可されているコマンドを管理することができる。
【００２８】
第５に、前記ライセンス情報が、デバッガのデバッグコマンドで使用が不許可とされているコマンドを表すコマンド使用不許可情報を含んでいるものとする。これによれば、デバッガのデバッグコマンドで使用が不許可とされているコマンドを管理することができる。
【００２９】
第６に、前記ライセンス情報が、デバッガがデバッグ可能なＣＰＵの品種を表す対応品種情報を含んでいるものとする。これによれば、デバッガがデバッグ可能なＣＰＵの品種を管理することができる。
【００３０】
第７に、前記ライセンス情報が、ユーザを一意に表すユーザＩＤ情報を含んでいるものとする。これによれば、ユーザを一意に表すユーザＩＤを管理することができる。
【００３１】
第８に、前記ライセンス情報が、デバッグ装置との接続を許可するホストコンピュータを一意に表す使用許可ホスト情報を含んでいるものとする。これによれば、デバッグ装置との接続を許可するホストコンピュータを管理することができる。
【００３２】
第９に、前記ライセンス情報が、デバッガのデバッグコマンドで使用が許可されている回数を表すコマンド実行回数情報を含んでいるものとする。これによれば、デバッガのデバッグコマンドで使用が許可されている回数を管理することができる。
【発明の効果】
【００３３】
本発明によれば、入力手段のないデバッグ装置において、その外部記憶媒体に暗号化されたライセンス情報をもち、このライセンス情報を秘密鍵により復号化するようになっている。したがって、第三者による解読が困難なものとなり、セキュリティ性の高い状態でデバッガのライセンス管理を行うことができる。
【００３４】
また、デバッグ装置内の時間管理部により時間と日付を管理し、セキュリティ性高くライセンス有効期限の管理を行うことができる。また、ネットワーク経路を用いてセキュリティ性高くライセンス情報の更新が可能となり、使用者の煩わしい操作を低減することができる。
【発明を実施するための最良の形態】
【００３５】
以下、本発明にかかわるデバッグ装置を含むデバッグシステムの実施の形態を図面に基づいて詳細に説明する。
【００３６】
（実施の形態１）
図１は本発明の実施の形態１におけるデバッグシステムの構成を示すブロック図である。このデバッグシステムは、ホストコンピュータ２０、入力部２３、表示部２４、デバッグ装置Ａ１、ターゲットＣＰＵ３０から構成されている。ホストコンピュータ２０は、ホストコンピュータ２０上で動作するソフトウェアであるデバッガ２１と、ホストコンピュータ２０を一意に表す識別コードであるＭＡＣアドレス情報２２とで構成されている。デバッガ２１は、入力部２３から入力されたコマンドを解釈し、デバッグコマンドＤ１をデバッグ装置Ａ１へ出力する。デバッグコマンドＤ１を受信したデバッグ装置Ａ１は、所定の処理を行ってターゲットコマンドＤ２をターゲットＣＰＵ３０へ出力する。ターゲットコマンドＤ２を受信したターゲットＣＰＵ３０は、所定の処理を行ってターゲットデータＤ３をデバッグ装置Ａ１へ出力する。ターゲットＣＰＵ３０には、ターゲットの種別を一意に表すターゲットＩＤ情報３１が含まれている。ターゲットデータＤ３を受信したデバッグ装置Ａ１は、所定の処理を行ってデバッグデータＤ４をデバッガ２１へ出力する。
【００３７】
図２はデバッグ装置Ａ１の構成を示すブロック図である。デバッグ装置Ａ１は、ホスト通信部１、ＣＰＵ２、ターゲット通信部５、外部記憶媒体６とで構成されている。ＣＰＵ２は、制御ソフトウェア３と秘密鍵４で構成されている。また、外部記憶媒体６は、外部記憶媒体識別コード７と暗号化されたライセンス情報８で構成されている。
【００３８】
ホスト通信部１は、デバッガ２１からのデバッグコマンドＤ１を受信すると、内部信号Ｓ１をＣＰＵ２へ出力する。内部信号Ｓ１を入力したＣＰＵ２は、予め格納してある制御ソフトウェア３を実行し、内部信号Ｓ２を外部記憶媒体６に出力し、内部信号Ｓ３をターゲット通信部５に出力する。ＣＰＵ２からの内部信号Ｓ２を入力した外部記憶媒体６は、所定の処理を行って内部信号Ｓ４をＣＰＵ２に出力する。なお、外部記憶媒体６がデバッグ装置Ａ１に対して抜き差しされると内部信号Ｓ５を生成し、ＣＰＵ２へ割込み信号として通知される。ターゲット通信部５は、ＣＰＵ２から入力した内部信号Ｓ３をＪＴＡＧコマンドに変換し、ターゲットコマンドＤ２をターゲットＣＰＵ３０へ出力する一方、ターゲットＣＰＵ３０からのターゲットデータＤ３を受信すると、内部信号Ｓ６をＣＰＵ２に出力する。ＣＰＵ２は、入力した内部信号Ｓ４，Ｓ５，Ｓ６に応じてそれぞれ所定の処理を行って内部信号Ｓ７をホスト通信部１に出力する。ＣＰＵ２からの内部信号Ｓ７を入力したホスト通信部１は、デバッグデータＤ４をデバッガ２１へ出力する。デバッガ２１はデバッグ装置Ａ１へデバッグコマンドＤ１を出力し、デバッグ装置Ａ１からのデバッグデータＤ４を受信することで、ターゲットＣＰＵ３０の内部情報を取得し、取得した内部情報を表示部２４に表示する。これにより、デバッガ使用者に対してデバッグ情報を表示し、ターゲットＣＰＵ３０上で動作するソフトウェアのデバッグを行うことができるようになる。
【００３９】
図３は、外部記憶媒体識別コード７の構造を示す図である。この外部記憶媒体識別コード７は、外部記憶媒体６を一意に特定するための識別コードで、３２ビット（４バイト）の値を持ち、外部記憶媒体６の製造番号情報になっている。図３では、外部記憶媒体識別コード７として、“０ｘ０１２３４５６７”が格納されている。
【００４０】
図４は、制御ソフトウェア３に内蔵されている秘密鍵４の構造を示す図である。この秘密鍵４は、外部記憶媒体６に格納されている暗号化されたライセンス情報８を復号化するためのもので、１２８ビット（１６バイト）の値を持つ。ライセンス情報８の復号化は、秘密鍵４との排他的論理和を取ることで行われる。図４では、秘密鍵として、“０ｘ０１２３４５６７８９ＡＢＣＤＥＦＦＥＤＣＢＡ９８７６５４３２１０”という値が格納されている。秘密鍵４を１２８ビット長にしておくことで、総当り的に解読するのに天文学的な時間がかかるため、解読は事実上不可能となっている。
【００４１】
図５は、図１のターゲットＣＰＵ３０におけるターゲットＩＤ情報３１の構造を示す図である。図５では、“０ｘ１１”、“０ｘ２２”、“０ｘ３０”、“０ｘ６５”の４バイトの数値となっている。
【００４２】
図６は、暗号化されたライセンス情報８の構造を示す図である。ライセンス情報８は、可変長情報かつ可変個数情報に対応させるため、４バイトの位置情報およびｎバイトのライセンスデータを１つのセットとし、これらを複数個持つ構造となっている。また、位置情報の値が“０”の場合を終端記号Ｓｅと扱い、情報の終端とする。終端記号Ｓｅの後に、これらの情報の総和をチェックサムＳｓとして４バイト数値で格納する。
【００４３】
第１のライセンス情報８１は第１の位置情報およびライセンスデータから構成されている。第２のライセンス情報８２は第２の位置情報および第２のライセンスデータより構成され、第３のライセンス情報８３は第３の位置情報およびライセンスデータより構成され、第ｍのライセンス情報８ｍは第ｍの位置情報およびライセンスデータから構成されている。各位置情報は４バイト、各ライセンスデータはｎバイトである。
【００４４】
ライセンスデータは、図７に示すように、１バイトのライセンス情報種別８ａとｋバイトのライセンス付加情報８ｂから構成されている。ライセンス情報種別８ａには、有効期間情報、起動許可回数、コマンド使用設定、コマンド使用不許可、対応品種情報、外部記憶媒体識別コード情報、ユーザ情報、使用許可ホスト情報があり、それぞれに付加情報を持つ。
【００４５】
有効期間情報の付加情報として、有効期間「年／月／日」をもつ。起動許可回数の付加情報として、残り起動許可回数をもつ。コマンド使用設定の付加情報として、コマンド使用許可（デフォルトをコマンド使用許可とする）／コマンド使用不許可（デフォルトをコマンド使用不許可とする）のフラグ情報をもつ。コマンド使用許可の付加情報として、許可するコマンド名とオプション名をもつ。コマンド使用不許可の付加情報として、不許可にするコマンド名とオプション名をもつ。対応品種情報の付加情報として、対応品種名をもつ。外部記憶媒体識別コード情報の付加情報として、外部記憶媒体の識別コードをもつ。ユーザ情報の付加情報として、ユーザ名とパスワードをもつ。使用許可ホスト情報の付加情報として、使用許可ホストコンピュータのＭＡＣアドレスをもつ。
【００４６】
ライセンスデータの構造を図８から図１７で説明する。
【００４７】
図８は、有効期間情報をもつライセンスデータの構造を示している。有効期間情報を表す１バイトのライセンス情報種別８ａは、“０ｘ０１”の固定値をもつ。４バイトのライセンス付加情報８ｂは、バイト単位に細分化されたｂ１１，ｂ１２，ｂ１３，ｂ１４から構成されている。ｂ１１は有効期間期限の“年の上位２桁”を表し、ｂ１２が“年の下位２桁”、ｂ１３は有効期間期限の“月”、ｂ１４は有効期間期限の“日”を表す。ｂ１１は“０ｘ１４”、ｂ１２は“０ｘ０５”、ｂ１３は“０ｘ０Ｃ”、ｂ１４は“０ｘ１Ｆ”であるので、有効期限は“２００５年１２月３１日”となる。
【００４８】
図９は、起動許可回数情報をもつライセンスデータの構造を示している。起動許可回数情報を表す１バイトのライセンス情報種別８ａは、“０ｘ０２”の固定値をもつ。４バイトのライセンス付加情報８ｂは、バイト単位に細分化されたｂ２１，ｂ２２，ｂ２３，ｂ２４から構成されている。これらは起動許可回数を表す。ｂ２１は“０ｘ００”、ｂ２２は“０ｘ００”、ｂ２３は“０ｘ００”、ｂ２４は“０ｘ０５”であるので、起動許可回数は“５”となる。この起動許可回数は、デバッガ２１のソフトウェアからデバッグ装置Ａ１に対して起動要求が起こる毎に、１ずつ減算される。この情報が“０”になった場合、それ以上のデバッガ起動は抑制されることになる。
【００４９】
図１０はコマンド使用設定情報をもつライセンスデータの構造を示している。コマンド使用設定情報を表す１バイトのライセンス情報種別８ａは、“０ｘ０３”の固定値をもつ。１バイトのライセンス付加情報８ｂは、コマンド使用設定を表し、“０ｘ００”の場合はデフォルトをコマンド使用許可とし、“０ｘＦＦ”の場合はデフォルトをコマンド使用不許可とする。ここでは、“０ｘ００”であるので、デフォルトをコマンド使用許可に設定している。
【００５０】
図１１はコマンド使用許可情報をもつライセンスデータの構造を示している。コマンド使用許可情報を表す１バイトのライセンス情報種別８ａは、“０ｘ０４”の固定値をもつ。５バイトのライセンス付加情報８ｂは、バイト単位に細分化されたｂ３１，ｂ３２，ｂ３３，ｂ３４，ｂ３５から構成され、それぞれＡＳＣＩＩ文字およびコマンド名の終端を示すコード“０ｘ００”が格納されている。ここでは、ｂ３１は“０ｘ４５”で文字列“Ｅ”を示し、ｂ３２は“０ｘ５６”で文字列“Ｖ”を示し、ｂ３３は“０ｘ００”で文字列終端を示し、ｂ３４は“０ｘ５８”で文字列“Ｘ”を、ｂ３５は“０ｘ００”で文字列終端を示すことから、ＥＶコマンドのＸオプションの使用許可を意味する。なお、ＥＶコマンドの単一コマンドを説明したが、複数のコマンド使用許可を行う場合は、さらに別にライセンス情報種別８ａとライセンス付加情報８ｂを追加することでコマンド使用許可を設定することができる。
【００５１】
図１２はコマンド使用不許可情報をもつライセンスデータの構造を示している。コマンド使用不許可情報を表す１バイトのライセンス情報種別８ａは、“０ｘ０５”の固定値をもつ。５バイトのライセンス付加情報８ｂは、バイト単位に細分化されたｂ４１，ｂ４２，ｂ４３，ｂ４４，ｂ４５から構成され、それぞれＡＳＣＩＩ文字およびコマンド名の終端を示すコード“０ｘ００”が格納されている。ここでは、ｂ４１は“０ｘ４５”で文字列“Ｅ”を示し、ｂ４２は“０ｘ５６”で文字列“Ｖ”を示し、ｂ４３は“０ｘ００”で文字列終端を示し、ｂ４４は“０ｘ５８”で文字列“Ｘ”を示し、ｂ４５は“０ｘ００”で文字列終端を示すことから、ＥＶコマンドのＸオプションの使用不許可を意味する。なお、単一コマンドの使用不許可について説明したが、複数のコマンド使用不許可を行う場合は、さらに別にライセンス情報種別８ａとライセンス付加情報８ｂを追加することでコマンド使用不許可を設定することができる。
【００５２】
図１３は対応品種情報をもつライセンスデータの構造を示している。対応品種情報を表す１バイトのライセンス情報種別８ａは、“０ｘ０６”の固定値をもつ。４バイトのライセンス付加情報８ｂは、ライセンスを有する対応品種情報の識別番号を示す（この識別番号は、例えばＩＥＥＥ１１４９．１に定義されるＪＴＡＧのＩＤコードのようなものを想定している）。ここでは、ライセンスを有する対応品種情報として“０ｘ１１２２３３６５”が設定されている。
【００５３】
図１４は外部記憶媒体識別コード情報をもつライセンスデータの構造を示している。外部記憶媒体識別コード情報を表す１バイトのライセンス情報種別８ａは、“０ｘ０７”の固定値をもつ。４バイトのライセンス付加情報８ｂは、外部記憶媒体を一意に特定できる識別コードを格納する。これは外部記憶媒体の製造番号を想定し、識別コードとして“０ｘ０１２３４５６７”が格納されている。
【００５４】
図１５はユーザ情報をもつライセンスデータの構造を示している。ユーザ情報をもつライセンスデータの構造は、ユーザ情報を表す１バイトのライセンス情報種別８ａは、“０ｘ０８”の固定値をもつ。５バイトのライセンス付加情報８ｂは、バイト単位に細分化されたｂ７１、ｂ７２、ｂ７３、ｂ７４、ｂ７５から構成され、それぞれＡＳＣＩＩ文字およびコマンド名の終端を示すコード“０ｘ００”が格納されている。ここで、ｂ７１は“０ｘ４１”で文字列“Ａ”を示し、ｂ７２は“０ｘ００”で文字列終端を示し、ｂ７３は“０ｘ３０”で文字列“０”を示し、ｂ７４は“０ｘ３１”で文字列“１”を示し、ｂ７５は“０ｘ００”で文字列終端を示すことから、ユーザ名を“Ａ”、パスワードを“０１”とする情報が格納されている。
【００５５】
図１６は使用許可ホスト情報をもつライセンスデータの構造を示している。使用許可ホスト情報を表す１バイトのライセンス情報種別８ａは、“０ｘ０９”の固定値をもつ。６バイトのライセンス付加情報８ｂは、デバッグ装置Ａ１の使用を許可するホストコンピュータのＭＡＣアドレス値“０００９６Ｂ００００００”が格納されている。このＭＡＣアドレス値を保持するホストコンピュータ以外の接続は許可されないことになる。
【００５６】
図１７はコマンド実行回数情報をもつライセンスデータの構造を示している。コマンド実行回数情報を表す１バイトのライセンス情報種別８ａは、“０ｘ０Ａ”の固定値をもつ。また、４バイトのライセンス付加情報８ｂは、実行可能なコマンド実行回数を示す。ここでは、“０ｘ００００００６４”すなわち１００回のコマンド実行が可能なことを意味する。デバッガからコマンド実行要求を受けるたびに、デバッグ装置Ａ１は、このコマンド実行回数情報を“１”減算する。コマンド実行回数が“０”になった場合、デバッグ装置Ａ１は、デバッグコマンド実行を抑制することになる。
【００５７】
次に、デバッグ装置Ａ１によるライセンス情報の判定処理の動作を図１８、図１９に示すフローチャートに従って説明する。
【００５８】
ライセンス情報の判定処理を実行するのは、デバッグ装置Ａ１に予め具備する制御ソフトウェア３である。使用者がデバッガ２１の起動を指示したり外部記憶媒体６をデバッグ装置Ａ１から抜き挿しすると、ステップｎ１の処理を開始する。
【００５９】
ステップｎ２において、外部記憶媒体６から外部記憶媒体識別コード７と暗号化されたライセンス情報８を取得する。
【００６０】
ステップｎ３において、取得したライセンス情報８に対して秘密鍵４との排他的論理和演算を行い、ライセンス情報を復号化する。
【００６１】
ステップｎ４において、復号化したライセンス情報のチェックサム値を算出する。
【００６２】
ステップｎ５において、算出したチェックサム値とで復号化したライセンス情報に含まれる「チェックサム値」が一致するか否かの判定を行い、一致しない場合はステップｎ２２へ移行し、一致する場合はステップｎ６へ移行する。
【００６３】
ステップｎ６において、取得した外部記憶媒体識別コードと復号化したライセンス情報に含まれる「外部記憶媒体識別コード」が一致するか否かの判定を行い、一致しない場合はステップｎ２２へ移行し、一致する場合はステップｎ７へ移行する。
【００６４】
ステップｎ７において、復号化したライセンス情報に含まれる「有効期間情報」の有無を判定し、有の場合はステップｎ８へ移行し、無の場合はステップｎ１０の処理へ移行する。
【００６５】
ステップｎ８において、ホストコンピュータ２０より現在時刻と日付を取得する。
【００６６】
ステップｎ９において、復号化したライセンス情報に含まれる「有効期間情報」と取得した現在時刻と日付とを比較する。有効期間情報が有効期間内であればステップｎ１０へ移行し、有効期間外であればライセンス無効と判断し、ステップｎ２２へ移行する。
【００６７】
ステップｎ１０において、復号化したライセンス情報に含まれる「起動許可回数」の有無を判断し、有の場合はステップｎ１１へ移行し、無の場合はステップｎ１２へ移行する。
【００６８】
ステップｎ１１において、復号化したライセンス情報に含まれる「起動許可回数」が“１”以上であるか否かの判定を行い、“１”以上であればステップｎ１２の処理へ進み、”１“未満の場合はステップｎ２２へ移行する。
【００６９】
ステップｎ１２において、復号化したライセンス情報に含まれる「対応品種情報」の有無の判定を行い、有の場合はステップｎ１３へ移行し、無の場合はステップｎ１５へ移行する。
【００７０】
ステップｎ１３において、ターゲットＣＰＵ３０上に存在するターゲットＩＤ情報３１を取得する。
【００７１】
ステップｎ１４において、復号化したライセンス情報に含まれる「対応品種情報」と取得したターゲットＩＤ情報が一致するか否かの判定を行い、一致する場合はステップｎ１５へ移行し、一致しない場合はステップｎ２２へ移行する。
【００７２】
ステップｎ１５において、復号化したライセンス情報に含まれる「使用可能ホスト情報」の有無を判断し、有の場合はステップｎ１６へ移行し、無の場合はステップｎ１８へ移行する。
【００７３】
ステップｎ１６において、ホストコンピュータ２０上に存在するＭＡＣアドレス情報２２を取得する。
【００７４】
ステップｎ１７において、復号化したライセンス情報に含まれる「使用可能ホスト情報」と取得したＭＡＣアドレス情報が一致するか否かの判定を行い、一致する場合はステップｎ１８へ移行し、一致しない場合はステップｎ２２へ移行する。
【００７５】
ステップｎ１８において、復号化したライセンス情報に含まれる「ユーザ情報」の有無を判断し、有の場合はステップｎ１９へ移行し、無の場合はステップｎ２１へ移行する。
【００７６】
ステップｎ１９において、ホストコンピュータ２０上に対し、ユーザ情報入力を要求し取得する。ユーザ情報入力の詳細については後述する。
【００７７】
ステップｎ２０において、復号化したライセンス情報に含まれる「ユーザ情報」と取得したユーザ情報が一致するか否かの判定を行い、一致する場合はステップｎ２１へ移行し、一致しない場合はステップｎ２２へ移行する。
【００７８】
ステップｎ２１において、取得したライセンス情報が有効であると判断し、図２に示す内部信号Ｓ７としてライセンス許可信号をホスト通信部１へ出力する。ホスト通信部１はライセンス許可信号Ｓ７を入力すると、デバッグデータＤ４として起動許可信号をデバッガ２１へ出力する。デバッガ２１は、起動許可信号Ｄ４を受信すると、起動を行い、デバッガのＧＵＩデータやデバッグコマンドを入力するウィンドウデータを表示部２４へ出力する。表示部２４は、デバッガのＧＵＩの表示により使用者に正常にデバッガが起動できたことを通知する。
【００７９】
ステップｎ２２において、取得したライセンス情報が無効であると判断し、図２に示す内部信号Ｓ７としてライセンス不許可信号をホスト通信部１へ出力する。ホスト通信部１はライセンス不許可信号Ｓ７を入力すると、デバッグデータＤ４として起動不許可信号をデバッガ２１へ出力する。デバッガ２１は、起動不許可信号Ｄ４を受信すると、デバッガの起動を行わず、使用者にライセンスエラーであることを表示部２４に表示する。
【００８０】
図２０はユーザ情報入力時の画面表示を示す図である。ライセンス情報８にユーザ情報が含まれている場合、デバッガ起動時に、ユーザ情報入力画面２４ａが表示部２４に表示される。使用者は、ユーザ名を図中の２４ｂへ、パスワードを図中の２４ｃに入力し、ユーザ認証を行う。
【００８１】
図２１はライセンス無効時のエラー表示を示す図である。デバッガ起動時、図１８、図１９で説明したライセンス判定処理に失敗した場合は、デバッガ２１は、表示部２４にエラーメッセージ２４ｄを表示し、デバッガ起動を抑制する。
【００８２】
以上のように、図１８、図１９のライセンス情報の判定処理を実行すると、デバッガ起動時や、デバッグ装置Ａ１から外部記憶媒体６を抜き挿しする際に、ライセンスは強制的に無効状態となり、外部記憶媒体６の識別コードとライセンス情報８と秘密鍵４で、セキュリティ性の高い状態でデバッガのライセンス管理を行うことが可能となる。
【００８３】
次に、デバッグ装置Ａ１がデバッガ２１からのデバッグコマンドＤ１の受信毎に有効なライセンスが存在するか否かの判定について説明する。
【００８４】
図２２はデバッグコマンド処理時のライセンス情報判定処理を示すフローチャートである。このライセンス情報判定処理は制御ソフトウェア３が実行するものである。デバッグ装置Ａ１にデバッグコマンドＤ１が入力されると、制御ソフトウェア３は実行を開始し、ステップｎ３１に処理を移行する。
【００８５】
ステップｎ３２において、受信したデバッグコマンドを解析し、ステップｎ３３へ移行する。
【００８６】
ステップｎ３３において、図１８、図１９のステップｎ３で復号化したライセンス情報に「コマンド使用設定情報」（図１０参照）が含まれるか否かを判断し、有の場合はステップｎ３４へ移行し、無の場合はステップｎ３９へ移行する。
【００８７】
ステップｎ３４において、ステップｎ３で復号化した「コマンド使用設定情報」と図１０に示すライセンス付加情報８ｂの数値“０ｘ００”とが一致するか否かの判定を行い、一致する場合はステップｎ３５へ移行し、一致しない場合はステップｎ３７へ移行する。
【００８８】
ステップｎ３７において、ステップｎ３で復号化したライセンス情報に含まれる「コマンド使用許可情報」の有無を判断し、有の場合はステップｎ３８のへ移行し、無の場合はステップｎ４３の処理へ移行する。
【００８９】
ステップｎ３８において、受信したデバッグコマンドが取得したコマンド使用許可情報に含まれるか否かの判定を行い、含まれる場合は許可したデバッグコマンドと判断し、ステップｎ３９へ移行する。含まれない場合は不許可デバッグコマンドと判断し、ステップｎ４３へ移行する。
【００９０】
ステップｎ３５において、ステップｎ３で復号化したライセンス情報に含まれる「コマンド使用不許可情報」の有無を判断し、有の場合はステップｎ３６へ移行し、無の場合はステップｎ３９へ移行する。
【００９１】
ステップｎ３６において、受信したデバッグコマンドとステップｎ３で復号化したライセンス情報に含まれる「コマンド使用不許可情報」とが一致するか否かの判定を行い、一致する場合はステップｎ４３へ移行し、一致しない場合はステップｎ３９へ移行する。
【００９２】
ステップｎ３９において、ステップｎ３で復号化したライセンス情報に含まれる「コマンド実行回数」の有無を判断し、有の場合はステップｎ４０へ移行し、無の場合はステップｎ４２へ移行する。
【００９３】
ステップｎ４０において、取得したコマンド実行回数が“１”以上であるかの判断を行い、“１”であればステップｎ４１へ移行し、“１”未満であればステップｎ４３へ移行する。
【００９４】
ステップｎ４１において、取得したコマンド実行回数情報から“１”を減算し、コマンド実行回数情報の更新を行い、ステップｎ４２へ移行する。
【００９５】
ステップｎ４２において、デバッグコマンドを実行し、ステップｎ４３において、ライセンスエラーであることをホストコンピュータへ通知する。
【００９６】
以上のように、実施の形態１では、デバッグ装置Ａ１は、デバッグコマンド受信毎に有効なライセンスが存在するか否かのチェックを行い、有効なライセンスが存在する場合のみ、デバッグ対象のターゲットＣＰＵ３０に対する通信を開始することでデバッグコマンドの実行を開始する。有効なライセンスが存在しない場合は、ホストコンピュータ２０に対してライセンスエラーの通知を行い、デバッグコマンドは一切実行することができなくなる。
【００９７】
（実施の形態２）
実施の形態２を図２３から図２５を参照しながら説明する。
【００９８】
図２３は実施の形態２におけるデバッグ装置Ａ２の構成を示すブロック図である。このデバッグ装置Ａ２は、実施の形態１で説明したデバッグ装置Ａ１に時間管理部９を追加した構成となっている。時間管理部９以外はすべて実施の形態１のデバッグ装置Ａ１と同じである。その他の構成要素については実施の形態１の図２と同一であるので同一の参照符号を付すにとどめ、その説明を省略する。
【００９９】
時間管理部９は、時間と日付を管理するものであり、例えばバッテリバックアップで動作する時計のようなものである。時間管理部９は、ＣＰＵ２から時間と日付取得を要求する信号Ｓ８を入力すると、ＣＰＵ２へ現在時間・日付情報Ｓ９を返す構成となっている。実施の形態１では時間と日付の管理をホストコンピュータ２０で行っていたが、実施の形態２ではデバッグ装置Ａ２で管理を行う構成となる。
【０１００】
次に、デバッグ装置Ａ２によるライセンス情報の判定処理の動作を図２４、図２５に示すフローチャートに従って説明する。
【０１０１】
制御ソフトウェア３は、デバッガ２１からの起動コマンドを受信したり外部記憶媒体６をデバッグ装置Ａ２から抜き挿しすると、ステップｎ５１へ移行し、処理を開始する。
【０１０２】
ステップｎ５２において、外部記憶媒体６から外部記憶媒体識別コード７と暗号化されたライセンス情報８を取得し、ステップｎ５３へ移行する。
【０１０３】
ステップｎ５３において、取得したライセンス情報８に対して秘密鍵４との排他的論理和演算を行って復号化し、ステップｎ５４へ移行する。
【０１０４】
ステップｎ５４において、復号化したライセンス情報のチェックサム値を算出し、ステップｎ５５へ移行する。
【０１０５】
ステップｎ５５において、算出したチェックサム値と復号化したライセンス情報に含まれる「チェックサム値」が一致するか否かの判定を行い、一致しない場合はステップｎ７２へ移行し、ライセンス無効と判断し処理を終了する。一致する場合はステップｎ５６へ移行する。
【０１０６】
ステップｎ５６において、取得した外部記憶媒体識別コードと復号化したライセンス情報に含まれる「外部記憶媒体識別コード」が一致するか否かの判定を行い、一致しない場合はステップｎ７２へ移行し、一致する場合はステップｎ５７へ移行する。
【０１０７】
ステップｎ５７において、復号化したライセンス情報に含まれる「有効期間情報」の有無を判断し、有の場合はステップｎ５８へ移行し、無の場合はステップｎ６０へ移行する。
【０１０８】
ステップｎ５８において、時間管理部９より現在時刻と日付を取得し、ステップｎ５９へ移行する。
【０１０９】
ステップｎ５９において、復号化したライセンス情報に含まれる「有効期間情報」と取得した現在時刻と日付とを比較する。有効期間内であればステップｎ６０の処理へ進み、有効期間外であればステップｎ７２へ移行し、ライセンス無効と判断し処理を終了する。
【０１１０】
ステップｎ６０において、復号化したライセンス情報に含まれる「起動許可回数情報」の有無を判断し、有の場合はステップｎ６１の処理へ進み、無の場合はステップｎ６２へ進む。
【０１１１】
ステップｎ６１において、復号化したライセンス情報に含まれる「起動許可回数」が“１”以上かの判断を行い、“１”以上であればステップｎ６２の処理へ進み、“１”未満の場合はステップｎ７２へ移行し、ライセンス無効と判断し処理を終了する。
【０１１２】
ステップｎ６２において、復号化したライセンス情報に含まれる「対応品種情報」の有無を判断し、有の場合はステップｎ６３の処理へ進み、無の場合はステップｎ６５の処理へ進む。
【０１１３】
ステップｎ６３において、ターゲットＣＰＵ３０上に存在するターゲットＩＤ情報３１を取得し、ステップｎ６４へ移行する。
【０１１４】
ステップｎ６４において、復号化したライセンス情報に含まれる「対応品種情報」と取得したターゲットＩＤ情報が一致するか否か否かの判定を行い、一致する場合はステップｎ６５へ移行し、一致しない場合はステップｎ７２へ移行し、ライセンス無効と判断し処理を終了する。
【０１１５】
ステップｎ６５において、復号化したライセンス情報に含まれる「使用可能ホスト情報」の有無を判断し、有の場合はステップｎ６６へ移行し、無の場合はステップｎ６８へ移行する。
【０１１６】
ステップｎ６６において、ホストコンピュータ２０上に存在するＭＡＣアドレス情報２２を取得し、ステップｎ６７へ移行する。
【０１１７】
ステップｎ６７において、復号化したライセンス情報に含まれる「使用可能ホスト情報」と取得したＭＡＣアドレス情報が一致するか否かの判定を行い、一致する場合はステップｎ６８へ移行し、一致しない場合はステップｎ７２へ移行し、ライセンス無効と判断し処理を終了する。
【０１１８】
ステップｎ６８において、復号化したライセンス情報に含まれる「ユーザ情報」の有無を判断し、有の場合はステップｎ６９へ移行し、無の場合はステップｎ７１へ移行する。
【０１１９】
ステップｎ６９において、表示部２４に対し図２０で示したユーザ情報入力時の画面表示を行い、使用者に対しユーザ情報の入力要求を行い、ユーザ情報を取得する。ユーザ情報の入力を完了するとステップｎ７０へ移行する。
【０１２０】
ステップｎ７０において、復号化したライセンス情報に含まれる「ユーザ情報」と取得したユーザ情報が一致するか否かの判定を行い、一致する場合はステップｎ７１へ移行し、一致しない場合はステップｎ７２へ移行する。
【０１２１】
ステップｎ７１において、ライセンスが有効であると判断し、図２３に示すライセンス許可信号Ｓ７をホスト通信部１へ出力する。ホスト通信部１はライセンス許可信号Ｓ７を入力すると、デバッグデータＤ４（起動許可信号）をデバッガ２１へ出力する。デバッガ２１は、起動許可信号Ｄ４を受信すると起動を行い、デバッガのＧＵＩデータやデバッグコマンドを入力するためのウィンドウデータを表示部２４へ出力する。表示部２４は、ＧＵＩデータやデバッグコマンドを入力するためのウィンドウデータを受信すると、デバッガＧＵＩの表示を行い、使用者にデバッガが正常に起動できたことを通知する。
【０１２２】
ステップｎ７２において、ライセンスが無効であると判断し、ライセンス不許可信号Ｓ７をホスト通信部１へ出力する。ホスト通信部１はライセンス不許可信号Ｓ７を入力すると、デバッグデータＤ４（起動不許可信号）をデバッガ２１へ出力する。デバッガ２１は、起動不許可信号Ｄ４を受信すると起動を行わず、ライセンスエラーであることを表示部２４に表示して使用者に知らせる。
【０１２３】
以上のように、図２４、図２５の処理を実行することで、デバッガ起動時や、デバッグ装置Ａ２から外部記憶媒体６を抜き挿しする際に、ライセンスは強制的に無効状態となり、外部記憶媒体６の識別コードと暗号化されたライセンス情報８と秘密鍵４で、セキュリティ性の高い状態でデバッガのライセンス管理を行うことが可能となる。
【０１２４】
また、デバッグ装置Ａ２がデバッガからのデバッグコマンド受信毎に有効なライセンスが存在するか否かの判定については、図２２で説明した処理を実行することで実現できる。
【０１２５】
以上のように、実施の形態２では、デバッグコマンド受信毎に有効なライセンスが存在するかのチェックを行い、有効なライセンスが存在する場合のみ、デバッグ対象のターゲットＣＰＵ３０に対する通信を開始することでデバッグコマンドの実行を開始する。また、有効なライセンスが存在しない場合は、ホストコンピュータ２０に対してライセンスエラーの通知を行い、デバッグコマンドは一切実行することができなくなる。さらに、デバッグ装置Ａ２内に、時間管理部９を設け、現在時刻と日付を取得することにより、実施の形態１で説明したホストコンピュータ２０から現在時刻と日付を取得しなくても有効期間の有無を判定することができるようになり、デバッガの有効期間の管理を行うことが可能となる。
【０１２６】
（実施の形態３）
本発明の実施の形態３を図２６から図３１を参照しながら説明する。
【０１２７】
図２６は本発明の実施の形態３のデバッグシステムの構成を示すブロック図である。
【０１２８】
図２６において、実施の形態３のデバッグシステムは、実施の形態１で説明した図１のデバッグシステムに、外部ネットワーク接続部１１とライセンス情報付与サーバ１２を追加した構成である。外部ネットワーク接続部１１は、外部ネットワークへ接続するためのコネクタであり、ライセンス情報付与サーバ１２は、デバッガの使用者にライセンス情報の更新を行うものである。また、外部ネットワーク接続部１１とライセンス情報付与サーバ１２は、デバッグ装置Ａ３からの指示により動作するものである。ライセンス情報の更新の詳細については後述する。
【０１２９】
図２７は本発明の実施の形態３におけるデバッグ装置Ａ３の構成を示すブロック図である。このデバッグ装置Ａ３は、実施の形態１で説明した図２のデバッグ装置Ａ１にネットワーク通信部１０を追加した構成となっている。ネットワーク通信部１０は、ＣＰＵ２からのライセンス更新処理要求Ｓ１０を入力すると外部ネットワーク接続部１１へライセンス更新用情報Ｄ５を出力する。
【０１３０】
図２８はデバッグ装置Ａ３におけるライセンス情報の更新処理を示すフローチャートある。図２８において、ライセンス情報更新処理は、デバッグ装置Ａ３における制御ソフトウェア３が常時ステップｎ８１を実行し、ライセンス期限が残り一ヶ月未満となると、ステップｎ８２へ移行し、ライセンス期限が残り一ヶ月以上ある場合はステップｎ９４へ移行し、処理を終了する。
【０１３１】
ステップｎ８２において、ホストコンピュータ２０へライセンス更新処理の要求を行い、ステップｎ８３へ移行する。
【０１３２】
ステップｎ８３において、ホストコンピュータ２０がデバッグ装置Ａ３からのライセンス更新処理を受信すると、ホストコンピュータ２０上でライセンス更新手続きを実施するための画面を使用者に表示し、ステップｎ８４に移行する。ライセンス更新手続きを実施する画面は図２９に示す。
【０１３３】
図２９において、ライセンス更新時の画面２４ｅはステップｎ８４の処理時に、ホストコンピュータ２０の表示部２４に表示する。ここでは、ライセンス延長の期間・ライセンス更新対象物を選択、支払い方法の指定を行う。表示の指定条件で、ライセンス情報を更新する場合は、右下の「ＯＫ」ボタン２４ｆを押下すると、ライセンス更新作業が実施され、ステップｎ８５へ移行する。また、ライセンス情報を更新しない場合は、図中の「キャンセル」ボタン２４ｇを押下し、ステップｎ９４へ移行する。
【０１３４】
ステップｎ８５において、ホストコンピュータ２０からライセンス更新用情報をデバッグ装置Ａ３へ送信する。
【０１３５】
ステップｎ８６において、デバッグ装置Ａ３が外部ネットワーク接続部１１を経由してライセンス情報付与サーバ１２へライセンス更新用情報Ｄ５を送信し、ステップｎ８７へ移行する。
【０１３６】
ステップｎ８７において、デバッグ装置Ａ３が送信したライセンス更新用情報Ｄ５をライセンス情報付与サーバ１２が受信すると、ステップｎ８８へ移行する。
【０１３７】
ステップｎ８８において、ライセンス更新情報の正当であるか否かの判定を行う。正当であればステップｎ８９へ、正当でなければステップｎ９３へ移行し、図３０に示すライセンス更新失敗メッセージ２４ｈを表示する。使用者はそのメッセージ２４ｈを確認し、図中の「確認ボタン」２４ｉを押下すると、ステップｎ９４へ移行し、処理を終了する。
【０１３８】
ステップｎ８９において、ライセンス情報付与サーバ１２が外部ネットワーク接続部１１に新しいライセンス情報Ｄ６を送信し、ステップｎ９０へ移行する。
【０１３９】
ステップｎ９０において、デバッグ装置Ａ３が新しいライセンス情報Ｄ６を外部ネットワーク接続部１１から受信すると、ステップｎ９１へ移行する。
【０１４０】
ステップｎ９１において、受信した新しいライセンス情報Ｓ１１を外部記憶媒体６に記録し、ステップｎ９２へ移行する。
【０１４１】
ステップｎ９２において、ライセンス更新完了であることを図３１に示すライセンス更新完了メッセージ２４ｊを表示し、ライセンス更新処理が正常に処理できたことを使用者へ通知する。
【０１４２】
以上のように、本発明の実施の形態３によれば、デバッグ装置Ａ３に外部ネットワーク接続部１１とライセンス情報付与サーバ１２を追加することで、外部ネットワーク接続部１１からネットワーク経路Ｄ７を経由し、ライセンス情報付与サーバ１２からライセンス情報の更新が外部ネットワーク接続部１１を経由して行うことが可能となり、使用者の煩わしいデバッガの更新操作を低減することができる。
【産業上の利用可能性】
【０１４３】
本発明のデバッグ装置は、セキュリティ性の高い状態でデバッガのライセンスを管理する手段等として有用である。
【図面の簡単な説明】
【０１４４】
【図１】本発明の実施の形態１におけるデバッグシステムの構成を示すブロック図
【図２】本発明の実施の形態１におけるデバッグ装置の構成を示すブロック図
【図３】本発明の実施の形態１における外部記憶媒体識別コードの構造を示す図
【図４】本発明の実施の形態１における秘密鍵の構造を示す図
【図５】本発明の実施の形態１におけるターゲットＩＤ情報の構造を示す図
【図６】本発明の実施の形態１における暗号化されたライセンス情報の構造を示す図
【図７】本発明の実施の形態１におけるライセンスデータの構造を示す図
【図８】本発明の実施の形態１における有効期間情報をもつライセンスデータの構造を示す図
【図９】本発明の実施の形態１における起動許可回数情報をもつライセンスデータの構造を示す図
【図１０】本発明の実施の形態１におけるコマンド使用設定情報をもつライセンスデータの構造を示す図
【図１１】本発明の実施の形態１におけるコマンド使用許可情報をもつライセンスデータの構造を示す図
【図１２】本発明の実施の形態１におけるコマンド使用不許可情報をもつライセンスデータの構造を示す図
【図１３】本発明の実施の形態１における対応品種情報をもつライセンスデータの構造を示す図
【図１４】本発明の実施の形態１における外部記憶媒体識別コード情報をもつライセンスデータの構造を示す図
【図１５】本発明の実施の形態１におけるユーザ情報をもつライセンスデータの構造を示す図
【図１６】本発明の実施の形態１における使用許可ホスト情報をもつライセンスデータの構造を示す図
【図１７】本発明の実施の形態１におけるコマンド実行回数情報をもつライセンスデータの構造を示す図
【図１８】本発明の実施の形態１におけるライセンス情報の判定処理を示すフローチャート（その１）
【図１９】本発明の実施の形態１におけるライセンス情報の判定処理を示すフローチャート（その２）
【図２０】本発明の実施の形態１におけるユーザ情報入力時の画面表示を示す図
【図２１】本発明の実施の形態１におけるライセンス無効時のエラー表示を示す図
【図２２】本発明の実施の形態１におけるデバッグコマンド処理時のライセンス情報判定処理を示すフローチャート
【図２３】本発明の実施の形態２におけるデバッグ装置の構成を示すブロック図
【図２４】本発明の実施の形態２におけるライセンス情報の判定処理を示すフローチャート（その１）
【図２５】本発明の実施の形態２におけるライセンス情報の判定処理を示すフローチャート（その２）
【図２６】本発明の実施の形態３のデバッグシステムの構成を示すブロック図
【図２７】本発明の実施の形態３におけるデバッグ装置の構成を示すブロック図
【図２８】本発明の実施の形態３におけるデバッグ装置におけるライセンス情報更新処理を示すフローチャート
【図２９】本発明の実施の形態３におけるライセンス情報更新時の画面表示を示す図
【図３０】本発明の実施の形態３におけるライセンス更新失敗時メッセージ表示を示す図
【図３１】本発明の実施の形態３におけるライセンス更新完了メッセージ表示を示す図
【図３２】従来の技術におけるデバッグシステムの構成を示すブロック図
【図３３】従来の技術におけるデバッグ装置の構成を示すブロック図
【図３４】従来の技術におけるライセンス情報ファイルを示す図
【図３５】従来の技術におけるデバッグシステムにおけるライセンス判定処理を示すフローチャート
【図３６】従来の技術におけるデバッグシステムにおけるライセンスエラー表示を示す図
【符号の説明】
【０１４５】
Ａ１，Ａ２，Ａ３  デバッグ装置
１  ホスト通信部
２  ＣＰＵ
３  制御ソフトウェア
４  秘密鍵
５  ターゲット通信部
６  外部記憶媒体
７  外部記憶媒体識別コード
８  ライセンス情報
８ａ  ライセンス情報種別
８ｂ  ライセンス付加情報
９  時間管理部
１０  ネットワーク通信部
１１  外部ネットワーク接続部
１２  ライセンス情報付与サーバ
２０  ホストコンピュータ
２１  デバッガ
２２  ＭＡＣアドレス情報
２３  入力部
２４  表示部
３０  ターゲットＣＰＵ
３１  ターゲットＩＤ情報
Ｄ１  デバッグコマンド
Ｄ２  ターゲットコマンド
Ｄ３  ターゲットデータ
Ｄ４  デバッグデータ
Ｄ５  ライセンス更新用情報
Ｄ６  新しいライセンス情報
Ｄ７  ネットワーク経路
【図１】
2006259810.tif 000003
【図２】
2006259810.tif 000004
【図３】
2006259810.tif 000005
【図４】
2006259810.tif 000006
【図５】
2006259810.tif 000007
【図６】
2006259810.tif 000008
【図７】
2006259810.tif 000009
【図８】
2006259810.tif 000010
【図９】
2006259810.tif 000011
【図１０】
2006259810.tif 000012
【図１１】
2006259810.tif 000013
【図１２】
2006259810.tif 000014
【図１３】
2006259810.tif 000015
【図１４】
2006259810.tif 000016
【図１５】
2006259810.tif 000017
【図１６】
2006259810.tif 000018
【図１７】
2006259810.tif 000019
【図１８】
2006259810.tif 000020
【図１９】
2006259810.tif 000021
【図２０】
2006259810.tif 000022
【図２１】
2006259810.tif 000023
【図２２】
2006259810.tif 000024
【図２３】
2006259810.tif 000025
【図２４】
2006259810.tif 000026
【図２５】
2006259810.tif 000027
【図２６】
2006259810.tif 000028
【図２７】
2006259810.tif 000029
【図２８】
2006259810.tif 000030
【図２９】
2006259810.tif 000031
【図３０】
2006259810.tif 000032
【図３１】
2006259810.tif 000033
【図３２】
2006259810.tif 000034
【図３３】
2006259810.tif 000035
【図３４】
2006259810.tif 000036
【図３５】
2006259810.tif 000037
【図３６】
2006259810.tif 000038