(57)【要約】【課題】プログラマブルデバイスを使用したシステムのプログラムデータの模倣や内部動作解析と防止する事を目的とする。【解決手段】図１はプログラマブルロジックデバイスを使用したシステムの構成図を示し、図１においてプログラマブルロジックデバイス１０が使用するプログラムデータを格納する外部メモリ手段であるＲＯＭ１１、プログラマブルロジックデバイス１０には、キー情報生成手段である入出力ピンの状態を読み取るＩ／Ｏ制御手段１２と、ＲＯＭ１１からのデータをＩ／Ｏ制御手段１２からのキー情報で復号処理し、復号プログラムデータを出力する復号手段１３と、内部の書換可能メモリへ設定データを書き込む事によって機能の定義が行なわれるロジックエレメントが敷き詰められたロジックエレメントアレイ１５と、そのロジックエレメントアレイ１５に書込みを行なうプログラム手段１４とで構成されている。【選択図】　図１
2004070556.tif 000002
【特許請求の範囲】
【請求項１】
外部メモリ手段からプログラムデータを内部の書換可能メモリに書き込むことによって機能の定義を行うプログラマブルロジックデバイスにおいて、
所定の手段によってキー情報を生成するキー情報生成手段と、
前記キー情報を符号キーとして予め符号化された符号化プログラムデータを前記外部メモリ手段から入力して前記キー情報を復号キーとして復号する復号手段と、
前記復号手段の復号結果である復号プログラムデータを前記内部の書換可能メモリに書き込むことによって機能の定義を行うプログラム手段とを備えたことを特徴とするプログラマブルロジックデバイス。
【請求項２】
外部メモリ手段からプログラムデータを内部の書換可能メモリに書き込むことによって機能の定義を行うプログラマブルロジックデバイスにおいて、
所定の手段によって第１のキー情報を生成するキー情報生成手段と、
前記第１のキー情報を符号キーとして予め符号化された第１の符号化プログラムデータを前記外部メモリ手段から入力して前記第１のキー情報を復号キーとして復号する第１の復号手段と、
前記第１の復号手段の復号結果である第１の復号プログラムデータを前記内部の書換可能メモリに書き込み機能の定義を行うプログラム手段とを有し、
前記第１の復号プログラムデータを前記内部の書換可能メモリに書き込むことによって第２のキー情報を生成するキー情報生成回路を構成し、
前記第２のキー情報を復号キーとして予め符号化された第２の符号化プログラムデータを前記外部メモリ手段から入力して前記キー情報生成回路からの前記第２のキー情報を復号キーとして復号する復号回路とを構成し、
前記プログラム手段は、前記復号回路の復号結果である第２の復号プログラムデータを使って前記内部の書換可能メモリを再設定することで機能を定義することを特徴とするプログラマブルロジックデバイス。
【請求項３】
前記キー情報生成手段は、プログラマブルロジックデバイスの複数の外部端子の電気的なレベルの組合せからキー情報生成規則を得ることを特徴とする請求項１、または請求項２記載のプログラマブルロジックデバイス。
【請求項４】
前記キー情報生成手段は、生成するキー情報を一定時間経過後に無効化する事を特徴とする請求項１、または請求項２記載のプログラマブルロジックデバイス。
【請求項５】
前記キー情報生成手段は、外部に作り込まれた所定の特性を有するアナログ回路のインパルス応答性能の計測結果からキー情報生成規則を得る事を特徴とする請求項１、または請求項２記載のプログラマブルロジックデバイス。
【請求項６】
前記キー情報生成回路は、前記復号回路の復号処理の進行と同期して所定の規則に従って前記第２のキー情報を変化させ、前記第２の符号化プログラムデータは予め変化する前記第２のキー情報を符号キーとして符号化処理しておく事を特徴とする請求項２記載のプログラマブルロジックデバイス。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、汎用プログラマブルロジックデバイスを用いたシステムの模倣防止、及び内部定義回路の動作解析を防止、或いは解析を困難にする構成と方法に関するものである。
【０００２】
【従来の技術】
従来のプログラマブルロジックデバイスは、外部のメモリ手段に格納してある内部機能の定義情報であるプログラムデータを読み込んで所定の機能を設定する。
【０００３】
【発明が解決しようとする課題】
この従来のプログラマブルロジックデバイスでは、プログラムデータが外部の独立したメモリ手段に格納されており、同種のメモリ手段にプログラムデータを複製し、同種のプログラマブルロジックデバイスと組み合わせる事で容易に機能の模倣が可能となっていた。
【０００４】
また、機能を定義する情報が外部に曝されているため、機能を解析する行為には無防備である。
【０００５】
本発明は安易な模倣を防止し、デバイス内に定義した機能の解析を困難にするプログラマブルロジックデバイスを提供する事を目的とする。
【０００６】
【課題を解決するための手段】
この課題を解決するために第１の発明のプログラマブルロジックデバイスは、所定の手段によってキー情報を生成するキー情報生成手段と、前記キー情報を符号キーとして予め符号化された符号化プログラムデータを前記外部メモリ手段から入力して前記キー情報を復号キーとして復号する復号手段と、前記復号手段の復号結果である復号プログラムデータを前記内部の書換可能メモリに書き込むことによって機能の定義を行うプログラム手段とを備える。
【０００７】
この構成により、キー情報と前記符号化プログラムデータの組合せでなければ、正常な機能定義が行われないようにしたものである。
【０００８】
また、第２の発明のプログラマブルロジックデバイスは、所定の手段によって第１のキー情報を生成するキー情報生成手段と、前記第１のキー情報を符号キーとして予め符号化された第１の符号化プログラムデータを前記外部メモリ手段から入力して前記第１のキー情報を復号キーとして復号する第１の復号手段と、前記第１の復号手段の復号結果である第１の復号プログラムデータを前記内部の書換可能メモリに書き込み機能の定義を行うプログラム手段とを有し、前記第１の復号プログラムデータを前記内部の書換可能メモリに書き込むことによって第２のキー情報を生成するキー情報生成回路を構成し、前記第２のキー情報を復号キーとして予め符号化された第２の符号化プログラムデータを前記外部メモリ手段から入力して前記キー情報生成回路からの前記第２のキー情報を復号キーとして復号する復号回路とを構成し、前記プログラム手段は、前記復号回路の復号結果である第２の復号プログラムデータを使って前記内部の書換可能メモリを再設定することで機能を定義することを特徴とする。
【０００９】
この構成により、最終的な機能定義を行なう第２の復号プログラムデータを外部から隠蔽することが可能となる。
【００１０】
【発明の実施の形態】
以下、本発明の実施形態について、図面を用いて説明する。
【００１１】
（実施の形態１）
図１はプログラマブルロジックデバイスを使用したシステムの構成図を示し、図１においてプログラマブルロジックデバイス１０が使用するプログラムデータを格納する外部メモリ手段であるＲＯＭ１１、プログラマブルロジックデバイス１０には、キー情報生成手段である入出力ピンの状態を読み取るＩ／Ｏ制御手段１２と、ＲＯＭ１１からのデータをＩ／Ｏ制御手段１２からのキー情報で復号処理し、復号プログラムデータを出力する復号手段１３と、内部の書換可能メモリへ設定データを書き込む事によって機能の定義が行なわれるロジックエレメントが敷き詰められたロジックエレメントアレイ１５と、そのロジックエレメントアレイ１５に書込みを行なうプログラム手段１４とで構成されている。
【００１２】
この様に構成されたシステムにおいて、Ｉ／Ｏ制御手段１２が外部との接点である入出力ピンの所定の組み合わせで終端されて状態がキー情報となっている事を外部から隠蔽する為に、プログラマブルロジックデバイス１０をプリント配線基板上に実装した状態でＩ／Ｏ制御手段１２が使用する端子が外部から観測できないパッケージ形状を用いる。
【００１３】
例えば、ＢＧＡパッケージの中心に近い部分の入出力ピンをキー情報の生成に用いる。こうすることにより、事実上キー情報他の解析を行うことは不可能となる。
【００１４】
（実施の形態２）
更に、図１において、タイマ手段１６はプログラム手段１４が最初の書き込みデータを受け取った時点から他の手段とは独立したクロックを用いて動作を開始し、予め設定されたロジックエレメントアレイ１５を設定完了する最短時間でＩ／Ｏ制御手段１２に対してキー情報出力の無効化指示信号を送る。
【００１５】
この様にタイマ手段によって計測された、予め定められた実時間動作でなければ復号手段１３の処理が停止する事により、ＲＯＭ１１からの入力するデータの替わりに解析パターンを流し込んでの復号手段１３の解析を防止する。
【００１６】
（実施の形態３）
図２は、実施の形態３によるプログラマブルロジックデバイスを使用したシステムの構成図である。符号は図１と同じである。
【００１７】
ここでは、図１の構成に加えＩ／Ｏ制御手段１２が外部との接点である入出力ピン間に図２の様な所定の特性を有するアナログ回路を接続し、この回路のインパルス応答性能の計測結果からキー情報生成規則を得る様にしている。よって、このアナログ回路に解析の為の測定装置のプローブが接続された状態では正確な特性を再現できず解析と模倣を困難にする。
【００１８】
（実施の形態４）
図３はプログラマブルロジックデバイスを使用したシステムの構成図を示し、図３においてプログラマブルロジックデバイス２０が使用するプログラムデータを格納する外部メモリ手段であるＲＯＭ２１、プログラマブルロジックデバイス２０には、第１のキー情報生成手段である入出力ピンの状態を読み取るＩ／Ｏ制御手段２２と、ＲＯＭ２１からのデータをＩ／Ｏ制御手段２２からの第１のキー情報で復号処理し、第１の復号プログラムデータを出力する第１の復号手段２３と、内部の書換可能メモリへ設定データを書き込む事によって機能の定義が行なわれるロジックエレメントが敷き詰められたロジックエレメントアレイ２５と、そのロジックエレメントアレイ２５に書込みを行なうプログラム手段２４と、ＲＯＭ２１からのデータをロジックエレメントアレイ２５内部に伝える入力ブリッジ部２７と、ロジックエレメントアレイ２５内部からの出力を伝える出力ブリッジ部２８と、出力ブリッジ部２８からのデータを一時的に貯えるバッファ手段２９と、第１の復号手段２３とバッファ手段２９からのデータと選択し、プログラム手段２４に伝えるスイッチ手段２６とで構成されている。
【００１９】
この様に構成されたシステムにおいて、最初の機能定義がロジックエレメントアレイ２５に書き込まれるまでは実施の形態１と同様であるので説明は省略する。
【００２０】
実施の形態４では第１の復号データによるロジックエレメントアレイ２５への最初の機能定義で、回路が図４に示す様に、キー情報生成回路２２ａと復号回路２３ａとが形成される。
【００２１】
回路が形成されると以降は、ＲＯＭ２１からの第２の符号化プログラムデータは入力ブリッジ部２７を経由して、復号回路２３ａでキー情報生成回路２２ａが生成する第２のキー情報によって、第２の復号プログラムデータへと変換され、出力ブリッジ部２８を経由してバッファ手段２９に貯えられる。全ての第２の符号化プログラムデータが第２の復号プログラムデータへ変換され、バッファ手段２９に貯えられると、スイッチ手段２６はプログラム手段２４へ第２の復号プログラムデータを渡し、最終的な目的の機能を定義する。
【００２２】
この時、第２のキー情報と第２の復号プログラムデータは外部に露出しない為、解析や模倣が困難となる。
【００２３】
【発明の効果】
以上のように本発明によれば安易な模倣の防止やプログラムデータの解析を困難にするという効果が得られる。
【図面の簡単な説明】
【図１】本発明の実施の形態１、および実施の形態２によるプログラマブルロジックデバイスを使用したシステムの構成図
【図２】本発明の実施の形態３によるプログラマブルロジックデバイスを使用したシステムの構成図
【図３】本発明の実施の形態４によるプログラマブルロジックデバイスを使用したシステムの構成図
【図４】本発明の実施の形態４によるプログラマブルロジックデバイスを使用したシステムの別状態の構成図
【符号の説明】
１０　プログラマブルロジックデバイス
１１　ＲＯＭ
１２　Ｉ／Ｏ制御手段
１３　復号手段
１４　プログラム手段
１５　ロジックエレメントアレイ
２０　プログラマブルロジックデバイス
２１　ＲＯＭ
２２　Ｉ／Ｏ制御手段
２３　第１の復号手段
２４　プログラム手段
２５　ロジックエレメントアレイ
２６　スイッチ手段
２７　入力ブリッジ部
２８　出力ブリッジ部
２９　バッファ手段
【図１】
2004070556.tif 000003
【図２】
2004070556.tif 000004
【図３】
2004070556.tif 000005
【図４】
2004070556.tif 000006