JP2012174228A - Program protection device and communication apparatus - Google Patents
Program protection device and communication apparatus Download PDFInfo
- Publication number
- JP2012174228A JP2012174228A JP2011038886A JP2011038886A JP2012174228A JP 2012174228 A JP2012174228 A JP 2012174228A JP 2011038886 A JP2011038886 A JP 2011038886A JP 2011038886 A JP2011038886 A JP 2011038886A JP 2012174228 A JP2012174228 A JP 2012174228A
- Authority
- JP
- Japan
- Prior art keywords
- program
- protection device
- processor
- processing
- processing program
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Storage Device Security (AREA)
Abstract
Description
本発明は、プログラム保護装置および通信装置に関する。 The present invention relates to a program protection device and a communication device.
従来から、プログラムの不正な読出しや改竄を阻止する装置が採用されている。たとえば、特許文献1(特開平11−39158号公報)に記載された実行プログラムの保護装置は、所定の実行プログラムが走行する前に、実行プログラムが改竄されていることを検出する改竄検出手段と、改竄検出手段において改竄が検出されると、実行プログラムの実行を直ちに停止する実行停止手段とを有する。 Conventionally, an apparatus for preventing unauthorized reading and falsification of a program has been adopted. For example, the protection device for an execution program described in Patent Document 1 (Japanese Patent Laid-Open No. 11-39158) includes falsification detection means for detecting that the execution program has been falsified before the predetermined execution program runs. When the falsification is detected by the falsification detection means, an execution stop means for immediately stopping execution of the execution program is provided.
しかしながら、特許文献1の記載の装置では、プログラムを実行するプロセッサと、プログラムの改竄を検出するプロセッサは、同一である。 However, in the apparatus described in Patent Document 1, the processor that executes the program and the processor that detects falsification of the program are the same.
したがって、プロセッサが、不正アクセス者によって改竄検出機能を無効にするように改竄されたプログラムを実行すれば、そのプロセッサは、もはやプログラムの改竄を検出することができなくなってしまう。そのため、特許文献1の装置では、プログラムを実行する前にプログラムの改竄を検出する必要があった。 Therefore, if a processor executes a program that has been altered so as to invalidate the alteration detection function by an unauthorized accessor, the processor can no longer detect alteration of the program. For this reason, the apparatus disclosed in Patent Document 1 needs to detect falsification of the program before executing the program.
それゆえに、本発明の目的は、改竄された処理プログラムを実行中または実行後であっても、処理プログラムの改竄を検出することができるプログラム保護装置、および通信装置を提供することである。 Therefore, an object of the present invention is to provide a program protection device and a communication device capable of detecting falsification of a processing program even during or after execution of the falsified processing program.
上記課題を解決するために、本発明は、プログラム保護装置であって、所定の処理を実行する処理プログラムを記憶する第1の記憶部と、処理プログラムの改竄を検出する改竄検出プログラムを記憶する第2の記憶部と、改竄検出プログラムを実行する第1のプロセッサと、処理プログラムを実行する第2のプロセッサとを備える。プログラム保護装置は、少なくとも一部の機能が、フィールドプログラマブルゲートアレイによって実現され、フィールドプログラマブルゲートアレイは、少なくとも第1のプロセッサ、第2のプロセッサ、および第2の記憶部を含む。 In order to solve the above-described problem, the present invention is a program protection device, and stores a first storage unit that stores a processing program for executing a predetermined process, and an alteration detection program that detects alteration of the processing program. A second storage unit, a first processor that executes a falsification detection program, and a second processor that executes a processing program. In the program protection device, at least a part of the functions is realized by a field programmable gate array, and the field programmable gate array includes at least a first processor, a second processor, and a second storage unit.
本発明によれば、改竄された処理プログラムを実行中または実行後であっても、処理プログラムの改竄を検出することができるプログラム保護装置、および通信装置を提供することである。 According to the present invention, there is provided a program protection device and a communication device that can detect falsification of a processing program even during or after execution of the falsified processing program.
以下、本発明の実施形態について図面を参照して説明する。
(構成)
図1は、本発明の実施形態の無線基地局の構成を表わす図である。
Embodiments of the present invention will be described below with reference to the drawings.
(Constitution)
FIG. 1 is a diagram showing the configuration of a radio base station according to the embodiment of the present invention.
図1を参照して、この無線基地局80は、第1のアンテナ12と、第2のアンテナ14と、無線回路32と、CPU(Central Processing Unit)3と、FlashROM(Read Only Memory)53と、外部RAM(Random Access Memory)/PROM(Programmable Read Only Memory)4と、FPGA(Field-Programmable Gate Array:フィールドプログラマブルゲートアレイ)61とを備える。
Referring to FIG. 1, the
この無線基地局80は、従来のアダプティブアレイ演算機能を有しない無線基地局に、アダプティブアレイ演算処理を追加したものである。アダプティブアレイ演算処理の一部については、製造業者にとってノウハウを伴うことから秘匿できることが望ましい。そのため、本実施の形態では、耐タンパ性を有するFPGA61にアダプティブアレイ演算処理を組み込むこととする。具体的には、FPGA61内のCPUが、FPGA内部のRAM/ROM内のプログラムを用いてアダプティブアレイ演算機能を実行する。また、FPGA61を追加することによって、FPGA61によるロジック処理も利用できるので、本実施の形態では、FPGA61によって従来の無線基地局の通信処理の一部も実行することとする。
The
あるいは、アダプティブアレイ演算機能を有する無線基地局の製造販売の依頼を受けた製造業者は、秘匿を要するアダプティブアレイ演算機能をFPGA61に組み込み、その他の通信機能をFPGA61外で処理するようにしてもよい。このようにすることで、無線基地局の購入者にアダプティブアレイ演算機能のノウハウが流出するのを防止することができる。
Alternatively, a manufacturer that has received a request to manufacture and sell a radio base station having an adaptive array calculation function may incorporate an adaptive array calculation function that requires secrecy into the
FPGA61は、ロジック部62と、CPU1と、CPU2と、内部RAM/PROM−A8と、内部RAM/PROM−B6と備える。
The
無線回路32は、無線周波数帯にアップコンバートするアップコンバータ、アップコンバートされた信号を増幅する電力増幅回路、増幅された信号のうち所望帯域の信号成分のみを通過させて第1のアンテナ12および第2のアンテナ14へ出力するバンドパスフィルタなどを含む。また、無線回路32は、第1のアンテナ12および第2のアンテナ14から出力される信号のうち所望帯域の信号成分のみを通過させるバンドパスフィルタ、RF信号を増幅する低雑音増幅回路、RF信号をダウンコンバートするダウンコータなどを含む。
The
無線回路32へ出力する送信信号の処理、無線回路32から出力される受信信号の処理は、CPU1、CPU2、CPU3、およびロジック部62で行なわれる。
Processing of the transmission signal output to the
FlashROM53は、暗号化されたコンフィギュレーションデータを記憶する。
図2は、本発明の実施形態のコンフィギュレーションデータの構成を表わす図である。
The
FIG. 2 is a diagram showing a configuration of configuration data according to the embodiment of the present invention.
コンフィギュレーションデータは、ロジックデータとCPUデータとが結合されたデータである。ロジックデータは、FPGA61のロジックデバイスの設計データである。
Configuration data is data in which logic data and CPU data are combined. The logic data is design data for the logic device of the
CPUデータは、CPU1で利用されるCPU1データおよびCPU2で利用されるCPU2データからなる。 CPU data consists of CPU1 data used by CPU1 and CPU2 data used by CPU2.
CPU1データは、改竄検出プログラムと、MD1A、MD2Aとからなる。
改竄検出プログラムは、処理プログラム#1と処理プログラム#2の改竄を検出する。
The CPU1 data includes a falsification detection program and MD1A and MD2A.
The falsification detection program detects falsification of the processing program # 1 and the processing program # 2.
MD1Aは、処理プログラム#1を編集する際に作成された処理プログラム#1のMD(メッセージ・ダイジェスト)である。 MD1A is an MD (message digest) of the processing program # 1 created when the processing program # 1 is edited.
MD2Aは、処理プログラム#2を編集する際に作成された処理プログラム#2のMD(メッセージ・ダイジェスト)である。 MD2A is MD (message digest) of processing program # 2 created when processing program # 2 is edited.
ここで、メッセージ・ダイジェストは、一方向ハッシュ関数を使った演算によって、プログラム(原文)から生成されるデータである。プログラムが改竄された場合に、改竄前後で、メッセージ・ダイジェストが変化する。 Here, the message digest is data generated from a program (original text) by an operation using a one-way hash function. When the program is altered, the message digest changes before and after the alteration.
CPU2データは、処理プログラム#1と処理プログラム#2とからなる。
CPU2で処理する処理プログラムを処理プログラム#1と処理プログラム#2に分けたのは、処理プログラムの容量が、FPGA61内の内部RAM/PROM−B6の容量よりも大きいので、処理プログラム全体をFPGA61内の内部RAM/PROM−B6に記憶できないからである。それゆえ、本実施の形態では、処理プログラムを秘匿性が要求される処理プログラム#1と秘匿性が要求されない処理プログラム#2に分割して、処理プログラム#1を耐タンパ性が相対的に高いFPGA61内の内部RAM/PROM−B6に記憶し、処理プログラム#2を耐タンパ性が相対的に低い外部RAM/PROM4に記憶する。処理プログラム#1と処理プログラム#2の内容については、後述する。
The CPU2 data includes processing program # 1 and processing program # 2.
The reason why the processing program to be processed by the CPU 2 is divided into the processing program # 1 and the processing program # 2 is that the capacity of the processing program is larger than the capacity of the internal RAM / PROM-B6 in the
外部RAM/PROM4は、CPU3で実行される通信制御プログラムを記憶する。外部RAM/PROM4は、さらに、コンフィギュレーションデータが復号されることによって得られる処理プログラム#2を記憶する。処理プログラム#2は、秘匿性が相対的に低いプログラムであるので、FPGA61の外の改竄および窃取の可能性が相対的に高いメモリであるFPGA61の外部のメモリに記憶される。処理プログラム#2は、秘匿性が相対的に低いプログラムであるが、これが改竄され、改竄された処理プログラム#2を実行したCPUは、改竄者の意図する不正な処理を実行し、処理プログラム#1を外部に出力したりするおそれがある。これを防止するために、本実施の形態では、改竄プログラムと、処理プログラム#1、#2を実行するCPUを別個のものにする。
The external RAM / PROM 4 stores a communication control program executed by the CPU 3. The external RAM / PROM 4 further stores a processing program # 2 obtained by decoding the configuration data. Since the processing program # 2 is a program with relatively low confidentiality, the processing program # 2 is stored in a memory outside the
FlashROM53から、FPGA61へは暗号化されたコンフィギュレーションデータが送られ、FPGA61側で暗号化されたコンフィギュレーションデータを復号する。したがって、コンフィギュレーションデータのFPGA61の伝送は、秘匿の危険性は比較的少ない。
The encrypted configuration data is sent from the Flash
ロジック部62は、ロジックデータが展開されて、論理処理を実行する。
内部RAM/PROM−A8は、コンフィギュレーションデータが復号されることによって得られる改竄検出プログラム、MD1A、およびMD2Aを記憶する。内部RAM/PROM−B6は、さらに、MD1B、およびMD2Bを記憶する。
The
The internal RAM / PROM-A8 stores a falsification detection program, MD1A, and MD2A obtained by decoding configuration data. The internal RAM / PROM-B6 further stores MD1B and MD2B.
MD1Bは、改竄検出プログラムを実行することによって作成された処理プログラム#1のMD(メッセージ・ダイジェスト)である。 MD1B is MD (message digest) of processing program # 1 created by executing the falsification detection program.
MD2Bは、改竄検出プログラムを実行することによって作成された処理プログラム#2のMD(メッセージ・ダイジェスト)である。 MD2B is MD (message digest) of processing program # 2 created by executing the falsification detection program.
内部RAM/PROM−B6は、コンフィギュレーションデータが復号されることによって得られる処理プログラム#1を記憶する。処理プログラム#1は、秘匿性が要求されるプログラムであるので、FPGA61内の窃取の可能性が相対的に低いメモリに記憶される。
The internal RAM / PROM-B6 stores a processing program # 1 obtained by decoding the configuration data. Since the processing program # 1 is a program that requires confidentiality, the processing program # 1 is stored in a memory in which the possibility of theft in the
CPU3は、外部RAM/PROM4に記憶された通信制御プログラムを実行する。
CPU1は、内部RAM/PROM−A8に記憶された改竄検出プログラムを実行する。改竄検出プログラムはFPGA61内にあるので改竄される危険性が少ない。仮に、CPU1が、改竄された改竄検出プログラムを実行した場合には、制御が不正アクセス者に乗っ取られる危険性があるが、本実施の形態では、改竄検出プログラムを改竄されるのを防止することによって、そのような危険性を排除している。
The CPU 3 executes a communication control program stored in the external RAM / PROM 4.
The CPU 1 executes a falsification detection program stored in the internal RAM / PROM-A8. Since the falsification detection program is in the
CPU2は、内部RAM/PROM−B6に記憶された処理プログラム#1および外部RAM/PROM4に記憶された処理プログラム#2を実行する。 The CPU 2 executes the processing program # 1 stored in the internal RAM / PROM-B6 and the processing program # 2 stored in the external RAM / PROM 4.
図3は、通信プログラム、ロジックデータ、処理プログラム#1、および処理プログラム#2によって実行される機能を表わすブロック図である。 FIG. 3 is a block diagram showing functions executed by the communication program, logic data, processing program # 1, and processing program # 2.
図3を参照して、CPU3が、外部RAM/PROM4に記憶された通信制御プログラムを実行し、FPGA61内のロジック部62がロジックデータによって設定された論理処理を実行することによって、CP(Cyclic Prefix)除去部18と、FFT(Fast Fourier Transform)部20と、イコライザ26と、復調部28と、制御部30と、変調部40と、IFFT部36と、CP付加部34の機能を実行する。
Referring to FIG. 3, CPU 3 executes a communication control program stored in external RAM / PROM 4, and
CP除去部18は、無線回路32から出力される信号からCPを除去する。
FFT部20は、CP除去部18から出力される時間領域の信号をFFTによって、周波数領域の信号に変換して、複数のサブキャリアに復調する。
The
The
イコライザ26は、伝送路の特性によって変化を受けた受信信号の波形の復元や変化の最小化を目的に、受信信号の周波数特性を調整する。
The
復調部28は、受信信号を復調する。
変調部40は、送信信号を変調する。
The
The
IFFT部36は、複数のサブキャリア信号(周波数領域の信号)をIFFTによって、時間領域の信号(OFDMA(Orthogonal Frequency Division Multiple Access)シンボル)に変換する。
The
CP付加部34は、OFDMAシンボルの後尾部分と同じ信号をCPとしてOFDMAシンボルの先頭に付加する。
The
制御部30は、上述の各機能部の実行を制御する。
CPU2は、処理プログラム#1を実行することによって、ウエイト算出部24および受信重み付け部22として機能する。また、CPU2は、処理プログラム#2を実行することによって、送信重み付け部38として機能する。
The
The CPU 2 functions as the
ウエイト算出部24は、第1のアンテナ12および第2のアンテナ14で受信し、無線回路32で処理されたトレーニング信号から伝送路を推定して、ウエイトベクトルを算出する。
The
受信重み付け部22は、第1のアンテナ12および第2のアンテナ14で受信し無線回路32で処理された受信信号をウエイト算出部24で算出されたウエイトベクトルで重み付け加算する。
The
送信重み付け部38は、外部から供給された送信信号をウエイト算出部24で算出されたウエイトベクトルで重み付けして、第1のアンテナ12および第2のアンテナ14へ供給する。
The
(メモリマップの構成)
図4は、本発明の実施形態のメモリマップの構成を表わす図である。
(Memory map configuration)
FIG. 4 is a diagram showing the configuration of the memory map according to the embodiment of the present invention.
図4を参照して、CPU1は、内部RAM/PROM−A8に格納された改竄検出プログラム、実行停止プログラム、MD1A、MD2A、MD1B、MD2Bにアクセスする。 Referring to FIG. 4, CPU 1 accesses the falsification detection program, execution stop program, MD1A, MD2A, MD1B, and MD2B stored in internal RAM / PROM-A8.
CPU2は、外部RAM/PROM4に記憶された処理プログラム#2と内部RAM/PROM−B6に記憶された処理プログラム#1にアクセスする。 The CPU 2 accesses the processing program # 2 stored in the external RAM / PROM 4 and the processing program # 1 stored in the internal RAM / PROM-B6.
(動作)
図5は、処理プログラムの編集時のMD1A、MD1Bの作成手順を表わすフローチャートである。
(Operation)
FIG. 5 is a flowchart showing a procedure for creating MD1A and MD1B when editing a processing program.
まず、編集装置のCPUは、処理プログラム#1をRAMへロードする(ステップS101)。 First, the CPU of the editing apparatus loads the processing program # 1 into the RAM (Step S101).
次に、編集装置のCPUは、ロードした処理プログラム#1のMD(MD1Aとする)を作成する(ステップS102)。 Next, the CPU of the editing apparatus creates the MD (MD1A) of the loaded processing program # 1 (step S102).
次に、編集装置のCPUは、作成した処理プログラム#1のMDであるMD1Aをコンフィギュレーションデータの一部として組込む(ステップS103)。 Next, the CPU of the editing apparatus incorporates MD1A, which is the MD of the created processing program # 1, as part of the configuration data (step S103).
次に、編集装置のCPUは、処理プログラム#2をRAMへロードする(ステップS104)。 Next, the CPU of the editing apparatus loads the processing program # 2 into the RAM (step S104).
次に、編集装置のCPUは、ロードした処理プログラム#2のMD(MD2Aとする)を作成する(ステップS105)。 Next, the CPU of the editing apparatus creates an MD (referred to as MD2A) of the loaded processing program # 2 (step S105).
次に、編集装置のCPUは、作成した処理プログラム#2のMDであるMD2Aをコンフィギュレーションデータとの一部として組込む(ステップS106)。 Next, the CPU of the editing apparatus incorporates MD2A, which is the MD of the created processing program # 2, as part of the configuration data (step S106).
(CPU1の動作)
図6は、CPU1の改竄検出プログラムの実行による改善検出処理手順を表わすフローチャートである。
(Operation of CPU 1)
FIG. 6 is a flowchart showing an improvement detection processing procedure by execution of the falsification detection program of CPU 1.
まず、パワーオンリセットがあったとき(ステップS201でYES)、システムがリセットされたとき(ステップS202でYES)、または実行タイミング時に(ステップS203でYES)、CPU1は、処理プログラム#1のMD(MD1Bとする)を作成して、内部RAM/PROM−A8に記憶する(ステップS204)。 First, when there is a power-on reset (YES in step S201), when the system is reset (YES in step S202), or at the execution timing (YES in step S203), the CPU 1 determines the MD ( MD1B) is created and stored in the internal RAM / PROM-A8 (step S204).
CPU1は、内部RAM/PROM−A8に記憶されたMD1AとMD1Bとが1ビットでも異なる場合には(ステップS205でNO)、CPU2に停止を指示する(ステップS208)。 If the MD1A and MD1B stored in the internal RAM / PROM-A8 are different even by 1 bit (NO in step S205), the CPU1 instructs the CPU2 to stop (step S208).
CPU1は、改竄検出プログラムを実行することによって、MD1AとMD1Bとが同一の場合には(ステップS205でYES)、さらに、処理プログラム#2のMD(MD2Bとする)を作成して、内部RAM/PROM−A8に記憶する(ステップS206)。 When the MD1A and MD1B are the same by executing the falsification detection program (YES in step S205), the CPU 1 further creates the MD of the processing program # 2 (referred to as MD2B) and stores the internal RAM / Store in the PROM-A8 (step S206).
CPU1は、内部RAM/PROM−A8に記憶されたMD2AとMD2Bとが1ビットでも異なる場合には(ステップS207でNO)、CPU2に停止を指示する(ステップS208)。 When the MD2A and the MD2B stored in the internal RAM / PROM-A8 are different by 1 bit (NO in step S207), the CPU1 instructs the CPU2 to stop (step S208).
(CPU2の動作)
図7は、CPU2の処理手順を表わすフローチャートである。
(Operation of CPU2)
FIG. 7 is a flowchart showing the processing procedure of the CPU 2.
図7を参照して、CPU2は、CPU1から停止指示がない場合には(ステップS301でNO)、処理プログラム#1と処理プログラム#2を実行する(ステップS302)。 Referring to FIG. 7, when there is no stop instruction from CPU 1 (NO in step S301), CPU 2 executes processing program # 1 and processing program # 2 (step S302).
CPU2は、CPU1から停止指示があった場合には(ステップS301でYES)、処理プログラム#1と処理プログラム#2の実行を停止する(ステップS303)。 If there is a stop instruction from CPU 1 (YES in step S301), CPU 2 stops execution of processing program # 1 and processing program # 2 (step S303).
以上のように、本実施の形態によれば、改竄検出プログラムと、処理プログラムとを別個のCPUで実行することによって、改竄された処理プログラムを実行中または実行後であっても、処理プログラムの改竄を検出することができる。 As described above, according to the present embodiment, the falsification detection program and the processing program are executed by separate CPUs, so that the processing program can be executed even during or after execution of the falsified processing program. Tampering can be detected.
(変形例)
本発明の実施形態では、CPU3が、外部RAM/PROM4に記憶された通信制御プログラムを実行し、FPGA61内のロジック部62がロジックデータによって設定された論理処理を実行することによって、従来の無線基地局の機能(CP除去部と、FFT部と、イコライザと、復調部と、制御部と、変調部と、IFFT部と、CP付加部)を実行することとしたが、これに限定するものではない。
(Modification)
In the embodiment of the present invention, the CPU 3 executes the communication control program stored in the external RAM / PROM 4, and the
すなわち、FPGA61にロジックデータによる論理処理を実行させないこととし、CPU3が、外部RAM/PROM4に記憶された通信制御プログラムを実行することによって、上述の従来の無線基地局の機能を実行することとしてもよい。このようにした場合には、FPGA61は、アダプティブアレイ演算処理とプログラムの改竄検出処理とを専ら担当することになるので、従来の無線基地局の装置にFPGA61およびFlashROM53を取り付けるだけで、耐タンパ性を有するアダプティブアレイ演算処理を追加することができる。また、この無線基地局の利用者が、アダプティブアレイ演算機能を利用したくない場合には、無線基地局の装置からFPGA61およびFlashROM53を取り外せばよい。
That is, it is assumed that the
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。 The embodiment disclosed this time should be considered as illustrative in all points and not restrictive. The scope of the present invention is defined by the terms of the claims, rather than the description above, and is intended to include any modifications within the scope and meaning equivalent to the terms of the claims.
1〜3 CPU、4 外部RAM/PROM、6 内部RAM/PROM−B、8 内部RAM/PROM−A、12,14 アンテナ、18 CP除去部、20 FFT部、22 受信重み付け部、24 ウエイト算出部、26 イコライザ、28 復調部、30 制御部、32 無線回路、34 CP付加部、36 IFFT部、38 送信重み付け部、40 変調部、53 FlashROM、61 FPGA、62 ロジック部、80 無線基地局。 1-3 CPU, 4 external RAM / PROM, 6 internal RAM / PROM-B, 8 internal RAM / PROM-A, 12, 14 antenna, 18 CP removal unit, 20 FFT unit, 22 reception weighting unit, 24 weight calculation unit , 26 Equalizer, 28 Demodulation unit, 30 Control unit, 32 Radio circuit, 34 CP addition unit, 36 IFFT unit, 38 Transmission weighting unit, 40 Modulation unit, 53 FlashROM, 61 FPGA, 62 Logic unit, 80 Radio base station.
Claims (8)
所定の処理を実行する処理プログラムを記憶する第1の記憶部と、
前記処理プログラムの改竄を検出する改竄検出プログラムを記憶する第2の記憶部と、
前記改竄検出プログラムを実行する第1のプロセッサと、
前記処理プログラムを実行する第2のプロセッサとを備え、
前記プログラム保護装置は、少なくとも一部の機能が、フィールドプログラマブルゲートアレイによって実現され、
前記フィールドプログラマブルゲートアレイは、少なくとも前記第1のプロセッサ、前記第2のプロセッサ、および前記第2の記憶部を含む、プログラム保護装置。 A program protector comprising:
A first storage unit for storing a processing program for executing a predetermined process;
A second storage unit for storing a falsification detection program for detecting falsification of the processing program;
A first processor that executes the falsification detection program;
A second processor for executing the processing program,
In the program protection device, at least a part of functions are realized by a field programmable gate array,
The field programmable gate array is a program protection device including at least the first processor, the second processor, and the second storage unit.
前記第2のプロセッサは、前記第1のプロセッサから停止指示を受けたときには、前記処理プログラムの実行を停止する、請求項1記載のプログラム保護装置。 When the falsification of the processing program is detected by executing the falsification detection program, the first processor sends a stop instruction to the second processor;
The program protection device according to claim 1, wherein the second processor stops execution of the processing program when receiving a stop instruction from the first processor.
前記第1の記憶部は、前記フィールドプログラマブルゲートアレイ内の内部メモリと、前記フィールドプログラマブルゲートアレイ外の外部メモリで構成され、
前記第1のプログラムは、前記内部メモリに記憶され、
前記第2のプログラムは、前記外部メモリに記憶される、請求項1記載のプログラム保護装置。 The processing program includes a first program that requires confidentiality and a second program that does not require confidentiality.
The first storage unit includes an internal memory in the field programmable gate array and an external memory outside the field programmable gate array,
The first program is stored in the internal memory;
The program protection device according to claim 1, wherein the second program is stored in the external memory.
前記第1のプロセッサは、前記改竄検出プログラムを実行することによって、前記第1のプログラムのメッセージダイジェストである第2のメッセージ・ダイジェストを作成し、前記第2の記憶部内の前記第1のメッセージ・ダイジェストと前記第2のメッセージ・ダイジェストが一致するか否かによって、前記第1のプログラムの改竄を検出する、請求項3記載のプログラム保護装置。 The second storage unit stores a first message digest that is a message digest of the first program created when the first program is edited,
The first processor creates a second message digest that is a message digest of the first program by executing the falsification detection program, and the first message in the second storage unit. 4. The program protection device according to claim 3, wherein falsification of the first program is detected based on whether or not the digest and the second message digest match.
前記第1のプロセッサは、前記改竄検出プログラムを実行することによって、前記第2のプログラムのメッセージダイジェストである第2のメッセージ・ダイジェストを作成し、前記第2の記憶部内の前記第1のメッセージ・ダイジェストと前記第2のメッセージ・ダイジェストが一致するか否かによって、前記第2のプログラムの改竄を検出する、請求項3記載のプログラム保護装置。 The second storage unit stores a first message digest that is a message digest of the second program created when the second program is edited,
The first processor executes the falsification detection program to create a second message digest that is a message digest of the second program, and the first message in the second storage unit. The program protection device according to claim 3, wherein tampering of the second program is detected based on whether or not the digest and the second message digest match.
前記処理プログラムは、複数のアンテナを用いたアダプティブアレイ演算処理を実行するプログラムである、請求項3記載のプログラム保護装置。 The program protection device is provided in a communication device,
The program protection device according to claim 3, wherein the processing program is a program that executes adaptive array arithmetic processing using a plurality of antennas.
前記第2のプログラムは、送信信号を前記ウエイトベクトルで重み付けして、複数のアンテナへ供給する処理を実行するプログラムである、請求項6記載のプログラム保護装置。 The first program is a program for executing a process of calculating a weight vector from signals received by the plurality of antennas, and a process of weighting and adding received signals received by the plurality of antennas by the weight vector,
The program protection device according to claim 6, wherein the second program is a program that executes a process of weighting a transmission signal with the weight vector and supplying the weighted signal to a plurality of antennas.
前記複数のアンテナと接続された無線回路と、
請求項6または7に記載のプログラム保護装置とを備える、通信装置。 Multiple antennas,
A radio circuit connected to the plurality of antennas;
A communication device comprising the program protection device according to claim 6.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011038886A JP2012174228A (en) | 2011-02-24 | 2011-02-24 | Program protection device and communication apparatus |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011038886A JP2012174228A (en) | 2011-02-24 | 2011-02-24 | Program protection device and communication apparatus |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2012174228A true JP2012174228A (en) | 2012-09-10 |
Family
ID=46977038
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011038886A Pending JP2012174228A (en) | 2011-02-24 | 2011-02-24 | Program protection device and communication apparatus |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2012174228A (en) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH1139158A (en) * | 1997-07-18 | 1999-02-12 | Nippon Telegr & Teleph Corp <Ntt> | Method for protecting executed program and its device |
JP2003283403A (en) * | 2002-03-27 | 2003-10-03 | Sanyo Electric Co Ltd | Adaptive array arithmetic processing apparatus, wireless receiver for mount on the adaptive array arithmetic processing apparatus, and antenna input signal control method for the adaptive array arithmetic processing apparatus |
JP2004129227A (en) * | 2002-07-30 | 2004-04-22 | Fujitsu Ltd | Information reproducing apparatus, secure module, and information regeneration method |
WO2005096121A1 (en) * | 2004-04-02 | 2005-10-13 | Matsushita Electric Industrial Co., Ltd. | Execution device |
JP2008056700A (en) * | 2000-06-02 | 2008-03-13 | Pfizer Prod Inc | S-methyl-dihydro-ziprasidone for treatment of psychiatric and ocular disorders |
WO2008078564A1 (en) * | 2006-12-22 | 2008-07-03 | Panasonic Corporation | Information processing device, integrated circuit, method, and program |
JP2009013825A (en) * | 2007-07-03 | 2009-01-22 | Shimadzu Corp | Vacuum pump |
-
2011
- 2011-02-24 JP JP2011038886A patent/JP2012174228A/en active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH1139158A (en) * | 1997-07-18 | 1999-02-12 | Nippon Telegr & Teleph Corp <Ntt> | Method for protecting executed program and its device |
JP2008056700A (en) * | 2000-06-02 | 2008-03-13 | Pfizer Prod Inc | S-methyl-dihydro-ziprasidone for treatment of psychiatric and ocular disorders |
JP2003283403A (en) * | 2002-03-27 | 2003-10-03 | Sanyo Electric Co Ltd | Adaptive array arithmetic processing apparatus, wireless receiver for mount on the adaptive array arithmetic processing apparatus, and antenna input signal control method for the adaptive array arithmetic processing apparatus |
JP2004129227A (en) * | 2002-07-30 | 2004-04-22 | Fujitsu Ltd | Information reproducing apparatus, secure module, and information regeneration method |
WO2005096121A1 (en) * | 2004-04-02 | 2005-10-13 | Matsushita Electric Industrial Co., Ltd. | Execution device |
JP2007226277A (en) * | 2004-04-02 | 2007-09-06 | Matsushita Electric Ind Co Ltd | Method and apparatus for virtual machine alteration inspection |
WO2008078564A1 (en) * | 2006-12-22 | 2008-07-03 | Panasonic Corporation | Information processing device, integrated circuit, method, and program |
JP2009013825A (en) * | 2007-07-03 | 2009-01-22 | Shimadzu Corp | Vacuum pump |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9858424B1 (en) | System and method for protecting systems from active content | |
CN102110210B (en) | Trusted graphics rendering for safer browsing on mobile devices | |
EP3039897B1 (en) | Adaptive security indicator for wireless devices | |
KR101660135B1 (en) | Device, system and method of processing a received alert | |
GB2547921A (en) | Preventing misuse of code signing certificates | |
US10187428B2 (en) | Identifying data usage via active data | |
CA3021094A1 (en) | Using hardware based secure isolated region to prevent piracy and cheating on electronic devices | |
CN109564598A (en) | A kind of endpoint detection methods and terminal | |
CN106548065B (en) | Application program installation detection method and device | |
US11290469B2 (en) | Methods and apparatus to detect and prevent host firewall bypass threats through a data link layer | |
CN104021342A (en) | Method and device for processing application program | |
US8938805B1 (en) | Detection of tampering with software installed on a processing device | |
Li et al. | An architecture for secure software defined radio | |
US20060225071A1 (en) | Mobile communications terminal having a security function and method thereof | |
JP2012174228A (en) | Program protection device and communication apparatus | |
US9698983B2 (en) | Method and apparatus for disabling algorithms in a device | |
US9693224B2 (en) | Restricting software to authorized wireless environments | |
EP4020283A1 (en) | Threat prevention by selective feature deprivation | |
US20140366156A1 (en) | Method and device for protecting privacy information with browser | |
CN111030982B (en) | Strong management and control method, system and storage medium for confidential files | |
EP2858336B1 (en) | System and method for preventing mobile terminal from abnormal uploading of information | |
CN114035812A (en) | Application software installation and/or operation method, device, electronic equipment and storage medium | |
CN111083134A (en) | Industrial control system communication encryption method and device, electronic equipment and storage medium | |
KR20140017457A (en) | Method of gaining secure access to a service | |
CN109325343B (en) | Java program execution method and device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20140115 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20140826 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20140902 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20150120 |